ssrf全名就是服务端请求伪造,客户端的输入能控制服务器发起请求到任意指定目标,包括自己,从而能够直接读取内网,找到访问受限的内网资源

靶场部分源码

<?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; 
	} 
?> 

curl_exec()函数对访问传入的URL数据进行请求,且在此处没有任何过滤,因此,可以做到以下操作

1.文件读取

通过访问自身ip地址或者127.0.0.1都能打到同样的效果

读取到1.txt的内容

可以通过file协议读取敏感配置文件

2.访问内网,重定向

判断内网的端口是否开放访问3306常用的mysql开放端口

直接重定向到百度网址,可以用于制造钓鱼网页

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐