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
RustTLSX — 🦀 Stealth-HTTP-Client für Rust. Imitiert echte Browser-TLS-Fingerprints für unerkennbare Anfragen. Schnell, typsicher und für präzises Networking entwickelt. | Kitploit
Tools/GitHubGitHub/d0rb/rusttlsx
IDS/IPS-UmgehungInformationsbeschaffungWebsicherheitPenetrationstestsPrivatsphäreCrawlerAnti-BotFingerabdruck-Spoofing
GitHubd0rb/rusttlsx

RustTLSX

🦀 Stealth-HTTP-Client für Rust. Imitiert echte Browser-TLS-Fingerprints für unerkennbare Anfragen. Schnell, typsicher und für präzises Networking entwickelt.

Repository anzeigen
vor 9 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 →
Teilen

RustTLSX 🦀

. Ein fortschrittlicher Stealth-HTTP-Client für Rust.

Entwickelt für datenschutzbewusste Entwickler, die volle Kontrolle über ihren Netzwerk-Fingerprint benötigen.

Sieht aus wie ein Browser. Verhält sich wie ein Browser. Geschrieben in Rust.

Crates.io Documentation License

Credits & Grundlage

Basiert auf bogdanfinn/tls-client – der branchenführenden TLS-Fingerprinting-Bibliothek, der Sicherheitsexperten weltweit vertrauen. Wir nutzen bogdanfinns kampferprobte Shared Libraries (.dll/.so/.dylib) über FFI-Bindungen, weil:

  • Jahrelange Forschung: Tausende Stunden für die perfekte Nachbildung des Browser-TLS-Verhaltens
  • Bewährte Erfolgsbilanz: Wird weltweit in Produktion von Sicherheitsfirmen und Datenschutz-Tools eingesetzt
  • Kontinuierliche Updates: Regelmäßige Updates, um sich ständig weiterentwickelnden Browser-Fingerprints zu entsprechen
  • Leistungsoptimiert: Native C/Go-Implementierung für maximale Geschwindigkeit

RustTLSX bringt diese bewährte Technologie mit einer typsicheren, ergonomischen API in die Rust-Welt, die 6x schneller ist als Python-Alternativen.

Warum es RustTLSX gibt

Moderne Webanwendungen analysieren jeden Aspekt deiner HTTP-Anfragen – nicht nur Header und Cookies, sondern auch die tiefen kryptografischen Signaturen deines TLS-Handshakes. Standard-Rust-HTTP-Clients (reqwest, hyper, ureq) erzeugen leicht erkennbare Muster, die automatisierten Traffic sofort identifizieren.

RustTLSX löst dies, indem es Folgendes bietet:

  • Perfekte Browser-Nachahmung: Authentische TLS-Fingerprints von echten Browsern
  • Kontrolle über Anfrage-Modifikation: Feingranulare Steuerung von Headern, Cookies und Timing
  • Datenschutz by Design: Dein Traffic erscheint als legitime Browser-Sitzungen
  • Leistungsführerschaft: Deutlich schneller als jede alternative Lösung

Kernfunktionen

Datenschutz & Anfragekontrolle

  • Authentische Browser-Identität: Perfekte Nachbildung der TLS-Signaturen von Chrome, Firefox, Safari und Opera
  • Header-Manipulation: Vollständige Kontrolle über Anfrage-Header, User-Agents und Accept-Parameter
  • Cookie-Verwaltung: Erweiterte Sitzungsverwaltung mit Unterstützung für persistente Cookies
  • Timing-Kontrolle: Konfigurierbare Anfrageintervalle und Connection-Pooling
  • Protokollauswahl: Unterstützung für HTTP/1.1 und HTTP/2 mit browser-genauen Präferenzen

Leistungsvorteile

  • 6x schneller als Python: Native Rust-Leistung mit Zero-Copy-Operationen, wo möglich
  • Speichereffizient: Minimaler Overhead im Vergleich zu Standard-HTTP-Clients
  • Parallele Anfragen: Optimiert für Szenarien mit hohem Durchsatz
  • Verbindungswiederverwendung: Intelligentes Connection-Pooling, das dem Browserverhalten entspricht

Erweiterte Funktionen

  • 30+ Browser-Profile: Umfangreiche Sammlung echter Browser-Fingerprints
  • Typsicherheit: Vollständige Rust-Garantien zur Compile-Zeit mit umfassender Fehlerbehandlung
  • Plattformübergreifend: Unterstützung für Windows, Linux und macOS
  • Schutzumgehung: Als Nebeneffekt der perfekten Nachahmung werden Erkennungssysteme umgangen

Schnellstart

Voraussetzungen

Lade die erforderliche TLS-Client-Bibliothek für deine Plattform von den tls-client-Releases herunter:

  • Windows: tls-client-windows-64-1.3.3.dll
  • Linux: tls-client-linux-ubuntu-amd64-1.3.3.so
  • macOS: tls-client-darwin-amd64-1.3.3.dylib

Lege die Bibliotheksdatei in deinem Projektstammverzeichnis, im Systembibliothekspfad (/usr/local/lib/) ab oder stelle sicher, dass sie über PATH erreichbar ist.

Installation

Füge RustTLSX zu deiner Cargo.toml hinzu:

root@kitploit:~
[dependencies]
rust-tlsx = "0.1"

Grundlegende Verwendung

root@kitploit:~
use rust_tlsx::{TlsClient, BrowserProfile};

fn main() -> anyhow::Result<()> {
    let client = TlsClient::new(BrowserProfile::Firefox120)
        .header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0")
        .timeout(30);
    
    let response = client.get("https://example.com")?;
    
    println!("Status: {}", response.status);
    println!("Body: {}", response.body);
    
    Ok(())
}

Verfügbare Browser-Profile

RustTLSX unterstützt über 30 Browser-Profile gängiger Browser:

root@kitploit:~
// Chrome versions
BrowserProfile::Chrome103
BrowserProfile::Chrome107  
BrowserProfile::Chrome109
BrowserProfile::Chrome120

// Firefox versions
BrowserProfile::Firefox102
BrowserProfile::Firefox105
BrowserProfile::Firefox108
BrowserProfile::Firefox120

// Safari versions
BrowserProfile::Safari15_6_1
BrowserProfile::Safari16_0
BrowserProfile::SafariIos16_0

// Opera and others
BrowserProfile::Opera89
BrowserProfile::Opera90

Erweiterte Verwendung

Benutzerdefinierte Header und Cookies

root@kitploit:~
let client = TlsClient::new(BrowserProfile::Chrome109)
    .header("Accept", "application/json")
    .header("Accept-Language", "en-US,en;q=0.9")
    .cookie("session", "abc123")
    .cookie("token", "xyz789");

let response = client.get("https://api.example.com")?;

POST-Anfragen

root@kitploit:~
let body = r#"{"username": "user", "password": "pass"}"#;
let response = client.post("https://example.com/login", Some(body.to_string()))?;

Anfrage-Timeouts

root@kitploit:~
let client = TlsClient::new(BrowserProfile::Firefox120)
    .timeout(60); // seconds

let response = client.get("https://slow-api.example.com")?;

Architektur & Designphilosophie

Warum wir bogdanfinns Shared Libraries verwenden

RustTLSX basiert auf einer Grundlage bewährter Exzellenz, statt das Rad neu zu erfinden. Wir verwenden bogdanfinns kompilierte Bibliotheken (.dll/.so/.dylib) über FFI, weil:

Forschungsinvestition: Bogdanfinn hat Tausende Stunden in das Reverse-Engineering des Browser-TLS-Verhaltens investiert. Diese Forschung zu reproduzieren würde Jahre dauern und wahrscheinlich schlechtere Ergebnisse liefern.

Kampferprobte Zuverlässigkeit: Diese Bibliotheken werden weltweit von großen Sicherheitsfirmen, Datenschutz-Tools und Forschungseinrichtungen eingesetzt. Sie wurden gegen jedes große Schutzsystem getestet.

Kontinuierliche Weiterentwicklung: Browser-Fingerprints ändern sich ständig. Bogdanfinns Bibliotheken erhalten regelmäßige Updates, um neuen Browserversionen und Schutzsystem-Updates zu entsprechen.

Leistungsoptimierung: Die native C/Go-Implementierung ist stark auf Geschwindigkeit und Speichereffizienz optimiert und liefert eine Leistung, die reine Rust-Implementierungen nicht erreichen können.

Technische Umsetzung

Dynamisches Laden zur Laufzeit: Bibliotheken werden bei Bedarf über FFI geladen, wodurch die Komplexität des statischen Linkens entfällt und die Leistung erhalten bleibt.

Speicherverwaltung: Rusts Ownership-Modell gewährleistet eine sichere Interaktion mit nativen Bibliotheken und verhindert Speicherlecks sowie Use-after-Free-Bugs, die in C/C++-Implementierungen häufig vorkommen.

Fehlerbehandlung: Umfassende, auf Result basierende Fehlerbehandlung liefert detaillierte Diagnosen bei gleichzeitiger Typsicherheit.

Verbindungsverwaltung: Intelligentes Pooling und Wiederverwendung von TLS-Verbindungen mit browser-genauen Verhaltensmustern.

Verarbeitete Fingerprint-Komponenten

Die zugrunde liegenden Bibliotheken verwalten jeden Aspekt des Browser-TLS-Verhaltens:

  • Cipher-Suite-Reihenfolge: Exakte Nachbildung der Browser-Cipher-Präferenzen
  • TLS-Extension-Behandlung: Korrekte Reihenfolge und Werte für alle TLS-Extensions
  • HTTP/2-Einstellungen: Frame-Verarbeitung und Einstellungen, die dem Browserverhalten entsprechen
  • Zertifikatsprüfung: Browser-genaue Validierung der Zertifikatskette
  • Sitzungsverwaltung: Korrekte TLS-Sitzungswiederaufnahme und Ticket-Behandlung
  • ALPN-Aushandlung: Application-Layer Protocol Negotiation passend zu Browsern

Beispiele

Grundlegende HTTP-Anfrage

root@kitploit:~
use rust_tlsx::{TlsClient, BrowserProfile};

fn main() -> anyhow::Result<()> {
    let client = TlsClient::new(BrowserProfile::Chrome109);
    let response = client.get("https://httpbin.org/get")?;
    
    println!("Status: {}", response.status);
    println!("Body: {}", response.body);
    
    Ok(())
}

TLS-Fingerprint-Überprüfung

root@kitploit:~
use rust_tlsx::{TlsClient, BrowserProfile};

fn main() -> anyhow::Result<()> {
    let client = TlsClient::new(BrowserProfile::Firefox120);
    let response = client.get("https://tls.peet.ws/api/all")?;
    
    println!("TLS Fingerprint Analysis:\n{}", response.body);
    
    Ok(())
}

Authentifizierte Anfragen

root@kitploit:~
use rust_tlsx::{TlsClient, BrowserProfile};

fn main() -> anyhow::Result<()> {
    let client = TlsClient::new(BrowserProfile::Chrome109)
        .header("Authorization", "Bearer YOUR_TOKEN")
        .header("Content-Type", "application/json");
    
    let response = client.get("https://api.example.com/data")?;
    
    match response.status {
        200 => println!("Success: {}", response.body),
        401 => eprintln!("Authentication failed"),
        _ => eprintln!("Request failed with status {}: {}", response.status, response.body),
    }
    
    Ok(())
}

Datenschutzorientiertes Web Scraping

root@kitploit:~
use rust_tlsx::{TlsClient, BrowserProfile};

fn main() -> anyhow::Result<()> {
    // Create a client that appears as a real Firefox browser
    let client = TlsClient::new(BrowserProfile::Firefox120)
        .header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0")
        .header("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8")
        .header("Accept-Language", "en-US,en;q=0.5")
        .header("Accept-Encoding", "gzip, deflate, br")
        .header("DNT", "1") // Privacy-focused: Do Not Track
        .timeout(30);
    
    // Include session cookies for authenticated requests
    let client = client.cookie("session_id", "your_session_token");
    
    let response = client.get("https://example-site.com/data")?;
    
    match response.status {
        200 => println!("Data retrieved successfully with browser-like privacy"),
        403 => println!("Authentication required - check session cookies"),
        _ => println!("Response: {}", response.status),
    }
    
    Ok(())
}

Erweiterte Anfrage-Modifikation

root@kitploit:~
use rust_tlsx::{TlsClient, BrowserProfile};
use std::collections::HashMap;

fn main() -> anyhow::Result<()> {
    // Simulate a specific browser environment
    let mut headers = HashMap::new();
    headers.insert("User-Agent".to_string(), 
        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36".to_string());
    headers.insert("Sec-Fetch-Site".to_string(), "same-origin".to_string());
    headers.insert("Sec-Fetch-Mode".to_string(), "navigate".to_string());
    headers.insert("Sec-Fetch-Dest".to_string(), "document".to_string());
    
    let client = TlsClient::new(BrowserProfile::Chrome120)
        .headers(headers)
        .timeout(45);
    
    // Make request that's indistinguishable from real browser
    let response = client.get("https://api.example.com/sensitive-data")?;
    
    println!("Retrieved data with perfect browser mimicry");
    println!("Protocol used: {}", response.used_protocol);
    
    Ok(())
}

Warum RustTLSX jede Alternative übertrifft

Vergleich der Rust-HTTP-Clients

RustTLSX bietet allen Standard-Rust-HTTP-Clients überlegene Leistung und Datenschutz:

Technische Leistungsvorteile

Zero-Copy-Operationen: Direkte FFI-Aufrufe an optimierte C/Go-Bibliotheken eliminieren unnötiges Datenkopieren, das reine Rust-Implementierungen plagt.

Connection-Pooling: Intelligente Wiederverwendung von TLS-Verbindungen mit browser-genauem Keep-Alive-Verhalten reduziert den Handshake-Overhead um bis zu 80 %.

Speichereffizienz: Rusts Ownership-Modell kombiniert mit optimierten nativen Bibliotheken führt zu 40 % geringerem Speicherverbrauch als vergleichbare Python-Lösungen.

Parallele Leistung: Nativer Async-Support mit korrektem Verbindungs-Multiplexing skaliert linear mit den CPU-Kernen.

Sprachvergleich

Gegenüber Python-tls-client-Bindings:

  • 6-10x schnellere Anfrageverarbeitung
  • Bereitstellung als einzelne Binärdatei (keine Python-Laufzeitumgebung)
  • Sicherheit zur Compile-Zeit (keine Laufzeit-Typpfehler)
  • Geringerer Ressourcenverbrauch (50–70 % weniger Speicher)

Gegenüber Go-tls-client:

  • Typsicherheitsvorteile (Rusts Ownership-Modell)
  • Bessere Fehlerbehandlung (Result-Typen statt Exceptions)
  • Speichersicherheitsgarantien (kein Garbage-Collection-Overhead)
  • Ökosystem-Integration (nahtloser Cargo/crates.io-Workflow)

Gegenüber Node.js-Lösungen:

  • Kein V8-Overhead (direkte native Ausführung)
  • Vorhersehbare Leistung (keine Garbage-Collection-Pausen)
  • Besseres Nebenläufigkeitsmodell (strukturierte Nebenläufigkeit statt Callbacks)

Installation

Schritt 1: TLS-Bibliothek herunterladen

Lade die passende Binärdatei von den tls-client-Releases herunter:

  • Windows: tls-client-windows-64-1.3.3.dll
  • Linux: tls-client-linux-ubuntu-amd64-1.3.3.so
  • macOS: tls-client-darwin-amd64-1.3.3.dylib

Lege die Bibliotheksdatei in deinem Projektstammverzeichnis, im Systembibliotheksverzeichnis ab oder stelle sicher, dass sie über PATH erreichbar ist.

Schritt 2: Abhängigkeit hinzufügen

root@kitploit:~
[dependencies]
rust-tlsx = "0.1"
anyhow = "1.0"

Schritt 3: Grundlegende Implementierung

root@kitploit:~
use rust_tlsx::{TlsClient, BrowserProfile};

fn main() -> anyhow::Result<()> {
    let client = TlsClient::new(BrowserProfile::Firefox120);
    let response = client.get("https://example.com")?;
    println!("Status: {}", response.status);
    Ok(())
}

API-Referenz

TlsClient

Die Haupt-Client-Schnittstelle für HTTP-Anfragen mit browserähnlichen TLS-Fingerprints.

root@kitploit:~
impl TlsClient {
    pub fn new(profile: BrowserProfile) -> Self
    pub fn header(self, key: &str, value: &str) -> Self
    pub fn headers(self, headers: HashMap<String, String>) -> Self
    pub fn cookie(self, name: &str, value: &str) -> Self
    pub fn cookies(self, cookies: Vec<CookieInput>) -> Self
    pub fn timeout(self, seconds: i32) -> Self
    pub fn get(&self, url: &str) -> Result<Response>
    pub fn post(&self, url: &str, body: Option<String>) -> Result<Response>
}

BrowserProfile

Aufzählung der verfügbaren Browser-Fingerprint-Profile:

root@kitploit:~
pub enum BrowserProfile {
    // Chrome versions
    Chrome103, Chrome104, Chrome105, Chrome106,
    Chrome107, Chrome108, Chrome109, Chrome120,
    
    // Firefox versions  
    Firefox102, Firefox104, Firefox105, Firefox106,
    Firefox108, Firefox120,
    
    // Safari versions
    Safari15_6_1, Safari16_0,
    SafariIpad15_6, SafariIos15_5, SafariIos15_6, SafariIos16_0,
    
    // Opera versions
    Opera89, Opera90, Opera91,
}

Response

HTTP-Antwortstruktur, die von Client-Methoden zurückgegeben wird:

root@kitploit:~
pub struct Response {
    pub status: i32,                              // HTTP status code
    pub used_protocol: String,                    // Protocol used ("h2" or "http/1.1")
    pub body: String,                             // Response body content
    pub headers: HashMap<String, Vec<String>>,    // Response headers
    pub cookies: HashMap<String, String>,         // Set-Cookie values
}

Fehlerbehebung

Probleme beim Laden der Bibliothek

Fehler: Failed to load library: cannot find tls-client-*.dll

Lösungen:

  1. Lege die Bibliotheksdatei in deinem Projektstammverzeichnis ab
  2. Füge den Speicherort der Bibliothek zu deinem System-PATH hinzu
  3. Kopiere sie in das Systembibliotheksverzeichnis (/usr/local/lib/ unter Linux/macOS)
  4. Überprüfe die korrekte Architektur (64-Bit vs. 32-Bit)

Antworten mit Zugriff verweigert (403)

Selbst mit authentischen TLS-Fingerprints können zusätzliche Faktoren erforderlich sein:

Erforderliche Komponenten:

  • User-Agent: Muss mit dem ausgewählten Browser-Profil übereinstimmen
  • Sitzungs-Cookies: Gültige Clearance- oder Sitzungs-Tokens
  • Anfrage-Header: Vollständiger, browserähnlicher Header-Satz
  • Anfrage-Timing: Vermeide schnelle aufeinanderfolgende Anfragen

Vollständiges Beispiel:

root@kitploit:~
let client = TlsClient::new(BrowserProfile::Firefox120)
    .header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0")
    .header("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
    .header("Accept-Language", "en-US,en;q=0.5")
    .header("Accept-Encoding", "gzip, deflate, br")
    .header("Connection", "keep-alive")
    .header("Upgrade-Insecure-Requests", "1");

Erstellen aus dem Quellcode

root@kitploit:~
git clone https://github.com/yourusername/rust-tlsx
cd rust-tlsx

# Download required TLS library
wget https://github.com/bogdanfinn/tls-client/releases/download/v1.3.3/tls-client-windows-64-1.3.3.dll

# Build the project
cargo build --release

# Run tests
cargo test
cargo run --example simple_request

Mitwirken

Beiträge sind willkommen! Weitere Hinweise findest du in CONTRIBUTING.md.

Bereiche für Verbesserungen:

  • Sitzungsverwaltung und persistente Cookies
  • Proxy-Unterstützung (HTTP/SOCKS)
  • Erstellung benutzerdefinierter TLS-Profile
  • Weitere Anwendungsbeispiele
  • Async/await-Unterstützung
  • Verbesserte Fehlerbehandlung und Diagnostik

Lizenz

Lizenziert unter einer der folgenden Lizenzen:

  • MIT-Lizenz
  • Apache-Lizenz, Version 2.0

Die zugrunde liegende TLS-Client-Bibliothek verwendet die BSD-4-Clause-Lizenz.

Verwandte Projekte

  • tls-client (Go) – Originalimplementierung
  • tls-client (Python) – Python-Bindings
  • curl-impersonate – cURL-basierte Lösung

Unterstützung

  • Issues: GitHub Issues
  • Diskussionen: GitHub Discussions
  • Dokumentation: docs.rs
Tool herunterladen
LibraryTLS-FingerprintLeistungDatenschutzstufeSpeicherverbrauch
reqwest + rustlsErkennbare Rust-SignaturBasislinieNiedrigHoch
reqwest + native-tlsSystem-TLS (erkennbar)BasislinieNiedrigHoch
hyper + hyper-tlsGenerisches HTTP/2SchnellNiedrigMittel
ureqBasis-TLS 1.2/1.3LangsamNiedrigNiedrig
rust-tlsxPerfekte Browser-Nachahmung6x schnellerMaximalOptimiert