Exploitation Tools

Adding An Exploit – How To Integrate And Manage New Exploits In BlueToolkit

To add an exploit one has to go through a similar process as with the hardware profile, but in the case of the exploits, there are more options to provide and set.

If a new exploit needs a new hardware support then you first need to add a hardware profile, otherwise, you should use the default hardware profile.

To add an actual exploit profile you need to go through the following process:

  1. Create an exploit {name}.yaml file and name it as you wish. For example, exploit1337.yaml should be stored in the exploits directory
  2. Then you need to add the description of the exploit in YAML to the file which should have the following structure, see example 1:
name: "internalblue_CVE_2018_5383_Invalid"
author: "Internalblue team"
type: "PoC"
mass_testing: true
bt_version_min: 2.0
bt_version_max: 5.2
hardware: "nexus5"
command: "./internalblue_CVE_2018_5383_Invalid.sh"
parameters:
  - name: "target"
 name_required: false
 type: "str"
 help: "Target MAC address"
 required: true
 is_target_param: true
 parameter_connector: " "
  - name: "directory"
 name_required: false
 type: "str"
 help: "Directory to save output"
 required: true
 is_target_param: false
 parameter_connector: " "
log_pull:
  in_command: true
  pull_parameter: "directory"
directory:
  change: true
  directory: "modules/tools/custom_exploits"

3. With that you added an exploit, and you can verify that with the following command

sudo -E env PATH=$PATH bluekit -l
  1. If your exploit is not a DoS proof of concept, then we would ask you to add the following wrapper
    1. Call report_vulnerable function from the bluekit package when the exploit worked and a target device is vulnerable. Add data you want to save in the toolkit logs.
from bluekit.report import report_not_vulnerable, report_vulnerable, report_error

report_vulnerable("STRING YOU WANT TO APPEAR IN THE LOGS")
  • Call report_not_vulnerable function from bluekit package when the device is not vulnerable. Add the data you want to save in the toolkit logs.
from bluekit.report import report_not_vulnerable, report_vulnerable, report_error

report_not_vulnerable("STRING YOU WANT TO APPEAR IN THE LOGS")
  • For other codes please consult the documentation
Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

Promptmap

Prompt injection is a type of security vulnerability that can be exploited to control the…

2 days ago

Firefly – Black Box Fuzzer For Web Applications

Firefly is an advanced black-box fuzzer and not just a standard asset discovery tool. Firefly…

2 days ago

Winit : Cross-Platform Window Creation And Management In Rust

Winit is a robust, cross-platform library designed for creating and managing windows in Rust applications.…

2 days ago

Browser Autofill Phishing – The Hidden Dangers And Security Risks

In today’s digital age, convenience often comes at the cost of security. One such overlooked…

2 days ago

Terminal GPT (tgpt) – Your Direct CLI Gateway To ChatGPT 3.5

Terminal GPT (tgpt) offers a seamless way to bring the power of ChatGPT 3.5 directly…

2 days ago

garak, LLM Vulnerability Scanner : The Comprehensive Tool For Assessing Language Model Security

garak checks if an LLM can be made to fail in a way we don't…

5 days ago