环境搭建
这里我本来用的php版本是7.4,结果怎么试都不行
直到搜索到ph师傅的这篇文章 的评论区有人指出7.4貌似不行
https://www.leavesongs.com/PENETRATION/fastcgi-and-php-fpm.html
之后换了7.2版本的成功复现
docker run -it --name t1 -p 127.0.0.1:12313:80 ubuntu
先docker 起一个干净的ubuntu
这里可以看到端口已经成功映射过来了
然后可以看下我的history
root@1c1a96f5d950:/# history
1 ls
2 apt install nginx
3 apt update
4 apt install nginx
5 /etc/init.d/nginx start
6 ls
7 apt install php7.2
8 apt list
9 apt list | grep php
10 apt-get install software-properties-common python-software-properties
11 apt install software-properties-common
12 add-apt-repository ppa:ondrej/php && sudo apt-get update
13 add-apt-repository ppa:ondrej/php && apt-get update
14 apt install php7.2
15 apt install php7.2-fpm php7.2-mysql php7.2-curl php7.2-json php7.2-mbstring php7.2-xml php7.2-intl
16 cd /etc/nginx/
17 ls
18 cd sites-available/
19 ls
20 apt install vim
21 ;ls
22 ls
23 vim default
24 cd /var/www/html/
25 ls
26 echo "<?php phpinfo();?>" > phpinfo.php
27 vim 1.php
28 ls
29 /etc/init.d/php7.2-fpm status
30 /etc/init.d/php7.2-fpm start
31 /etc/init.d/apache2 stop
32 /etc/init.d/apache2 status
33 /etc/init.d/nginx status
34 cd /etc/nginx/
35 ls
36 cd sites-available/
37 ls
38 vim default
39 ls
40 mv default 123
41 ls
42 vim default
43 /etc/init.d/nginx stop
44 /etc/init.d/nginx start
45 cd ..
46 ls
47 cd ..
48 sl
49 ls
50 cd php/7.2/
51 ls
52 cd fpm/
53 ls
54 cd conf.d/
55 ls
56 cd ..
57 ls
58 cd pool.d/
59 ls
60 mv www.conf 123
61 ls
62 vim www.conf
63 ls
64 ls -al
65 /etc/init.d/php7.2-fpm stop
66 /etc/init.d/php7.2-fpm start
67 history
68 exit
69 ls
70 /etc/init.d/nginx start
71 /etc/init.d/php7.2-fpm start
72 history
简单解释几下,先增加一些其他的源,然后down下来php7.2以及他的一些扩展,还有nginx
修改nginx,和php-fpm的配置文件
主要配置文件修改的就是这几个地方
fpm的www.conf文件
listen = 127.0.0.1:9000
nginx的default文件
fastcgi_pass 127.0.0.1:9000;
然后在/var/www/html目录下创建
phpinfo.php
1.php
<?php
highlight_file(__FILE__);
$url = $_GET['url'];
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, 0);
$responseText = curl_exec($curl);
echo $responseText;
curl_close($curl);
?>
开始攻击
很明显的ssrf漏洞了
http://127.0.0.1:12313/1.php?url=http://www.baidu.com
可以成功返回百度页面
利用gopher协议去伪造请求
利用Gopherus-master工具生成exp
可以看到成功执行命令了
后记
分享一段话
文字来源于参考链接
https://bbs.ichunqiu.com/thread-58455-1-1.html
@W4rnIn9师傅说过的
参考
https://bbs.ichunqiu.com/thread-58455-1-1.html
来源:freebuf.com 2021-05-29 20:42:55 by: asuralinmo
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧
请登录后发表评论
注册