AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte PassList Generator
Thema durchsuchen
Ansicht
Themen-Optionen

PassList Generator

Ein Thema von AlexII · begonnen am 11. Feb 2014 · letzter Beitrag vom 25. Mär 2014
Antwort Antwort
Seite 7 von 8   « Erste     567 8      
AlexII
Registriert seit: 28. Apr 2008
Hallo,

ich habe aus Spaß einen kleinen Passwort Generator programmiert. Werde mich freuen wenn ihn jemand testen würde.

Danke für Euer Feedback.

Jeder der mit machen möchte, bitte schön.


11.02.2014 Version 0.1
- Veröffentlicht

12.02.2014 Version 0.2
- Benutzerfreundlichkeit etwas verbessert

17.02.2014 Version 0.3
- Einstellungen werden autom. in eine .xml-Datei gespeichert
- "Generieren"-Button wird Zufällig x-Mal im Hintergrund betätigt
- das Passwort wird am Ende nach Zufall gemischt
- die ausgewählten Anforderungen an das Passwort werden immer erfüllt (vorher waren sie optional, obwohl ausgewählt)
- Bug aus der Antwort #61 beseitigt

18.02.2014 Version 0.4
- Name geändert
- Quellcode etwas optimiert
- im Google Code gehostet -> https://code.google.com/p/passlist-generator/

24.03.2014 Version 0.5
- Generieren mehrerer Passwörter möglich
- Liste der Passwörter druckbar
- Exportieren der Liste in Aussicht

25.03.2014 Version 0.6
- Exportieren der Passwortliste
- kleine Korrekturen am Code
Miniaturansicht angehängter Grafiken
screenshot.png   screenshotliste.png  
Angehängte Dateien
Dateityp: 7z PassListGenerator.7z (668,0 KB, 47x aufgerufen)
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!

Geändert von AlexII (25. Mär 2014 um 11:56 Uhr)
 
Headbucket

 
Delphi 10.2 Tokyo Professional
 
#61
  Alt 14. Feb 2014, 10:08
Um nochmal was zum Thema beizusteuern:

Ich finde das Eingabefeld der Passwortlänge noch etwas buggy. Versuch z.B. mal mit der Tastatur die Passwortlänge 10 einzugeben. Hier wirst du merken, dass es da Probleme gibt, da alle zahlen <4 sofort ersetzt werden.

Hier solltest du dir also noch etwas einfallen lassen (z.B. erst im OnExit-Event überprüfen).

Grüße
  Mit Zitat antworten Zitat
Perlsau
 
#62
  Alt 14. Feb 2014, 20:16
Hier solltest du dir also noch etwas einfallen lassen (z.B. erst im OnExit-Event überprüfen).
... oder gleich ein SpinEdit nehmen, wo man Min und Max genau einstellen kann ...
  Mit Zitat antworten Zitat
AlexII

 
FreePascal / Lazarus
 
#63
  Alt 17. Feb 2014, 13:10
Habe die Version 0.3 mit folgenden Änderungen hoch geladen.

17.02.2014 Version 0.3
- Einstellungen werden autom. in eine .xml-Datei gespeichert
- "Generieren"-Button wird Zufällig x-Mal im Hintergrund betätigt
- das Passwort wird am Ende nach Zufall gemischt
- die ausgewählten Anforderungen an das Passwort werden immer erfüllt (vorher waren sie optional, obwohl ausgewählt)
- Bug aus der Antwort #61 beseitigt
  Mit Zitat antworten Zitat
AlexII

 
FreePascal / Lazarus
 
#64
  Alt 18. Feb 2014, 10:25
Ich habe überlegt, der PassGenerator so wie er ist macht wenig Sinn. Deswegen habe ich überlegt mit diesem eine Passwortliste erstellen zu lassen und diese danach ausdrucken oder in eine Datei packen. Wenn man diese ausdruckt kann man diese für verschiedene Dienste verwenden, z.B. Online-Banking. So hat man das Passwort auf nem Stück Papier und nicht digital, was gestohlen werden kann. Oder man erstellt mit dem Generator eine Passwortliste für Hotspots in Hotels oder so... die automatisch verwaltet und verteilt werden... jah... es gibt also viele Ideen dazu.

Was meint ihr? Wie kann ich den PassGenerator sinnvoller machen?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

 
Delphi 12 Athens
 
#65
  Alt 18. Feb 2014, 10:30
MessageDlg ist doch dieses selbstgebaute Gedöns noch aus Borland-Zeiten. MessageBox hingegen kommt von Windows selbst und verwendet daher AFAIK die Systemsprache.
Nee, hatte mich auch getäuscht.

Aber gestern sah ich wieder, daß es seit Vista oder Win7 (>= 6.x) auf MSDN-Library durchsuchenTaskDialogIndirect geht.

Ja, Speicherplatz ist teuer. Das GB kostet im Schnitt 2-5 Cent, da muss man sparen.
Meine SSD liegt noch bei fast genau 100 Cent pro GB. (da fallen die schrottigen RAD-Studio-Setups sehr auf)
  Mit Zitat antworten Zitat
AlexII

 
FreePascal / Lazarus
 
#66
  Alt 18. Feb 2014, 17:19
Habe die Anwendung auf Google Code hochgeladen.
Hier...

Jeder der mitmachen möchte, bitte schön.
  Mit Zitat antworten Zitat
Blup

 
Delphi 12 Athens
 
#67
  Alt 18. Feb 2014, 18:03
Die größte Schwachstelle in deinem Programm ist der Delphi-Zufallszahlengenerator.
Alternativen wurden sicher schon genannt.
Theoretisch kann der 4 Milliarden Ausgangsstellungen haben, für eine bestimmte Menge von Zeichen und Symbolen und einer vorgegebenen Länge könnte man alle möglichen Passwörter berechnen. Vermutlich sind das schon weniger als 4 Milliarden.
Deine Funktionen 'mehrfach Button betätigen' ist indirekt vom Startwert des Generators abhängig und verringert die Möglichkeiten weiter.

Einige Passwörter haben eine höhere Wahrscheinlichkeit als andere, eine entsprechende Tabelle aufzustellen geht mit heutiger Technik leicht.
Für einzelne Nutzer ist das ganze relativ sicher. Aber stell dir vor dein Programm würde sich rasant verbreiten und fast jeder nutzt es.
Bei einem Angriff mit solch einer Tabelle werden wahrscheinlich 100000 oder mehr E-Mailkonten per Botnetz gleichzeitig angegriffen.
Da findet sich immer ein Treffer.
  Mit Zitat antworten Zitat
AlexII

 
FreePascal / Lazarus
 
#68
  Alt 18. Feb 2014, 18:52
Die größte Schwachstelle in deinem Programm ist der Delphi-Zufallszahlengenerator.
Danke für Dein Feedback, aber ich verwende nicht den Delphi-Zufallszahlengenerator, sondern den Mersenne-Twister von Lazarus. Der hat nämlich eine Periode von 2^19937−1.


Deine Funktionen 'mehrfach Button betätigen' ist indirekt vom Startwert des Generators abhängig und verringert die Möglichkeiten weiter.
Das habe ich nicht ganz verstanden, wieso verringert das die Möglichkeiten?
  Mit Zitat antworten Zitat
Blup

 
Delphi 12 Athens
 
#69
  Alt 19. Feb 2014, 10:14
Mersenne-Twister hat natürlich eine ausreichende Periodenlänge.

Die Funktionen 'mehrfach Button betätigen' halte ich dann nur noch für überflüssig.
Meine Bedenken gehen in diese Richtung:
Angenommen ich kenne ein Passwort, das sich ein Benutzer erstellt hat (z.B. von einer gehackten Webseite). Ich weis das er dein Programm verwendet und kann auf Grund des Passworts und anderer Informationen (Passwortvorschrift auf der Webseite z.B.) auf die Einstellungen schließen, die verwendet wurden. Ich kenne den Programmablauf. Damit könnte ich bei zu kurzer Periodenlänge eine Tabelle aller Zustände des Generators, das jeweils erzeugte Passwort und den Endzustand des Generators danach erstellen. Die Funktion 'mehrfach Button betätigen' wird ja ebenfalls durch den Generator gesteuert und hindert mich daran nicht. Wenn ich jetzt annehme, der Benutzer hat mehrere Passwörter hintereinander für verschiedene Anwendungszwecke erstellt, kann ich auch diese mit hoher Wahrscheinlichkeit aus meiner Tabelle ermitteln.
- das Passwort in meiner Tabelle suchen
- mit dem Anfangszustand des Generators in der Spalte der Endzustände suchen und das vorgehende Passwort ermitteln, usw.
- mit dem Endzustand des Generators in der Spalte der Anfangszustände suchen und das nachfolgende Passwort ermitteln, usw.
Erzeugen mehrere Anfangszustände das selbe Passwort, gibt es entsprechend mehrere Varianten, die ich aber ausprobieren kann.
So könnte ich z.B. Zugriff auf sein Gesichtsbuch bekommen, obwohl dort ein anderes Passwort verwendet wird.
Vieleicht klappt das nicht bei jedem Benutzer, aber es gibt ja genug andere.
  Mit Zitat antworten Zitat
Benutzerbild von Back2Code
Back2Code

 
Delphi XE7 Professional
 
#70
  Alt 19. Feb 2014, 10:34
Die größte Schwachstelle in deinem Programm ist der Delphi-Zufallszahlengenerator.
Alternativen wurden sicher schon genannt.
Theoretisch kann der 4 Milliarden Ausgangsstellungen haben, für eine bestimmte Menge von Zeichen und Symbolen und einer vorgegebenen Länge könnte man alle möglichen Passwörter berechnen. Vermutlich sind das schon weniger als 4 Milliarden.
Deine Funktionen 'mehrfach Button betätigen' ist indirekt vom Startwert des Generators abhängig und verringert die Möglichkeiten weiter.

Einige Passwörter haben eine höhere Wahrscheinlichkeit als andere, eine entsprechende Tabelle aufzustellen geht mit heutiger Technik leicht.
Für einzelne Nutzer ist das ganze relativ sicher. Aber stell dir vor dein Programm würde sich rasant verbreiten und fast jeder nutzt es.
Bei einem Angriff mit solch einer Tabelle werden wahrscheinlich 100000 oder mehr E-Mailkonten per Botnetz gleichzeitig angegriffen.
Da findet sich immer ein Treffer.
Woooowoooowowoooowowow...STOPP

Das Szenario was du hier versuchst darzustellen ist wohl doch etwas stark übertrieben muss ich dazu sagen. Die meisten bzw. so gut wie alle E-Mail Provider arbeiten doch heutzutage mit Captchas und nach 3-5 Versuchen ist dann Schluss (IP ban).

Zusätzlich kommt dann hinzu, dass es absolut ineffizient ist mit einem BNet zu bruteforcen. In meinen Jahren in der ich stark mit der Materie vertraut war, gab es nicht einen Fall in dem ein Modul für BF bzw. E-Mail Checking für diverse Provider angeboten wurde.

Was natürlich sehr beliebt sind, sind sogenannte E-Mail Grabber / Trojanerfunktionen die dann mal eben eure Outlookkontakte exportieren + eure Mail Login Daten von eurem E-Mail Provider z.B aus dem Browser heraus (Stichwort gespeicherte Passwörter).

Vom dem her halte ich das etwas zu weit hergeholt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 7 von 8   « Erste     567 8      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz