Splunk
我們在評估過程中經常會看到 Splunk,尤其是在大型企業環境中的內部滲透測試期間。我們也曾見過它暴露在外部,但是這種情況比較少見。 Splunk 不存在太多可利用的漏洞,並且能夠快速修補任何問題。在評估期間,Splunk 的最大關注點是弱身份驗證或空身份驗證,因為 Splunk 的管理員存取權限使我們能夠部署自訂應用程序,這些應用程式可用於快速入侵 Splunk 伺服器,並且根據 Splunk
1. 發現點
Nmap 掃描:
開放 8000(Web UI)、8089(REST API)
嘗試登入:
常見弱密碼:
admin:changeme
、admin:Welcome1
、admin:password123
如果試用版過期 → 轉成 Splunk Free,無需身份驗證!
如果成功登入,就可以上傳 App、執行 Python、PowerShell 腳本。
2. 濫用內建功能
Splunk 允許安裝「自訂 App」,而 App 裏面可以包含
inputs.conf
指定定時執行 script。
(A) Clone 攻擊模板 Repo:裏面已經有好用嘅 Splunk App 結構同示範反向 shell 腳本。
(B) 編輯反向 shell 腳本進入目錄:
用你鍾意嘅編輯器開
run.ps1
:⚠ 例子:
(C) 檢查inputs.conf
reverse_shell_splunk/reverse_shell_splunk/default/inputs.conf
應該長這樣:
代表 Splunk 會每 10 秒執行
run.bat
,而
run.bat
會調用run.ps1
,執行 PowerShell 反彈 shell。
(D) 打包成 splunk app 檔案:
3️⃣ 上傳 & 觸發
開瀏覽器登入 Splunk:
Splunk 一啟用 App,就會執行
inputs.conf
指定腳本。
選:Manage Apps → Install app from file → 選 updater.tar.gz → Upload
(E) 開啟監聽器:
然後登入 Splunk Web UI App → Manage Apps → Install App from File 上傳
updater.tar.gz
App 被啟用後,每 10 秒會執行腳本,Netcat 會接收到 SYSTEM 權限反彈 shell。
3️⃣ Linux 系統同樣方法
改
rev.py
成 Python 反向 shell:
同樣打包 splunk_shell 資料夾,透過 Web UI 上傳,即可 RCE。
3. Splunk CVE 利用方向
Splunk 曾有 SSRF 漏洞(可繞過 API 權限)
CVE-2018-11409:可以利用 dashboard XML 文件進行 RCE
如果 REST API 無需驗證,可以用 API 呼叫將惡意 App 上傳或注入 script
4. 連鎖漏洞
Windows 主機
檢查 whoami
→ 如果 SYSTEM 權限,即可嘗試 dump 域憑證
搜索域帳號 / 密碼
dir C:\Program Files\Splunk\etc\
找 config,有可能 plaintext 密碼
Linux 主機
cat /opt/splunk/etc/passwd
文件(存 local users hash)
內網掃描
使用 ping
、nmap
、net view
、net group /domain
橫向移動
試試用抓到嘅憑證 WinRM / RDP / SMB
提權
schtasks /query
或 wmic
查有冇可寫服務
持久化
建立新 admin 使用者 net user pwned P@ssw0rd /add
最后更新于
这有帮助吗?