Webug4.0靶场通关笔记24- 第29关Webshell爆破
目录
一、Webshell爆破原理分析
二、第29关webshell爆破渗透实战
1.环境搭建
2.打开靶场
3.暴力破解
(1)bp开启抓包模式
(2)输入密码12并抓包
(3)配置position
(4)配置payloads
(5)开始攻击
(6)连接Webshell
三、危害与防范
本文通过《webug4靶场第29关 Webshell爆破》来进行渗透实战。这一关卡的名字相对晦涩难懂,尤其是基于Docker的靶场按照攻略无法渗透成功,相对容易让初学者难以理解webshell爆破,到底哪里来的webshell,为什么要爆破。
一、Webshell爆破原理分析
Webshell 爆破并非指存在特定的 “Webshell 本身的爆破”,而是涉及针对 已经被放入服务器中的后门Webshell 进行爆破攻击的情况。Webshell 是一种通过 Web 服务以脚本语言编写的后门程序,攻击者上传 Webshell 到目标服务器后,通常会设置访问密码来保护它。而爆破场景就是攻击者试图通过暴力破解的方式获取这个访问密码,从而完全控制该 Webshell,进而操控服务器。换言之本关卡就是已经在服务器中上传了一个webshell,需要进行的渗透就是通过burpsuite的暴力破解功能爆破获取这个webshell的密码,从而实现控制服务器的渗透效果。具体使用的防范包括字典攻击、暴力破解。
- 字典攻击:攻击者会准备一个包含大量可能密码的字典文件,这个字典文件中的密码可能是常见的弱密码、特定规则生成的密码组合、从其他渠道收集到的密码等。然后使用自动化工具,将字典中的每个密码依次尝试输入到 Webshell 的访问验证处,直到找到正确的密码。
- 暴力破解:如果没有合适的字典,攻击者也可能采用暴力破解的方式,按照一定的字符集(如数字、字母、特殊字符)和长度范围,穷举所有可能的密码组合进行尝试。不过这种方法的计算量非常大,对于复杂密码可能需要很长时间才能破解成功。
二、第29关webshell爆破渗透实战
1.环境搭建
webug靶场的第29关卡对php的版本号有要求,需要将php版本号切换到php5.2.17版本才可以渗透成功。
如果php的版本号较高,会有如下报错信息无法渗透成功。
2.打开靶场
打开webug靶场的第29关,完整URL地址如下所示。
http://192.168.71.1/webug4/control/more/webshell.php
如下所示,版本切换为5.2后可以打开靶场(这时候要注意由于Docker中的php版本号为5.5,故而即使将此webshell.php放入到docker环境中,也没有办法在不切换版本的情况下打开),所以这里我使用的是windows下的靶场环境。
3.暴力破解
(1)bp开启抓包模式
首先打开burpsuite,将bp的inception设置为on状态。
(2)输入密码12并抓包
在登录界面输入密码12然后点击login,此时burpsuite报文拦截成功,将报文发送给intruder模块,具体如下所示。
(3)配置position
如下所示参数仅设置1个,将spiderpass参数中的12选中并Add参数。
(4)配置payloads
如下所示配置字典,这里图方便随便写几个常用的密码集合,加上一个a1这个真实密码,这是因为不加上的话肯定不能暴力破解成功的。
(5)开始攻击
加载好字典后,点击右上角start attack进行抓包。
如上所示,密码为a1。
(6)连接Webshell
输入密码a1后,页面如下所示 。
三、危害与防范
webshell危害较大,会导致严重问题,具体如下所示。
- 服务器被完全控制:一旦攻击者成功破解 Webshell 的密码,就能像合法管理员一样对服务器进行各种操作,如修改系统配置、删除重要文件、安装恶意软件、窃取敏感数据等。
- 数据泄露:攻击者可以利用控制的服务器访问数据库等存储敏感信息的地方,将用户的个人信息、商业机密等数据窃取并泄露出去,给企业和用户带来巨大损失。
- 发起进一步攻击:以被控制的服务器为跳板,攻击者可以对其他关联的系统或网络发起攻击,扩大攻击范围,造成更大的安全威胁。
故而对于webshell爆破需要进行防范,具体方法如下所示。
- 设置强密码:为 Webshell 设置足够复杂的密码,包含大写字母、小写字母、数字和特殊字符,并且长度足够长,增加密码的破解难度。
- 限制访问:对 Webshell 的访问进行严格的限制,例如只允许特定 IP 地址的设备访问,或者设置访问频率限制,防止暴力破解工具进行大规模的尝试。
- 及时更新和维护:定期更新服务器的操作系统、Web 服务软件和相关应用程序,修复可能存在的安全问题,减少被攻击的风险。
- 监控和审计:对服务器的访问日志进行实时监控和审计,及时发现异常的访问行为,如频繁的登录尝试等,并采取相应的措施,如封禁 IP 地址。