Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
yaraast — Eine leistungsstarke Python-Bibliothek und CLI-Tool zum Parsen, Analysieren und Manipulieren von YARA-Regeln mittels Abstract Syntax Tree (AST)-Darstellung. | Kitploit
Tools/GitHubGitHub/seifreed/yaraast
Statische AnalyseSchwachstellenanalyseCode-AnalyseScripting & AutomatisierungMalware-AnalyseDienstprogramme & Frameworks
GitHubseifreed/yaraast

yaraast

Eine leistungsstarke Python-Bibliothek und CLI-Tool zum Parsen, Analysieren und Manipulieren von YARA-Regeln mittels Abstract Syntax Tree (AST)-Darstellung.

Repository anzeigen
545vor 1 MonatVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

YARAAST

yaraast

YARA-Regeln parsen, analysieren und transformieren mit einem Python-AST-Toolkit

CI License: MIT Python 3.13+

GitHub Stars GitHub Issues Docs


Übersicht

yaraast ist eine Python-Bibliothek zum Parsen und Manipulieren von YARA-Familienregeln mit Hilfe von abstrakten Syntaxbäumen (AST). Es unterstützt klassische YARA-, YARA-L- und YARA-X-Workflows mit automatischer Dialekterkennung und CLI-Tools.

Hauptmerkmale

Unterstütztes Regel-Ökosystem

root@kitploit:~
Dialects   YARA, YARA-L, YARA-X
Parsers    Standard parser, unified parser, streaming parser
Outputs    YARA, JSON, YAML, AST tree views
Tooling    CLI, visitors, builders, serialization, semantic checks

Installation

Von PyPI (empfohlen)

root@kitploit:~
pip install yaraast

Aus dem Quellcode

root@kitploit:~
git clone https://github.com/mriverolopez/yaraast.git
cd yaraast
python3 -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -e .

Schnellstart

root@kitploit:~
from yaraast.unified_parser import UnifiedParser

yara_code = """
rule example {
    strings:
        $a = "malware" nocase
    condition:
        $a
}
"""

ast = UnifiedParser.parse_string(yara_code)
print(ast.rules[0].name)

Verwendung

Befehlszeilenschnittstelle

root@kitploit:~
# Parse and print normalized YARA
yaraast parse rules.yar

# Parse to JSON
yaraast parse rules.yar --format json

# Parse with explicit dialect
yaraast parse rules.yar --dialect yara-x

# Validate file (syntax + parse checks)
yaraast validate rules.yar

# Format file in-place (AST-based formatter)
yaraast fmt rules.yar

# Check formatting without modifying file
yaraast fmt rules.yar --check

Wichtige CLI-Befehle


Python-Bibliothek

Einheitliches Parsen

root@kitploit:~
from yaraast.unified_parser import UnifiedParser
from yaraast.dialects import YaraDialect

# Auto-detect dialect
ast = UnifiedParser.parse_file("rules.yar")

# Force specific dialect
ast = UnifiedParser.parse_file("rules.yar", dialect=YaraDialect.YARA)

Direkter Parser + Visitor

root@kitploit:~
from yaraast import Parser
from yaraast.visitor import BaseVisitor

class RuleCollector(BaseVisitor):
    def __init__(self):
        self.rules = []

    def visit_rule(self, node):
        self.rules.append(node.name)
        super().visit_rule(node)

ast = Parser(open("rules.yar", encoding="utf-8").read()).parse()
collector = RuleCollector()
collector.visit(ast)
print(collector.rules)

Optionale Abhängigkeiten

root@kitploit:~
# LSP support
pip install yaraast[lsp]

# libyara integration
pip install yaraast[libyara]

# Performance tooling
pip install yaraast[performance]

# Visualization support
pip install yaraast[visualization]

# Everything
pip install yaraast[all]

Laufzeitdokumentation

  • LSP-Laufzeitinterna: docs/lsp-runtime.md
  • LSP-Paritätsbericht: docs/lsp-parity-report.md
  • Aktuelles Laufzeit-Benchmark-Artefakt: docs/benchmarks/lsp-runtime-latest.json

Anforderungen

  • Python 3.13+
  • Siehe pyproject.toml für die vollständige Abhängigkeits- und Extras-Liste

Mitwirken

Beiträge sind willkommen. Siehe CONTRIBUTING.md für Einrichtung, Qualitätsprüfungen und Workflow-Richtlinien.

  1. Repository forken
  2. Erstellen Sie einen Branch (git checkout -b feature/your-change)
  3. Committen Sie die Änderungen (git commit -m "Add your change")
  4. Pushen Sie (git push origin feature/your-change)
  5. Öffnen Sie einen Pull-Request

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – siehe LICENSE.

Autor

  • Marc Rivero ([email protected])
  • Repository: github.com/mriverolopez/yaraast

Entwickelt für Malware-Analyse- und Erkennungsentwicklungs-Workflows

Tool herunterladen
FunktionBeschreibung
Multi-Dialekt-ParsingParsen von YARA, YARA-L und YARA-X aus Dateien oder Zeichenketten
Automatische DialekterkennungEinheitlicher Parser erkennt Regel-Dialekte automatisch
AST-WerkzeugeASTs erstellen, transformieren, diffen und serialisieren
Formatierung und ValidierungCLI-Befehle für Parse/Format/Validate-Workflows
Streaming-UnterstützungParsen sehr großer Dateien im Streaming-Modus
Ökosystem-IntegrationenOptionale LSP- und libyara-bezogene Fähigkeiten
BefehlBeschreibung
parseEine Regeldatei parsen und YARA/JSON/YAML/Baum ausgeben
validateRegeln validieren und Validierungs-Subbefehle ausführen
fmtAST-basierter Formatierer (mit --check und --diff)
formatEingabe in eine Zielausgabedatei formatieren
validate-syntaxSyntaxorientierter Validierungseinstiegspunkt
lspLanguage Server Protocol-Funktionen starten