小迪安全v2023學習筆記(七十四講)—— 驗證機制篇驗證碼繞過思路SRC挖掘演示

文章目錄

  • 前記
  • WEB攻防——第七十四天
    • 機制驗證篇&重定向發送&響應狀態碼&跳過步驟&驗證碼回傳&枚舉
      • 驗證碼突破 - 回傳顯示&規律爆破
        • 漏洞原理
        • 案例演示
          • 回傳顯示
          • 規律爆破
      • 驗證目標 - 重定向發送&重定向用戶
        • 漏洞原理
        • 案例演示
          • 重定向發送
          • 重定向用戶
      • 驗證邏輯 - 修改響應包&跳過步驟URL
        • 漏洞原理
        • 案例演示
      • 實戰SRC案例分享
        • 短信驗證碼回傳顯示
        • 修改用戶對象重置任意用戶
        • 修改響應包重置任意用戶
        • 未驗證導致重置任意用戶
        • 總結

前記

  • 今天是學習小迪安全的第七十四天,本節課主要內容是關于驗證碼機制的,常見的三種驗證方式就是手機驗證碼、短信驗證碼、短信驗證鏈接,這里講了如何去嘗試繞過他們的幾種方法
  • 主要以理解繞過思路為主,當然也需要下去自己復現理解思路邏輯
  • 所需要的靶場資源已放至下方鏈接,需要自取:
    • https://pan.baidu.com/s/1YSjyW4ehxfDrqeeWjEXsSA
    • 提取碼:gaii

WEB攻防——第七十四天

機制驗證篇&重定向發送&響應狀態碼&跳過步驟&驗證碼回傳&枚舉

驗證碼突破 - 回傳顯示&規律爆破

漏洞原理
  • 回傳顯示這個完全是屬于開發者設計失誤,將驗證碼回顯到數據包中,導致攻擊者能夠直接得到驗證碼,繞過
  • 規律爆破這里,主要是驗證碼校驗時位數有限或者規律可知,并且驗證碼存活時間長沒有提交次數限制,導致攻擊者可以通過爆破枚舉的方式繞過
案例演示
回傳顯示
  • 這里之前碰到過一個真實案例,直接將驗證碼回顯到數據包中,能夠直接繞過:
    在這里插入圖片描述

  • 但是現在這種例子應該比較少了,gay迪上面演示的例子應該也是很早之前的例子了

  • 首先找到發送驗證碼的頁面,然后抓包:
    在這里插入圖片描述
    在這里插入圖片描述

  • 發現驗證碼就直接回顯在數據包中,那這時就直接繞過了

  • 或者有些不是直接回顯,而是你輸入錯誤的驗證碼,服務器回顯正確的驗證碼:
    在這里插入圖片描述

  • 反正都可以測,這種漏洞也是越來越少了

規律爆破
  • 這里福利期貨APP應該是沒了,不知道為什么我這邊模擬器打不開,那我們就理解這個思想就好了

  • 其實就是響應包中附帶自己提交的驗證碼值,然后利用BP去爆破:
    在這里插入圖片描述

  • 看哪個成功就直接用,不過現在都是6位驗證碼,而且規定了時間,所以基本是很難爆破了

驗證目標 - 重定向發送&重定向用戶

漏洞原理
  • 重定向發送就是嘗試將本來發送給別人的驗證碼發送到我們自己這里,造成繞過
  • 重定向用戶就是我們自己接收驗證碼,然后提交時將用戶換成目標用戶,造成繞過
  • 核心都是嘗試將驗證碼發送給我們自己,只不過更改的步驟不同,相當于正常接收驗證碼的步驟是:
用戶填入正確電話/郵箱 -->  發送驗證碼  -->  接收驗證碼  -->  進入下一步操作
  • 重定向發送是在第一步到第二步之間,而重定向用戶是在第三步到第四步之間
案例演示
重定向發送
  • 這里演示的案例是MetInfo,搭建環境為PHP5.4MySQL5.7,搭建教程略過

  • 我們需要先配置一下郵箱設置,登錄到后臺,然后點擊設置,找到郵件發送設置,填入相應的信息:
    在這里插入圖片描述

  • 注意密碼填入的是郵箱的授權碼,不知道怎么獲取授權碼的可以上網查一查,這里我用的是163郵箱,然后是在這里獲取的授權碼:
    在這里插入圖片描述

  • 好,我們退出登錄重新來到后臺登錄頁面,選擇忘記密碼,使用電子郵箱找回,然后輸入自己用戶名或電子郵箱:
    在這里插入圖片描述

  • 點擊下一步抓包:
    在這里插入圖片描述

  • 這里是有一個met_host參數可以傳入的,他可以將服務器發送數據包的地址修改為自己的,如 nc 監聽的一個端口

  • 這里在自己的服務器上開啟監聽,然后發包,按道理來說是能夠成功的,但是我本地是沒有復現成功,如果成功接收是這樣:
    在這里插入圖片描述

  • 然后點擊鏈接就可以重置別人的密碼了

  • 這里給我們的啟示就是如果數據包中出現這樣的參數,我們可以嘗試修改為自己,讓他的流量經過我們本地

重定向用戶
  • 這里演示案例是EyouCMS,搭建環境為PHP7.3MySQL5.7,搭建教程就略過了

  • 然后我們配置一下電子郵件,登錄到后臺,然后選擇接口配置,找到電子郵件配置,同樣填入相應的信息即可:
    在這里插入圖片描述

  • 配置好之后,我們先注冊兩個用戶:

+ 用戶A:用戶名: test01密碼: test01郵箱: test01@qq.com (這里換成你的真實郵箱)+ 用戶B:用戶名: test02密碼: test02郵箱: test02@qq.com (這里換成你的真實郵箱)
  • 然后我們通過找回密碼處,嘗試找回test01的密碼:
    在這里插入圖片描述

  • 這里我們可以嘗試抓包看看:
    在這里插入圖片描述

  • 我們嘗試將email的值修改為test02的郵箱,發包:
    在這里插入圖片描述

  • 然后我們就成功進入test02用戶的重置密碼界面:
    在這里插入圖片描述

  • 這里能不能修改成功只用試一下就好了,這里就不繼續演示了

  • 這就是重定向用戶,其實他的原理就是通過郵箱去綁定了用戶,并且沒有做驗證碼與當前郵箱綁定的判斷,導致任何郵箱都可以利用當前的驗證碼繞過,造成漏洞

驗證邏輯 - 修改響應包&跳過步驟URL

漏洞原理
  • 修改響應包主要是因為網站采用的是前端驗證的方式,我們可以通過攔截服務器的響應包,將其修改為正確的返回值,嘗試繞過驗證碼驗證
  • 而URL跳過步驟則是我如果能夠完整的抓到比如忘記密碼步驟的包,那么可以嘗試直接跳到最后一步繞過驗證碼
  • 修改響應包是針對于驗證在前端的
    1. 通過手機找回密碼一般需要短信驗證碼驗證,服務端需要告訴客戶端,輸入的驗證碼是否正確,如果客戶端收到 true 的信息,那么就會向帶著 true 的信息向服務端請求進入下一步,而服務端收到 true 的信息,就會允許客戶端進入下一步,反之,如果是 false 的信息,服務端就不會允許客戶端進入下一步。也就是說我們進入下一步的關鍵是讓服務端收到客戶端的 true 信息,而借助 burpsuite,我們可以修改服務端返回到客戶端的信息,這樣一來,我們就可以輸入任意短信驗證碼,然后將服務端返回的 false 信息改為 true 就可以繞過短信驗證碼的驗證了。
    2. 找回密碼流程一般需要四個步驟:
      • 流程:驗證用戶名 - 驗證短信驗證碼 - 輸入新密碼 - 重置成功
      • 這四個步驟應該緊緊相連,互相相關,只有通過了第一個步驟驗證才可以進入下一個步驟,如果每個步驟之間沒有進行關聯性驗證,就可能導致跳過關鍵驗證步驟,從而導致重置任意賬號密碼。
  • 實戰中先每個流程正確的數據包以及響應包抓取下來,然后進行后續測試
案例演示
  • 這里那個福利期貨演示不了,沒辦法打開,只能說是看視頻然后了解有這種測試思路即可
  • 其實很簡單,基本就是先測試一遍正確的流程,然后再對響應包進行修改,看能不能嘗試繞過

實戰SRC案例分享

  • 這里同樣來看看實戰中的SRC漏洞的挖掘,學習一下測試思路
短信驗證碼回傳顯示
  • 這里就是上面說過的,不再演示
修改用戶對象重置任意用戶

在這里插入圖片描述

  • 這里就是忘記密碼的時候抓包,發現他有一個userid的參數,我們可以嘗試修改該參數為他的前一位id
  • 為什么是前一位呢,因為如果他是遞增的id值,那么后面的id可能就沒有被注冊過,也就沒什么用
  • 然后這里修改之后發現能夠成功重置其他用戶的信息
修改響應包重置任意用戶
  • 還是一樣到重置密碼功能處,發送驗證碼然后抓包:
    在這里插入圖片描述

  • 我們這里可以測試重定向,或者抓取服務器的響應包看看:
    在這里插入圖片描述

  • 發現他的回顯為false,并且提示驗證碼錯誤,那我們是不是可以猜測返回值為true或者success這些就說明驗證碼正確呢

  • 于是修改響應包中的返回值為true,然后放包,發現他提示驗證碼正確,并成功進入重置密碼頁面:
    在這里插入圖片描述
    在這里插入圖片描述

未驗證導致重置任意用戶
  • 這里就是開發者在驗證的時候沒有判斷當前id和驗證碼信息是否綁定,導致攻擊者可以通過修改參數r為其他的用戶id,就能夠重置其密碼
    在這里插入圖片描述
總結
  • 所以總的來說,其實就是看參數,然后修改再修改,看看開發者有沒有存在邏輯上的紕漏

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

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

相關文章

福彩雙色球第2025100期籃球號碼分析

福彩雙色球第20250100期籃球號碼分析,上期開出數字14,數字形式是2路球,合數偶數,大號區域數字!最近十幾期籃球明顯大號區域得數字比較多,本期直接排除大號區域數字10-11-12-13-14-15-16。最近十幾期籃球出合…

【74LS112JK觸發器三進制】2022-10-8

緣由雙jk觸發器的工作原理是什么-其他-CSDN問答 JK觸發器和觸發器中最基本的RS觸發器結構相似,其區別在于,RS觸發器不允許R與S同時為1,而JK觸發器允許J與K同時為1。當J與K同時變為1的同時,輸出的值狀態會反轉。也就是說&#xff…

ABAP - CPI - pass header parameter and filter parameter to odata service

e.g. call the cpi service from postman, and pass the header parameter and filter parameter to it:in the CPI integration flow (iflow), create the iflow as below:deploy this iflow, then use postman to test it, set breakpoint in backend odata service:

大規模數據抓取挑戰:Python反爬蟲策略與數據去重技術全面解析

引言 在進行大規模數據抓取時,爬蟲面臨的兩大挑戰是:反爬蟲技術和數據去重。隨著網絡爬蟲的廣泛應用,網站和平臺越來越注重保護其數據,采取了各種反爬蟲措施,防止數據被惡意抓取。而在抓取過程中,如何有效去…

【Python學習筆記】whl包打包

將python代碼、文件、數據打成一個whl包,可以直接pip 安裝到系統中,有兩種方法:(1)setup.py;(2)pyproject.toml1. 使用setup.py├── CHANGELOG.md ├── README.md ├── build …

Mac Pro M4芯片 安裝 VMware Fusion 和 windows

Mac Pro M4芯片 安裝 VMware Fusion 和 windows 吐槽: 第一次從Intel芯片換成M芯片Mac…虛擬機坑了我一把!搞了很久! 1、安裝 VMwareFusion Pro 這個軟件已經正式免費提供給個人用戶使用! 【官網】 VMware Fusion Pro Download 1. 注冊登錄 省略…進入管理后臺 2. 下載虛…

Carrier Aggregation Enabled MIMO-OFDM Integrated Sensing and Communication

文章目錄C. Sensing ModeII. A NOVEL CA-ENABLED MIMO-OFDM ISAC SIGNAL PROCESSING METHODA. Signal Preprocessing StageB. Sensing Performance Analysis對支持 CA 的 ISAC 系統的研究可分為兩類:帶內 CA 和帶間 CA。支持 CA 的 ISAC 系統的主要挑戰在于信號設計…

Linux 下 Docker 容器部署指南(Java + Redis 示例)

Linux 下 Docker 容器部署指南(Java Redis 示例)一、Docker 鏡像源配置二、構建 Docker 鏡像三、運行 Docker 容器四、查看容器日志五、實踐思考與擴展在 Linux 上部署 Java 應用到 Docker 容器中,并訪問宿主機的 Redis 服務,是一…

智能聊天機器人-基于Spring AI實現

項目背景隨著??智能技術的快速發展和?模型開源趨勢的興起,智能聊天機器?在客服、知識問答、?活助? 等領域得到了?泛應?,我們接下來模仿這些應用實現一個智能的聊天機器人核心功能1.對話支持用戶和機器人之間的對話實時響應用戶的輸入,進行回答2.…

廣東省省考備考(第九十天8.30)——判斷推理(強化訓練)

判斷推理:類比推理(訓練1) 錯題解析 第一步:判斷題干詞語間邏輯關系。 綾、羅、綢、緞表示的是四種不同的絲織物,四者為并列關系,且分別都與絲織物構成包容關系中的種屬關系。 第二步:判斷選項詞…

DFS 回溯 【各種題型+對應LeetCode習題練習】

目錄 什么是深度優先搜索(DFS) DFS題型分類 DFS和回溯的關系 排列與組合 LeetCode 46 全排列 LeetCode 47 全排列 II LeetCode 39 組合總和 LeetCode 40 組合總和 II 子集 LeetCode 78 子集 LeetCode 90 子集 II 分割問題 LeetCode 131 分割…

大模型備案、算法備案補貼政策匯總【廣東地區】

廣州海珠 《廣州市海珠區建設人工智能大模型應用示范區實施細則的通知》規定,自 2024 年 6 月 18 日起至 2027 年 3 月 20 日,大規模企業首次完成國家級生成式人工智能(大語言模型)上線備案的,可獲得最高 100 萬元一次…

鴻蒙服務端開發資料匯總

文章目錄鴻蒙服務端開發資料匯總一、核心概念1.1 分布式架構1.2 微內核設計1.3 元服務架構二、技術棧2.1 開發語言2.2 開發框架與工具2.3 核心技術能力三、官方文檔與資源3.1 官方文檔3.2 示例代碼與開源資源四、應用案例4.1 政務領域4.2 金融領域4.3 交通出行4.4 企業辦公五、…

基于51單片機霍爾測速儀表測轉速調速系統設計

1 系統功能介紹 本設計為 基于51單片機霍爾測速儀表測轉速調速系統。系統以STC89C52單片機為核心,結合霍爾傳感器、LCD1602顯示模塊、電位器調速電路與電機驅動模塊,實現了對旋轉裝置的轉速檢測、數據顯示以及實時調節電機轉速的功能。 系統主要功能包括…

前端-初識Vue實例

一.準備容器 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </head>…

基于FPGA的簡易醫療呼叫器實現,包含testbench

目錄 1.課題概述 2.系統測試效果 3.核心程序與模型 4.系統原理簡介 5.完整工程文件 1.課題概述 醫院護理呼叫系統是病人請求值班醫生或護士進行緊急處理或咨詢的工具&#xff0c;可將病人的請求快速傳送給值班醫生或護士。其基本功能就是通過一種簡便的途徑使護理對象與醫…

Maya綁定基礎:創建骨骼和蒙皮、蒙皮權重控制的兩種方法

目錄 1 創建骨骼和蒙皮 2 蒙皮權重控制 方法一 3 蒙皮權重控制 方法二 1 創建骨骼和蒙皮 新建一個圓柱體 把圓柱體拉長一點&#xff0c;調到前視圖 骨架--創建關節 同時選中骨骼和模型&#xff0c;菜單欄--蒙皮--綁定蒙皮 對關節進行旋轉 詳細的步驟參考這個鏈接&#xf…

【Settings】OTA 升級時更新 Settings 數據庫

一、問題描述 基于 Android 14平臺&#xff0c;隨著后續的 UI 更新需要將某個控制項的 Settings 值更新&#xff0c;需要更新 SettingsProvider 的值。二、問題分析 1. 定義一個 Settings 常量 frameworks/base/core/java/android/provider/Settings.java /*** Whether to use …

開發electron時候Chromium 報 Not allowed to load local resource → 空白頁。

報錯含義 主進程&#xff08;main.js&#xff09;里 win.loadFile()/win.loadURL() 指向了 file:///…/app.asar/build/index.html&#xff0c; 但打包后真正的文件位于 app.asar 內部&#xff0c;路徑拼錯&#xff0c;于是 Chromium 報 Not allowed to load local resource →…

Ethan獨立開發新品速遞 | 2025-08-30

每日精選Product Hunt上最值得關注的獨立產品&#xff0c;發現全球創新靈感&#xff0c;助力你的產品成長。 下面從今天的 Product Hunt 熱榜中篩選出對獨立開發者&#xff08;尤其是注重開發工具、AI 工具、SaaS 與創業工具&#xff09;的10個最有參考價值的項目。篩選標準側重…