Skip to main content

Advanced Binary Analysis Tool

Project description

NusantaraScan

"An open-source binary analysis tool for modern security workflows."

Python License Platform PyPI version


๐Ÿ“Œ About The Project

NusantaraScan is an open-source binary analysis tool designed for modern malware analysis and reverse engineering workflows.

It supports:

  • Malware analysis
  • RAT (Remote Access Trojan) detection
  • Binary reverse engineering
  • Packer detection
  • Entropy visualization
  • Multi-platform executable analysis

Designed to be:

  • Powerful for professional analysts
  • Simple enough for beginners

โœจ Features (v0.2.2)

  • Static Analysis (PE, ELF, Mach-O)
  • RAT Detection (DarkComet, NanoCore, NjRAT, Gh0st, etc.)
  • String Extraction (URLs, IPs, API calls)
  • Entropy Analysis
  • Section Analysis
  • YARA Integration
  • Disassembly (x86/x64/ARM/ARM64)
  • Multi-format Export (JSON, HTML)
  • Packer Detection (UPX, ASPack, MPRESS)
  • Entropy Visualization
  • Multi-file Scanning
  • VirusTotal Integration

โš™๏ธ Installation

Clone Repository

git clone https://github.com/Lutfifakee-Project/NusantaraScan.git
cd NusantaraScan
pip install -r requirements.txt
python main.py --help

Install from PyPI

pip install nusantarascan

๐Ÿ›ก๏ธ RAT Detection Examples

python main.py suspicious_file.exe --yara nusantarascan/signatures/yara_rules/rat_rules

python main.py suspicious_file.exe --deep \
--yara nusantarascan/signatures/yara_rules/rat_rules

๐Ÿš€ Usage Examples

# Basic analysis
python main.py notepad.exe

# Detect packers
python main.py malware.exe --packer

# Entropy graph visualization
python main.py malware.exe --graph

# Full disassembly
python main.py malware.exe --full-disasm

# Scan all files recursively
python main.py ./malware_samples/ --recursive

# Check file on VirusTotal (requires API key)
python main.py malware.exe --vt --vt-api-key YOUR_API_KEY

# Combine multiple features
python main.py malware.exe --deep --packer --graph --vt

# Export report to HTML/JSON
python main.py file.exe --output report.html --format html

๐Ÿ“Š Example Output

    _   _                       _                  ____
   | \ | |_   _ ___  __ _ _ __ | |_ __ _ _ __ __ _/ ___|  ___ __ _ _ __
   |  \| | | | / __|/ _` | '_ \| __/ _` | '__/ _` \___ \ / __/ _` | '_ \
   | |\  | |_| \__ \ (_| | | | | || (_| | | | (_| |___) | (_| (_| | | | |
   |_| \_|\__,_|___/\__,_|_| |_|\__\__,_|_|  \__,_|____/ \___\__,_|_| |_| 0.2.0
                https://github.com/Lutfifakee-Project/

[+] Target   : malware_simulator.exe
[+] Size     : 8,456,064 bytes (8.06 MB)
[+] MD5      : 1a2b3c4d5e6f7g8h9i0j
[+] Entropy  : 6.8521

[*] Section Analysis:
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Name   โ”ƒ Virtual Address โ”ƒ Virtual Size โ”ƒ Raw Size โ”ƒ Entropy โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ .text  โ”‚ 0x1000          โ”‚ 0x2448f      โ”‚ 0x24600  โ”‚ 6.2747  โ”‚
โ”‚ .rdata โ”‚ 0x26000         โ”‚ 0x9288       โ”‚ 0x9400   โ”‚ 5.9296  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[+] Imported Functions:
    KERNEL32.dll
      โ””โ”€ CreateRemoteThread
      โ””โ”€ VirtualAllocEx
      โ””โ”€ WriteProcessMemory
      โ””โ”€ RegSetValueExW

[+] String Analysis:
    [!] Suspicious strings detected:
      โ€ข DarkComet
      โ€ข CreateRemoteThread
      โ€ข VirtualAllocEx

[!] YARA Scan:
    [!] 2 YARA rule(s) matched:
      โ€ข DarkComet_RAT
      โ€ข Suspicious_RAT_APIs

[+] Scan completed!

๐Ÿ“ฆ Requirements

  • Python 3.8 or newer

Install Dependencies

pip install -r requirements.txt

Main Dependencies

  • pefile โ€” Windows PE analysis
  • pyelftools โ€” Linux ELF analysis
  • capstone โ€” Disassembly engine
  • yara-python โ€” YARA integration
  • rich โ€” CLI formatting
  • requests โ€” VirusTotal API integration

๐Ÿ“ Project Structure

NusantaraScan/
โ”œโ”€โ”€ main.py                  # Main entry point
โ”œโ”€โ”€ requirements.txt         # Python dependencies
โ”œโ”€โ”€ setup.py                 # Package installer
โ”œโ”€โ”€ README.md                # Documentation
โ””โ”€โ”€ nusantarascan/
    โ”œโ”€โ”€ cli.py               # CLI handler
    โ”œโ”€โ”€ analyzers/           # Binary analyzers (PE, ELF, Mach-O)
    โ”œโ”€โ”€ visualizers/         # Entropy graph visualization
    โ”œโ”€โ”€ integrations/        # VirusTotal integration
    โ”œโ”€โ”€ scanners/            # Multi-file scanner
    โ”œโ”€โ”€ utils/               # Utilities (hashing, entropy, etc.)
    โ”œโ”€โ”€ signatures/          # YARA scanner & rules
    โ”‚   โ””โ”€โ”€ yara_rules/
    โ”‚       โ””โ”€โ”€ rat_rules/   # RAT detection rules
    โ””โ”€โ”€ formatters/          # JSON/HTML exporters

๐Ÿงฉ Using Community YARA Rules

To significantly improve detection capabilities, you can integrate community-maintained YARA rules from the Yara-Rules/rules repository.

This repository contains thousands of signatures for:

  • Malware detection
  • Packer detection
  • Exploit kits
  • Malicious documents
  • Anti-debugging techniques
  • Threat actor indicators

๐Ÿ“ฅ Integrating Community Rules

Clone the Repository

git clone https://github.com/Yara-Rules/rules.git \
nusantarascan/signatures/yara_rules/community

Directory Structure

nusantarascan/signatures/yara_rules/
โ”œโ”€โ”€ rat_rules/          # Custom RAT rules
โ””โ”€โ”€ community/          # Community YARA rules
    โ”œโ”€โ”€ malware/
    โ”œโ”€โ”€ packers/
    โ”œโ”€โ”€ maldocs/
    โ””โ”€โ”€ ...

๐Ÿ” Using Community Rules

Scan with All Community Rules

python main.py suspicious_file.exe \
--yara nusantarascan/signatures/yara_rules/community

Scan with Malware Category Only

python main.py suspicious_file.exe \
--yara nusantarascan/signatures/yara_rules/community/malware

Combine Custom RAT Rules + Community Rules

python main.py suspicious_file.exe \
--yara nusantarascan/signatures/yara_rules/

โš ๏ธ Disclaimer

This project is intended for:

  • Security research
  • Malware analysis
  • Educational purposes
  • Authorized penetration testing

The developer is not responsible for:

  • Illegal activities
  • Unauthorized system access
  • Misuse of this software
  • Damage caused by improper usage

Use this tool responsibly and only in environments where you have explicit permission.


๐Ÿ“„ License

This project is licensed under the GNU General Public License v3.0 (GPLv3).

See the LICENSE file for more information.


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

nusantarascan-0.2.2.tar.gz (33.1 kB view details)

Uploaded Source

Built Distribution

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

nusantarascan-0.2.2-py3-none-any.whl (36.2 kB view details)

Uploaded Python 3

File details

Details for the file nusantarascan-0.2.2.tar.gz.

File metadata

  • Download URL: nusantarascan-0.2.2.tar.gz
  • Upload date:
  • Size: 33.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for nusantarascan-0.2.2.tar.gz
Algorithm Hash digest
SHA256 e7b5d2bc8d99669864931b846ed8eb9ef126b6e7faab7e700623df71b900998a
MD5 1ed5501eb1716e4c78f81f94b67ac232
BLAKE2b-256 8dae0a0e14fbbbac9833b55973d082ec0c42fb11b395a31ef6ea6fdf3e3de5fb

See more details on using hashes here.

File details

Details for the file nusantarascan-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: nusantarascan-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 36.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for nusantarascan-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c47e650d57e64792a19148cf0389541c0c7241bdae05fdbc415ef125366b2e39
MD5 5561404327d779ac7db2aec6688bc379
BLAKE2b-256 c74dae1bad322015d1bfec4818445ce73deda5c6eececc4607df9e540883d596

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