目录
简单的知识清单
运算符
command1&&command2 只有1执行2才会执行
command1&command2 两个都会执行
command1||command2 1执行2就不执行,1不执行2执行
command1|command2 1的输出结果作为2的输入执行
command1;command2 两个命令依次执行
常见Linux系统命令
ls 展示当前目录所有文件
ls / 根目录
cat [filename] 输出文件 不在当前目录下要指定路径
find [路径]-name “查询值” 可以帮助我们在不知道文件目录时来查找
例:find / -name "f*" 查找f开头的文件
find / -name "*.txt" 查找后缀是.txt的文件
[ACTF2020 新生赛]Exec
进去之后页面显示一个搜索框让输入ping的地址。
直接ping一下自己的主机
命令正常执行,直接127.0.0.1;ls尝试爆当前目录下文件
命令顺利执行,继续爆根目录文件
发现flag,直接cat /flag,得到flag
[GXYCTF2019]Ping Ping Ping
进入之后页面有显示/?ip=可知应该是有文件包含,我们直接尝试?ip=127.0.0.1
发现执行了ping的命令,直接尝试RCE。
发现flag.php就在当前目录下,使用cat指令
发现过滤了空格符,尝试使用${IFS}绕过空格。
好像又过滤了一些符号,换一种绕过试试$IFS$1。
发现对于flag字段也存在过滤,同时经过测试发现无法使用反斜杠\进行绕过。
那就尝试一下RCE拼接吧!
构造下面的paylaod
?ip=127.0.0.1;b=g;cat$IFS$1fla$b.php
发现成功运行了,但是页面上没有显示flag,打开源文件。
发现flag值。
[攻防世界]command_execution
这题和第一道题十分相像,进去之后也是一个界面让你输入Ping的地址,然后直接可以进行运算符拼接执行命令。
当我们查找根目录文件时发现并没有我们想要的flag。这个时候就要用到find命令了。
直接127.0.0.1|find / -name "*flag*",查找含有flag字段的文件。
发现/home目录下有flag.txt文件,尝试用cat输出
成功获取flag。