Skip to main content

Advanced string manipulation and pattern matching engine with unique DSL syntax

Project description

Gamma Scanner

Advanced string manipulation and pattern matching engine with unique DSL syntax.

Installation

pip install gamma-scanner

Quick Start

# Run the CLI
gamma-scanner --help

# Or use the short command
gamma --help

# Interactive mode
gamma interactive

# Scan files for threats
gamma scan rules.gamma target_file.txt

# Show examples
gamma examples

Unique DSL Syntax

Gamma Scanner features a completely original DSL syntax that uses natural language keywords:

HUNT SQLInjection:
    LOOK FOR:
        sqli_pattern ~ text "' OR '1'='1" IGNORE case
        union_attack ~ text "UNION SELECT" IGNORE case
    WHEN:
        file HAS sqli_pattern EITHER content HOLDS union_attack
    THEN:
        ALERT "SQL injection detected!"

Features

  • Unique DSL: Natural language-like syntax for pattern matching
  • Security Focus: Built-in patterns for common security threats
  • High Performance: Optimized execution engine with caching
  • CLI Tools: Comprehensive command-line interface
  • Pattern Library: Extensible pattern matching capabilities

Commands

  • scan - Scan files/directories for security threats
  • hunt - Hunt for specific threats using rules
  • detect - Detect patterns in files
  • validate - Validate DSL rule syntax
  • test - Test rules against sample data
  • compile - Compile DSL rules
  • analyze - Comprehensive file analysis
  • interactive - Interactive DSL shell
  • benchmark - Benchmark rule performance
  • examples - Show DSL syntax examples

Python API

from gamma_scanner import GammaScanner

scanner = GammaScanner()

# Compile a rule
rule = '''
HUNT TestRule:
    LOOK FOR:
        pattern ~ text "test" IGNORE case
    WHEN:
        content HAS pattern
    THEN:
        ALERT "Found test!"
'''

success = scanner.compile_rule(rule)
if success:
    results = scanner.match("This is a test string")
    print(results)

License

MIT License - see LICENSE file for details.

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

gamma_scanner-1.0.3.tar.gz (52.7 kB view details)

Uploaded Source

Built Distribution

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

gamma_scanner-1.0.3-py3-none-any.whl (41.7 kB view details)

Uploaded Python 3

File details

Details for the file gamma_scanner-1.0.3.tar.gz.

File metadata

  • Download URL: gamma_scanner-1.0.3.tar.gz
  • Upload date:
  • Size: 52.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for gamma_scanner-1.0.3.tar.gz
Algorithm Hash digest
SHA256 3dba538296586c213f653833c0d17e4baec5e68a942832837115f7357f7d2362
MD5 49b2ba390ab5e1ee985879221d786f39
BLAKE2b-256 693cfbf26c1bf1f4ad5b6d56257d204ff67bac75030c6810cf6019ed88552d3c

See more details on using hashes here.

File details

Details for the file gamma_scanner-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: gamma_scanner-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 41.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for gamma_scanner-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 fe2b5311b76b742eef4bfbfbeca27f958fedbd5fee9d99e7a64078d67c91205e
MD5 2c7c3a71f95815b9cbeb779c2c162bce
BLAKE2b-256 e490a8d59231b62df0586021db7dcc1c68f8a8c986bd4a05c78b0d582b33e866

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