Install and configures BeFF - The Browser Exploitation Framework!
The following platforms and versions are tested and supported using Opscode's test-kitchen.
- Debian wheezy
- Debian jessie
Key | Type | Description |
---|---|---|
[beef][install_package] |
Array | Package to install when installing from package (default: beef-xss ) |
Key | Type | Description |
---|---|---|
[beef][packages] |
Array | Additional packages to install when installing from sources (default: [git, libsqlite3-dev, build-essential] ) |
[beef][gem_packages] |
Array | Additional gem packages to install when installing from sources (default: [bundler] ) |
[beef][user] |
String | BeEF user (default: root ) |
[beef][group] |
String | BeEF group (default: root ) |
[beef][path] |
String | BeEF installation path (default: /opt/beef ) |
[beef][git_repository] |
String | BeEF repository url (default: https://github.com/beefproject/beef.git ) |
[beef][git_reference] |
String | BeEF repository reference (default: beef-0.4.7.3 ) |
[beef][ruby_bin_dir] |
String | Ruby bin directory (default: /opt/chef/embedded/bin ) |
[beef][config_file]
Path to configuration file. Thebeef::install_pkg
automatically set this to/etc/beef-xss/config.yaml
. Ifnil
automatically generated from[beef][path]
attribute. Default:nil
.[beef][extensions_path]
Path to BeEF extensions. Thebeef::install_pkg
automatically set this to/usr/share/beef-xss/extensions
. Ifnil
automatically generated from[beef][path]
attribute. Default:nil
.- The
[beef][config][beef]
namespace is a Hash containing the BeEF configuration. Extensions configuration are defined in[beef][config][extensions]
Default configuration is set from beef-0.4.7.3
Use the [beef][service]
attribute to override variables service configuration. See default attributes.
All variables you can override can be found in service template.
Key | Type | Description |
---|---|---|
[beef][geoip_url] |
String | URL to fetch GEOIP database archive (default: https://geolite.maxmind.com/download/geoip/database/GeoLite2-City.tar.gz ) |
Just include beef
in your node's run_list
:
{
"name":"my_node",
"run_list": [
"recipe[beef]"
]
}
Just include beef::install_pkg
in your node's run_list
to install BeEF from package:
{
"name":"my_node",
"run_list": [
"recipe[beef::install_pkg]"
]
}
Just include beef::install_src
in your node's run_list
to install BeEF from sources:
{
"name":"my_node",
"run_list": [
"recipe[beef::install_src]"
],
"attributes": {
"beef": {
"user": "beef",
"group": "beef",
"path": "/opt/beef"
}
}
}
Just include beef::install_src
in your node's run_list
to configure BeEF.
You can optionally set the configuration file target with [beef][config_file]
attribute:
{
"name":"my_node",
"run_list": [
"recipe[beef::config]"
],
"attributes": {
"beef": {
"config_file": "/etc/beef/config.yaml"
}
}
}
Just include beef::service
in your node's run_list
to setup BeEF service:
{
"name":"my_node",
"run_list": [
"recipe[beef::service]"
],
"attributes": {
"beef": {
"service": {
"NAME": "beef-xss"
}
}
}
}
Just include beef::geoip_database
in your node's run_list
to download GeoIP database:
{
"name":"my_node",
"run_list": [
"recipe[beef::geoip_database]"
]
}
-
First, install dependencies:
bundle install
-
Run Checkstyle and ChefSpec:
bundle exec rake
-
Run Kitchen tests:
bundle exec rake kitchen
- Fork the repository on Github
- Create a named feature branch (like
add_component_x
) - Write your change
- Write tests for your change (if applicable)
- Run the tests, ensuring they all pass
- Submit a Pull Request using Github
Authors: Sliim [email protected]
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.