行业知识
Web入门---命令执行
2026-11-11 02:11:26
来源:互联网转载
小白就只会一点点,希望大家提提建议
在这里推荐一本甜文《我的女友来自未来》
目录
前提知识
Linux查看文件命令
读取文件内容
读取目录
常见函数(php)
空格和分号绕过
分割命令
通配符
黑名单绕过
$( ) $( ( ) ) ` `(反引号) ${ } $[ ]区别
ctfshow日常
29(过滤flag,大小写)&通配符
30 (过滤flag,大小写,system,php)&shell_exec
31 (过滤flag,大小写,system,php,cat,sort,shell, . , ',)& 参数逃逸
32~36(过滤flag,大小写,system,php,cat,sort,shell, . , ',)&参数逃逸+包含+伪函数
37~39文件包含+伪协议
40(发现字母 、_ 、() 和 ; 没有被过滤)
41:或运算+url编码
42无过滤的不回显(命令分隔一下即可)
43~44(过滤了分号-->可以用||绕过)
45~50(空格过滤)
51(过滤了tac和cat)换个查看命令/tac插入\
52(过滤了)利用${IFS}绕过空格
53(空格过滤,黑名单绕过(``和\))
54:grep/mv
55(禁用字母)
56(禁用数字字母)但是.没有过滤
57($(()) )
58~70(system被ban)
71(利用exit())
72(看不懂脚本)
poc(url编码)
73~76
77
118(bash内置变量)
119(利用SHLVL构造cat)
120
121
122
124(暂时不会)
前提知识
Linux查看文件命令
Linux查看文件命令cat//cat flag.phptac//tac flag.phphead//head flag.phptail//tail flag.phpnl//nl flag.phpmore//more flag.phpless//less flag.phpod//od flag.phpgrep//grep 'fla' flag.phpstrings//strings flag.phpsort//sort flag.phpmv命令:mv命令用来为文件或目录改名、或将文件或目录移入其它位置。
读取文件内容
利用复制、重命名来读取php文件内容copy("flag.php","flag.txt")rename("flag.php","flag.txt")文件包含重命名、复制后的txt文件include("/flag.txt")require("/flag.txt")单一函数读取文件内容fread()fgets()fgetc()fgetss() //7.3版本后已弃用fgetcsv() fpassthru() //输出文件指针处的所有剩余数据----------------------------------------------------$a=fopen("flag.php","r");echo fread($a,"1000");$a=fopen("flag.php","r");while(!feof($a)){$b=fgets($a);echo $b;}$a=fopen("flag.php","r");while(!feof($a)){$b=fgetc($a);echo $b;}$a=fopen("flag.php","r");while(!feof($a)){$b=fgetss($a);echo $b;}$a=fopen("flag.php","r");while(!feof($a)){$b=fgetcsv($a);print_r($b);}$a=fopen("flag.php","r");fpassthru($a);高亮显示php内容highlight_file("flag.php");show_source("flag.php"); 读取目录
1.使用glob://伪协议绕过open_basedic=?>
常见函数(php)
php代码执行函数eval的用途是:将字符串解析成php语句,前提是字符串符合php语法。命令执行函数:1.system()自带输出2-passthru()自带输出3-exec()输出结果需要打印4-pcntl_exec()5-shell_exec()输出结果需要打印6-popen()/proc_open()7-反引号 ``
空格和分号绕过
上一篇:怎么下载藏宝阁服务器?
下一篇:自己的服务器怎么赚钱?