GetShell总结--不安全的HTTP方法
本文内容:
- 不安全的HTTP方法
1,不安全的HTTP方法GetShell:
不安全的HTTP方法简介:
目标服务器启用了不安全的传输方法,如PUT、TRACE、DELETE、MOVE等,这些方法表示可能在服务器上使用了 WebDAV,
由于dav方法允许客户端操纵服务器上的文件,如上传、修改、删除相关文件等危险操作。
如果没有合理配置dav,有可能允许未授权的用户对其进行利用,修改服务器上的文件。
漏洞危害:
dav方法允许客户端操纵服务器上的文件,如上传、修改、删除相关文件等危险操作,可以上传,即可GetShell。
漏洞测试方法:
1.BurpSuite
2.Curl
测试流程:
1.BurpSuite:
1.抓取想要测试站点的数据包:
2.将数据包发送给重发器,然后将传参类型GET或者POST修改为OPTIONS,然后点击发送,在返回包里查看Allow即可:
2.Curl:
使用此命令即可:curl -X OPTIONS url -I
利用其GetShell:
1.测试一个网站,发现使用不安全的HTTP方法,开启了PUT方法
2.利用PUT向服务器上上传文件,为了保险,一开始不要直接上传脚本文件,可以先上传一个txt文档,查看一下是否可以上传成功,在什么情况都不确定的情况下,如果直接上传木马文件,出现错误,我们可能连原因都不清楚。
3.发现txt文件上传成功了,这是我们就可以尝试上传一下木马文件,木马文件没有必要非要写一句话木马,因为如果是一句话木马,就很有可能会被服务器的杀毒软件或者防火墙等检测而给删除,所以我们只需要在木马文件写一句执行phpinfo()就可以了,起到证明访问成功的作用,还不会被删除:
4.,然后使用WebShell管理工具,菜刀连接一下:
补充:
如果服务器限制了上传脚本文件,如后缀为php、asp、jsp等文件,txt可以上传,就可以将一句话木马写到txt文件上传到服务器上,但是这个需要开启MOVE方法,此方法可以修改文件的名字,这样我们把txt文件上传上去,使用此方法,在服务器上把文件的后缀再修改为脚本文件的后缀就可以了。
使用命令:curl -X MOVE url /1.txt -H "Destination:url/1.php"
修复建议:
1.关闭不安全的传输方法,只开启POST、GET方法。
2.如果服务器不使用 WebDAV 可直接禁用,或为允许webdav的目录配置严格的访问权限,如认证方法,认证需要的用户名,密码。