Honeypot-Köderpfade: Scanner bereits bei der ersten Abfrage sperren
A WordPress-Honeypot funktioniert, weil kein echter Besucher jemals eine Anfrage stellt /.env.backup oder wp-config.old.php. Der „Decoy Path Block“ ReportedIP wertet den ersten Treffer auf einem der 40 Köderpfade als Angriffsindikator aus – ohne Zählfenster, ohne Wartezeit.
Dieser Leitfaden behandelt die Liste der Köder, erklärt, warum der Sensor die IP-Adresse nicht lokal sperrt, und beschreibt, wie man die Sperre auf Serverebene durchsetzen kann.
Was ist ReportedIP ?
ReportedIP ist ein umfassendes WordPress-Sicherheits-Plugin – 12 Angriffssensoren, vier 2FA-Methoden, progressive Blockierung und opt-in-basierte Community-Bedrohungsdaten in einem kostenlosen GPL-2.0-Plugin. Der „Decoy Path Block“ ist ein Sensor der kostenlosen Version. Alle weiteren Funktionen finden Sie im vollständigen Funktionsumfang ReportedIP .
40 Köderwege, ein Signal
Die in Version 2.0.9 eingeführte und in Version 2.0.14 von 16 auf 40 Einträge erweiterte Täuschungsliste umfasst die Dateien, nach denen Angreifer nach einer fehlerhaften Konfiguration suchen:
- Die vollständige
wp-config.php.*Ersatzfamilie —.bak,.old,.save,.orig,.swp,.txtund ein nachgestelltes~. .envSicherungen —.production.bak,.local.bak,.orig— und Joomlasconfiguration.php.bak.- SQL-Dumps im Webroot —
dump.sql,database.sql,backup.sql,db.sql. - Apache
.htpasswd/.htaccess.bak, AWS-Anmeldedaten (.aws/credentials,.aws/config), SSH-Schlüssel (.ssh/id_rsa,.ssh/authorized_keys) und Dateien mit privaten Schlüsseln (id_rsa,private.key,server.key).
Erweitere die Liste um die reportedip_hive_decoy_paths Filter. Der Matcher erkennt auch einen „Bait“-Dateinamen hinter einem Unterverzeichnis-Präfix, also /site-a/.env.backup Bei einer Multisite-Installation im Unterverzeichnis wird dies auf dieselbe Weise abgefangen.
Warum wird die IP-Adresse nicht lokal gesperrt?
Seit Version 2.0.11 funktioniert der Täuschsensor absichtlich nicht nicht Füge die Quell-IP zur lokalen Blockiertabelle hinzu. Ein einziger Fehlalarm – ein legitimes Backup-Plugin, ein Administrator, der auf der Live-Seite testet, oder ein alter Crawler, der eine veraltete URL abfragt – würde die Seite andernfalls stundenlang für ihren eigenen Datenverkehr sperren. Stattdessen wird jeder Zugriff nach Schweregrad protokolliert high, an die Warteschlange für die Community-Bewertung weitergeleitet (Ereignis decoy_pathblock_hit), und der Besucher erhält für diese eine Anfrage einen 403-Fehler. Die Community-Ebene ist der Ort, an dem die Reputationskosten netzwerkweit anfallen.
Verschieben Sie den Block auf den Server für echte Köderdateien
Wenn sich eine echte Köderdatei auf der Festplatte befindet (eine .env.backup (die beispielsweise von Composer zurückgelassen wurden), könnten Apache oder nginx diese bereitstellen, bevor PHP ausgeführt wird. Hive verwaltet automatisch eine .htaccess Umschreibungsblock (zwischen # BEGIN ReportedIP Hive Decoy / # END Marker), die diese Anfragen über index.php zur Erkennung anstelle des Auslieferens der Datei. nginx-Benutzer finden einen entsprechenden Codeausschnitt auf der Registerkarte „Einstellungen“, einschließlich einer Variante für exakte Übereinstimmungen für ISPConfig und Managed Stacks, bei denen eine Vorlage location ~ /. { deny all; } Andernfalls würde die Regel gewinnen. Das Plugin schreibt niemals direkt in Ihre Serverkonfiguration – es generiert lediglich den Codeausschnitt zum Einfügen.
Verwandte Anleitungen
- Die 12 Sensoren, einschließlich 404 / Scanner-Erkennung
- Progressive IP-Sperrung für die Sensoren, die tatsächlich sperren
- Wie Scheinträffer das Reputationsnetzwerk der Community stärken
Einzelheiten zur Absicherung auf Serverebene finden Sie in der Dokumentation zum Honeypot-Server. Sehen Sie sich die vollständigen AnleitungenReportedIP an oder lesen Sie den Code für die Köder auf GitHub.