Repository navigation
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dev #3534 +/- ##
======================================
+ Coverage 91% 91% +1%
======================================
Files 463 463
Lines 49758 49981 +223
======================================
+ Hits 44890 45107 +217
- Misses 4868 4874 +6 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
📊 Performance Benchmark Report
📈 Detailed Results (All Benchmarks)
🎯 Performance Summary+ 1 improvement 🚀
30 unchanged ✅🔍 Significant Changes (>10%)
🐍 Python Version 3.11.17 |
en0f
left a comment
There was a problem hiding this comment.
See comment if merge fails >
Old CLI flag and module name now stop the scan. The PR removes -ec/--exclude-cdn and the portfilter module, and leaves no alias or deprecation path. I checked both on the PR branch:
bbot -t evilcorp.com -ec exits with bbot: error: unrecognized arguments: -ec.
A preset that lists modules: [portfilter] fails validation with Could not find scan module "portfilter".
That will break any saved preset, script or CI job that uses either one, including any BBOT Enterprise or bbot-server presets or command lines. If the hard break is intended, check those downstream repos before this ships. If it isn’t, the simplest fix is to keep -ec as a no-op alias that prints a deprecation warning, since filtering is now on by default.
|
|
Closes #3545
CDNs and WAFs like Cloudflare answer on a dozen or so ports (2052-2096, 8080, 8443, 8880) on every IP, so port sources like
shodan_idbreport all of them as open for every host behind them. Almost none of them lead anywhere, but each one becomes anOPEN_TCP_PORT, gets probed byhttp, and produces junk URLs. On one realsubdomain-enumscan, 2,035 ofshodan_idb's 2,560 open ports were non-80/443 ports on CDN/WAF-tagged hosts.Filtering these out was already possible with the
portfiltermodule, but it was opt-in (--exclude-cdnor a handful of presets). This makes the filter core behavior, on by default, and removes the module.Behavior
ScanEgressdropsOPEN_TCP_PORT,URL_UNVERIFIEDandURLevents on hosts taggedcdnorwaf, unless the port is 80 or 443.-t host:8443keeps that port and anything discovered on it.--allow-cdn-portsturns the filter off and restores the previous default behavior.Config
Breaking changes
--allow-cdn-portsorcdn_port_filter.enabled: falseis set.portfiltermodule is removed. Presets that list it, or setmodules.portfilter.*, need to drop those lines; the equivalent settings are nowcdn_port_filter.tagsandcdn_port_filter.allowed_ports.--exclude-cdn/-ecis deprecated. It still parses but does nothing except log a warning, since the filter is now the default.Other changes
portfilterremoved from the nuclei and lightfuzz presets that listed it.test_module_portfilter.pyandtest_exclude_cdnare replaced bytest_cdn_port_filter.