cookbook 'beef', '~> 0.5.0'
beef (6) Versions 0.5.0 Follow1
Installs/Configures BeEF
cookbook 'beef', '~> 0.5.0', :supermarket
knife supermarket install beef
knife supermarket download beef
BeEF Cookbook
Install and configures BeFF - The Browser Exploitation Framework!
Requirements
Platforms
The following platforms and versions are tested and supported using Opscode's test-kitchen.
- Debian wheezy
- Debian jessie
Attributes
Install from package
Key | Type | Description |
---|---|---|
[beef][install_package] |
Array | Package to install when installing from package (default: beef-xss ) |
Install from sources
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 ) |
Configuration
-
[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
Service
Use the [beef][service]
attribute to override variables service configuration. See [default](attributes/default.rb) attributes.
All variables you can override can be found in [service template](templates/default/service/init.erb#L13-L20).
GeoIP database
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 ) |
Usage
beef::default
Just include beef
in your node's run_list
:
{ "name":"my_node", "run_list": [ "recipe[beef]" ] }
beef::install_pkg
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]" ] }
beef::install_src
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" } } }
beef::config
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" } } }
beef::service
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" } } } }
beef::geoip_database
Just include beef::geoip_database
in your node's run_list
to download GeoIP database:
{ "name":"my_node", "run_list": [ "recipe[beef::geoip_database]" ] }
Running tests
First, install dependencies:
bundle install
Run Checkstyle and ChefSpec:
bundle exec rake
Run Kitchen tests:
bundle exec rake kitchen
Contributing
- 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
License and Authors
Authors: Sliim sliim@mailoo.org
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.
Dependent cookbooks
This cookbook has no specified dependencies.
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
beef CHANGELOG
This file is used to list changes made in each version of the BeEF cookbook.
0.5.0
- Chef 13 fixes
- Execute
bundle install
after repo synced - Add
[beef][gem_packages]
attribute for additional gem packages - Add
beef::geoip_database
recipe + attribute to deploy maxmind geoip DB -
beef::install_src
: Append additional gems to beef's Gemfile - Update default attributes for BeEF 0.4.7.3
- CI fixes
0.4.0
- Added recipes:
beef::install_pkg
beef::install_src
beef::config
- Set default version to
0.4.7.0-alpha
- Provides BeEF extentions configuration
- Enable and start BeEF server in
beef::service
recipe
0.3.0
- New recipe:
beef::service
to install and enable BeEF service - Do not install ruby, use the ruby embedded with Chef by default
- New attributes:
[beef][ruby_bin_dir]
and[beef][group]
- Removed
nohup
process
Potential breaking changes
- Reviewed configuration template and attributes
- Set default attribute for BeEF 0.4.6.1-alpha (current)
- Removed useless apt packages.
0.2.0
- Chef 12 compatibility
- Use Rake instead of Strainer
- Test hardness (rubocop, chefspec, kitchen)
- No cookbook dependencies
0.1.1
- Attributes reorganization
0.1.0
- Initial release of beef cookbook
Collaborator Number Metric
0.5.0 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
0.5.0 passed this metric
No Binaries Metric
0.5.0 passed this metric
Testing File Metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.5.0 failed this metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
0.5.0 passed this metric
No Binaries Metric
0.5.0 passed this metric
Testing File Metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.5.0 passed this metric
0.5.0 passed this metric
Testing File Metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.5.0 failed this metric
0.5.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number