PHP部落格程式C-blog2.0漏洞測試大揭密(圖)_漏洞研究
來源:互聯網
上載者:User
c-blog2.1測試手記
朋友買了空間支援php但是沒有mysql資料庫,說是這空間商主要是支援asp指令碼的.哎 難道就不能玩php了嗎? 嘿嘿 可以用php+access的php程式啊.百度了下發現了c-blog這個程式,它有個php+access版本的.down下了看看,就有了這次測試的結果.
1.暴出實體路徑
在看了這個blog後,發現他寫的到上沒什麼太大的bug,檔案比較少而且簡結. 它的說明上看到了如下:
./include 包含常用類庫 編輯器 設定檔
-->/configs/設定檔目錄
-->begin.cfg.php 一些常量的宏定義,如路徑和資料庫等
-->db.cfg.php 資料庫設定檔
-->init.cfg.php 匯入一些類庫,作一些常用的初始化
-->end.cfg.php 程式結束調用檔案 完成程式後續作用
而且每個檔案都調用了require_once(../include/configs/begin.cfg.php);
這就是我們的重點.看過代碼後發現
結果訪問init.cfg.php和end.cfg.php可暴出了網站的實體路徑.
圖1
450) {this.resized=true; this.width=450;}" border=0 resized="true">
圖2
450) {this.resized=true; this.width=450;}" border=0 resized="true">
http://127.0.0.1/cblog/include/configs/init.cfg.php
http://127.0.0.1/cblog/include/configs/end.cfg.php
2.跨站漏洞
c-blog中的使用者名稱沒有經過嚴格的過濾導致跨站漏洞
在登陸其後台後發現在管理員選項中有個登入記錄的選項在記錄後台登陸的情況. 看看他在代碼中是怎麼寫的哦 嘿嘿
後台登陸過程中輸入的使用者名稱沒有經過任何處理 嘿嘿
那我們就測試下
使用者: 密碼:Test
然後在用管理員進入後台查看登陸記錄 圖3
450) {this.resized=true; this.width=450;}" border=0 resized="true">
c-blog使用者名稱對; , /等特殊字元都強制變被/; /, \ 所以構造如下是無法實現的
另外一個跨站就很危險了,在前台有個 “給我留言” 的方便遊客給blog主人留言的功能 但是可惜的是c-blog對使用者名稱沒有嚴格過濾 如果我們以
這個使用者留言那麼效果就很明顯了不止危害管理員了其他人瀏覽被跨站的blog也能被攻擊. 圖4
450) {this.resized=true; this.width=450;}" border=0 resized="true">
如果有些無聊人士在c-blog上寫入惡意的網站那麼就成了掛馬的攻擊器了啊 怕怕