成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

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

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

[[421847]]

關于Regexploit

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

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

該工具的主要目的如下:

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

最壞情況復雜性

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

工具安裝

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

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

  1. python3 -m venv .env 
  2.  
  3. source .env/bin/activate 

然后使用pip來安裝Regexploit:

  1. pip install regexploit 

工具使用

1. 正則表達式處理

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

  1. regexploit 

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

  1. cat myregexes.txt | regexploit 

2. 自動提取正則表達式

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

(1) Python代碼

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

  1. regexploit-py my-project/ 
  2.  
  3. regexploit-py "my-project/**/*.py" --glob 

(2) Javascript / Typescript

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

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

(3) JSON/YAML

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

  1. regexploit-json *.json 
  2.  
  3. regexploit-yaml *.yaml 

(4) C#(.NET)

  1. regexploit-csharp something.cs 

工具使用樣例

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

  1. $ regexploit 
  2.  
  3. v\w*_\w*_\w*$ 
  4.  
  5. Pattern: v\w*_\w*_\w*$ 
  6.  
  7. --- 
  8.  
  9. Worst-case complexity: 3 ⭐⭐⭐ (cubic) 
  10.  
  11. Repeated character: [5f:_] 
  12.  
  13. Final character to cause backtracking: [^WORD] 
  14.  
  15. Example: 'v' + '_' * 3456 + '!' 

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

項目地址

Regexploit:【GitHub傳送門

 

責任編輯:趙寧寧 來源: FreeBuf
相關推薦

2018-08-23 09:16:22

2023-03-28 08:00:00

2010-03-25 18:25:36

Python正則表達式

2009-09-16 17:29:30

正則表達式使用詳解

2023-10-07 08:25:09

Java處理工具正則表達式

2012-05-08 13:29:01

VB

2024-12-25 15:09:38

Python字符串函數

2020-09-04 09:16:04

Python正則表達式虛擬機

2018-09-27 15:25:08

正則表達式前端

2021-05-25 09:18:04

正則表達式Linux字符串

2012-08-20 10:15:44

2024-09-14 09:18:14

Python正則表達式

2018-04-21 07:11:53

正則表達式Python函數

2010-07-14 09:47:04

Perl正則表達式

2009-07-12 16:50:08

2022-03-28 06:19:14

正則表達式開發

2009-02-18 09:48:20

正則表達式Java教程

2019-07-17 15:45:47

正則表達式字符串前端

2021-01-27 11:34:19

Python正則表達式字符串

2009-09-16 18:19:34

正則表達式組
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品不卡 | 精品九九 | 国产精品视频免费观看 | 天堂一区二区三区 | 97精品超碰一区二区三区 | 亚洲国产一区在线 | 亚洲电影中文字幕 | 日韩视频在线观看中文字幕 | 免费国产一区二区视频 | 亚洲视频在线一区 | 久久精品中文字幕 | 日本不卡一区二区三区 | 日韩视频中文字幕 | 久久国产精品视频 | 国产精品三级久久久久久电影 | 国产在线一区二区三区 | 日本二区在线观看 | 国产精品一区二区三 | 欧美一级精品片在线看 | 亚洲综合在线视频 | 亚洲精品一区在线观看 | 国产9 9在线 | 中文 | 国产美女视频黄a视频免费 国产精品福利视频 | a级黄色毛片免费播放视频 国产精品视频在线观看 | 人人玩人人添人人澡欧美 | 亚洲精品成人网 | 国产精品亚洲精品 | 亚洲欧美一区二区三区在线 | 亚洲成人一区二区三区 | 久久精品91 | 日韩图区 | 精品国产不卡一区二区三区 | 欧美日韩国产中文 | 亚洲天堂日韩精品 | 电影午夜精品一区二区三区 | 国产在线一区二区三区 | 午夜免费电影 | 狠狠av| 电影午夜精品一区二区三区 | 亚洲精品福利在线 | 69av片|