| Version | Unterstützt |
|---|---|
| 0.1.x | ✅ |
| < 0.1.0 | ❌ (entfernt, enthielt bekannte Schwachstellen – siehe docs/AUDIT.md) |
Bitte melden Sie Sicherheitslücken nicht über öffentliche Issues.
Nutzen Sie stattdessen die private Meldung über GitHub: Security Advisory erstellen oder kontaktieren Sie den Maintainer über www.phinit.de.
Bitte geben Sie an:
- betroffene Version und PowerShell-Version,
- Beschreibung und Auswirkung der Schwachstelle,
- Schritte zur Reproduktion (ohne echte Kennwörter oder personenbezogene Daten).
Sie erhalten eine Eingangsbestätigung in der Regel innerhalb von 7 Tagen.
- Kennwortgenerierung:
System.Security.Cryptography.RandomNumberGeneratormit Rejection Sampling (keine Modulo-Verzerrung), mindestens ein Zeichen je aktivierter Zeichengruppe, Mischung per Fisher-Yates. - Kennwortverarbeitung: ausschließlich als
SecureString; Klartext nur kurzzeitig für Anzeige und Bericht (SecureStringToBSTR/ZeroFreeBSTR). Kennwörter werden nie protokolliert und nicht in Meldungsfenstern angezeigt. - Eingaben: Werte in AD-
-Filter-Ausdrücken und LDAP-Filtern werden maskiert (RFC 4515), Berichte werden HTML-kodiert und mit Content-Security-Policy erzeugt. - Massenvorgänge: eigenes Konto,
krbtgt, integriertes Administratorkonto und (konfigurierbar) Konten mitadminCount=1werden übersprungen; jeder Vorgang erfordert eine Bestätigung. - Berichte: enthalten Kennwörter im Klartext. Der Ordner
Reports\wird per ACL auf den aktuellen Benutzer,VORDEFINIERT\AdministratorenundSYSTEMbeschränkt. Berichte nach der Übergabe sicher löschen. - Protokoll:
Logs\easyPASSWORDRESET.logenthält Aktionen, Zielkonten und Fehler – keine Kennwörter. - Berechtigungen: Das Tool nutzt die Rechte des angemeldeten Benutzers. Verwenden Sie delegierte Rechte nach dem Least-Privilege-Prinzip statt Domänen-Admin-Konten, wo möglich.
Version 0.1.0 wird unsigniert ausgeliefert, weil die bisherige Signatur durch spätere Änderungen ungültig geworden war.
In Umgebungen mit AllSigned bitte vor dem Einsatz signieren, z. B.:
$cert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Select-Object -First 1
Set-AuthenticodeSignature -FilePath .\V0.1.0\easyADPW.ps1 -Certificate $cert -TimestampServer 'http://timestamp.digicert.com' -HashAlgorithm SHA256Hinweise zum Zertifikat: PS-PhinIT/PhinIT.Certificate.