最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

nginx+cgi解析php容易出現(xiàn)的漏洞的分析

  發(fā)布時間:2012-10-25 14:42:19   作者:佚名   我要評論
本文簡要的分析nginx+cgi解析php容易出現(xiàn)的漏洞
標題有點大,當我們仔細分析后,實際上一般都是配置問題。
如果有人想攻擊服務器時,都會掃描機器哪里有漏洞可以上傳惡意腳本文件,上傳腳本是第一步,
當惡意的php腳本被上傳到服務器時(其后綴可能是php,也可能偽裝如jpg等其它后綴),
如果該腳本能被解析執(zhí)行,那想攻擊者就可以為所欲為了。
那從源頭上來避免這個問題可以從如下兩方面入手:
1.上傳前就應該判斷文件不能是php腳本文件,如果是不能允許其上傳(包括偽裝后綴的)。
2.上傳后就應該把上傳的附件文件單獨放在一個服務器,該機器只做靜態(tài)解析,就沒什么問題了。
第一條需要寫程序保證,沒什么說的,最簡單的判斷文件后綴,到file判斷文件類型,或者再復雜的,大家可以去網(wǎng)上找。
第二條解決起來可能礙于資源有限,也不好辦。那如果沒條件只有一臺機器的話,是不是只能人為刀俎,我為魚肉了呢。
其實也可以從配置上去避免,
禁止ngingx解析上傳目錄中的php文件。
location ~* ^/upload/.*\.(php|php5)($|/)
{
    deny all;
}
避免偽裝其它后綴的腳本執(zhí)行
比如: 通過某種方法上傳了偽裝文件,upload下存在一個偽裝成圖片的php腳本a.jpg,
那么當使用http://www.nginx.cn/upload/a.jpg/b.php訪問時,
如果不做特殊設置傳給CGI執(zhí)行的SCRIPT_FILENAME就是$root/upload/a.jpg/b.php
當設置了cgi.fix_pathinfo = 1時,PHP就會以'/'為分割符從最后一個文件開始向前找存在的文件去執(zhí)行。
$root/upload/a.jpg/b.php
$root/upload/a.jpg
最終偽裝腳本將會被執(zhí)行。
解決方法:
1.關閉cgi.fix_pathinfo 設置成 cgi.fix_pathinfo = 0,但是會影響使用PATH_INFO進行rewrite的程序。
2.

復制代碼
代碼如下:

location ~* .*\.php($|/)
{
if ($request_filename ~* (.*)\.php) {
set $php_url $1;
}
if (!-e $php_url.php) {
return 403;
}
}

相關文章

最新評論

虹口区| 阳信县| 柞水县| 宜宾市| 长岛县| 富宁县| 鹰潭市| 神农架林区| 德阳市| 和政县| 灯塔市| 靖州| 工布江达县| 酉阳| 晴隆县| 桃源县| 连云港市| 辽阳县| 历史| 工布江达县| 江达县| 新化县| 天台县| 阿拉善盟| 玛多县| 茂名市| 通化县| 错那县| 汶上县| 曲松县| 固镇县| 大关县| 桂阳县| 昌吉市| 郓城县| 秀山| 象山县| 巧家县| 东乌| 永康市| 罗山县|