Compare commits
184 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
997a2e0a9e | ||
|
|
8a400906ae | ||
|
|
b36c502ec5 | ||
|
|
b98eff13e2 | ||
|
|
56b32f5da6 | ||
|
|
e5b227c049 | ||
|
|
7158f0fa44 | ||
|
|
70ec0de175 | ||
|
|
e3a668e258 | ||
|
|
39dd7e1d2d | ||
|
|
ca5e66e9bd | ||
|
|
9a648629d2 | ||
|
|
1fa17e8069 | ||
|
|
ae2b95a286 | ||
|
|
19d2780814 | ||
|
|
1d719b30ee | ||
|
|
eae19d30cd | ||
|
|
f9757c9e8f | ||
|
|
7e20b2883e | ||
|
|
b47c85cbaa | ||
|
|
4069c70a8f | ||
|
|
0316a9f224 | ||
|
|
fa8780706b | ||
|
|
646908176d | ||
|
|
d92d74501f | ||
|
|
ccf5d47bdb | ||
|
|
5f1ac0bd20 | ||
|
|
712dd3604a | ||
|
|
f238e20a51 | ||
|
|
68d19a3221 | ||
|
|
cbb95576b9 | ||
|
|
db8b2eca9c | ||
|
|
57777b301a | ||
|
|
399ab90207 | ||
|
|
391dea3fca | ||
|
|
b5c750d6d8 | ||
|
|
60b30fe849 | ||
|
|
086b0b1dc2 | ||
|
|
0f640ebc0e | ||
|
|
2eab4e51bd | ||
|
|
8078751c0c | ||
|
|
95052f2066 | ||
|
|
35c3912f65 | ||
|
|
647500cf78 | ||
|
|
7178460256 | ||
|
|
8b54f67566 | ||
|
|
d54ec6761d | ||
|
|
6ca679dc9e | ||
|
|
ec4d73915e | ||
|
|
d3aef8aec6 | ||
|
|
58696560dd | ||
|
|
8423b3701e | ||
|
|
20c69be87b | ||
|
|
f847cd0e37 | ||
|
|
6377b02c4f | ||
|
|
32af09b248 | ||
|
|
f923285da2 | ||
|
|
5872df9d64 | ||
|
|
45a046ed2d | ||
|
|
e92da3bdde | ||
|
|
ac3f14b045 | ||
|
|
d678c48608 | ||
|
|
96a08913d9 | ||
|
|
0970bdcd87 | ||
|
|
b2d832073f | ||
|
|
9b22d92265 | ||
|
|
ddc27c8880 | ||
|
|
ff281344d8 | ||
|
|
6409891724 | ||
|
|
2080cf5b0d | ||
|
|
5cec161a7b | ||
|
|
75f169e318 | ||
|
|
dadae2a79c | ||
|
|
ccda2a49f3 | ||
|
|
503e584d97 | ||
|
|
15095d2037 | ||
|
|
7efeef2fb7 | ||
|
|
113b154043 | ||
|
|
fe897906a3 | ||
|
|
2056e83050 | ||
|
|
065c7adf03 | ||
|
|
53c97721e1 | ||
|
|
721f1e790d | ||
|
|
334b0c7e06 | ||
|
|
9eca144092 | ||
|
|
15d2acf52a | ||
|
|
6d57165f63 | ||
|
|
cbd9292331 | ||
|
|
0680a51ad0 | ||
|
|
ff4c89bf46 | ||
|
|
85d8d78112 | ||
|
|
dca4415fb8 | ||
|
|
3b32c19637 | ||
|
|
1756a7a3f2 | ||
|
|
57d2da64fe | ||
|
|
4233269016 | ||
|
|
95793433fa | ||
|
|
c308392cb3 | ||
|
|
8e8087b954 | ||
|
|
647daae3c8 | ||
|
|
c4effae065 | ||
|
|
e789afb8e6 | ||
|
|
8596ab98a0 | ||
|
|
e8a767d548 | ||
|
|
309e86a29d | ||
|
|
7507a7b440 | ||
|
|
08c0d72c37 | ||
|
|
08538b7720 | ||
|
|
447f0953df | ||
|
|
00b9de63c3 | ||
|
|
34b2b8b6f1 | ||
|
|
e1493310e4 | ||
|
|
a67d783cbc | ||
|
|
7d28bfc140 | ||
|
|
b7ebc298e9 | ||
|
|
d3724b84bb | ||
|
|
c3e162a8f5 | ||
|
|
eb4fa92c84 | ||
|
|
ee8afbbecf | ||
|
|
292453e1f7 | ||
|
|
86909af828 | ||
|
|
7ec386881e | ||
|
|
4a8b5b759d | ||
|
|
6189279798 | ||
|
|
7d20c1138c | ||
|
|
bd67b8ba2a | ||
|
|
4b3fce07a0 | ||
|
|
149aeaa944 | ||
|
|
3be084ade6 | ||
|
|
77f59d07d9 | ||
|
|
d9d9c4db1e | ||
|
|
5822a1b5d1 | ||
|
|
841953f112 | ||
|
|
87cc78fc2e | ||
|
|
03030858c9 | ||
|
|
1b1a8b175b | ||
|
|
47cde1a0fd | ||
|
|
b6e82f0273 | ||
|
|
98f646078f | ||
|
|
2de4c379ef | ||
|
|
ff077b7982 | ||
|
|
a10b4489fe | ||
|
|
de344887b6 | ||
|
|
165cd27495 | ||
|
|
7a4721a0ef | ||
|
|
a9407f3945 | ||
|
|
7bd91fcb73 | ||
|
|
da9bc652a9 | ||
|
|
4a971df086 | ||
|
|
ebbcfc39e4 | ||
|
|
4d17e16fdb | ||
|
|
820738f7e0 | ||
|
|
5749cc1e0c | ||
|
|
49bb30aeaa | ||
|
|
5639122928 | ||
|
|
64e3f0b424 | ||
|
|
ac2d6fd9ac | ||
|
|
cc862ae82f | ||
|
|
582c4d67e3 | ||
|
|
bbbcd5895f | ||
|
|
1681054dfc | ||
|
|
37a93b7f36 | ||
|
|
d9e12f82d9 | ||
|
|
0715e33a4e | ||
|
|
1fee3a21d6 | ||
|
|
3834d4aaa3 | ||
|
|
8e64b433bf | ||
|
|
30cb1b2d89 | ||
|
|
03689e4b98 | ||
|
|
e7dd57c97f | ||
|
|
f2792292b1 | ||
|
|
7b30400e4a | ||
|
|
041027ac18 | ||
|
|
c30d1f7c3b | ||
|
|
a578412619 | ||
|
|
0573717aa8 | ||
|
|
71f0fbe75e | ||
|
|
8029f37d44 | ||
|
|
3d13e55d97 | ||
|
|
8d7eedfaaa | ||
|
|
29997f7639 | ||
|
|
880ae79e8b | ||
|
|
054efa1571 | ||
|
|
e89ea1922a |
@@ -1,3 +1,8 @@
|
|||||||
|
---
|
||||||
|
name: Bug report
|
||||||
|
about: Report a bug to help us improve BeEF
|
||||||
|
---
|
||||||
|
|
||||||
## First Steps
|
## First Steps
|
||||||
|
|
||||||
1. Confirm that your issue has not been posted previously by searching here: https://github.com/beefproject/beef/issues
|
1. Confirm that your issue has not been posted previously by searching here: https://github.com/beefproject/beef/issues
|
||||||
@@ -26,6 +31,7 @@
|
|||||||
2. Update `client_debug` to `true`
|
2. Update `client_debug` to `true`
|
||||||
3. Retrieve browser logs from your browser's developer console (Ctrl + Shift + I or F12 depending on browser)
|
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`
|
4. Retrieve your server-side logs from `~/.beef/beef.log`
|
||||||
* If using **beef-xss** logs found with `journalctl -u beef-xss`
|
* 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.**
|
**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
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal 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.
|
||||||
27
.github/workflows/github_actions.yml
vendored
27
.github/workflows/github_actions.yml
vendored
@@ -3,17 +3,28 @@ name: 'BrowserStack Test'
|
|||||||
on:
|
on:
|
||||||
pull_request_target:
|
pull_request_target:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
|
types: [ labeled ]
|
||||||
jobs:
|
|
||||||
|
jobs:
|
||||||
ubuntu-job:
|
ubuntu-job:
|
||||||
name: 'BrowserStack Test on Ubuntu'
|
name: 'BrowserStack Test on Ubuntu'
|
||||||
runs-on: ubuntu-latest # Can be self-hosted runner also
|
runs-on: ubuntu-latest
|
||||||
environment:
|
if: github.event.label.name == 'safe_to_test'
|
||||||
name: Integrate Pull Request
|
env:
|
||||||
env:
|
|
||||||
GITACTIONS: true
|
GITACTIONS: true
|
||||||
steps:
|
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
|
- name: 'BrowserStack Env Setup' # Invokes the setup-env action
|
||||||
uses: browserstack/github-actions/setup-env@master
|
uses: browserstack/github-actions/setup-env@master
|
||||||
with:
|
with:
|
||||||
@@ -27,7 +38,7 @@ jobs:
|
|||||||
local-identifier: random
|
local-identifier: random
|
||||||
|
|
||||||
- name: 'Checkout the repository'
|
- name: 'Checkout the repository'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v6
|
||||||
with:
|
with:
|
||||||
ref: ${{ github.event.pull_request.head.sha }}
|
ref: ${{ github.event.pull_request.head.sha }}
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -40,11 +51,13 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt install libcurl4 libcurl4-openssl-dev
|
sudo apt install libcurl4 libcurl4-openssl-dev
|
||||||
|
|
||||||
- name: 'Configure Bundle testing and install gems'
|
- name: 'Configure Bundle testing and install gems'
|
||||||
run: |
|
run: |
|
||||||
bundle config unset --local without
|
bundle config unset --local without
|
||||||
bundle config set --local with 'test' 'development'
|
bundle config set --local with 'test' 'development'
|
||||||
bundle install
|
bundle install
|
||||||
|
|
||||||
- name: 'Run BrowserStack simple verification'
|
- name: 'Run BrowserStack simple verification'
|
||||||
run: |
|
run: |
|
||||||
bundle exec rake browserstack --trace
|
bundle exec rake browserstack --trace
|
||||||
|
|||||||
12
.github/workflows/stale.yml
vendored
12
.github/workflows/stale.yml
vendored
@@ -18,18 +18,18 @@ jobs:
|
|||||||
pull-requests: write
|
pull-requests: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/stale@v5
|
- uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v10.0.0
|
||||||
with:
|
with:
|
||||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
days-before-stale: 14
|
days-before-stale: 120
|
||||||
days-before-pr-stale: 29
|
days-before-pr-stale: 29
|
||||||
days-before-close: 11
|
days-before-close: 7
|
||||||
days-before-pr-close: 31
|
days-before-pr-close: 31
|
||||||
stale-issue-message: 'This issue as been marked as stale due to inactivity and will be closed in 7 days'
|
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-pr-message: 'Stale pull request message'
|
||||||
stale-issue-label: 'Stale'
|
stale-issue-label: 'Stale'
|
||||||
stale-pr-label: 'no-pr-activity'
|
stale-pr-label: 'no-pr-activity'
|
||||||
exempt-issue-labels: 'Critical, High, Low, Medium, Review, Backlog'
|
exempt-issue-labels: 'Critical, High, Low, Medium, Review, Backlog'
|
||||||
exempt-milestones: true
|
exempt-all-milestones: true
|
||||||
exempt-draft-pr: true
|
exempt-draft-pr: true
|
||||||
start-date: '2022-06-15'
|
start-date: '2022-06-15T00:00:00Z'
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ AllCops:
|
|||||||
- 'tmp/**/*'
|
- 'tmp/**/*'
|
||||||
- 'tools/**/*'
|
- 'tools/**/*'
|
||||||
- 'doc/**/*'
|
- 'doc/**/*'
|
||||||
TargetRubyVersion: 3.0
|
TargetRubyVersion: <%= File.read(".ruby-version").strip[/^(\d+\.\d+)/, 1] || raise("Ruby version not found") %>
|
||||||
NewCops: enable
|
NewCops: enable
|
||||||
|
|
||||||
Layout/LineLength:
|
Layout/LineLength:
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
3.2.2
|
3.4.7
|
||||||
|
|||||||
24
Dockerfile
24
Dockerfile
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
###########################################################################################################
|
###########################################################################################################
|
||||||
|
|
||||||
# ---------------------------- Start of Builder 0 - Gemset Build ------------------------------------------
|
# ---------------------------- Start of Builder 0 - Gemset Build ------------------------------------------
|
||||||
FROM ruby:3.2.1-slim-bullseye AS builder
|
FROM ruby:3.4.7-slim-bookworm AS builder
|
||||||
|
|
||||||
COPY . /beef
|
COPY . /beef
|
||||||
|
|
||||||
@@ -27,11 +27,14 @@ RUN echo "gem: --no-ri --no-rdoc" > /etc/gemrc \
|
|||||||
&& apt-get install -y --no-install-recommends \
|
&& apt-get install -y --no-install-recommends \
|
||||||
git \
|
git \
|
||||||
curl \
|
curl \
|
||||||
|
libssl-dev \
|
||||||
xz-utils \
|
xz-utils \
|
||||||
|
pkg-config \
|
||||||
make \
|
make \
|
||||||
g++ \
|
g++ \
|
||||||
libcurl4-openssl-dev \
|
libcurl4-openssl-dev \
|
||||||
ruby-dev \
|
ruby-dev \
|
||||||
|
libyaml-dev \
|
||||||
libffi-dev \
|
libffi-dev \
|
||||||
zlib1g-dev \
|
zlib1g-dev \
|
||||||
libsqlite3-dev \
|
libsqlite3-dev \
|
||||||
@@ -44,7 +47,7 @@ RUN echo "gem: --no-ri --no-rdoc" > /etc/gemrc \
|
|||||||
|
|
||||||
|
|
||||||
# ---------------------------- Start of Builder 1 - Final Build ------------------------------------------
|
# ---------------------------- Start of Builder 1 - Final Build ------------------------------------------
|
||||||
FROM ruby:3.2.1-slim-bullseye
|
FROM ruby:3.4.7-slim-bookworm
|
||||||
LABEL maintainer="Beef Project" \
|
LABEL maintainer="Beef Project" \
|
||||||
source_url="github.com/beefproject/beef" \
|
source_url="github.com/beefproject/beef" \
|
||||||
homepage="https://beefproject.com/"
|
homepage="https://beefproject.com/"
|
||||||
@@ -61,8 +64,10 @@ RUN adduser --home /beef --gecos beef --disabled-password beef \
|
|||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends \
|
&& apt-get install -y --no-install-recommends \
|
||||||
curl \
|
curl \
|
||||||
|
wget \
|
||||||
|
espeak \
|
||||||
|
lame \
|
||||||
openssl \
|
openssl \
|
||||||
libssl-dev \
|
|
||||||
libreadline-dev \
|
libreadline-dev \
|
||||||
libyaml-dev \
|
libyaml-dev \
|
||||||
libxml2-dev \
|
libxml2-dev \
|
||||||
@@ -73,9 +78,20 @@ RUN adduser --home /beef --gecos beef --disabled-password beef \
|
|||||||
zlib1g \
|
zlib1g \
|
||||||
bison \
|
bison \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
firefox-esr \
|
||||||
&& apt-get -y clean \
|
&& apt-get -y clean \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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 --chown=beef:beef . /beef
|
||||||
COPY --from=builder /usr/local/bundle /usr/local/bundle
|
COPY --from=builder /usr/local/bundle /usr/local/bundle
|
||||||
|
|||||||
51
Gemfile
51
Gemfile
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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,14 +21,14 @@ gem 'term-ansicolor', :require => 'term/ansicolor'
|
|||||||
gem 'rubyzip', '~> 3.2'
|
gem 'rubyzip', '~> 3.2'
|
||||||
gem 'espeak-ruby', '~> 1.1.0' # Text-to-Voice
|
gem 'espeak-ruby', '~> 1.1.0' # Text-to-Voice
|
||||||
gem 'rake', '~> 13.3'
|
gem 'rake', '~> 13.3'
|
||||||
gem 'activerecord', '~> 8.0'
|
gem 'activerecord', '~> 8.1'
|
||||||
gem 'otr-activerecord', '~> 2.5.0'
|
gem 'otr-activerecord', '~> 2.6.0'
|
||||||
gem 'sqlite3', '~> 2.7'
|
gem 'sqlite3', '~> 2.9'
|
||||||
gem 'rubocop', '~> 1.81.6', require: false
|
gem 'rubocop', '~> 1.85.0', require: false
|
||||||
|
|
||||||
# Geolocation support
|
# Geolocation support
|
||||||
group :geoip do
|
group :geoip do
|
||||||
gem 'maxmind-db', '~> 1.3'
|
gem 'maxmind-db', '~> 1.4'
|
||||||
end
|
end
|
||||||
|
|
||||||
gem 'parseconfig', '~> 1.1', '>= 1.1.2'
|
gem 'parseconfig', '~> 1.1', '>= 1.1.2'
|
||||||
@@ -61,30 +61,31 @@ end
|
|||||||
|
|
||||||
# For running unit tests
|
# For running unit tests
|
||||||
group :test do
|
group :test do
|
||||||
gem 'test-unit-full', '~> 0.0.5'
|
gem 'simplecov', '~> 0.22'
|
||||||
gem 'rspec', '~> 3.13'
|
gem 'test-unit-full', '~> 0.0.5'
|
||||||
gem 'rdoc', '~> 6.15'
|
gem 'rspec', '~> 3.13'
|
||||||
gem 'browserstack-local', '~> 1.4'
|
gem 'rdoc', '~> 7.2'
|
||||||
|
gem 'browserstack-local', '~> 1.4'
|
||||||
|
|
||||||
gem 'irb', '~> 1.15'
|
gem 'irb', '~> 1.17'
|
||||||
gem 'pry-byebug', '~> 3.11'
|
gem 'pry-byebug', '~> 3.12'
|
||||||
|
|
||||||
gem 'rest-client', '~> 2.1.0'
|
gem 'rest-client', '~> 2.1.0'
|
||||||
gem 'websocket-client-simple', '~> 0.6.1'
|
gem 'websocket-client-simple', '~> 0.6.1'
|
||||||
|
|
||||||
# Note: curb gem requires curl libraries
|
# Note: curb gem requires curl libraries
|
||||||
# sudo apt-get install libcurl4-openssl-dev
|
# sudo apt-get install libcurl4-openssl-dev
|
||||||
gem 'curb', '~> 1.2'
|
gem 'curb', '~> 1.2'
|
||||||
|
|
||||||
# Note: selenium-webdriver 3.x is incompatible with Firefox version 48 and prior
|
# Note: selenium-webdriver 3.x is incompatible with Firefox version 48 and prior
|
||||||
# gem 'selenium' # Requires old version of selenium which is no longer available
|
# gem 'selenium' # Requires old version of selenium which is no longer available
|
||||||
gem 'geckodriver-helper', '~> 0.24.0'
|
gem 'geckodriver-helper', '~> 0.24.0'
|
||||||
gem 'selenium-webdriver', '~> 4.37'
|
gem 'selenium-webdriver', '~> 4.41'
|
||||||
|
|
||||||
# Note: nokogiri is needed by capybara which may require one of the below commands
|
# Note: nokogiri is needed by capybara which may require one of the below commands
|
||||||
# sudo apt-get install libxslt-dev libxml2-dev
|
# sudo apt-get install libxslt-dev libxml2-dev
|
||||||
# sudo port install libxml2 libxslt
|
# sudo port install libxml2 libxslt
|
||||||
gem 'capybara', '~> 3.40'
|
gem 'capybara', '~> 3.40'
|
||||||
end
|
end
|
||||||
|
|
||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
|
|||||||
157
Gemfile.lock
157
Gemfile.lock
@@ -1,20 +1,20 @@
|
|||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
activemodel (8.0.3)
|
activemodel (8.1.2)
|
||||||
activesupport (= 8.0.3)
|
activesupport (= 8.1.2)
|
||||||
activerecord (8.0.3)
|
activerecord (8.1.2)
|
||||||
activemodel (= 8.0.3)
|
activemodel (= 8.1.2)
|
||||||
activesupport (= 8.0.3)
|
activesupport (= 8.1.2)
|
||||||
timeout (>= 0.4.0)
|
timeout (>= 0.4.0)
|
||||||
activesupport (8.0.3)
|
activesupport (8.1.2)
|
||||||
base64
|
base64
|
||||||
benchmark (>= 0.3)
|
|
||||||
bigdecimal
|
bigdecimal
|
||||||
concurrent-ruby (~> 1.0, >= 1.3.1)
|
concurrent-ruby (~> 1.0, >= 1.3.1)
|
||||||
connection_pool (>= 2.2.5)
|
connection_pool (>= 2.2.5)
|
||||||
drb
|
drb
|
||||||
i18n (>= 1.6, < 2)
|
i18n (>= 1.6, < 2)
|
||||||
|
json
|
||||||
logger (>= 1.4.2)
|
logger (>= 1.4.2)
|
||||||
minitest (>= 5.1)
|
minitest (>= 5.1)
|
||||||
securerandom (>= 0.3)
|
securerandom (>= 0.3)
|
||||||
@@ -34,10 +34,10 @@ GEM
|
|||||||
async
|
async
|
||||||
io-endpoint
|
io-endpoint
|
||||||
base64 (0.3.0)
|
base64 (0.3.0)
|
||||||
benchmark (0.4.1)
|
bigdecimal (4.0.1)
|
||||||
bigdecimal (3.3.1)
|
|
||||||
browserstack-local (1.4.3)
|
browserstack-local (1.4.3)
|
||||||
byebug (12.0.0)
|
byebug (13.0.0)
|
||||||
|
reline (>= 0.6.0)
|
||||||
capybara (3.40.0)
|
capybara (3.40.0)
|
||||||
addressable
|
addressable
|
||||||
matrix
|
matrix
|
||||||
@@ -48,22 +48,23 @@ GEM
|
|||||||
regexp_parser (>= 1.5, < 3.0)
|
regexp_parser (>= 1.5, < 3.0)
|
||||||
xpath (~> 3.2)
|
xpath (~> 3.2)
|
||||||
coderay (1.1.3)
|
coderay (1.1.3)
|
||||||
concurrent-ruby (1.3.5)
|
concurrent-ruby (1.3.6)
|
||||||
connection_pool (2.5.4)
|
connection_pool (3.0.2)
|
||||||
console (1.34.0)
|
console (1.34.0)
|
||||||
fiber-annotation
|
fiber-annotation
|
||||||
fiber-local (~> 1.1)
|
fiber-local (~> 1.1)
|
||||||
json
|
json
|
||||||
curb (1.2.2)
|
curb (1.2.2)
|
||||||
daemons (1.4.1)
|
daemons (1.4.1)
|
||||||
date (3.4.1)
|
date (3.5.1)
|
||||||
diff-lcs (1.6.2)
|
diff-lcs (1.6.2)
|
||||||
|
docile (1.4.1)
|
||||||
domain_name (0.6.20240107)
|
domain_name (0.6.20240107)
|
||||||
drb (2.2.3)
|
drb (2.2.3)
|
||||||
em-websocket (0.5.3)
|
em-websocket (0.5.3)
|
||||||
eventmachine (>= 0.12.9)
|
eventmachine (>= 0.12.9)
|
||||||
http_parser.rb (~> 0)
|
http_parser.rb (~> 0)
|
||||||
erb (5.0.3)
|
erb (6.0.1)
|
||||||
erubis (2.7.0)
|
erubis (2.7.0)
|
||||||
espeak-ruby (1.1.0)
|
espeak-ruby (1.1.0)
|
||||||
event_emitter (0.2.6)
|
event_emitter (0.2.6)
|
||||||
@@ -79,28 +80,35 @@ GEM
|
|||||||
http-cookie (1.0.8)
|
http-cookie (1.0.8)
|
||||||
domain_name (~> 0.5)
|
domain_name (~> 0.5)
|
||||||
http_parser.rb (0.8.0)
|
http_parser.rb (0.8.0)
|
||||||
i18n (1.14.7)
|
i18n (1.14.8)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
io-console (0.8.1)
|
io-console (0.8.2)
|
||||||
io-endpoint (0.15.2)
|
io-endpoint (0.15.2)
|
||||||
io-like (0.4.0)
|
io-like (0.4.0)
|
||||||
irb (1.15.2)
|
irb (1.17.0)
|
||||||
pp (>= 0.6.0)
|
pp (>= 0.6.0)
|
||||||
|
prism (>= 1.3.0)
|
||||||
rdoc (>= 4.0.0)
|
rdoc (>= 4.0.0)
|
||||||
reline (>= 0.4.2)
|
reline (>= 0.4.2)
|
||||||
json (2.15.1)
|
json (2.18.1)
|
||||||
|
json-schema (6.1.0)
|
||||||
|
addressable (~> 2.8)
|
||||||
|
bigdecimal (>= 3.1, < 5)
|
||||||
language_server-protocol (3.17.0.5)
|
language_server-protocol (3.17.0.5)
|
||||||
lint_roller (1.1.0)
|
lint_roller (1.1.0)
|
||||||
logger (1.7.0)
|
logger (1.7.0)
|
||||||
matrix (0.4.3)
|
matrix (0.4.3)
|
||||||
maxmind-db (1.3.2)
|
maxmind-db (1.4.0)
|
||||||
|
mcp (0.7.1)
|
||||||
|
json-schema (>= 4.1)
|
||||||
method_source (1.1.0)
|
method_source (1.1.0)
|
||||||
mime-types (3.7.0)
|
mime-types (3.7.0)
|
||||||
logger
|
logger
|
||||||
mime-types-data (~> 3.2025, >= 3.2025.0507)
|
mime-types-data (~> 3.2025, >= 3.2025.0507)
|
||||||
mime-types-data (3.2025.0902)
|
mime-types-data (3.2025.0902)
|
||||||
mini_mime (1.1.5)
|
mini_mime (1.1.5)
|
||||||
minitest (5.26.0)
|
minitest (6.0.1)
|
||||||
|
prism (~> 1.5)
|
||||||
mojo_magick (0.6.8)
|
mojo_magick (0.6.8)
|
||||||
msfrpc-client (1.1.2)
|
msfrpc-client (1.1.2)
|
||||||
msgpack (~> 1)
|
msgpack (~> 1)
|
||||||
@@ -113,41 +121,42 @@ GEM
|
|||||||
net-protocol
|
net-protocol
|
||||||
netrc (0.11.0)
|
netrc (0.11.0)
|
||||||
nio4r (2.7.4)
|
nio4r (2.7.4)
|
||||||
nokogiri (1.18.9-aarch64-linux-gnu)
|
nokogiri (1.19.1-aarch64-linux-gnu)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
nokogiri (1.18.9-aarch64-linux-musl)
|
nokogiri (1.19.1-aarch64-linux-musl)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
nokogiri (1.18.9-arm-linux-gnu)
|
nokogiri (1.19.1-arm-linux-gnu)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
nokogiri (1.18.9-arm-linux-musl)
|
nokogiri (1.19.1-arm-linux-musl)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
nokogiri (1.18.9-arm64-darwin)
|
nokogiri (1.19.1-arm64-darwin)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
nokogiri (1.18.9-x86_64-darwin)
|
nokogiri (1.19.1-x86_64-darwin)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
nokogiri (1.18.9-x86_64-linux-gnu)
|
nokogiri (1.19.1-x86_64-linux-gnu)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
nokogiri (1.18.9-x86_64-linux-musl)
|
nokogiri (1.19.1-x86_64-linux-musl)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
otr-activerecord (2.5.0)
|
otr-activerecord (2.6.0)
|
||||||
activerecord (>= 6.0, < 8.1)
|
activerecord (>= 6.0, < 9.0)
|
||||||
parallel (1.27.0)
|
parallel (1.27.0)
|
||||||
parseconfig (1.1.2)
|
parseconfig (1.1.2)
|
||||||
parser (3.3.9.0)
|
parser (3.3.10.2)
|
||||||
ast (~> 2.4.1)
|
ast (~> 2.4.1)
|
||||||
racc
|
racc
|
||||||
power_assert (2.0.5)
|
power_assert (2.0.5)
|
||||||
pp (0.6.2)
|
pp (0.6.3)
|
||||||
prettyprint
|
prettyprint
|
||||||
prettyprint (0.2.0)
|
prettyprint (0.2.0)
|
||||||
prism (1.6.0)
|
prism (1.9.0)
|
||||||
pry (0.15.2)
|
pry (0.16.0)
|
||||||
coderay (~> 1.1)
|
coderay (~> 1.1)
|
||||||
method_source (~> 1.0)
|
method_source (~> 1.0)
|
||||||
pry-byebug (3.11.0)
|
reline (>= 0.6.0)
|
||||||
byebug (~> 12.0)
|
pry-byebug (3.12.0)
|
||||||
pry (>= 0.13, < 0.16)
|
byebug (~> 13.0)
|
||||||
psych (5.2.6)
|
pry (>= 0.13, < 0.17)
|
||||||
|
psych (5.3.1)
|
||||||
date
|
date
|
||||||
stringio
|
stringio
|
||||||
public_suffix (6.0.2)
|
public_suffix (6.0.2)
|
||||||
@@ -155,7 +164,7 @@ GEM
|
|||||||
mojo_magick (~> 0.6.5)
|
mojo_magick (~> 0.6.5)
|
||||||
rqrcode_core (~> 1.0)
|
rqrcode_core (~> 1.0)
|
||||||
racc (1.8.1)
|
racc (1.8.1)
|
||||||
rack (3.2.3)
|
rack (3.2.5)
|
||||||
rack-protection (4.2.1)
|
rack-protection (4.2.1)
|
||||||
base64 (>= 0.1.0)
|
base64 (>= 0.1.0)
|
||||||
logger (>= 1.6.0)
|
logger (>= 1.6.0)
|
||||||
@@ -166,13 +175,13 @@ GEM
|
|||||||
rack-test (2.2.0)
|
rack-test (2.2.0)
|
||||||
rack (>= 1.3)
|
rack (>= 1.3)
|
||||||
rainbow (3.1.1)
|
rainbow (3.1.1)
|
||||||
rake (13.3.0)
|
rake (13.3.1)
|
||||||
rdoc (6.15.0)
|
rdoc (7.2.0)
|
||||||
erb
|
erb
|
||||||
psych (>= 4.0.0)
|
psych (>= 4.0.0)
|
||||||
tsort
|
tsort
|
||||||
regexp_parser (2.11.3)
|
regexp_parser (2.11.3)
|
||||||
reline (0.6.2)
|
reline (0.6.3)
|
||||||
io-console (~> 0.5)
|
io-console (~> 0.5)
|
||||||
rest-client (2.1.0)
|
rest-client (2.1.0)
|
||||||
http-accept (>= 1.7.0, < 2.0)
|
http-accept (>= 1.7.0, < 2.0)
|
||||||
@@ -195,33 +204,40 @@ GEM
|
|||||||
diff-lcs (>= 1.2.0, < 2.0)
|
diff-lcs (>= 1.2.0, < 2.0)
|
||||||
rspec-support (~> 3.13.0)
|
rspec-support (~> 3.13.0)
|
||||||
rspec-support (3.13.6)
|
rspec-support (3.13.6)
|
||||||
rubocop (1.81.6)
|
rubocop (1.85.0)
|
||||||
json (~> 2.3)
|
json (~> 2.3)
|
||||||
language_server-protocol (~> 3.17.0.2)
|
language_server-protocol (~> 3.17.0.2)
|
||||||
lint_roller (~> 1.1.0)
|
lint_roller (~> 1.1.0)
|
||||||
|
mcp (~> 0.6)
|
||||||
parallel (~> 1.10)
|
parallel (~> 1.10)
|
||||||
parser (>= 3.3.0.2)
|
parser (>= 3.3.0.2)
|
||||||
rainbow (>= 2.2.2, < 4.0)
|
rainbow (>= 2.2.2, < 4.0)
|
||||||
regexp_parser (>= 2.9.3, < 3.0)
|
regexp_parser (>= 2.9.3, < 3.0)
|
||||||
rubocop-ast (>= 1.47.1, < 2.0)
|
rubocop-ast (>= 1.49.0, < 2.0)
|
||||||
ruby-progressbar (~> 1.7)
|
ruby-progressbar (~> 1.7)
|
||||||
unicode-display_width (>= 2.4.0, < 4.0)
|
unicode-display_width (>= 2.4.0, < 4.0)
|
||||||
rubocop-ast (1.47.1)
|
rubocop-ast (1.49.0)
|
||||||
parser (>= 3.3.7.2)
|
parser (>= 3.3.7.2)
|
||||||
prism (~> 1.4)
|
prism (~> 1.7)
|
||||||
ruby-progressbar (1.13.0)
|
ruby-progressbar (1.13.0)
|
||||||
ruby2_keywords (0.0.5)
|
ruby2_keywords (0.0.5)
|
||||||
rubyzip (3.2.0)
|
rubyzip (3.2.2)
|
||||||
rushover (0.3.0)
|
rushover (0.3.0)
|
||||||
json
|
json
|
||||||
rest-client
|
rest-client
|
||||||
securerandom (0.4.1)
|
securerandom (0.4.1)
|
||||||
selenium-webdriver (4.37.0)
|
selenium-webdriver (4.41.0)
|
||||||
base64 (~> 0.2)
|
base64 (~> 0.2)
|
||||||
logger (~> 1.4)
|
logger (~> 1.4)
|
||||||
rexml (~> 3.2, >= 3.2.5)
|
rexml (~> 3.2, >= 3.2.5)
|
||||||
rubyzip (>= 1.2.2, < 4.0)
|
rubyzip (>= 1.2.2, < 4.0)
|
||||||
websocket (~> 1.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)
|
sinatra (4.2.1)
|
||||||
logger (>= 1.6.0)
|
logger (>= 1.6.0)
|
||||||
mustermann (~> 3.0)
|
mustermann (~> 3.0)
|
||||||
@@ -230,15 +246,15 @@ GEM
|
|||||||
rack-session (>= 2.0.0, < 3)
|
rack-session (>= 2.0.0, < 3)
|
||||||
tilt (~> 2.0)
|
tilt (~> 2.0)
|
||||||
slack-notifier (2.4.0)
|
slack-notifier (2.4.0)
|
||||||
sqlite3 (2.7.4-aarch64-linux-gnu)
|
sqlite3 (2.9.0-aarch64-linux-gnu)
|
||||||
sqlite3 (2.7.4-aarch64-linux-musl)
|
sqlite3 (2.9.0-aarch64-linux-musl)
|
||||||
sqlite3 (2.7.4-arm-linux-gnu)
|
sqlite3 (2.9.0-arm-linux-gnu)
|
||||||
sqlite3 (2.7.4-arm-linux-musl)
|
sqlite3 (2.9.0-arm-linux-musl)
|
||||||
sqlite3 (2.7.4-arm64-darwin)
|
sqlite3 (2.9.0-arm64-darwin)
|
||||||
sqlite3 (2.7.4-x86_64-darwin)
|
sqlite3 (2.9.0-x86_64-darwin)
|
||||||
sqlite3 (2.7.4-x86_64-linux-gnu)
|
sqlite3 (2.9.0-x86_64-linux-gnu)
|
||||||
sqlite3 (2.7.4-x86_64-linux-musl)
|
sqlite3 (2.9.0-x86_64-linux-musl)
|
||||||
stringio (3.1.7)
|
stringio (3.2.0)
|
||||||
sync (0.5.0)
|
sync (0.5.0)
|
||||||
term-ansicolor (1.11.3)
|
term-ansicolor (1.11.3)
|
||||||
tins (~> 1)
|
tins (~> 1)
|
||||||
@@ -265,7 +281,7 @@ GEM
|
|||||||
logger
|
logger
|
||||||
rack (>= 1, < 4)
|
rack (>= 1, < 4)
|
||||||
tilt (2.6.1)
|
tilt (2.6.1)
|
||||||
timeout (0.4.3)
|
timeout (0.6.0)
|
||||||
timers (4.4.0)
|
timers (4.4.0)
|
||||||
tins (1.43.0)
|
tins (1.43.0)
|
||||||
bigdecimal
|
bigdecimal
|
||||||
@@ -277,8 +293,8 @@ GEM
|
|||||||
execjs (>= 0.3.0, < 3)
|
execjs (>= 0.3.0, < 3)
|
||||||
unicode-display_width (3.2.0)
|
unicode-display_width (3.2.0)
|
||||||
unicode-emoji (~> 4.1)
|
unicode-emoji (~> 4.1)
|
||||||
unicode-emoji (4.1.0)
|
unicode-emoji (4.2.0)
|
||||||
uri (1.0.4)
|
uri (1.1.1)
|
||||||
webrick (1.9.1)
|
webrick (1.9.1)
|
||||||
websocket (1.2.11)
|
websocket (1.2.11)
|
||||||
websocket-client-simple (0.6.1)
|
websocket-client-simple (0.6.1)
|
||||||
@@ -300,7 +316,7 @@ PLATFORMS
|
|||||||
x86_64-linux-musl
|
x86_64-linux-musl
|
||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
activerecord (~> 8.0)
|
activerecord (~> 8.1)
|
||||||
ansi (~> 1.5)
|
ansi (~> 1.5)
|
||||||
async (~> 1.32)
|
async (~> 1.32)
|
||||||
async-dns (~> 1.4)
|
async-dns (~> 1.4)
|
||||||
@@ -313,29 +329,30 @@ DEPENDENCIES
|
|||||||
eventmachine (~> 1.2, >= 1.2.7)
|
eventmachine (~> 1.2, >= 1.2.7)
|
||||||
execjs (~> 2.10)
|
execjs (~> 2.10)
|
||||||
geckodriver-helper (~> 0.24.0)
|
geckodriver-helper (~> 0.24.0)
|
||||||
irb (~> 1.15)
|
irb (~> 1.17)
|
||||||
json
|
json
|
||||||
maxmind-db (~> 1.3)
|
maxmind-db (~> 1.4)
|
||||||
mime-types (~> 3.7)
|
mime-types (~> 3.7)
|
||||||
msfrpc-client (~> 1.1, >= 1.1.2)
|
msfrpc-client (~> 1.1, >= 1.1.2)
|
||||||
net-smtp
|
net-smtp
|
||||||
otr-activerecord (~> 2.5.0)
|
otr-activerecord (~> 2.6.0)
|
||||||
parseconfig (~> 1.1, >= 1.1.2)
|
parseconfig (~> 1.1, >= 1.1.2)
|
||||||
pry-byebug (~> 3.11)
|
pry-byebug (~> 3.12)
|
||||||
qr4r (~> 0.6.1)
|
qr4r (~> 0.6.1)
|
||||||
rack (~> 3.2)
|
rack (~> 3.2)
|
||||||
rack-protection (~> 4.2.1)
|
rack-protection (~> 4.2.1)
|
||||||
rake (~> 13.3)
|
rake (~> 13.3)
|
||||||
rdoc (~> 6.15)
|
rdoc (~> 7.2)
|
||||||
rest-client (~> 2.1.0)
|
rest-client (~> 2.1.0)
|
||||||
rspec (~> 3.13)
|
rspec (~> 3.13)
|
||||||
rubocop (~> 1.81.6)
|
rubocop (~> 1.85.0)
|
||||||
rubyzip (~> 3.2)
|
rubyzip (~> 3.2)
|
||||||
rushover (~> 0.3.0)
|
rushover (~> 0.3.0)
|
||||||
selenium-webdriver (~> 4.37)
|
selenium-webdriver (~> 4.41)
|
||||||
|
simplecov (~> 0.22)
|
||||||
sinatra (~> 4.1)
|
sinatra (~> 4.1)
|
||||||
slack-notifier (~> 2.4)
|
slack-notifier (~> 2.4)
|
||||||
sqlite3 (~> 2.7)
|
sqlite3 (~> 2.9)
|
||||||
term-ansicolor
|
term-ansicolor
|
||||||
test-unit-full (~> 0.0.5)
|
test-unit-full (~> 0.0.5)
|
||||||
thin (~> 2.0)
|
thin (~> 2.0)
|
||||||
@@ -344,4 +361,4 @@ DEPENDENCIES
|
|||||||
xmlrpc (~> 0.3.3)
|
xmlrpc (~> 0.3.3)
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.5.18
|
2.7.2
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
===============================================================================
|
===============================================================================
|
||||||
|
|
||||||
Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
Browser Exploitation Framework (BeEF) - https://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
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
===============================================================================
|
===============================================================================
|
||||||
|
|
||||||
Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
Browser Exploitation Framework (BeEF) - https://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
|
||||||
|
|
||||||
|
|||||||
2
Rakefile
2
Rakefile
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
6
VERSION
6
VERSION
@@ -1 +1,7 @@
|
|||||||
|
#
|
||||||
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
|
# Browser Exploitation Framework (BeEF) - https://beefproject.com
|
||||||
|
# See the file 'doc/COPYING' for copying permission
|
||||||
|
#
|
||||||
|
|
||||||
0.6.0.0
|
0.6.0.0
|
||||||
|
|||||||
6
beef
6
beef
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
|
|
||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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,6 +39,10 @@ $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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2024 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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.4.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)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
@@ -29,7 +29,7 @@ module BeEF
|
|||||||
#
|
#
|
||||||
def register(owner, clss, method, params = [])
|
def register(owner, clss, method, params = [])
|
||||||
unless verify_api_path(clss, method)
|
unless verify_api_path(clss, method)
|
||||||
print_error "API Registrar: Attempted to register non-existant API method #{clss} :#{method}"
|
print_error "API Registrar: Attempted to register non-existent API method #{clss} :#{method}"
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
@@ -187,7 +187,7 @@ module BeEF
|
|||||||
def self.has_valid_browser_details_chars?(str)
|
def self.has_valid_browser_details_chars?(str)
|
||||||
return false unless is_non_empty_string?(str)
|
return false unless is_non_empty_string?(str)
|
||||||
|
|
||||||
!(str =~ %r{[^\w\d\s()-.,;:_/!\302\256]}).nil?
|
(str =~ %r{[^\w\d\s()-.,;:_/!\302\256]}).nil?
|
||||||
end
|
end
|
||||||
|
|
||||||
# Check for valid base details characters
|
# Check for valid base details characters
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
@@ -8,10 +8,10 @@ module BeEF
|
|||||||
# Check the browser type value - for example, 'FF'
|
# Check the browser type value - for example, 'FF'
|
||||||
# @param [String] str String for testing
|
# @param [String] str String for testing
|
||||||
# @return [Boolean] If the string has valid browser name characters
|
# @return [Boolean] If the string has valid browser name characters
|
||||||
def self.is_valid_browsername?(str)
|
def self.is_valid_browsername?(str) # rubocop:disable Naming/PredicatePrefix
|
||||||
return false unless is_non_empty_string?(str)
|
return false unless is_non_empty_string?(str)
|
||||||
return false if str.length > 2
|
return false if str.length > 2
|
||||||
return false if has_non_printable_char?(str)
|
return false unless has_valid_browser_details_chars?(str)
|
||||||
|
|
||||||
true
|
true
|
||||||
end
|
end
|
||||||
@@ -19,9 +19,9 @@ module BeEF
|
|||||||
# 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
|
true
|
||||||
@@ -30,9 +30,9 @@ module BeEF
|
|||||||
# Check the Hardware name value - for example, 'iPhone'
|
# 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 Hardware name characters
|
# @return [Boolean] If the string has valid Hardware name characters
|
||||||
def self.is_valid_hwname?(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 false if str.length < 2
|
return false if str.length < 2
|
||||||
|
|
||||||
true
|
true
|
||||||
@@ -41,12 +41,12 @@ module BeEF
|
|||||||
# Verify the browser version 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 version characters
|
# @return [Boolean] If the string has valid browser version characters
|
||||||
def self.is_valid_browserversion?(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 true if str.eql? 'UNKNOWN'
|
return true if str.eql? 'UNKNOWN'
|
||||||
return true if str.eql? 'ALL'
|
return true if str.eql? 'ALL'
|
||||||
return false if !nums_only?(str) and !str.match(/\A(0|[1-9][0-9]{0,3})(\.(0|[1-9][0-9]{0,3})){0,3}\z/)
|
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
|
return false if str.length > 20
|
||||||
|
|
||||||
true
|
true
|
||||||
@@ -55,7 +55,7 @@ module BeEF
|
|||||||
# Verify the os version string 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 os version characters
|
# @return [Boolean] If the string has valid os version characters
|
||||||
def self.is_valid_osversion?(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 true if str.eql? 'UNKNOWN'
|
return true if str.eql? 'UNKNOWN'
|
||||||
@@ -69,9 +69,9 @@ module BeEF
|
|||||||
# Verify the browser/UA 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 browser / ua string characters
|
# @return [Boolean] If the string has valid browser / ua string characters
|
||||||
def self.is_valid_browserstring?(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 > 300
|
return false if str.length > 300
|
||||||
|
|
||||||
true
|
true
|
||||||
@@ -80,7 +80,7 @@ module BeEF
|
|||||||
# Verify the cookies are 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 cookie characters
|
# @return [Boolean] If the string has valid cookie characters
|
||||||
def self.is_valid_cookies?(str)
|
def self.is_valid_cookies?(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 > 2000
|
return false if str.length > 2000
|
||||||
@@ -91,9 +91,9 @@ module BeEF
|
|||||||
# Verify the system platform is valid
|
# Verify the system platform is valid
|
||||||
# @param [String] str String for testing
|
# @param [String] str String for testing
|
||||||
# @return [Boolean] If the string has valid system platform characters
|
# @return [Boolean] If the string has valid system platform characters
|
||||||
def self.is_valid_system_platform?(str)
|
def self.is_valid_system_platform?(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 > 200
|
||||||
|
|
||||||
true
|
true
|
||||||
@@ -102,7 +102,7 @@ module BeEF
|
|||||||
# Verify the date stamp is valid
|
# Verify the date stamp 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 date stamp characters
|
||||||
def self.is_valid_date_stamp?(str)
|
def self.is_valid_date_stamp?(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 false if str.length > 200
|
||||||
@@ -113,7 +113,7 @@ module BeEF
|
|||||||
# Verify the CPU type string is valid
|
# Verify the CPU type string is valid
|
||||||
# @param [String] str String for testing
|
# @param [String] str String for testing
|
||||||
# @return [Boolean] If the string has valid CPU type characters
|
# @return [Boolean] If the string has valid CPU type characters
|
||||||
def self.is_valid_cpu?(str)
|
def self.is_valid_cpu?(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 false if str.length > 200
|
||||||
@@ -124,7 +124,7 @@ module BeEF
|
|||||||
# Verify the memory string is valid
|
# Verify the memory 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 memory type characters
|
||||||
def self.is_valid_memory?(str)
|
def self.is_valid_memory?(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 false if str.length > 200
|
||||||
@@ -135,7 +135,7 @@ module BeEF
|
|||||||
# Verify the GPU type string is valid
|
# Verify the GPU type string is valid
|
||||||
# @param [String] str String for testing
|
# @param [String] str String for testing
|
||||||
# @return [Boolean] If the string has valid GPU type characters
|
# @return [Boolean] If the string has valid GPU type characters
|
||||||
def self.is_valid_gpu?(str)
|
def self.is_valid_gpu?(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 false if str.length > 200
|
||||||
@@ -148,11 +148,11 @@ module BeEF
|
|||||||
# @return [Boolean] If the string has valid browser plugin characters
|
# @return [Boolean] If the string has valid browser plugin characters
|
||||||
# @note This string can be empty if there are no browser plugins
|
# @note This string can be empty if there are no browser plugins
|
||||||
# @todo Verify if the ruby version statement is still necessary
|
# @todo Verify if the ruby version statement is still necessary
|
||||||
def self.is_valid_browser_plugins?(str)
|
def self.is_valid_browser_plugins?(str) # rubocop:disable Naming/PredicatePrefix
|
||||||
return false unless is_non_empty_string?(str)
|
return false unless is_non_empty_string?(str)
|
||||||
return false if str.length > 1000
|
return false if str.length > 1000
|
||||||
|
|
||||||
if str.encoding === Encoding.find('UTF-8')
|
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?
|
(str =~ /[^\w\d\s()-.,';_!\302\256]/u).nil?
|
||||||
else
|
else
|
||||||
(str =~ /[^\w\d\s()-.,';_!\302\256]/n).nil?
|
(str =~ /[^\w\d\s()-.,';_!\302\256]/n).nil?
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
// Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
// Browser Exploitation Framework (BeEF) - https://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
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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 'optparse'
|
||||||
|
|
||||||
module BeEF
|
module BeEF
|
||||||
module Core
|
module Core
|
||||||
module Console
|
module Console
|
||||||
@@ -17,7 +19,6 @@ module BeEF
|
|||||||
@options[:ext_config] = ''
|
@options[:ext_config] = ''
|
||||||
@options[:port] = ''
|
@options[:port] = ''
|
||||||
@options[:ws_port] = ''
|
@options[:ws_port] = ''
|
||||||
@options[:interactive] = false
|
|
||||||
@options[:update_disabled] = false
|
@options[:update_disabled] = false
|
||||||
@options[:update_auto] = false
|
@options[:update_auto] = false
|
||||||
|
|
||||||
@@ -39,7 +40,7 @@ module BeEF
|
|||||||
@options[:verbose] = true
|
@options[:verbose] = true
|
||||||
end
|
end
|
||||||
|
|
||||||
opts.on('-a', '--ascii_art', 'Prints BeEF ascii art') do
|
opts.on('-a', '--ascii-art', 'Prints BeEF ascii art') do
|
||||||
@options[:ascii_art] = true
|
@options[:ascii_art] = true
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -55,17 +56,19 @@ module BeEF
|
|||||||
@options[:ws_port] = ws_port
|
@options[:ws_port] = ws_port
|
||||||
end
|
end
|
||||||
|
|
||||||
opts.on('-ud', '--update_disabled', 'Skips update') do
|
opts.on('-d', '--update-disabled', 'Skips update') do
|
||||||
@options[:update_disabled] = true
|
@options[:update_disabled] = true
|
||||||
end
|
end
|
||||||
|
|
||||||
opts.on('-ua', '--update_auto', 'Automatic update with no prompt') do
|
opts.on('-u', '--update-auto', 'Automatic update with no prompt') do
|
||||||
@options[:update_auto] = true
|
@options[:update_auto] = true
|
||||||
end
|
end
|
||||||
|
|
||||||
# opts.on('-i', '--interactive', 'Starts with the Console Shell activated') do
|
opts.on('-h', '--help', 'Show this help') do
|
||||||
# @options[:interactive] = true
|
puts opts
|
||||||
# end
|
exit 0
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
optparse.parse!
|
optparse.parse!
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
@@ -44,7 +44,7 @@ module BeEF
|
|||||||
|
|
||||||
# hooked window host name
|
# hooked window host name
|
||||||
log_zombie_port = 0
|
log_zombie_port = 0
|
||||||
if !@data['results']['browser.window.hostname'].nil?
|
if !@data['results']['browser.window.hostname'].nil? && BeEF::Filters.is_valid_hostname?(@data['results']['browser.window.hostname'])
|
||||||
log_zombie_domain = @data['results']['browser.window.hostname']
|
log_zombie_domain = @data['results']['browser.window.hostname']
|
||||||
elsif !@data['request'].referer.nil? and !@data['request'].referer.empty?
|
elsif !@data['request'].referer.nil? and !@data['request'].referer.empty?
|
||||||
referer = @data['request'].referer
|
referer = @data['request'].referer
|
||||||
@@ -59,7 +59,7 @@ module BeEF
|
|||||||
end
|
end
|
||||||
|
|
||||||
# hooked window host port
|
# hooked window host port
|
||||||
if @data['results']['browser.window.hostport'].nil?
|
if @data['results']['browser.window.hostport'].nil? || !BeEF::Filters.is_valid_port?(@data['results']['browser.window.hostport'].to_s)
|
||||||
log_zombie_domain_parts = log_zombie_domain.split(':')
|
log_zombie_domain_parts = log_zombie_domain.split(':')
|
||||||
log_zombie_port = log_zombie_domain_parts[1].to_i if log_zombie_domain_parts.length > 1
|
log_zombie_port = log_zombie_domain_parts[1].to_i if log_zombie_domain_parts.length > 1
|
||||||
else
|
else
|
||||||
@@ -92,6 +92,7 @@ module BeEF
|
|||||||
BD.set(session_id, 'browser.name.friendly', browser_friendly_name)
|
BD.set(session_id, 'browser.name.friendly', browser_friendly_name)
|
||||||
else
|
else
|
||||||
err_msg "Invalid browser name returned from the hook browser's initial connection."
|
err_msg "Invalid browser name returned from the hook browser's initial connection."
|
||||||
|
browser_name = 'Unknown'
|
||||||
end
|
end
|
||||||
|
|
||||||
if BeEF::Filters.is_valid_ip?(zombie.ip)
|
if BeEF::Filters.is_valid_ip?(zombie.ip)
|
||||||
@@ -242,11 +243,17 @@ module BeEF
|
|||||||
X_FORWARDED
|
X_FORWARDED
|
||||||
X_FORWARDED_FOR
|
X_FORWARDED_FOR
|
||||||
].each do |header|
|
].each do |header|
|
||||||
proxy_clients << (JSON.parse(zombie.httpheaders)[header]).to_s unless JSON.parse(zombie.httpheaders)[header].nil?
|
val = JSON.parse(zombie.httpheaders)[header]
|
||||||
|
unless val.nil?
|
||||||
|
val.to_s.split(',').each do |ip|
|
||||||
|
proxy_clients << ip.strip if BeEF::Filters.is_valid_ip?(ip.strip)
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# retrieve proxy server
|
# retrieve proxy server
|
||||||
proxy_server = JSON.parse(zombie.httpheaders)['VIA'] unless JSON.parse(zombie.httpheaders)['VIA'].nil?
|
proxy_server = JSON.parse(zombie.httpheaders)['VIA'] unless JSON.parse(zombie.httpheaders)['VIA'].nil?
|
||||||
|
proxy_server = nil unless proxy_server.nil? || BeEF::Filters.has_valid_browser_details_chars?(proxy_server)
|
||||||
|
|
||||||
# store and log proxy details
|
# store and log proxy details
|
||||||
if using_proxy == true
|
if using_proxy == true
|
||||||
@@ -273,6 +280,7 @@ module BeEF
|
|||||||
BD.set(session_id, 'browser.version', browser_version)
|
BD.set(session_id, 'browser.version', browser_version)
|
||||||
else
|
else
|
||||||
err_msg "Invalid browser version returned from the hook browser's initial connection."
|
err_msg "Invalid browser version returned from the hook browser's initial connection."
|
||||||
|
browser_version = 'Unknown'
|
||||||
end
|
end
|
||||||
|
|
||||||
# get and store browser string
|
# get and store browser string
|
||||||
@@ -293,7 +301,11 @@ module BeEF
|
|||||||
|
|
||||||
# get and store browser language
|
# get and store browser language
|
||||||
browser_lang = get_param(@data['results'], 'browser.language')
|
browser_lang = get_param(@data['results'], 'browser.language')
|
||||||
BD.set(session_id, 'browser.language', browser_lang)
|
if BeEF::Filters.has_valid_browser_details_chars?(browser_lang)
|
||||||
|
BD.set(session_id, 'browser.language', browser_lang)
|
||||||
|
else
|
||||||
|
err_msg "Invalid browser language returned from the hook browser's initial connection."
|
||||||
|
end
|
||||||
|
|
||||||
# get and store the cookies
|
# get and store the cookies
|
||||||
cookies = get_param(@data['results'], 'browser.window.cookies')
|
cookies = get_param(@data['results'], 'browser.window.cookies')
|
||||||
@@ -309,6 +321,7 @@ module BeEF
|
|||||||
BD.set(session_id, 'host.os.name', os_name)
|
BD.set(session_id, 'host.os.name', os_name)
|
||||||
else
|
else
|
||||||
err_msg "Invalid operating system name returned from the hook browser's initial connection."
|
err_msg "Invalid operating system name returned from the hook browser's initial connection."
|
||||||
|
os_name = 'Unknown'
|
||||||
end
|
end
|
||||||
|
|
||||||
# get and store the OS family
|
# get and store the OS family
|
||||||
@@ -322,15 +335,28 @@ module BeEF
|
|||||||
# get and store the OS version
|
# get and store the OS version
|
||||||
# - without checks as it can be very different, for instance on linux/bsd)
|
# - without checks as it can be very different, for instance on linux/bsd)
|
||||||
os_version = get_param(@data['results'], 'host.os.version')
|
os_version = get_param(@data['results'], 'host.os.version')
|
||||||
BD.set(session_id, 'host.os.version', os_version)
|
if BeEF::Filters.has_valid_browser_details_chars?(os_version)
|
||||||
|
BD.set(session_id, 'host.os.version', os_version)
|
||||||
|
else
|
||||||
|
err_msg "Invalid operating system version returned from the hook browser's initial connection."
|
||||||
|
os_version = 'Unknown'
|
||||||
|
end
|
||||||
|
|
||||||
# get and store the OS arch - without checks
|
# get and store the OS arch
|
||||||
os_arch = get_param(@data['results'], 'host.os.arch')
|
os_arch = get_param(@data['results'], 'host.os.arch')
|
||||||
BD.set(session_id, 'host.os.arch', os_arch)
|
if BeEF::Filters.has_valid_browser_details_chars?(os_arch)
|
||||||
|
BD.set(session_id, 'host.os.arch', os_arch)
|
||||||
|
else
|
||||||
|
err_msg "Invalid operating system architecture returned from the hook browser's initial connection."
|
||||||
|
end
|
||||||
|
|
||||||
# get and store default browser
|
# get and store default browser
|
||||||
default_browser = get_param(@data['results'], 'host.software.defaultbrowser')
|
default_browser = get_param(@data['results'], 'host.software.defaultbrowser')
|
||||||
BD.set(session_id, 'host.software.defaultbrowser', default_browser)
|
if BeEF::Filters.has_valid_browser_details_chars?(default_browser)
|
||||||
|
BD.set(session_id, 'host.software.defaultbrowser', default_browser)
|
||||||
|
else
|
||||||
|
err_msg "Invalid default browser returned from the hook browser's initial connection."
|
||||||
|
end
|
||||||
|
|
||||||
# get and store the hardware type
|
# get and store the hardware type
|
||||||
hw_type = get_param(@data['results'], 'hardware.type')
|
hw_type = get_param(@data['results'], 'hardware.type')
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
@@ -72,7 +72,7 @@ module BeEF
|
|||||||
if config.get('beef.http.websocket.enable') && ws.getsocket(hooked_browser.session)
|
if config.get('beef.http.websocket.enable') && ws.getsocket(hooked_browser.session)
|
||||||
# content = command_module.output.gsub('//
|
# content = command_module.output.gsub('//
|
||||||
# //
|
# //
|
||||||
# // Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# // Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# // Browser Exploitation Framework (BeEF) - https://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
|
||||||
# //
|
# //
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006-2025 Wade Alcorn - wade@bindshell.net
|
# Copyright (c) 2006-2026 Wade Alcorn - wade@bindshell.net
|
||||||
# Browser Exploitation Framework (BeEF) - https://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
|
||||||
#
|
#
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user