大部分Web掃描器(包括上傳、管理後台掃描器)都是通過判斷HTTP的200返回來確定頁面存在的,在頁面存在的基礎上,這些掃描期才會開始對漏洞進行掃描。既然不能保證內部邏輯的嚴密,那麼就在輸入/輸出這個瓶頸上做文章,當輸入錯誤的密碼或者權限失敗時,我們自己返回一個400錯誤的HTTP消息來誤導掃描器不再繼續進行掃描(包括哪些手工入侵者)
以PHP為例:
復制代碼 代碼如下:
<?php
ob_start();
if ('Password' != $_GET['password'])
header("HTTP/1.1 404 Not Found");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Sample </TITLE>
</HEAD>
<BODY>
</BODY>
</HTML>
<?php ob_end_flush();?>