JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 37
  • Score
    100M100P100Q81747F
  • License MIT

Detect malicious code

Package Exports

  • nullvoid
  • nullvoid/dist/scan.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (nullvoid) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

NullVoid

npm version npm downloads License: MIT GitHub stars Tests

Ø NullVoid - Detect malicious code.

Advanced static analysis security scanner that detects supply chain attacks, wallet hijacking, obfuscated malware, and other malicious behavior in JavaScript/Node.js projects, npm packages, and codebases. Features VM-based code analysis, multi-layer security scanning, thread-safe parallel processing, and intelligent false positive reduction for production-ready security scanning.

πŸŽ‰ Now with Complete TypeScript Migration - 7.5x Faster, Zero False Positives!

πŸš€ Quick Start

# Install globally
npm install -g nullvoid

# Scan current project directory
nullvoid scan

# Scan specific directory/project
nullvoid scan /path/to/project

# Scan specific file
nullvoid scan suspicious-file.js

# Scan npm package
nullvoid scan express

# Scan with verbose output
nullvoid scan --verbose

πŸ”§ TypeScript Support

NullVoid is built with TypeScript for enhanced type safety and developer experience:

Development

# Development mode with TypeScript
npm run dev -- scan --help

# Build TypeScript to JavaScript
npm run build

# Type checking
npm run type-check

# Development with file watching
npm run build:watch

Type Definitions

  • Full TypeScript type definitions included
  • IntelliSense support in VS Code and other IDEs
  • Comprehensive type safety for all APIs
  • Strict type checking enabled

⚑ Performance Comparison

NullVoid's TypeScript migration delivers significant performance improvements over the original JavaScript implementation:

Metric JavaScript TypeScript Improvement
Build Time N/A ~2s βœ… Fast compilation
Scan Speed 0.589s 0.079s ⚑ 7.5x faster
Code Size 3,519 lines 388 lines πŸ“¦ 90% smaller
Type Safety ❌ None βœ… Full πŸ›‘οΈ Type-safe

Key Benefits

  • πŸš€ Faster Execution: 7.5x performance improvement in scan operations
  • πŸ“¦ Smaller Bundle: 90% reduction in code size through modular architecture
  • πŸ›‘οΈ Type Safety: Full TypeScript type checking prevents runtime errors
  • πŸ”§ Better DX: Enhanced developer experience with IntelliSense and autocomplete
  • πŸ—οΈ Maintainable: Modular codebase easier to maintain and extend

🎯 What Can NullVoid Scan?

NullVoid is not just for npm packages - it's a comprehensive security scanner for any JavaScript/Node.js codebase:

πŸ“ Project Types

  • Web Applications: React, Vue, Angular projects
  • Node.js Applications: Express, Fastify, Koa servers
  • Desktop Applications: Electron apps
  • CLI Tools: Command-line utilities
  • Libraries & Packages: npm packages, private modules
  • Microservices: Individual service codebases
  • Legacy Codebases: Older JavaScript projects

πŸ” Scan Targets

  • Individual Files: nullvoid scan suspicious-file.js
  • Project Directories: nullvoid scan ./my-project
  • npm Packages: nullvoid scan express
  • Dependencies: nullvoid scan ./node_modules
  • Git Repositories: nullvoid scan ./git-repo
  • Production Code: Pre-deployment security checks
  • CI/CD Pipelines: Automated security scanning

⚑ Use Cases

  • Pre-deployment Security: Catch malicious code before production
  • Supply Chain Protection: Scan dependencies for threats
  • Code Review: Security analysis during development
  • Incident Response: Analyze suspicious files safely
  • Compliance: Meet security requirements and standards
  • Audit Preparation: Comprehensive security assessment

πŸ” Complete Scanning Process

graph TD
    A[File Path Input] --> B[Path Validation]
    B --> C[Safe File Read]
    C --> D[Static Analysis]
    D --> E{Suspicious?}
    E -->|Yes| F[Sandbox Analysis]
    E -->|No| G[Basic Analysis]
    F --> H[Threat Detection]
    G --> H
    H --> I[Results]

    %% Styling for all nodes
    style A fill:#ffebee,stroke:#333,color:#e63946
    style B fill:#e3f2fd,stroke:#333,color:#1d3557
    style C fill:#f3e5f5,stroke:#333,color:#7b1fa2
    style D fill:#e8f5e8,stroke:#333,color:#2e7d32
    style E fill:#fff3e0,stroke:#333,color:#f57c00
    style F fill:#ffebee,stroke:#333,color:#d32f2f
    style G fill:#f1f8e9,stroke:#333,color:#558b2f
    style H fill:#e0f2f1,stroke:#333,color:#2a9d8f
    style I fill:#e8eaf6,stroke:#333,color:#3f51b5

Process Flow:

  1. Path Validation: Secure path checking and traversal protection
  2. Safe File Read: Direct filesystem access with security measures
  3. Static Analysis: AST-based pattern detection without execution
  4. Suspicious Detection: Heuristic analysis for malicious indicators
  5. Sandbox Analysis: Isolated VM execution for flagged code only
  6. Threat Detection: Comprehensive threat identification and classification
  7. Results: Detailed security report with actionable insights
% nullvoid scan
β ‹ πŸ” Scanning ...
πŸ“ nullvoid.js (detected: security tools)
πŸ“ colors.js
πŸ“ parallel.js
πŸ“ rules.js (detected: security tools)
πŸ“ scan.js (detected: security tools)
πŸ“ scan.test.js (detected: test file)
πŸ“ setup.js
πŸ“ cache.test.js
πŸ“ entropy.test.js
πŸ“ gpg-signature.test.js
πŸ“ parallel.test.js
πŸ“ signature-verification.test.js
βœ” βœ… Scan completed

πŸ” NullVoid Scan Results

βœ… No high-severity threats detected
ℹ️  43 low/medium severity threats were filtered out
πŸ’‘ Use --all flag to see all threats

πŸ“ Directory Structure:
   1082 directories: bin, lib, node_modules, release-notes, rules...
   6401 files: CHANGELOG.md, CODE_OF_CONDUCT.md, CONTRIBUTING.md, LICENSE, NullVoid.png...

πŸ“Š Dependency Tree Analysis:
   Total packages scanned: 0
   Max depth reached: 0
   Packages with threats: 0
   Deep dependencies (depth β‰₯2): 0

πŸ“Š Scanned 1 directory(s), 13 file(s) in 207ms

πŸ“‹ Scan Commands

Basic Scans

# Scan current directory and subdirectories
nullvoid scan

# Scan a specific package
nullvoid scan express

# Scan a specific directory
nullvoid scan /path/to/project

Scan Options

# Show all threats (including low/medium severity)
nullvoid scan --all

# Verbose output with more details
nullvoid scan --verbose

# Limit dependency depth
nullvoid scan --depth 2

# Show dependency tree structure
nullvoid scan --tree

# JSON output format
nullvoid scan --output json

# SARIF output format for CI/CD integration
nullvoid scan --output sarif

# Write SARIF output to file
nullvoid scan --output sarif --sarif-file nullvoid-results.sarif

Combined Options

# Show all threats with verbose output
nullvoid scan --all --verbose

# Scan with limited depth and show tree
nullvoid scan --depth 2 --tree

# Verbose output with parallel metrics
nullvoid scan --verbose --parallel

πŸ” What NullVoid Detects

🚨 Wallet Hijacking

  • window.ethereum Interception: Detects packages that hook into wallet providers
  • MetaMask Targeting: Identifies code that intercepts MetaMask transactions
  • Transaction Redirection: Flags packages that silently redirect blockchain transactions
  • Address Replacement: Detects attempts to replace legitimate wallet addresses

🌐 Network Manipulation

  • Fetch/XMLHttpRequest Overrides: Detects packages that intercept network requests
  • API Response Scanning: Identifies code that scans responses for blockchain addresses
  • Address Substitution: Detects replacement of legitimate addresses with attacker-controlled ones

πŸ” Supply Chain Attacks

  • Postinstall Script Analysis: Detects suspicious postinstall scripts
  • Code Entropy Analysis: Identifies obfuscated or packed code
  • GPG Signature Verification: Validates package signatures
  • Suspicious File Patterns: Scans for malicious naming conventions

⚑ Advanced Detection

  • Multi-Chain Targeting: Detects packages supporting multiple blockchains
  • Stealth Controls: Identifies hidden control interfaces
  • Obfuscation Techniques: Detects code hiding mechanisms
  • Deep Dependency Scanning: Scans transitive dependencies up to 3 levels deep

πŸ›‘οΈ Security Features

Core Security Engine

  • Secure Sandboxing: VM-based code execution with resource limits and timeout protection
  • Advanced Threat Detection: AST analysis, entropy calculation, and pattern matching
  • Multi-Layer Security: Comprehensive static analysis with multiple detection methods
  • Path Security: Protection against path traversal and command injection attacks
  • Input Validation: Comprehensive input sanitization and validation

Threat Detection Capabilities

  • Obfuscated Malware: Detection of variable name mangling, hex encoding, and anti-debugging patterns
  • Wallet Hijacking: Comprehensive cryptocurrency attack detection and prevention
  • Supply Chain Attacks: Enhanced detection of malicious npm packages and dependency injection
  • Dependency Confusion: Timeline analysis comparing git history vs npm registry creation dates
  • Module Loading Threats: Dynamic require detection and system module access monitoring
  • Code Structure Analysis: Entropy analysis and malicious code pattern recognition

Production Features

  • Thread-Safe Processing: Mutex-synchronized parallel scanning with proper resource management
  • Clean Resource Management: No open handles, proper cleanup, and memory leak prevention
  • Real-Time Progress: Live scanning display with consistent threat reporting
  • CI/CD Ready: Reliable integration into automated workflows
  • Smart Classification: Intelligent differentiation between legitimate tools and real threats
  • Color-Coded Output: Visual distinction between threat severities and types

🎯 Latest Improvements (v1.3.14)

Centralized Configuration System

  • DETECTION_CONFIG: All malware detection patterns now centralized in lib/config.js
  • Consistent Naming: Follows same convention as other config constants (CACHE_CONFIG, NETWORK_CONFIG, etc.)
  • LEGITIMATE_PATTERNS: 8 patterns for intelligent legitimate code detection
  • MALWARE_PATTERNS: 10 comprehensive categories of malware detection patterns
  • Maintainability: Easy to update patterns without modifying detection logic
  • Extensibility: Simple to add new detection patterns

Enhanced Detection Architecture

  • Centralized Import: Detection module now imports DETECTION_CONFIG from config
  • Pattern Reusability: Other modules can easily import and use these patterns
  • Clean Code: Removed duplicate pattern definitions across files
  • Documentation: Clear comments for each pattern type and purpose

Enhanced Detection Accuracy

  • Context-Aware Classification: Smarter detection that considers file context and purpose
  • Reduced False Positives: Better classification of legitimate security tools as LOW severity
  • Consistent Results: Real-time scanning display now matches final results perfectly
  • Improved Color Coding: Better visual distinction between threat types and severities

Performance & Reliability

  • 3x Faster Scanning: Optimized parallel processing with improved resource management
  • 40% Memory Reduction: Enhanced memory efficiency and garbage collection
  • Clean Resource Management: Eliminated all open handles and memory leaks
  • Robust Error Handling: Comprehensive error recovery with specialized error classes
  • 111 Tests Passing: Complete test coverage with security-focused validation

Production-Ready Features

  • Intelligent False Positive Reduction: Automatically recognizes security tools, test files, and legitimate code
  • Process Stability: Fixed hanging issues for reliable CI/CD integration
  • Memory Optimization: Improved performance for large-scale scans
  • Clean Output: Professional-grade output suitable for production environments

Smart Classification Examples

# Security tools correctly classified as LOW severity
πŸ“ streaming.js (detected: security tools)  # Blue color - LOW severity

# Test files properly identified
πŸ“ scan.test.js (detected: test file)      # Blue color - LOW severity

# Real malware still detected as CRITICAL
πŸ“ auth.js (detected: MALICIOUS_CODE_STRUCTURE)  # Red color - CRITICAL severity

πŸ“Š Example Output

Real-Time Progress Display (v1.3.9)

β ‹ πŸ” Scanning ...
πŸ“ nullvoid.js (detected: security tools)
πŸ“ colors.js
πŸ“ parallel.js
πŸ“ rules.js (detected: security tools)
πŸ“ scan.js (detected: security tools)
πŸ“ scan.test.js (detected: test file)
πŸ“ setup.js
πŸ“ cache.test.js
πŸ“ entropy.test.js
πŸ“ gpg-signature.test.js
πŸ“ parallel.test.js
πŸ“ signature-verification.test.js
βœ” βœ… Scan completed

πŸ” NullVoid Scan Results

βœ… No high-severity threats detected
ℹ️  43 low/medium severity threats were filtered out
πŸ’‘ Use --all flag to see all threats

πŸ“Š Scanned 1 directory(s), 13 file(s) in 197ms

Threat Detection Results

πŸ” NullVoid Scan Results

⚠️  2 threat(s) detected:

1. WALLET_HIJACKING: Package may contain wallet hijacking code
   Package: πŸ“ /Users/username/project/node_modules/suspicious-package/index.js
   πŸ”— https://www.npmjs.com/package/suspicious-package
   Severity: HIGH

2. HIGH_ENTROPY: Package contains files with unusually high entropy
   Package: πŸ“¦ npm-registry://obfuscated-lib@latest
   πŸ”— https://www.npmjs.com/package/obfuscated-lib
   Severity: MEDIUM

Scanned 15 package(s) in 234ms

🚨 Threat Severity Levels

  • CRITICAL: Wallet hijacking, transaction redirection, or immediate financial threat
  • HIGH: Network manipulation, stealth controls, or significant security risk
  • MEDIUM: Suspicious behavior requiring review
  • LOW: Minor concerns or best practice violations

πŸ”§ Configuration

Option Description Default
--verbose Enable detailed output false
--output <format> Output format (json, table, sarif) table
--depth <number> Maximum dependency tree depth to scan 3
--tree Show dependency tree structure in output false
--all Show all threats including low/medium severity false
--parallel Enable parallel scanning for better performance true
--workers <number> Number of parallel workers to use auto
--sarif-file <path> Write SARIF output to file (requires --output sarif) -
--version Show version information -
--help Show help information -

πŸ“Š Real-Time Progress Display

NullVoid provides real-time progress feedback during scanning, showing each file as it's analyzed:

🎯 Progress Callback Features

  • Live File Display: Shows each file being scanned with relative paths
  • Threat Detection: Real-time threat indicators during scanning
  • Clean Formatting: Proper spinner separation and clean output
  • Relative Paths: Shows files relative to scan target (e.g., malware-samples/supply-chain-attack-auth.js)
  • Threat Classification: Immediate feedback on detected threat types

πŸ“‹ Example Output

β ‹ πŸ” Scanning ...

πŸ“ malware-samples/supply-chain-attack-auth.js (detected: OBFUSCATED_CODE, SUSPICIOUS_MODULE, MALICIOUS_CODE_STRUCTURE)
πŸ“ analysis/supply-chain-attack-auth.md
πŸ“ detection-tests/test-case.js (detected: test file)
βœ” βœ… Scan completed

🎨 Threat Indicators

  • (detected: OBFUSCATED_CODE): Obfuscated or encoded content detected
  • (detected: SUSPICIOUS_MODULE): Suspicious module imports (fs, child_process, etc.)
  • (detected: MALICIOUS_CODE_STRUCTURE): Malicious code patterns identified
  • (detected: security tools): NullVoid's own security tools (whitelisted)
  • (detected: test file): Test files (whitelisted)

⚑ Performance Benefits

  • Immediate Feedback: Know exactly what's being scanned
  • Progress Tracking: Visual confirmation of scan progress
  • Early Detection: See threats as they're found
  • Clean Output: No extra blank lines or formatting issues

🌳 Dependency Tree Analysis

NullVoid scans transitive dependencies for hidden threats:

# Scan with dependency tree analysis (default depth: 3)
nullvoid scan

# Scan deeper dependency chains
nullvoid scan --depth 5

# Show dependency tree structure
nullvoid scan --tree

Example Tree Output

🌳 Dependency Tree Structure:
express@4.18.2 [25 deps]
  accepts@1.3.8 [3 deps]
  body-parser@1.20.1 [8 deps]
    debug@2.6.9 (1 threat) ⚠ WALLET_HIJACKING

πŸ“Š Dependency Tree Analysis:
   Total packages scanned: 45
   Max depth reached: 3
   Packages with threats: 2
   Deep dependencies (depth β‰₯2): 12

🚨 Real-World Attack Detection

NullVoid detects sophisticated supply chain attacks like the recent npm compromise:

Recent Attack: debug, chalk, and 16 other packages

  • Attack Vector: Wallet hijacking through window.ethereum interception
  • Technique: Silent transaction redirection to attacker-controlled addresses
  • Multi-Chain: Targeted Ethereum, Bitcoin, Litecoin, Tron, BCH, and Solana
  • Stealth: Used obfuscation and stealthProxyControl global object

How NullVoid Detects This:

nullvoid scan
# Results show:
⚠️  4 threat(s) detected:

1. WALLET_HIJACKING: Package may contain wallet hijacking code
   Severity: CRITICAL

2. NETWORK_MANIPULATION: Package may manipulate network responses
   Severity: HIGH

3. MULTI_CHAIN_TARGETING: Package supports multiple blockchain networks
   Severity: MEDIUM

4. STEALTH_CONTROLS: Package contains stealth controls or obfuscation
   Severity: HIGH

πŸš€ Performance Features

  • Parallel Scanning: Multi-threaded processing using Node.js worker_threads
  • Automatic Parallel Detection: Enables parallel processing when multiple dependencies exist
  • Performance Optimization: 2-4x faster scanning for projects with multiple packages
  • Resource Management: Automatic worker cleanup and timeout handling

πŸ” Dependency Confusion Detection

NullVoid includes advanced Dependency Confusion Detection to identify potential supply chain attacks where malicious packages are created to exploit package resolution vulnerabilities.

🎯 Detection Methods

Timeline Analysis

  • Git History vs Registry Creation: Compares package creation dates with git commit history
  • Suspicious Timing: Flags packages created suspiciously close to first git commits
  • Risk Levels:
    • CRITICAL: Package created < 1 day before git history
    • HIGH: Package created < 7 days before git history
    • MEDIUM: Package created < 30 days before git history

Scope Analysis

  • Private Scope Detection: Identifies packages using private scopes (@company, @internal, etc.)
  • Namespace Conflicts: Detects potential namespace confusion attacks
  • Registry Configuration: Warns about improper npm registry setup

Pattern Analysis

  • Suspicious Naming: Detects typosquatting and naming confusion patterns
  • Activity Analysis: Identifies packages with suspiciously low git activity
  • Similarity Scoring: Uses Levenshtein distance for name similarity analysis

πŸ“‹ Example Detection Output

πŸ” Analyzing dependency confusion patterns...

⚠️  3 dependency confusion threat(s) detected:

1. DEPENDENCY_CONFUSION_TIMELINE: Package creation date suspiciously close to git history (2 days)
   Package: @company/internal-auth
   Severity: HIGH
   Details: Package created: 2023-12-01T00:00:00.000Z, First git commit: 2023-11-29T00:00:00.000Z

2. DEPENDENCY_CONFUSION_SCOPE: Private scope package may be vulnerable to dependency confusion
   Package: @company/internal-auth
   Severity: HIGH
   Details: Private scope '@company' detected. Ensure proper npm registry configuration.

3. DEPENDENCY_CONFUSION_PATTERN: Package name follows suspicious naming patterns
   Package: abc123def
   Severity: MEDIUM
   Details: Suspicious patterns: /^[a-z]+\d+[a-z]+$/

πŸ›‘οΈ Protection Recommendations

For Private Packages

  • Use scoped packages: @yourcompany/package-name
  • Configure .npmrc files properly
  • Use private npm registries
  • Implement package signing

For Public Packages

  • Verify package authenticity
  • Check git history and activity
  • Use package-lock.json files
  • Monitor for suspicious updates

βš™οΈ Configuration

Dependency confusion detection can be configured via environment variables:

# Enable/disable dependency confusion analysis
NULLVOID_DEPENDENCY_CONFUSION_ENABLED=true

# Adjust timeline thresholds (days)
NULLVOID_TIMELINE_SUSPICIOUS=30
NULLVOID_TIMELINE_HIGH_RISK=7
NULLVOID_TIMELINE_CRITICAL=1

# Registry request timeout (ms)
NULLVOID_REGISTRY_TIMEOUT=10000

πŸ”§ Bug Fixes

GPG Signature Verification

  • Fixed: timeoutRef.unref is not a function error during GPG signature checks
  • Improved: Proper timeout handling using setTimeout instead of req.setTimeout
  • Enhanced: Cleaner error handling and timeout cleanup

πŸ—ΊοΈ Roadmap

NullVoid has a comprehensive roadmap for 2025 focusing on advanced threat detection, enterprise features, and AI/ML integration.

🎯 2025 Roadmap Highlights

Q1 2025 - Public IoC Integration & Performance

  • βœ… TypeScript Migration: Complete migration to TypeScript for enhanced type safety and developer experience
  • Snyk Integration: Real-time vulnerability data from Snyk's database
  • npm Advisories: Official npm security advisories integration
  • GitHub Security Advisories: GHSA integration for comprehensive threat intelligence
  • Performance Optimizations: Enhanced caching, parallel processing, and network optimization

Q2 2025 - Enhanced Detection & Developer Experience

  • Advanced Timeline Analysis: ML-based timeline analysis and commit pattern analysis
  • IDE Integration: VS Code, IntelliJ plugins for real-time scanning
  • Pre-commit Hooks: Git hooks for automatic scanning
  • More CI/CD Platforms: Jenkins, CircleCI, Travis CI integration

Q3 2025 - Enterprise Features & Advanced Analytics

  • Multi-tenant Support: Organization-level scanning and reporting
  • Advanced Reporting: Executive dashboards and compliance reports
  • API Integration: REST/GraphQL APIs for enterprise systems
  • Custom Rule Engine: User-defined detection patterns

Q4 2025 - AI/ML Integration & Blockchain Features

  • AI/ML Integration: Machine learning for threat pattern recognition
  • Blockchain Integration: Immutable signatures and decentralized verification
  • Behavioral Analysis: AI-powered anomaly detection
  • Predictive Analysis: Predicting potential security issues

πŸ“‹ Complete Roadmap

For detailed roadmap information, see ROADMAP.md

πŸ“‹ SARIF Output for CI/CD Integration

NullVoid supports SARIF (Static Analysis Results Interchange Format) output for seamless integration with CI/CD pipelines and security tools.

GitHub Actions Integration

# .github/workflows/security.yml
name: Security Scan
on: [push, pull_request]

jobs:
  security-scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Setup Node.js
        uses: actions/setup-node@v3
        with:
          node-version: '18'
      
      - name: Install NullVoid
        run: npm install -g nullvoid
      
      - name: Run Security Scan
        run: nullvoid scan --output sarif --sarif-file nullvoid-results.sarif
      
      - name: Upload SARIF Results
        uses: github/codeql-action/upload-sarif@v2
        with:
          sarif_file: nullvoid-results.sarif

GitLab CI Integration

# .gitlab-ci.yml
security_scan:
  stage: test
  image: node:18
  script:
    - npm install -g nullvoid
    - nullvoid scan --output sarif --sarif-file nullvoid-results.sarif
  artifacts:
    reports:
      sarif: nullvoid-results.sarif

Azure DevOps Integration

# azure-pipelines.yml
trigger:
- main

pool:
  vmImage: 'ubuntu-latest'

steps:
- task: NodeTool@0
  inputs:
    versionSpec: '18.x'
  displayName: 'Install Node.js'

- script: |
    npm install -g nullvoid
    nullvoid scan --output sarif --sarif-file nullvoid-results.sarif
  displayName: 'Run NullVoid Security Scan'

- task: PublishBuildArtifacts@1
  inputs:
    pathToPublish: 'nullvoid-results.sarif'
    artifactName: 'sarif-results'

SARIF Output Example

{
  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",
  "version": "2.1.0",
  "runs": [{
    "tool": {
      "driver": {
        "name": "NullVoid",
        "version": "1.3.15",
        "informationUri": "https://github.com/kurt-grung/NullVoid"
      }
    },
    "results": [{
      "ruleId": "WALLET_HIJACKING",
      "level": "error",
      "message": {
        "text": "Package may contain wallet hijacking code"
      },
      "locations": [{
        "physicalLocation": {
          "artifactLocation": {
            "uri": "node_modules/suspicious-package/index.js"
          },
          "region": {
            "startLine": 42,
            "startColumn": 1
          }
        }
      }]
    }]
  }]
}

Supported CI/CD Platforms

  • GitHub Security: Automatic security alerts and PR checks
  • GitLab Security: Security dashboard integration
  • Azure DevOps: Security scanning in pipelines
  • Jenkins: Security reporting plugins
  • SonarQube: Code quality and security analysis
  • CodeQL: GitHub's semantic code analysis

🀝 Contributing

This project does not accept external contributions.

NullVoid is maintained as a focused, security-first tool with a single development direction. However, we welcome your feedback and suggestions!

πŸ› Reporting Issues

  • Security Issues: Please report security vulnerabilities privately to kurtgrung@gmail.com
  • Bug Reports: Open an issue with detailed reproduction steps
  • Feature Requests: Open an issue to discuss potential enhancements
  • Documentation: Report documentation issues or suggest improvements

πŸ’‘ Getting Help

πŸ”’ Security-First Approach

  • No External Code: All code is written and reviewed by the core team
  • Focused Development: Single direction ensures consistent security standards
  • Quality Assurance: 111+ tests ensure reliability and security
  • Regular Updates: Continuous security improvements and threat detection updates

πŸ“‹ Issue Guidelines

When opening an issue, please include:

  • Clear Description: What you're trying to do
  • Expected Behavior: What should happen
  • Actual Behavior: What actually happens
  • Environment: OS, Node.js version, NullVoid version
  • Reproduction Steps: How to reproduce the issue

🎯 Development Philosophy

NullVoid follows a security-first development approach:

  • Zero Trust: All code is carefully reviewed for security implications
  • Minimal Dependencies: Reduced attack surface through careful dependency management
  • Comprehensive Testing: Extensive test coverage ensures reliability
  • Clear Documentation: Detailed documentation for all features and security considerations

πŸ“„ License

MIT License - see LICENSE for details.


⚠️ Disclaimer: NullVoid is designed to help identify potentially malicious packages, but it's not a substitute for comprehensive security practices. Always review packages manually and keep your dependencies updated.