<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    如何使用Regexploit識別ReDoS正則表達式拒絕服務攻擊

    一顆小胡椒2022-04-28 22:18:30

    關于Regexploit

    Regexploit可以幫助廣大研究人員找出易受正則表達式拒絕服務攻擊(ReDoS)的正則表達式。

    許多默認正則表達式解析器都很復雜,而且存在很多安全問題。當顯示匹配的輸入字符串時,使用正則表達式匹配的方式可能速度會很快,但是某些不匹配的輸入字符串可能會使正則表達式匹配器進入瘋狂的回溯循環,并且需要花費很長時間來處理。此時,將有可能導致應用程序出現拒絕服務的情況,因為CPU在嘗試匹配正則表達式時會卡住。

    該工具的主要目的如下:

    尋找易受正則表達式拒絕服務攻擊(ReDoS)的正則表達式;
    給出一個會導致死循環回溯的惡意字符串示例;

    最壞情況復雜性

    最壞情況復雜性反映了正則表達式匹配器的回溯過程相對于輸入字符串長度的復雜性。這個最壞情況復雜性是以立方計算的,如果字符串的易受攻擊部分的長度增加了一倍,則執行時間應延長約8倍(2^3)。

    工具安裝

    該工具需要在本地安裝并配置好Python 3.8+環境。由于Regexploit會從JavaScript/TypeScript代碼中提取正則表達式,因此還需要安裝好NodeJS 12+。

    首先,我們可以創建一個虛擬環境:

    python3 -m venv .env
    source .env/bin/activate
    

    然后使用pip來安裝Regexploit:

    pip install regexploit
    

    工具使用

    正則表達式處理

    我們可以通過stdin(每個正則表達式占一行)向Regexploit輸入正則表達式:

    regexploit
    

    或者直接處理正則表達式列表文件:

    cat myregexes.txt | regexploit
    

    自動提取正則表達式

    Regexploit內置支持解析Python、JavaScript、TypeScript、C#、YAML和JSON代碼中的正則表達式。

    Python代碼

    通過AST解析Python代碼(無需執行)并提取正則表達式,并分析是否易受ReDoS:

    regexploit-py my-project/
    regexploit-py "my-project/**/*.py" --glob
    

    Javascript / Typescript

    該功能將使用regexploit/bin/javascript中捆綁的NodeJS包實現,并解析JavaScript中的正則表達式:

    regexploit-js my-module/my-file.js another/file.js some/folder/
    regexploit-js "my-project/node_modules/**/*.js" --glob
    

    JSON/YAML

    YAML支持需要安裝pyyaml,我們可以使用命令“pip install regexploit[yaml]”進行安裝:

    regexploit-json *.json
    regexploit-yaml *.yaml
    

    C#(.NET)

    regexploit-csharp something.cs
    

    工具使用樣例

    運行Regexploit,并在命令行中輸入正則表達式“v\w*_\w*_\w*$”:

    $ regexploit
    v\w*_\w*_\w*$
    Pattern: v\w*_\w*_\w*$
    ---
    Worst-case complexity: 3 ??? (cubic)
    Repeated character: [5f:_]
    Final character to cause backtracking: [^WORD]
    Example: 'v' + '_' * 3456 + '!'
    

    此時,Regexploit將返回評估結果。

    項目地址

    Regexploit:https://github.com/doyensec/regexploit

    javascript正則表達式
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    許多默認正則表達式解析器都很復雜,而且存在很多安全問題。此時,將有可能導致應用程序出現拒絕服務的情況,因為CPU在嘗試匹配正則表達式時會卡住。這個最壞情況復雜性是以立方計算的,如果字符串的易受攻擊部分的長度增加了一倍,則執行時間應延長約8倍(2^3)。工具安裝該工具需要在本地安裝并配置好Python 3.8+環境。此時,Regexploit將返回評估結果。
    2019 年七月初,Cloudflare 曾經全球中斷服務,原因是為了改進內聯 JavaScript 屏蔽,
    字符串是 JavaScript 中的重要數據類型
    前言本系列的前十三篇文章,講解了V8執行Javascript時最基礎的工作流程和原理,包括詞法分析、語法分析、字節碼生成、Builtins方法、ignition執行單元,等等,達到了從零做起,入門學習的目的。接下來的文章將以問題為導向講解V8源碼,例如:以閉包技術、或垃圾回收為專題講解V8中的相關源碼。V8代碼過于龐大,以問題為導向可以使得學習主題更加明確、效果更好。
    近日,Akamai安全情報小組的研究人員發現黑客“創造性“地篡改電商網站的404頁面來竊取用戶的信用卡信息。(研究人員還發現另外一種攻擊手法:將代碼隱藏在HTML圖像標簽的“onerror”屬性和圖像二進制文件中,使其顯示為Meta Pixel代碼片段。)
    思科的Talos專家披露了最近修補的漏洞的詳細信息,這些漏洞影響了流行的Chrome和Firefox Web瀏覽器。第一個問題被稱為CVE-2020-6463,是一個影響PDFium的內存破壞漏洞。PDFium是Chrome和其他應用程序使用的開源PDF庫。該漏洞是一個嚴重程度很高的漏洞,CVSS評分為,Google 于4月發布了Chrome 版本解決了該漏洞 Google對該漏洞獎勵了5,000美元的獎金。攻擊者可以利用這個漏洞,誘騙受害者訪問一個特別設計的URL對象,從而導致越界讀取。
    Ceye DNS:DNS oob平臺 http://ceye.io/. TLS證書信息查詢Censys:https://censys.io. 網絡空間搜索Fofa:https://fofa.info/
    繞過 XSS 檢測機制
    2022-05-05 07:30:30
    跨站點腳本 (XSS) 是最常見的 Web 應用程序漏洞之一。它可以通過清理用戶輸入、基于上下文轉義輸出、正確使用文檔對象模型 (DOM) 接收器和源、執行正確的跨源資源共享 (CORS) 策略和其他安全實踐來完全防止。盡管這些預防性技術是公共知識,但 Web 應用程序防火墻 (WAF) 或自定義過濾器被廣泛用于添加另一層安全性,以保護 Web 應用程序免受人為錯誤或新發現的攻擊向量引入的缺陷
    ImHex是一款功能強大的十六進制編輯器,該工具專為逆向工程分析師、編程開發人員以及那些想好好保護自己眼睛的安全人員所設計。哪怕你每天工作到凌晨三點(雖然不建議),也不會傷害你的眼睛!
    一顆小胡椒
    暫無描述
      亚洲 欧美 自拍 唯美 另类