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
bidi-guard — Code auf unsichtbare bidirektionale Unicode-Zeichen scannen (Trojan Source-Angriffsprävention, CVE-2021-42574) | Kitploit
Tools/GitHubGitHub/moshe-ship/bidi-guard
Statische AnalyseSchwachstellenanalyseCode-AnalyseDevSecOpsLieferkettensicherheitLernen & Bildung
GitHubmoshe-ship/bidi-guard

bidi-guard

Code auf unsichtbare bidirektionale Unicode-Zeichen scannen (Trojan Source-Angriffsprävention, CVE-2021-42574)

Repository anzeigen
52vor 5 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Webseite
Teilen

bidi-guard

Scannt Code auf unsichtbare bidirektionale Unicode-Zeichen

MIT License Python 3.9+


Warum es das gibt

Unsichtbare bidirektionale Unicode-Zeichen können dazu führen, dass Quellcode anders angezeigt wird, als er ausgeführt wird. Dies ist CVE-2021-42574 – der Trojan-Source-Angriff.

Ein Angreifer bettet Zeichen ein, die die Textrichtung umkehren. Bei einer Code-Überprüfung sehen Sie:

root@kitploit:~
access_level = "admin"

Aber der Compiler sieht:

root@kitploit:~
access_level = "user"

Die Zeichen sind unsichtbar. Ihr Editor zeigt sie nicht an. Ihr Reviewer wird sie nicht entdecken. bidi-guard schon.

Installation

root@kitploit:~
pip install bidi-guard

Schnellstart

root@kitploit:~
# Aktuelles Verzeichnis rekursiv scannen
bidi-guard scan .

# Eine bestimmte Datei scannen
bidi-guard scan src/auth.py

Findet alle bidirektionalen Unicode-Zeichen, zeigt deren genaue Position, Kontext und Schweregrad an.

Befehle

BefehlFunktion
scanScannt Dateien auf BiDi-Zeichen, zeigt Fundstellen mit Kontext an
ciCI-Modus – beendet mit Fehlercode, wenn gefährliche Zeichen gefunden werden
fixEntfernt alle BiDi-Zeichen aus Dateien (standardmäßig interaktiv)
explainZeigt, was jedes BiDi-Zeichen tut, mit visuellen Beispielen
initErzeugt eine .bidi-guard.yml Konfigurationsdatei für Ihr Projekt

CI-Integration

GitHub Action

root@kitploit:~
name: BiDi Guard
on: [push, pull_request]
jobs:
  bidi-scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: "3.11"
      - run: pip install bidi-guard
      - run: bidi-guard ci .

Pre-commit

Fügen Sie zu Ihrer .pre-commit-config.yaml hinzu:

root@kitploit:~
repos:
  - repo: https://github.com/Moshe-ship/bidi-guard
    rev: v0.1.0
    hooks:
      - id: bidi-guard

Erkannte Zeichen

Alle 16 bidirektionalen Unicode-Steuerzeichen:

CodepunktNameAbkürzungSchweregrad
U+200ELinks-nach-Rechts-MarkierungLRMNiedrig
U+200FRechts-nach-Links-MarkierungRLMNiedrig
U+061CArabisches BuchstabenmarkierungszeichenALMNiedrig
U+200DNullbreitenverbinderZWJNiedrig
U+200CNullbreiten-NichtverbinderZWNJNiedrig
U+2066Links-nach-Rechts-IsolatLRIMittel
U+2067Rechts-nach-Links-IsolatRLIHoch
U+2068Erstes starkes IsolatFSIHoch
U+2069Pop-RichtungsisolatPDIMittel
U+202ALinks-nach-Rechts-EinbettungLREMittel
U+202BRechts-nach-Links-EinbettungRLEHoch
U+202CPop-RichtungsformatierungPDFMittel
U+202DLinks-nach-Rechts-ÜberschreibungLROHoch
U+202ERechts-nach-Links-ÜberschreibungRLOKritisch
U+2028ZeilentrennerLSMittel
U+2029AbsatztrennerPS

Als Hoch oder Kritisch markierte Zeichen können den angezeigten Text aktiv umordnen – diese werden bei Trojan-Source-Angriffen verwendet.

Als Bibliothek

root@kitploit:~
from bidi_guard import scan_file, Finding

findings = scan_file("src/auth.py")
for f in findings:
    print(f"{f.char_name} at line {f.line}:{f.col} — severity: {f.severity}")

Warum nicht einfach grep?

Diese Zeichen sind unsichtbar. Wortwörtlich unsichtbar:

root@kitploit:~
grep "RLO" file.py    # findet nichts
cat file.py            # sieht völlig normal aus

bidi-guard zeigt Ihnen, was grep nicht kann: das genaue Zeichen, seine Position, den umgebenden Kontext, den Schweregrad und seine Wirkung. Es kann sie auch automatisch entfernen, indem es sie herauslöscht.

Lizenz

MIT — Musa the Carpenter


Bereitgestellt von der Saudi AI Community – für Araber zuerst und die ganze Welt.

Tool herunterladen
Mittel