Dragonflyz
- Created By Jacob H Barrow, Cybersploit LLC
What Is Dragonflyz?
This time it's not just about being fast = Dominic Torretto.
- This package is being designed to make the software development lifecycle fast, effective, and financially responsible.
- From cradle to end of life, let's focus on being agile while prioritizing cost!
- Using Dragonflyz, software engineers can minimize their carbon footprint while securing their code from hackers.
Why The Name
- For catching bugs in Python
Kill Chain Overview
- Cross examined with Lockheed's Cyber Kill Chain
- Loads more to follow, this was the first day investing some time
- Right now, the package focuses on project engagement and management overhead.
- Later, it will get more technical as the package explores each stage below!
Code Analysis
- Reconnaisance stage
- Refers to both static and dynamic analysis
- Static and dynamic type exploitation
- etc
Modification
- Weaponization stage
- Identify the location, functionality, systems of system(s) effect(s), then modify
- Based on the analysis, where can it be weaponized?
- What location(s) provide the state of interest?
- How many location(s) need to be involved to change each functionality?
- What functionalities are necessary to weaponize the entire system, or systems of systems?
- etc.
Access
- Delivery stage
- How will this be delivered to all customers, new and existing?
- What will be needed to get this update or modification in place?
- For example, do we need to compromise the PKI server or modify the signature on the signed code,in order to upload as the original author.
- etc.
Execute
- Exploit stage
- When will the code be run?
- What NTP server is being used to track the time of execution?
- What conditions/systems are required for the code to be triggered?
- etc.
State Analysis
- Installation stage
- How is our software going to beat attestation algorithms in-place?
- What index profile will our system be given after being modified?
- For example, will the protection profile change? Will the heuristic profile change?
- etc.
Networking
- Command and control stage
- Is the current REST API going to be leveraged?
- Does the modification allow the software to communicate/interact with other cover channels?
- etc.
Your Move
- Actions or objections stage
- Is this to collect information, weaken the protection profile for subsequent attack, or are we trying to damge the system/network?
- Is this automated? Do we need to supervise further compromise? Is it a zero click that gives us a singular piece of information?
- Are we planning to lay low with the modification? Ex. NSA's ECC PRNG 2011
- Do we use this modification to attack as many as possible, or do we focus on non-attribution/a single demographic?
Installation
dragonfly@bugeatery:~$ pip install Dragonflyz
Usage
>>> from KillChain import sprint_gantt, project_gantt, map_job_ids, Date_Range_Generator
>>>
>>> ### Sprint Gantt Example
>>> tasks_mins = {"john": {"jobs": [(40, 50), (0,0), (0,0), (0,0), (0,0), (0,0), (175,250)]}, "natilie": {"jobs": [(110, 10), (150, 10)]}, "sammy": {"jobs": [(10, 50), (100, 20), (130, 10)]}, "max": {"jobs": [(0,0), (0, 0), (0, 0), (160, 180), (205, 225)]}, "Trix": {"jobs": [(0,0), (0,0), (0,0), (0,0), (175, 200), (240, 250)]}}
>>> sprint_gantt(tasks_mins, project_length = 270, project_name = "Soaring Eagle")
>>>
>>> ### Project Gantt Example
>>> people = {'John': {0: Date_Range_Generator(6,9,2022, count = 3), 1: Date_Range_Generator(12, 9, 2022, count = 4), 2: Date_Range_Generator(16, 9, 2022)}, 'Trix': {3: Date_Range_Generator(26, 9, 2022, count = 6)}, 'Roxy': {0: Date_Range_Generator(6,9,2022, count = 4), 2: Date_Range_Generator(16,9,2022, count = 11), 3: Date_Range_Generator(29,9,2022, count = 3)}}
>>> tasks = {'people': {}, 'jobIds': {0: ["Engagement", 'tab:orange'], 1: ["Contract", "tab:red"], 2: ["Work", "tab:blue"], 3: ["Reporting", "tab:green"]}}
>>> project_gantt(map_job_ids(tasks, people), project_name = "Strike Eagle", filename = "Project Resource Allocation Gantt_Strike Eagle.png")
Experimental Usage
- Influenced by PowerAPI code
- Not prime time yet, and would recommend using joulehunter in the meantime
Warning -> Code Must Be Run With Sudo
dragonfly@bugeatery:~$ sudo pip install Dragonflyz
dragonflyz@bugeatery:~$ echo "Try the panel web interface"
dragonflyz@bugeatery:~$ sudo panel serve TESTFILE.py --show --autoreload
Warning -> Code Must Be Run With Sudo
>>> # TESTFILE.py
>>> from Dragonflyz import EnergyConsumed, totalEnergy
>>> @EnergyConsumed(panel = True) # Only if you want to serve it to panel, else it returns the results in json form
>>> def decoratedFun():
>>> pass
>>>
>>> @EnergyConsumed(panel = False)
>>> def decoratedFun2():
>>> pass
>>> # Experimental
>>> print(totalEnergy(decoratedFun2()))
Used in Profile-Aware -> Online GUI
>>> from Dragonflyz import check_disks, get_database_size
>>> from pathlib import Path
>>> check_disks()
>>> get_database_size(Path("DATABASE LOCATION HERE"))
>>> from Dragonflyz import sensor_info, print_devices
>>> print_devices(sensor_info())
Used in Profile-Aware -> Online GUI
CpuHandler won't work with PowerEdge devices -> commercial product coming soon
>>> from Dragonflyz import MemoryHandler, CpuHandler
>>> with MemoryHandler() as memory:
>>> print(memory.basic_memory_info())
>>> with CpuHandler() as cpu:
>>> print(cpu.get_json())
Made By Cybersploit LLC
- Defend against the software cyber killchain!
Release files for Dragonflyz 2.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| Dragonflyz-2.0.5-py3-none-any.whl | Python 3 | none | any | Details |
Release files / Dragonflyz-2.0.5-py3-none-any.whl
| Download URL | Dragonflyz-2.0.5-py3-none-any.whl |
|---|---|
| Size | 11.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
827a54a84207f2014384fc666dd6b6bd4e2e3cb9e6b90aa2bb5b3f2b72094b82
|
|
BLAKE2b-256 checksum How to use checksums |
69ee80a164bd6c813b9dd97d7c59d2cffb695d3134ca06c417252557460a41b9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
|