前三篇我們處理的都是特定應用程式的漏洞——FTP 伺服器的後門、SMB 的命令注入、IRC 伺服器的後門。今天要進入一個不同的領域:Java RMI(Remote Method Invocation)。
這不是某個特定軟體的 bug,而是 Java 平台內建的遠端呼叫機制本身存在的安全風險。當 Java RMI 服務暴露在網路上且缺乏適當的安全設定時,攻擊者可以透過反序列化(Deserialization)攻擊直接在目標主機上執行任意程式碼——不需要帳號,不需要密碼,甚至不需要知道目標在跑什麼應用程式。
實作開始,nmap掃描~~![]()

進入msfconsole,search查找關鍵字
用search找要設定payload,並設定
show option 設定完Rhosts和Lhost,這邊有個小插曲。因為我之前找payload沒辦法打進去,所以後來用其他nmap的腳本證明這漏洞存驗,然後又找新的payload成功拿到root。
以下是用nmap腳本證明漏洞存在
Java RMI 這篇比前幾篇的難度提升了一個層級。前三個漏洞都是「送一個特定的字串就能觸發」,但 Java RMI 背後涉及的反序列化機制是一個更深層、更廣泛的問題。理解這個概念很重要,因為: