文章目录
- SSRF漏洞防御:黑白名单的编写
- 黑名单的制作
- 白名单的制作
SSRF漏洞防御:黑白名单的编写
以pikachu靶场中SSRF(crul)为例
我们可以看到未做任何防御
我们查看源代码
黑名单的制作
思路: 什么内容不能访问
构造代码
$xy=array("file" => "","http" => "","https" => "","gopher" => "","dict" => "","ldap" => "","tftp" => ""); $URL1=str_replace(array_keys($xy),$xy,$URL);if ($URL1 != $URL){exit("输入错误");};
插入到判断语句里
当有人进行ssrf攻击时返回输入错误
白名单的制作
思路:什么内容可以访问
构造代码
$bmd = "http://127.0.0.1/pikachu/vul/ssrf/ssrf_info/info2.php";$bmd1 = "http://127.0.0.1/pikachu/vul/ssrf/ssrf_info/info1.php";if ($URL == $bmd){} elseif ($URL == $bmd1){}else{exit("输入错误!");};
插入到判断语句中
实现效果: