Skip to content
This repository was archived by the owner on Jun 29, 2026. It is now read-only.

Security: Labushuya/BulkTranslate

Security

SECURITY.md

Security Policy

Scope

BulkTranslate ist ein privates Web-Tool zur parallelen Übersetzung via Google Translate über rotierende Elite-Proxies. Es ist nicht für Production-Internet-Exposure gedacht. Dieses Dokument beschreibt, wie sicherheitsrelevante Befunde gemeldet werden und welche Architektur-Annahmen gelten.

Threat Model (Annahmen)

  • Deployment in einem vertrauenswürdigen Netz (lokal, intern, VPN-only).
  • Authentifizierung dient der Personalisierung (Achievement-Counter), nicht als Zugriffsschutz für sensible Daten.
  • Es werden keine personenbezogenen Daten verarbeitet außer der bei Login eingegebenen E-Mail-Adresse.
  • Übersetzte Texte werden nicht persistiert und verlassen den Server nur Richtung Google Translate über den ausgewählten Proxy.

Bekannte sicherheitsrelevante Punkte

Diese Punkte sind dokumentiert und priorisiert für nachfolgende Arbeiten:

Befund Komponente Status
Login nur per E-Mail (kein Passwort/Token) includes/login.ajax.php dokumentiert
SQL-Konstruktion mit String-Konkatenation trotz mysqli_real_escape_string includes/login.ajax.php, INSERT-Block Prepared Statements empfohlen
error_reporting(E_ALL) in Production-relevanten Endpoints mehrere .ajax.php für Production auf 0 setzen + Logging
Output ohne htmlspecialchars() in index.php index.php (echo $login, echo $logout) trivial-XSS-Pfad
Free-Proxy-Pool aus Drittquellen manageProxies.ajax.php Vertrauen gegenüber Proxy-Betreibern beschränkt

Maßnahmen werden in separaten PRs ausserhalb der reinen Repo-Hygiene umgesetzt.

Meldung von Schwachstellen

Da das Repo privat ist:

  1. Kein öffentliches GitHub-Issue für Security-Findings — diese privat per E-Mail an den Repo-Owner.
  2. Befund mit folgenden Angaben:
    • Betroffene Komponente (Datei + Zeilenbereich)
    • Reproduktion (Schritte, Payload)
    • Beobachteter Impact
    • Vorschlag zur Mitigation (optional)
  3. Response-Erwartung: Best-Effort, da Hobby-Projekt.

Out of Scope

  • Brute-Force gegen Login (rate-limiting nicht implementiert — Login ist E-Mail-only).
  • Proxy-Quality (externe Anbieter, keine Garantie).
  • Google-Translate-API-Stabilität (kein offizielles API).

Secrets

  • includes/config.inc.php ist via .gitignore aus dem Tracking ausgeschlossen.
  • Beim Setup wird config.inc.php.example als Template kopiert; reale Credentials gehören nicht ins Repo.
  • Falls Credentials versehentlich committed werden: betroffene Credentials rotieren, History mit git filter-repo bereinigen, Force-Push koordinieren.

There aren't any published security advisories