CSRF vs SSRF詳解

一、CSRF(跨站請求偽造)攻擊全解

攻擊原理示意圖

受害者瀏覽器
├── 已登錄銀行網站(Cookie存活)
└── 訪問惡意網站執行:<img src="http://bank.com/transfer?to=hacker&amount=1000000">

核心技術要點

  1. 信任濫用機制

    • 利用瀏覽器自動攜帶Cookie的特性,偽造已認證用戶的HTTP請求(GET/POST均可)
    • 經典攻擊鏈:誘導點擊 → 攜帶身份Cookie → 執行敏感操作
  2. 繞過同源策略的技巧

    <!-- 表單自動提交 -->
    <form action="http://api/password/change" method="POST"><input type="hidden" name="new_password" value="hacked">
    </form>
    <script>document.forms[0].submit();</script>
    
  3. 高級攻擊變種

    • JSON CSRF:通過<script>標簽觸發JSONP接口
    • CORS濫用:利用寬松的CORS配置發送跨域請求

二、SSRF(服務端請求偽造)攻擊深潛

內網滲透典型場景

攻擊者 --> 可控服務器請求參數(如URL=xxx)↓云服務器元數據(http://169.254.169.254/latest/meta-data)↓獲取臨時密鑰 → 接管云主機

協議利用與繞過技巧

協議攻擊用途示例Payload
file://讀取服務器本地文件url=file:///etc/passwd
dict://端口掃描與服務指紋識別url=dict://127.0.0.1:6379/info
gopher://構造任意TCP協議包發送Redis未授權訪問指令

云環境SSRF自動化工具

# 使用SSRFmap進行自動化探測
python3 ssrfmap.py -r data.txt -p url -m cloud

三、雙S攻擊核心差異對照表
維度CSRFSSRF
攻擊媒介利用用戶瀏覽器利用服務端網絡權限
目標系統第三方Web應用服務器所在內網/云環境
數據流向客戶端 → 目標站點服務端 → 內部系統
檢測工具Burp Suite CSRF PoC GeneratorGopherus + Wireshark

四、企業級防御方案

CSRF立體化防御

  1. 令牌動態化(Spring Security示例)

    // 生成Token
    String csrfToken = UUID.randomUUID().toString();
    request.getSession().setAttribute("csrfToken", csrfToken);// 驗證Token
    if (!request.getParameter("csrfToken").equals(session.getAttribute("csrfToken"))) {throw new CsrfException();
    }
    
  2. SameSite Cookie策略(Nginx配置)

    add_header Set-Cookie "JSESSIONID=xxx; Path=/; Secure; SameSite=Strict";
    
  3. 關鍵操作二次驗證

    • 敏感操作(如轉賬)強制要求短信/郵箱驗證

SSRF深度防御體系

  1. 請求鏈路上鎖(Java白名單校驗)

    private static final Pattern DOMAIN_WHITELIST = Pattern.compile("^(https?://)(image\.example\.com|cdn\.safe\.net)");if (!DOMAIN_WHITELIST.matcher(url).matches()) {throw new SSRFException("非法域名請求");
    }
    
  2. 協議與端口管控(Linux防火墻策略)

    # 禁止服務器出站訪問內網段
    iptables -A OUTPUT -d 10.0.0.0/8 -j DROP
    iptables -A OUTPUT -d 172.16.0.0/12 -j DROP
    
  3. 云環境加固方案

    • 禁用EC2元數據接口的公共訪問(AWS示例)
    aws ec2 modify-instance-metadata-options --instance-id i-1234567890abcdef0 --http-tokens required
    

五、攻防演練實戰案例

CSRF釣魚攻擊復現

  1. 使用Burp Suite生成釣魚頁面:

    Pro → Generate CSRF PoC → 自動生成含隱藏表單的HTML
    
  2. 誘導用戶點擊后,觀察后臺權限變更日志

SSRF內網Redis攻防

  1. 構造Gopher協議攻擊包:

    # 使用Gopherus生成Redis未授權訪問Payload
    ./gopherus.py --exploit redis
    
  2. 通過SSRF漏洞執行flushall等危險指令


六、防御效果驗證工具
工具名稱用途使用場景
CSRF Tester瀏覽器插件自動檢測CSRF漏洞研發自測階段快速驗證
SSRF Sheriff自動化模糊測試SSRF潛在點上線前安全掃描

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

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

相關文章

Python PDF解析利器:pdfplumber | AI應用開發

Python PDF解析利器&#xff1a;pdfplumber全面指南 1. 簡介與安裝 1.1 pdfplumber概述 pdfplumber是一個Python庫&#xff0c;專門用于從PDF文件中提取文本、表格和其他信息。相比其他PDF處理庫&#xff0c;pdfplumber提供了更直觀的API和更精確的文本定位能力。 主要特點…

niuhe 插件教程 - 配置 MCP讓AI更聰明

niuhe 插件官方教程已經上線, 請訪問: http://niuhe.zuxing.net niuhe 連接 MCP 介紹 API 文檔的未來&#xff1a;MCP&#xff0c;讓協作像聊天一樣簡單. MCP 是 Model Context Protocol(模型上下文協議)的縮寫&#xff0c;是 2024 年 11 月 Claude 的公司 Anthropic 推出并開…

26考研——排序_插入排序(8)

408答疑 文章目錄 二、插入排序基本概念插入排序方法直接插入排序算法描述示例性能分析 折半插入排序改進點算法步驟性能分析 希爾排序相關概念示例分析希爾排序的效率效率分析空間復雜度時間復雜度 九、參考資料鮑魚科技課件26王道考研書 二、插入排序 基本概念 定義&#x…

精華貼分享|從不同的交易理論來理解頭肩形態,殊途同歸

本文來源于量化小論壇策略分享會板塊精華帖&#xff0c;作者為孫小迪&#xff0c;發布于2025年2月17日。 以下為精華帖正文&#xff1a; 01 前言 學習了一段時間交易后&#xff0c;我發現在幾百年的歷史中&#xff0c;不同門派的交易理論對同一種市場特征的稱呼不一樣&#x…

leetcode437.路徑總和|||

對于根結點來說&#xff0c;可以選擇當前結點為路徑也可以不選擇&#xff0c;但是一旦選擇當前結點為路徑那么后續都必須要選擇結點作為路徑&#xff0c;不然路徑不連續是不合法的&#xff0c;所以這里分開出來兩個方法進行遞歸 由于力扣最后一個用例解答錯誤&#xff0c;分析…

北斗導航 | 改進奇偶矢量法的接收機自主完好性監測算法原理,公式,應用,RAIM算法研究綜述,matlab代碼

改進奇偶矢量法的接收機自主完好性監測算法研究 摘要 接收機自主完好性監測(RAIM)是保障全球導航衛星系統(GNSS)安全性的核心技術。針對傳統奇偶矢量法在噪聲敏感性、多故障隔離能力上的缺陷,本文提出一種基于加權奇偶空間與動態閾值的改進算法。通過引入觀測值權重矩陣重…

深度神經網絡全解析:原理、結構與方法對比

深度神經網絡全解析&#xff1a;原理、結構與方法對比 1. 引言 隨著人工智能的發展&#xff0c;深度神經網絡&#xff08;Deep Neural Network&#xff0c;DNN&#xff09;已經成為圖像識別、自然語言處理、語音識別、自動駕駛等領域的核心技術。相比傳統機器學習方法&#x…

經典論文解讀系列:MapReduce 論文精讀總結:簡化大規模集群上的數據處理

&#x1f9e0; MapReduce 論文解讀總結&#xff1a;簡化大規模集群上的數據處理 原文標題&#xff1a;MapReduce: Simplified Data Processing on Large Clusters 作者&#xff1a;Jeffrey Dean & Sanjay Ghemawat 發表時間&#xff1a;2004 年 發表機構&#xff1a;Google…

通過Appium理解MCP架構

MCP即Model Context Protocol&#xff08;模型上下文協議&#xff09;&#xff0c;是由Anthropic公司于2024年11月26日推出的開放標準框架&#xff0c;旨在為大型語言模型與外部數據源、工具及系統建立標準化交互協議&#xff0c;以打破AI與數據之間的連接壁壘。 MCP架構與Appi…

網頁版五子棋項目的問題處理

文章目錄 config.WebSocketConfig將鍵值對加?OnlineUserManager中線程安全、鎖ObjectMapper來處理json針對多開情況的判定處理連接關閉、異常&#xff08;玩家中途退出&#xff09;后的不合理操作游戲大廳數據更新 config.WebSocketConfig 把MatchAPI注冊進去 ? 在addHandle…

【初探數據結構】歸并排序與計數排序的序曲

&#x1f4ac; 歡迎討論&#xff1a;在閱讀過程中有任何疑問&#xff0c;歡迎在評論區留言&#xff0c;我們一起交流學習&#xff01; &#x1f44d; 點贊、收藏與分享&#xff1a;如果你覺得這篇文章對你有幫助&#xff0c;記得點贊、收藏&#xff0c;并分享給更多對數據結構感…

算法刷題記錄——LeetCode篇(8.7) [第761~770題](持續更新)

更新時間&#xff1a;2025-03-30 算法題解目錄匯總&#xff1a;算法刷題記錄——題解目錄匯總技術博客總目錄&#xff1a;計算機技術系列博客——目錄頁 優先整理熱門100及面試150&#xff0c;不定期持續更新&#xff0c;歡迎關注&#xff01; 763. 劃分字母區間 給你一個字…

Pod 網絡與 CNI 的作用

在 Kubernetes 中&#xff0c;Pod 網絡 是實現容器間通信的核心機制&#xff0c;每個 Pod 擁有獨立的 IP 地址&#xff0c;可直接跨節點通信。CNI&#xff08;Container Network Interface&#xff09; 是 Kubernetes 的網絡插件標準&#xff0c;負責為 Pod 分配 IP、配置網絡規…

使用keepalived結合tomcat和nginx搭建三主熱備架構

角色主機名軟件IP地址用戶client172.25.250.90keepalivedVIP172.25.250.100keepalivedVIP172.25.250.101keepalivedVIP172.25.250.102masterserverAkeepalived, nginx172.25.250.30backupserverBkeepalived, nginx172.25.250.31backupserverCkeepalived, nginx172.25.250.32web…

STRUCTBERT:將語言結構融入預訓練以提升深度語言理解

【摘要】最近&#xff0c;預訓練語言模型BERT&#xff08;及其經過穩健優化的版本RoBERTa&#xff09;在自然語言理解&#xff08;NLU&#xff09;領域引起了廣泛關注&#xff0c;并在情感分類、自然語言推理、語義文本相似度和問答等各種NLU任務中達到了最先進的準確率。受到E…

leetcode_977. 有序數組的平方_java

977. 有序數組的平方https://leetcode.cn/problems/squares-of-a-sorted-array/ 1.題目 給你一個按 非遞減順序 排序的整數數組 nums&#xff0c;返回 每個數字的平方 組成的新數組&#xff0c;要求也按 非遞減順序 排序。 示例 1&#xff1a; 輸入&#xff1a;nums [-4,-1…

Nginx—nginx.conf 配置結構詳解

一、nginx.conf 配置結構 函數 說明 main 全局配置 event 配置工作模式以及連接數 http http模塊相關配置 server 虛擬主機配置&#xff0c;可以有多個 location 路由規則&#xff0c;表達式 upstream 集群、內網服務器&#xff08;負載均衡也在這里邊配&#xff…

斐波那契數列----C語言

關于斐波那契 已知&#xff1a; 問題背景&#xff1a;一對兔子從第3個月開始每月生一對新兔子&#xff0c;新兔子同樣在第3個月開始繁殖。 關鍵觀察&#xff1a; 第1個月&#xff1a;1對&#xff08;初始兔子&#xff09;。 第2個月&#xff1a;1對&#xff08;未成熟&#…

vulhub靶場—— Tomcat8

目錄 一、漏洞描述 二、靶場搭建 三、漏洞復現 1、弱密碼 2、文件上傳 一、漏洞描述 環境描述&#xff1a; Tomcat 支持后臺部署 war 文件&#xff0c;可以直接將 webshell 部署到 web 目錄下。tomcat 默認的管理頁面 manager 使用 basic 認證用戶名和密碼登錄&#xff0…

使用 Spring AI Aliabab Module RAG 構建 Web Search 應用

使用 Spring AI Alibaba 構建大模型聯網搜索應用 Spring AI 實現了模塊化 RAG 架構&#xff0c;架構的靈感來自于論文“模塊化 RAG&#xff1a;將 RAG 系統轉變為類似樂高的可重構框架”中詳述的模塊化概念。 Spring AI 模塊化 RAG 體系 總體上分為以下幾個步驟&#xff1a; …