web安全基础--SSRF漏洞
创始人
2024-05-27 15:21:33

SSRF

定义与成因

SSRF(Server-Side Request Forgery:服务器请求伪造)是一种由攻击者构造形成,由服务器段发起请求的一个安全漏洞。

一般情况下,SSRF攻击目标是从外网无法访问的内部系统。(正是因为它是由服务器端发起的,所以它能够请求到与它相连而与外网隔离的内部系统)

SSRF漏洞形成的原因大都是由于服务器端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等

具体代码

$content = file_get_contents($_POST['url']);$filename='./images/'.read().'.jpg';$file_put_contents($filename,$contents);echo $_POST['url'];$img = "";echo $img;}else{echo "no url";}
?>

**isset()**检查变量是否非空

危害

内网探测

利用file协议读取本地文件等

向内部任意主机的任意 端口发送精心构造的payload,从而攻击内网的应用(web应用等),主要是使用GET参数就可以实现的攻击(比如struts2,sqli等)

DOS攻击(请求大量文件,适中保持连接Keep-Alive Always)

验证

排除法:F12查看源代码是否在本地进行了请求

使用dnslog等工具进行测试,看是否被访问

其他代码

$fp=fsockopen($host,intval($post),$errno,$errstr,30);if(!$fp){echo "$errstr (error number $errno) \n";}else{$out = "GEt $link HTTP/1.1/r/n";$out .="Host: $host\r\n";$out .="Connection: Close\r\n\r\n";$out .="\r\n";fwrite($fp,$out);$contents='';wile(!feof($fp)){$contents.=fgets($fp,1024);}fclose($fp);return $contents;}}
$link = $_POST['url'];$curlobj = curl_init();curl_setopt($curlobj,CURLOPT_POST,0);curl_setopt($curlobj,CURLOPT_URL,$link);curl_setopt($curlobj,CURLOPT_RETURNTRANSFER,1);$result=curl_exec($curlobj);curl_close($curlobj);$filename = './curled/'.read().'.txt';file_put_contents($filename,$result);echo $result;}
?>

fsockopen可以用来模拟HTTP连接

**curl_init()**初始化一个cURL 会话

一些绕过

加端口

例如:127.0.0.1:80

短网址

指向任意IP的域名xip.io

127.0.0.1.xip.io依然指向这个Ip

IP限制绕过(进制转换)

@绕过(http://www.beidu.com@127.0.0.1)

(因为url网址是协议://用户名:密码@网址/网址文件?参数名=参数值#锚点

后面加参数(http://127.0.0.1?a=sdafwasdwfa)

相关内容

热门资讯

中钨高新:7月8日获融资买入3... 7月8日,中钨高新跌3.76%,成交额46.06亿元。两融数据显示,当日中钨高新获融资买入额3.32...
山推股份:7月8日获融资买入1... 7月8日,山推股份跌2.99%,成交额2.01亿元。两融数据显示,当日山推股份获融资买入额1115....
中国船舶2025年参保人数26... 7月9日消息,据天眼查数据显示,中国船舶工业股份有限公司2025年参保人数为26人,较2024年披露...
7月8日红利低波ETF永赢(5... 数据显示,7月8日,红利低波ETF永赢(563690)遭净赎回192.59万元,位居当日股票ETF净...
7月8日华安创业板人工智能ET... 数据显示,7月8日,华安创业板人工智能ETF(159279)遭净赎回943.49万元,位居当日股票E...