我正在使用RIPS扫描服务器中的文件夹。报告出来了,报告的一些漏洞是“Userinput到达敏感接收器”。报告的行是定义变量的行。你可以看到报告here。有谁知道我怎么解决这个问题?这不是正常的,不会报告为漏洞吗?
它们中的大多数看起来像是误报,因为没有涉及实际的用户输入。大多数include路径都是从一个函数构造的,该函数可能从db或config文件中获取数据。
get_locale()
可能有问题,如果它需要HTTP请求的Accept-Language
标头并使用它们未经过消毒。
您可以在此处获取所有敏感接收器的详细信息:
http://awap.sourceforge.net/support.html#sanitization
哪个具有PHP语言的所有敏感接收器以及如何减轻这些漏洞。
你可以在这里阅读关于此的研究论文:
http://awap.sourceforge.net/papers/wap_dsn2016.pdf
http://awap.sourceforge.net/papers/WAP_IEEE_TR_Mar2016.pdf
希望这可能对你有所帮助。
考虑一下您有如下代码的情况:
$name = $city = $email = $message = "";
当用户输入到达敏感接收器时,RIPS会报告此代码。
要解决此问题,您可以应用以下技巧:
$name=test_input("");
$city=test_input("");
$email=test_input("");
$message=test_input("");
function test_input($data) {
$data = trim($data);
$data = stripcslashes($data);
$data = htmlspecialchars($data);
$data = htmlentities($data, ENT_QUOTES, "utf-8");
return $data;
}