Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-55520— Protego: Exponential backtracking ReDoS in robots.txt URL wildcard matching

Quick assessment

Affected
scrapy protego
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Protego 是一个纯 Python 编写的 robots.txt 解析器,支持现代约定。在 0.6.2 版本之前, 方法会将 Allow 或 Disallow 指令中的每个星号( )转换为懒惰正则表达式通配符,因此,包含大量星号的指令会引发指数级回溯(exponential backtracking)。在 处理了经过精心构造的 robots.txt 文件后, 在匹配一个几乎不匹配的 URL 时可能花费攻击者可控的时间,从而对爬虫造成拒绝服务(DoS)影响。存在漏洞的代码路径位于 中的 匹配逻辑。该问题已在 0.

CVSS 7.1 · High

Possible ATT&CK Techniques 1 AI

T1499 · Endpoint Denial of Service

Affected Version Matrix 1

VendorProduct Version RangeStatus
scrapy protego < 0.6.2 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-55520

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Protego: Exponential backtracking ReDoS in robots.txt URL wildcard matching
Source: CVE Program / CVE List V5
Vulnerability Description
Protego is a pure-Python robots.txt parser with support for modern conventions. Prior to 0.6.2, protego._urlpattern._URLPattern._prepare_pattern_for_regex translates every asterisk in an Allow or Disallow directive into a lazy regular-expression wildcard, so a directive containing many asterisks creates exponential backtracking. After protego.Protego.parse processes a crafted robots.txt file, protego.Protego.can_fetch can spend an attacker-controlled period matching a near-miss URL and deny service to the crawler. The vulnerable path is src/protego/_urlpattern.py in the _URLPattern match logic. This issue is fixed in version 0.6.2.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Source: CVE Program / CVE List V5
Vulnerability Type
未加控制的资源消耗(资源穷尽)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
scrapy protego < 0.6.2 -

II. Public POCs for CVE-2026-55520

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-55520

登录查看更多情报信息。

Patches & Fixes for CVE-2026-55520 (1)

Vendor Advisories for CVE-2026-55520 (1)

Vendor Pages for CVE-2026-55520 (1)

IV. Related Vulnerabilities

V. Comments for CVE-2026-55520

No comments yet


Leave a comment