欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在PHP中使用FastCGI解析漏洞及修復(fù)方案

 更新時(shí)間:2015年11月10日 11:49:44   投稿:mrr  
這篇文章主要介紹了在PHP中使用FastCGI解析漏洞及修復(fù)方案的相關(guān)資料,需要的朋友可以參考下

漏洞描述:

Nginx默認(rèn)是以CGI的方式支持PHP解析的,普遍的做法是在Nginx配置文件中通過正則匹配設(shè)置SCRIPT_FILENAME。當(dāng)訪問http://192.168.1.102/phpinfo.jpg/1.php這個(gè)URL時(shí),$fastcgi_script_name會被設(shè)置為“phpinfo.jpg/1.php”,然后構(gòu)造成SCRIPT_FILENAME傳遞給PHP CGI。如果PHP中開啟了fix_pathinfo這個(gè)選項(xiàng),PHP會認(rèn)為SCRIPT_FILENAME是phpinfo.jpg,而1.php是PATH_INFO,所以就會將phpinfo.jpg作為PHP文件來解析了。

漏洞危害:

WebServer Fastcgi配置不當(dāng),會造成其他文件(例如css,js,jpg等靜態(tài)文件)被當(dāng)成php腳本解析執(zhí)行。當(dāng)用戶將惡意腳本webshell改為靜態(tài)文件上傳到webserver傳遞給后端php解析執(zhí)行后,會讓攻擊者獲得服務(wù)器的操作權(quán)限。

修復(fù)方案:

(Nginx用戶可以選擇方案一或方案二,IIS用戶請使用方案一)

方案一,修改php.ini文件,將cgi.fix_pathinfo的值設(shè)置為0。完成后請重啟PHP和NGINX(IIS)。

方案二,在Nginx配置文件中添加以下代碼:

復(fù)制代碼 代碼如下:

  if ( $fastcgi_script_name ~ \..*\/.*php ) {
  return 403;
  }

這行代碼的意思是當(dāng)匹配到類似test.jpg/a.php的URL時(shí),將返回403錯(cuò)誤代碼。修改完成后請重啟Nginx。

相關(guān)文章

最新評論