A PoC tool for CWE prioritization according to MITRE CAPEC dictionary.
Project description
Introduction
Atternio is a PoC tool powered by flawfinder for CWE prioritization according to MITRE CAPEC dictionary.
The tool utilises open source CAPEC data provided in the form of JSON (STIX 2.x) files.
Algorithm
The tool receives a path to C/C++ sources as an input, which is passed to flawfinder to find CWEs.
Each CWE is searched through CAPEC data to determine attack patterns (CAPEC-IDs) it can used in.
When analyzing CAPEC data, the following metrics are taken into account:
- Severity (
x_capec_severity
); - Likelihood (
x_capec_likelihood_of_attack
).
An individual CWE can be found in multiple CAPEC-IDs.
For each CWE in CAPEC-ID risk points are calculated using the following formula:
cwe_risk = severity + likelihood
Each CAPEC-ID can contain multiple detected CWEs:
capec_risk = sum(cwe_risk)
Finally, the total number of risk points:
total_risk = sum(capec_risk)
When the risk enumeration is complete, the tool will output 2 tables:
- CWE Records - all CWEs detected with their location in provided sources;
- Prioritized CWE Records - prioritized CWEs with related CAPECs and percentage of shared risk.
Usage
$ python3 atternio/ --help
usage: [-h] --source PATH_INPUT [--install-dictionary] [-o OUTPUT] [--results]
Atternio - a PoC tool for CWE prioritization according to MITRE CAPEC dictionary.
optional arguments:
-h, --help show this help message and exit
--source PATH_INPUT path to file or directory
--install-dictionary if CAPEC dictionary is not present, install it
automatically
-o OUTPUT, --output OUTPUT
path to output file
--results show only RESULTS section
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file atternio-0.2.0.tar.gz
.
File metadata
- Download URL: atternio-0.2.0.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 764adcd891cf2d59281d77fa43495be093a901c4900778fee4d28bffcebc1369 |
|
MD5 | a346569751a56ab265c256efcd27f5af |
|
BLAKE2b-256 | 9970a5ebb24ad514502f76ab7404d7f7ee40207e90ff81ce5811cc0bc280e778 |
File details
Details for the file atternio-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: atternio-0.2.0-py3-none-any.whl
- Upload date:
- Size: 9.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7642b648d15f9cae2acc45f92ad37ff69cb656ffb48e738eea45d67225b0e5da |
|
MD5 | e5522d45903bc713a316365494522a21 |
|
BLAKE2b-256 | aa848654ecc5435de20d54a2426d9d7da0706cd670ca204775e0fdd0b0c1a4e2 |