High, CVSS 7.1PyPIPublished
Protego has exponential backtracking ReDoS in robots.txt URL wildcard matching
CVE-2026-55520 · GHSA-wjmf-p669-5m5p
- Affected
- PyPI protego <= 0.6.1
- Fixed in
- 0.6.2· Vendor fix available
- Issue
- Problem description Protego constructs regular expressions to match URLs against robots.txt Allow: and Disallow: directives, see protego.urlpattern.URLPattern.preparepatternforregex(). Every in the directive value is translated into a lazy .? regex piece, thus a specially crafted directive value with many asterisks may produce a regex that freezes the parser due to exponential backtracking. Impact Parsing a specially crafted robots.txt with protego.Protego.parse() and then trying to match an URL with protego.Protego.canfetch() results in the latter call not returning for a period dependent on the length of the URL. Proof of concept
Recommended action: Upgrade to 0.6.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.