rce-labs level 3,4,5
第三关:
简单的系统命令执行,可以读etc/passwd,就可以读取/flag,(flag默认放置的位置)
第四关:
这里是一个执行ping命令的操作,调用了system函数,且是get请求,这里根据提示,使用;命令,不管前面是啥情况都可以执行后面的语句,
所以poc为:?ip=8.8.8.8 ; cat /flag
第五关:
这里有黑名单拦截,如果出现flag,就die,我们看下是啥样子
接下来我们再按照提示来操作学习下。
方法1:*号
就是查询所有的,比如查询flag,我们输入*lag,他就会取检索匹配,lag 的文件,发现只有flag,即为flag,poc为:?cmd=cat /*lag
这里可以随意替换flag中的随便一个和几个字符。如fl*g,fla*等等
方法二:?号
使用基本与*无差别(本题),?(问号): 匹配单个字符。例子: file?.txt。
方法三:[],方括号
[](方括号): 匹配方括号内的任意一个字符。例子: file[1-3].txt。
及我们查询flag,可以改写为/fla[g],/fl[a]g,可以任意替换一个或者多个字符。
方法四:[^](取反方括号)
即匹配不在方括号内的字符。例子: file[^a-c].txt。(如何打^,英语输入法,长按shift+6)
那么 我们/flag,可改写为/fl[^b-z]g
方法五:{}(大括号)
即 匹配大括号内的任意一个字符串。例子: file{1,2,3}.txt。
/flag可以改为如/fla{g}
翻车了,测不出来。
如果这篇文章对你有用的话,记得点个赞和关注