搜尋
首頁運維安全piwigo v2.9.5的5個sql注入分別是怎樣的

0x0 專案介紹

專案網址:https://github.com/Piwigo/Piwigo

專案介紹:piwigo是用於網路的開源照相館軟體.專為組織,團隊和個人管理您的照片庫而設計。

官網網址:piwigo.org

0x1 準備工作

Linux下下載https://github.com/Piwigo/Piwigo/archive/ 2.9.5.zip解壓縮、賦權、進入目錄後使用docker安裝:

docker run -d --name piwigo_mysql -e MYSQL_DATABASE=piwigo -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
docker run -d -p 3000:80 -v $(pwd)/:/var/www/html/ --link piwigo_mysql:mysql --name piwigo nimmis/apache-php5

即可看到啟動介面

0x2 稽核

#一admin/group_perm.php中selection和parent參數存在的注入:

#selection值未經驗證進入move_categories函數中

piwigo v2.9.5的5个sql注入分别是怎样的

追蹤move_categories函數可以看到函數把該值分解後直接存取到sql語句中

piwigo v2.9.5的5个sql注入分别是怎样的

#測試下即可發現漏洞存在

piwigo v2.9.5的5个sql注入分别是怎样的piwigo v2.9.5的5个sql注入分别是怎样的

二admin/group_list.php中group_selection參數存在的sql注入:

圖中可以看到group_selection值放入$groups中,selectAction值被放入到$action裡

piwigo v2.9.5的5个sql注入分别是怎样的

程式碼中$action對應多個動作,但在多個動作裡$group都被直接黏結到sql語句中,這兒我舉delete方法看下:

piwigo v2.9.5的5个sql注入分别是怎样的

這兒很直觀看到被放進了sql語句中,試驗下

piwigo v2.9.5的5个sql注入分别是怎样的

三admin/user_perm.php中cat_false參數存在的sql注入:

圖中可以看到cat_false被放入到函數中,

piwigo v2.9.5的5个sql注入分别是怎样的

我們追蹤下這個函數,在admin/include/functions.php中找到函數,$cat_false值變成$category經過判斷是否是數組判斷數量後被放入get_uppercat_ids函數中處理,

piwigo v2.9.5的5个sql注入分别是怎样的

繼續追蹤get_uppercat_ids函數,上述存在漏洞的參數變成$cat_ids,圖中可以看到該$cat_ids經過簡單判斷被放入sql語句並開始查詢,

piwigo v2.9.5的5个sql注入分别是怎样的

這種漏洞函數跳轉比較多,且沒有明顯的看到回顯地方,這種場合特別適合時間注入,我們使用

1 and if(ascii(substr(database(),1,1))>97,1,sleep(5))驗證可以發現網頁開啟時間延遲,證明漏洞存在,使用sqlmap跑一波

piwigo v2.9.5的5个sql注入分别是怎样的

piwigo v2.9.5的5个sql注入分别是怎样的

piwigo v2.9.5的5个sql注入分别是怎样的

##perm.php存在的sql漏洞:

piwigo v2.9.5的5个sql注入分别是怎样的這個漏洞跟上面三種admin/user_perm.php漏洞相同,呼叫的同一個函數,只是使用者和群組的差別,看張入口圖意思一下:

piwigo v2.9.5的5个sql注入分别是怎样的

##sqlmap跑一下

piwigo v2.9.5的5个sql注入分别是怎样的

五admin/batch_manager.php中filter_category參數存在的注入:

我們看具體程式碼:

###當post包中存在'filter_category_use'鍵時將'filter_category'值給xx['category']###############往下走,找到xx[' category']被呼叫的地方,可以看到該值未被過濾直接被放到sql語句中。 ###

要注意的是這個請求連結在網頁中並未找到,需要手工在post包中加入filter_category_use=on&filter_category=1

piwigo v2.9.5的5个sql注入分别是怎样的

sqlmap跑一下

piwigo v2.9.5的5个sql注入分别是怎样的

piwigo v2.9.5的5个sql注入分别是怎样的

#

以上是piwigo v2.9.5的5個sql注入分別是怎樣的的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:亿速云。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具