Skip to content

BBOT 3.0 - blazed_elijah#2007

Open
TheTechromancer wants to merge 287 commits intodevfrom
3.0
Open

BBOT 3.0 - blazed_elijah#2007
TheTechromancer wants to merge 287 commits intodevfrom
3.0

Conversation

@TheTechromancer
Copy link
Collaborator

@TheTechromancer TheTechromancer commented Nov 22, 2024

Summary

BBOT 3.0 "blazed_elijah" contains changes needed to store BBOT data in a persistent database. The idea is to release it alongside BBOT server, a tiny CLI-only database. This will be paired with a series of blog posts showing how BBOT server can be used on the command line to script out bug bounty hunting, threat intel, and ASM (i.e. running scheduled scans, exporting to CSV, diffing results over time, etc.).

Together, BBOT 3.0 and BBOT server will give us a solid foundation to build a bunch of other useful tooling, like asset inventory. Sometime in the future, it may also be useful to frontend.

Breaking changes

1. .data and .data_json event fields

The main breaking change in BBOT 3.0 is that the name of the .data field is different based on whether it's a str or dict.

  • .data: string
  • .data_json: dictionary

The siem_friendly option has been removed, since BBOT data is now SIEM-friendly by default.

2. Changes to vulnerabilities

The VULNERABILITY event type has been removed in favor of FINDING, which now has several improvements:

  • A name field which holds a generic description common to all findings of the same type. This makes it easier to collapse and categorize them.
  • A confidence field
  • A severity field

Features

Potential changes

@TheTechromancer TheTechromancer changed the base branch from stable to dev November 22, 2024 01:58
@TheTechromancer TheTechromancer self-assigned this Nov 22, 2024
@codecov
Copy link

codecov bot commented Nov 22, 2024

Codecov Report

❌ Patch coverage is 93.61147% with 98 lines in your changes missing coverage. Please review.
✅ Project coverage is 92%. Comparing base (ac39c2b) to head (8fb5cb0).

Files with missing lines Patch % Lines
bbot/modules/base.py 62% 13 Missing ⚠️
bbot/constants.py 71% 11 Missing ⚠️
bbot/scanner/scanner.py 87% 11 Missing ⚠️
bbot/modules/output/nats.py 80% 7 Missing ⚠️
bbot/core/event/base.py 88% 6 Missing ⚠️
bbot/models/pydantic.py 94% 6 Missing ⚠️
bbot/modules/output/mongo.py 90% 6 Missing ⚠️
bbot/modules/internal/excavate.py 80% 5 Missing ⚠️
bbot/core/config/logger.py 20% 4 Missing ⚠️
bbot/modules/output/zeromq.py 88% 4 Missing ⚠️
... and 11 more
Additional details and impacted files
@@          Coverage Diff           @@
##             dev   #2007    +/-   ##
======================================
+ Coverage     92%     92%    +1%     
======================================
  Files        416     433    +17     
  Lines      34398   35170   +772     
======================================
+ Hits       31356   32068   +712     
- Misses      3042    3102    +60     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 17, 2026

📊 Performance Benchmark Report

Comparing dev (baseline) vs 3.0 (current)

📈 Detailed Results (All Benchmarks)

📋 Complete results for all benchmarks - includes both significant and insignificant changes

🧪 Test Name 📏 Base 📏 Current 📈 Change 🎯 Status
Bloom Filter Dns Mutation Tracking Performance 4.23ms 4.22ms -0.4%
Bloom Filter Large Scale Dns Brute Force 17.67ms 17.64ms -0.2%
Large Closest Match Lookup 355.44ms 356.84ms +0.4%
Realistic Closest Match Workload 196.20ms 191.93ms -2.2%
Event Validation Full Scan Startup Small Batch 484.16ms 499.51ms +3.2%
Event Validation Full Scan Startup Large Batch 824.57ms 907.24ms +10.0% 🟡🟡 ⚠️
Make Event Autodetection Small 32.16ms 31.12ms -3.3%
Make Event Autodetection Large 321.52ms 317.80ms -1.2%
Make Event Explicit Types 14.10ms 14.17ms +0.5%
Excavate Single Thread Small 4.169s 4.036s -3.2%
Excavate Single Thread Large 9.922s 9.879s -0.4%
Excavate Parallel Tasks Small 4.247s 4.217s -0.7%
Excavate Parallel Tasks Large 7.327s 7.285s -0.6%
Is Ip Performance 3.22ms 3.19ms -1.0%
Make Ip Type Performance 11.74ms 11.37ms -3.1%
Mixed Ip Operations 4.57ms 4.53ms -0.9%
Typical Queue Shuffle 61.14µs 61.33µs +0.3%
Priority Queue Shuffle 701.17µs 694.47µs -1.0%

🎯 Performance Summary

! 1 regression ⚠️
  17 unchanged ✅

🔍 Significant Changes (>10%)

  • Event Validation Full Scan Startup Large Batch: 10.0% 🐌 slower

🐍 Python Version 3.11.14

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments