Tut mir leid, aber ich habe es gerade noch einmal überprüft. Das Datenbank-Passwort taucht machmal als normaler Text und machmal als Unicode im Speicher auf. In seltenen Fällen ist es auch gar nicht zu finden.Das ist unmöglich, da es verschlüsselt im Speicher gehalten wird.
Zum Test kann man z.B. den WinHex-Editor nehmen. » http://www.x-ways.net/index-d.html
Ich habe dazu folgendes gemacht (mit der USB-Version 5.20 unter XP mit SP2):
1. eine neue Datenbank angelegt mit dem Benutzernamen "test" und dem Passwort "%%/ffpp!!gg--"
2. um ein paar Daten zu haben, habe ich den Beispieldatensatz für E-Mail vier mal dupliziert, dann die DB gespeichert und 1PW komplett beendet (Prozess nicht mehr aktiv).
3. 1Pw wieder gestartet, Datenbank "test" geöffnet, Passwort eingegeben
4. Um das Szenario etwas realistischer zu gestalten habe ich dann von einem Eintrag den Schnellzugriff geöffnet und den Benutzernamen und ein Passwort nach Wordpad via Drag&Drop übertragen. Dann wieder den Schnellzugriff-Dialog zu und den Sperren-Button aktiviert.
5. Dann HxD geöffnet und den Speicher von onepwusb.exe geöffnet und nach dem Datenbank-Passwort gesucht und siehe da ab Adresse 0x00B690E0 fand sich das Passwort.
Da das Passwort nicht immer und in der gleichen Form sichtbar ist, tippe ich auf einen Buffer, der nicht vor dem Freigeben gelöscht wurde.
BTW. Heiko, im ersten Posting in diesem Thread schriebst du:
Dir ist schon bewußt, dass Windows beim Freigeben von Variablen diese nicht überschreibt, sondern lediglich als frei markiert. Wenn man Glück hat überschreibt die nächste Speicheranforderung dann die Daten, aber darauf sollte man sich nicht verlassen. Wenn Daten nicht mehr im Speicher auffindbar sein sollen, muss man sie vor dem Freigeben überschreiben.Diese temporäre Variable, die nur beim Anmelden vorhanden ist, wird von Windows nicht zuverlässig freigegeben.
Gruß sec_freak.