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

WID_LoadLibrary : The Intricacies Of DLL Management In Windows

WID_LoadLibrary is a custom implementation inspired by the Windows API function LoadLibrary, which is used…

14 hours ago

Locksmith : A Tool For Securing Active Directory Certificate Services

Locksmith is a specialized tool designed to identify and remediate vulnerabilities in Active Directory Certificate…

14 hours ago

Uscrapper Vanta : A Cutting-Edge OSINT Tool For Advanced Data Extraction

Uscrapper Vanta is a powerful open-source intelligence (OSINT) tool designed to revolutionize web scraping and…

14 hours ago

Pake : Transforming Webpages Into Desktop Applications

Pake is an innovative tool designed to convert any webpage into a desktop application with…

19 hours ago

Bevy : Exploring The Frontier Of Game Development With Rust

Bevy is an open-source, data-driven game engine built in Rust, designed to simplify game development…

19 hours ago

AppFlowy Cloud : Enhancing Collaboration With Secure Cloud Infrastructure

AppFlowy Cloud is a robust component of the AppFlowy ecosystem, designed to provide secure user…

2 days ago