Skip to main content

Signature Agnostic Binary Visualizer based on SAGMAD

Project description

SABV (Signature-Agnostic Binary Visualizer)

A PE/binary-to-image converter designed to visualize any binary file.
Optionally integrates a fuzzy-inference system (FIS) inspired by the SAGMAD methodology.

SABV allows:

  • Conversion of arbitrary binary files into structured image representations
  • Optional fuzzy-inference enhanced visualizations
  • Custom color schemes
  • Configurable sampling, resolution, and threading

Installation

pip install SABV

Installation from source

git clone https://github.com/AquaCoder0010/SABV.git
pip install -r requirements.txt

Example Usage

Basic Visualization (FIS disabled)

from SABV import SABV
import cv2

# visualization without fuzzy inference
sabv = SignatureAgnosticBinaryVisualizer()
img = sabv.process_file("ENTER-FILE-PATH")

cv2.imwrite("IMAGE_PATH.png", img)

Basic Visualization with custom color scheme

from SABV import SABV
import cv2

# note that color_scheme must be a function as well as a function that returns a tuple
def custom_color_scheme(byte):
	if byte > 128:
	   return (128, 128, 128)
	return (255, 255, 255)

sabv = SignatureAgnosticBinaryVisualizer()
sabv.set_color_scheme(custom)
img = sabv.process_file("ENTER-FILE-PATH")
cv2.imwrite("IMAGE_PATH.png", img)

Visualization With Fuzzy Inference System (FIS)

from SABV import SABV
import cv2

sabv_with_fis = SABV(FIS_ENABLED=True, N=3, sample=0.05, FIS_THREADING_ENABLED=True)
img = sabv.process_file("ENTER-FILE-PATH")

cv2.imwrite("IMAGE_PATH.png", img)

Benchmark

alt text

Example Images

with FIS

alt text

without FIS

alt text

Citation

Saridou, B.; Rose, J. R.; Shiaeles, S.; Papadopoulos, B.
SAGMAD—A Signature Agnostic Malware Detection System Based on Binary Visualisation and Fuzzy Sets.
Electronics, 2022, 11, 1044.
https://doi.org/10.3390/electronics11071044

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sabv-0.1.2.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sabv-0.1.2-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file sabv-0.1.2.tar.gz.

File metadata

  • Download URL: sabv-0.1.2.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for sabv-0.1.2.tar.gz
Algorithm Hash digest
SHA256 086a8e1ca43a2d0ceceb2a4ff603470ed14417063e2b91f88b5ee0dd4e0bd548
MD5 3eb7e37d523ea4aaaabbf06d5d856f2d
BLAKE2b-256 5a1c5f57a83be987acbc096cf9cb58cd1a0949793a2e72ca79bf465897ef104b

See more details on using hashes here.

File details

Details for the file sabv-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: sabv-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for sabv-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 abfbec370900fb614eb8dd06f11f236b4fef32d743cdbaade1a47e6da451040f
MD5 3d560efb70c1eda580f4c2ce5361c846
BLAKE2b-256 ff26f9b0acfda9caf4da1bb583e9be191f5c55ea0f128dca5a023be06f886794

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page