-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Fixes issue/remove-ARE (#3475) #3482
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
Once the PR is accepted, I will do the following before merging
|
20d79c6 to
a22ee24
Compare
a22ee24 to
e9ce6a9
Compare
e9ce6a9 to
1d7160f
Compare
1d7160f to
4e6de7a
Compare
| require 'core/main/models/optioncache' | ||
| require 'core/main/models/browserdetails' | ||
| require 'core/main/models/rule' | ||
| require 'core/main/models/execution' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just to confirm - is the execution just the part of ARE or is doing some other activity to?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes they are only used for ARE.
Summary
- core/main/models/rule.rb (BeEF::Core::Models::Rule)
- Comment states: "Table stores the rules for the Distributed Engine" (ARE's other name)
- Has relationship: has_many :executions
- Only referenced in ARE-specific files:
- autorun_engine.rb
- engine.rb
- rule_loader.rb
- core/main/models/execution.rb (BeEF::Core::Models::Execution)
- Comment explicitly states: "Stored info about the execution of the ARE on hooked browsers"
- Only used by the ARE engine
| @@ -0,0 +1,42 @@ | |||
| // | |||
| // Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Old copyright information probably because this PR was created before this updated, should be up to 2026
SummaryRemoves the Auto-Run Engine (ARE) - a legacy feature that auto-executed module chains on browser hook. 116 files changed, +202/-2,565 lines.
✅ What's Good
|
| Criteria | Status |
|---|---|
| No ARE code in JS | |
| No ARE code in Ruby | |
| Modules work normally | ✅ Tests pass |
| DB migration works | ✅ Verified |
Verdict: 👍 APPROVE with Required Changes
Well-executed removal. Address the two issues above before merge.
Post-merge: Delete wiki page, add CHANGELOG entry.
Pull Request
Category
Auto-Run Engine
Feature/Issue Description
Q: Please give a brief summary of your feature/fix
A: Removes the Auto-Run Engine (ARE) - a legacy feature that auto-executed module chains when browsers hooked based on browser/OS rules.
Client-side changes:
Server-side changes:
Configuration and assets:
Q: Give a technical rundown of what you have changed (if applicable)
A:
Phase 1: Module Status Code Migration
Phase 2: Remove Client-Side ARE Code
Phase 3: Remove Admin UI Components
Phase 4: Remove Server-Side Core
Phase 5: Remove Configuration and Assets
Test Cases
Q: Describe your test cases, what you have covered and if there are any use cases that still need addressing.
A:
Automated tests (
bundle exec rake short):Manual tests:
Detailed File Changes
Phase 1: Module Status Code Migration
Objective: Replace misleading
beef.are.status_*()namespace with accuratebeef.status.*().Created Files (1)
Modified Files (64)
Handler files:
Module command.js files:
Deleted Files (1)
Phase 2: Remove Client-Side ARE Code
Objective: Remove outdated ARE reference from client initialization.
Modified Files (1)
Phase 3: Remove Admin UI Components
Objective: Remove Auto Run tab and related UI components from admin panel.
Modified Files (2)
Deleted Files (3)
Phase 4: Remove Server-Side Core
Objective: Remove ARE engine, models, REST handlers, triggers, and tests.
Modified Files (5)
Deleted Files (7)
ARE Engine Core:
ARE Models:
ARE REST API:
ARE Tests:
Created Files (1)
Phase 5: Remove Configuration and Assets
Objective: Remove ARE configuration, rule files, and REST API registration.
Modified Files (2)
Deleted Files (26)
ARE Rule Files: