"Wenn Sie möchten, kann ich Passwörter verschlüsseln."
Einige Entwickler, die ausdrücklich zur Verwendung der Kryptografie angewiesen wurden, haben die Base64-Kennwortverschlüsselung verwendetWenn Informationen über ein anderes Datenleck in den Medien angezeigt werden, ist es immer wieder rätselhaft, warum das Unternehmen Benutzerkennwörter im Klartext gehalten, die API nicht geschützt oder einen anderen grundlegenden Fehler gemacht hat. Ist ein solcher Verstoß gegen Sicherheitsregeln in unserer Zeit möglich?
Eine neue Studie der Universität Bonn (Deutschland) zeigt, dass freiberufliche Entwickler standardmäßig äußerst unsichere Praktiken einhalten, es sei denn, der Kunde benötigt mehr.
Forscher haben 260 Java-Entwickler bei Freelancer.com eingeladen, ein Registrierungssystem für ein imaginäres soziales Netzwerk zu entwickeln, mit dem Kunden angeblich begonnen haben. Von diesen stimmten nur 43 einer Bestellung zu, die die Verwendung von Java-, JSF-, Hibernate- und PostgreSQL-Technologien beinhaltete.
Die Hälfte der Entwickler erhielt 100 Euro für die Arbeit und die Hälfte - 200 Euro. Die Hälfte jeder der beiden Gruppen wurde angewiesen, einen sicheren Passwortspeicher zu verwenden, die andere nicht.
Obwohl die Stichprobe eindeutig klein ist, ist der Unterschied so signifikant, dass er auf einige allgemeine Trends hindeutet. Hier sind einige der Ergebnisse der Studie:
- Unter denjenigen, denen keine Anweisungen gegeben wurden, hielten 15 von 18 Passwörtern im Klartext
- Drei der Personen, die angewiesen wurden, den sicheren Speicher zu verwenden, speicherten ihre Passwörter auch im Klartext.
- Programmierer, die Passwörter verschlüsselt haben, verwendeten unsichere Methoden: 31 Programmierer verwendeten Methoden wie Base64, MD5, SHA-1 usw. zur Verschlüsselung.
- Nur 12 Freiberufler haben sichere Methoden wie bcrypt und PBKDF2 verwendet.
8 Personen verwendeten Base64 zur Verschlüsselung
10 - MD5
1 - SHA-1
3 - 3DES
3 - AES
5 - SHA-256
1 - HMAC / SHA1
5 - PBKDF2
7 - Verschlüsselung
Die folgende Tabelle (erhöht durch Klicken) zeigt die vollständigen Ergebnisse für jeden Teilnehmer: Wie viele Tage er für die Ausführung der Aufgabe benötigte, wie viel Zeit er für die Implementierung der Sicherheit aufgewendet hat und welchen Verschlüsselungsalgorithmus er angewendet hat. In der oberen Hälfte der Tabelle diejenigen, denen direkte Anweisungen zum Verschlüsseln der Informationen gegeben wurden. Mutige Teilnehmer sind diejenigen, die zuerst eine unsichere Lösung gesendet haben, dann aber zusätzliche Anweisungen zum Implementieren eines sicheren Kennwortspeichers erhalten haben.

Die überwiegende Mehrheit der Programmierer war nicht in der Lage, grundlegende Sicherheitsmethoden zu implementieren, und 17 von 43 kopierten Code von zufälligen Websites.
Nur 15 Entwickler verwendeten Salt - eine Datenzeichenfolge, die zusammen mit dem Kennwort an die Hash-Funktion übergeben wird, was die Brute Force erheblich verkompliziert.
Die Tabelle (anklickbar) zeigt die demografischen Daten der Studienteilnehmer. Wie Sie sehen können, sind dies hauptsächlich Männer, das Durchschnittsalter beträgt 30 Jahre, aus 11 Ländern (in zwei Fällen ist das Land nicht angegeben)Niedrig- und hochbezahlte Gruppen arbeiteten in etwa gleichem Qualitätsniveau.
Im Allgemeinen ist die Studie eher deprimierend. Es ist davon auszugehen, dass das grundlegende Sicherheitsbewusstsein der Freiberufler unglaublich gering ist. Von den 18 Teilnehmern, die spezielle Anweisungen zur Verwendung der Kryptografie erhalten hatten, entschieden sich drei für die Verwendung von Base64 und behaupteten beispielsweise: "[I] hat alles verschlüsselt, damit das Passwort nicht sichtbar ist" und "Es ist sehr schwierig, es zu entschlüsseln."
Vielleicht ist dieses Verhalten nur für Freiberufler spezifisch, und Mitarbeiter ohne Anweisungen versuchen sofort, eine sichere Entscheidung zu treffen? Die Studie gibt keine Antwort auf diese Frage.

