AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Tool für USB-Sticks
Thema durchsuchen
Ansicht
Themen-Optionen

Tool für USB-Sticks

Ein Thema von Captnemo · begonnen am 3. Sep 2003 · letzter Beitrag vom 6. Nov 2004
Antwort Antwort
Seite 9 von 20   « Erste     789 101119     Letzte »    
Benutzerbild von Captnemo
Captnemo
Registriert seit: 27. Jan 2003
Hi Leute,

bei diesem Prog handelt es sich um ein USB-Stick-Tool (Bringen einige Sticks schon mit, aber ich habe ein paar Funktionen mehr).

Mit diesem Tools kann man:

- Seinen Rechner gegen Lokalen Zugriff schützen (Console, nicht übers Netz) (nur mit Adminrechten)
- Seine Favoriten unterwegs dabei haben
- Dokumente komprimiert auf den Stick dabei haben
- Notizen unterwegs dabei haben
- Adressen (und E-Mail-Adressen) unterwegs dabei haben
- E-Mail unterwegs schreiben, senden und abfragen
- Spielstände auf dem Stick speichern
- Persönliche Quickstartleiste
- Systeminformationen des Rechners abfragen
- Autorunfunktion für USB-Stick

(unterwegs dabei haben, bedeutet "Auf dem Stick")

Wer will kann das Prog ja mal testen.
Vorsicht mit der Sicherheitsfunktion (bei Unsicherheit bitte nochmal nachfrage).
Wenn damit Probleme auftreten, im Abgesicherten Modus starten und den Dienst USB-Secure2 deaktivieren.

Prog ist gedacht für W2000 und WXP. Läuft auch unter W98, aber dann ohne Sicherheitsfunktion.
WNT4 und W95 scheiden mangels USB-Unterstützung völlig aus.

Das Prog läuft 30 Tage.
Wer es länger nutzen will, der Melde sich bei mir. Für Delphi-Praxis-User ist es natürlich kostenlos


Download hier:
USB-Secure 2

Bis denne.
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo
 
Benutzerbild von negaH
negaH
 
#81
  Alt 12. Sep 2003, 13:44
@BungeeBug,

Zitat:
ich würde die Passwörter haschen ( lol also MD5 Hashes erstellen) und dann evl.
Und wie wird das gehashte Passwort wieder in seine Ursprungsform zurückgerechnet ?? Also z.b. "Hagen" = Hash $129FC4D073FF4E.... in "Hagen" !

Zitat:
Noch mal mit RSA verschlüsseln. Das sollte also definitiv sicher sein. Eine RSA DLL gibt es Hier (Link zu www.luckie-online.de)
Dort findet man keine RSA DLL, sondern nur eine DLL von einem "Prof." der behauptet sein super-duper Algo. würde auf RSA basieren. Leider nutzt er nur 32-64Bit RSA Algorithmen was eindeutig lächerlich ist.
Ich habe über dieses Thema schonmal mit Luckie diskutiert, und irgendwo hier im Forum kann man einen Thread darüber finden.
Somit ist nur eines sicher bei RSA, man schreibt RSA auf die Verpackung und macht'ne Menge Kohle damit.

Gruß Hagen
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

 
Delphi XE4 Architect
 
#82
  Alt 12. Sep 2003, 13:57
@BungeeBug:

Zitat von BungeeBug:
ich würde die Passwörter haschen ( lol also MD5 Hashes erstellen) und dann evl. Noch mal mit RSA verschlüsseln. Das sollte also definitiv sicher sein.
Eine RSA DLL gibt es Hier (Link zu www.luckie-online.de)
Hm. Noch ne DLL wollte ich eigentlich nicht verwenden.

@NegaH:

Hört sich kompliziert an, vor allem wenn man sich damit noch nie beschäftigt hat. Die Sache hört sich aber interessant an.
Im Grunde stimme ich aber mit deiner Meinung überein. Wenn schon, dann sicher. Aber auch ein schlechte Save ist besser, als die Kennwörter unter die Tastatur zu schreiben (hab ich auch schon gesehen, bei einem Server).

Werd mich mal umschauen.

Zitat von NegaH:
Somit ist nur eines sicher bei RSA, man schreibt RSA auf die Verpackung und macht'ne Menge Kohle damit.
Das ist die Idee

Nein, mal im Ernst. Ich werde mal versuchen das nach deinen Vorschlägen umzusetzen. Letzendlich, muß jeder Benutzer über das Verfahren und dessen Grenzen aufgeklährt werden. Dann kann er selbst entscheiden, ob und wie weit er diesem Vertraut.

Das mit dem Löschen nach 3 maliger Falscheingabe ist ne gute Idee. Das werde ich auf jeden Fall machen.
Dieter
  Mit Zitat antworten Zitat
BungeeBug

 
Delphi 6 Personal
 
#83
  Alt 12. Sep 2003, 14:22
Zitat von negaH:
@BungeeBug,

Zitat:
ich würde die Passwörter haschen ( lol also MD5 Hashes erstellen) und dann evl.
Und wie wird das gehashte Passwort wieder in seine Ursprungsform zurückgerechnet ?? Also z.b. "Hagen" = Hash $129FC4D073FF4E.... in "Hagen" !

Zitat:
Noch mal mit RSA verschlüsseln. Das sollte also definitiv sicher sein. Eine RSA DLL gibt es Hier (Link zu www.luckie-online.de)
Dort findet man keine RSA DLL, sondern nur eine DLL von einem "Prof." der behauptet sein super-duper Algo. würde auf RSA basieren. Leider nutzt er nur 32-64Bit RSA Algorithmen was eindeutig lächerlich ist.
Ich habe über dieses Thema schonmal mit Luckie diskutiert, und irgendwo hier im Forum kann man einen Thread darüber finden.
Somit ist nur eines sicher bei RSA, man schreibt RSA auf die Verpackung und macht'ne Menge Kohle damit.

Gruß Hagen
Hi,

du brauchst nach dem hashen eigendlich keine "gute" Verschlüsselung mehr das das hashen nur in eine Richtung geht. Das heißt wenn du das PW gehasht hast, gibt es keine Möglichkeit mehr das rückgängig zumachen. Was in der Parxis bedeuten würde, das du das PW eingibst, das dann auch wieder gehasht wird und dann mit dem andern verglichen wird. Es ist also so das selbst wenn jmd. die verschlüsselung knackt er immer noch nix mit dem PW anfangen kann da er ja nur den hash hat. Sicher kann er jetzt auf gut Glück versuchen aber dann ist er nciht schlud sondern der der das PW ausgesucht hat.
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH
 
#84
  Alt 12. Sep 2003, 14:39
Zitat:
du brauchst nach dem hashen eigendlich keine "gute" Verschlüsselung mehr das das hashen nur in eine Richtung geht. Das heißt wenn du das PW gehasht hast, gibt es keine Möglichkeit mehr das rückgängig zumachen. Was in der Parxis bedeuten würde, das du das PW eingibst, das dann auch wieder gehasht wird und dann mit dem andern verglichen wird.
Richtig, aber im Passwortsafe werden Passwörter verschlüsselt gespeichert damit sie so wie sie sind wiederverwendet werden können. Wenn sie als Hash-gespeichert würden nützen sie nichts mehr. Genau darazuf wollte ich hinaus.

Das was Du beschreibst ist gut für ein Login-System zur Überprüfung eines Login-Passwortes.

Bei einer Brute Force Attacke zum Knacken des Passwortes setzen wir voraus das das benutzte Verfahren bekannt ist. Also wird der Angreifer seine normalen Passwörter per Brute Force erzeugen. Diese dann per Hash-Funktion transformieren und dessen Wert als Passwort benutzen um zu testen ob er das richtig Passwort erwischt hat. Somit kein höherer Schutz ausser ein bißchen Zeitverlusst.
Die Sicherheit des Gesamtsystemes hängt also nur vom realen Passwort, und dessen Qualität, ab.
Es wäre dumm bei einer Brute Force Attacke nur ausgehend vom Hash zu testen. Viel besser ist es ausgehend von einem normalen Passwort, dieses zu hashen und dann diesen Key zu testen. Somit schützt eine Hash Funktion das Passwort NICHT bei einer Brute Force Attacke. Allerdings, es schützt vor Angriffen wie differentielle Kryptoanalyse. Bei diesen Angriffen bricht man von innen den Algorithmus und findet das binäre Passwort. D.h. aber auch das das Verschl. Verfahren absolut unsicher ist. Bei allen heutigen sicheren Verfahren geht man davon aus das eine Brute Force Attacke die einzigst mögliche Methode ist. Demnach ist es entscheidend mit heutigen Verfahren das die Passwörter enorm gute Qualität besitzen. Ein Passwortsafe kann dies besser als ein Mensch, vorausgesetzt der Safe wurde ordentlich konzipiert und implementiert.

Gruß Hagen
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH
 
#85
  Alt 12. Sep 2003, 14:54
Zitat:
Das mit dem Löschen nach 3 maliger Falscheingabe ist ne gute Idee. Das werde ich auf jeden Fall machen.
Viel wird's nicht bringen. Ein Angreifer weiß mit Sicherheit das er nur 3 Versuche hat. Er benötigt ja auch nur das Verfahren wie verschlüsselt wurde. Dann entwickelt er seine einge Anwendung, logisch, auf Grays läuft nunmal deine Anwendung nicht. Bei einer 4 Stelligen PIN benötigt der Angreifer dann 10.000 Versuche um mit absoluter Gewissheit das richtige Passwort zu finden.

Wie gesagt, mein PasswortSafe arbeitet nur mit einbruchsicheren SmartCards. Wird 3 mal die falsche PIN der Anwendung auf der SmartCard übergeben blockiert diese die Karte vollständig. An die eigentlichen Daten auf der Karte kommt man nie heran. Diese Blockade kann nicht umgeangen werden, da eine SmartCard als einbruchsicher gilt. Dafür gibt es Standards und Normierungen. Da die eigentliche Safe-Software selber gecodet wird, und als Program auf die Karte installiert wird, hat man ausreichend Sicherheit das keine Backdoors existieren. Nach der Installation wird die Installations-Fähigkeit der SmartCard zerstört. D.h. NUR noch die Passwort-Safe-Software läuft auf der SmartCard. Diese will nur den richtigen PIN und blockiert nach dreimaliger Fehleingabe.

Eben ganz im Gegensatz zu deinem USB-Stick, eine einfache Kopie reicht vollkommen aus. Im Grunde müsste der Benutzer ellenlange PIN's benutzen.

Gruß Hagen
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

 
Delphi XE4 Architect
 
#86
  Alt 12. Sep 2003, 15:44
Nun gut, sicher ist die Smartcard das für diesen Zweck besser geeignete Medium.
Aber ich kann aus dem Stick nunmal keine Smartcard machen. Also muß ich mich mit einem Verfahren begnügen, welches ein nicht perfektes aber doch nach Möglichkeit hohes Maß an Sicherheit bietet.

Man könnte ja zusätzlich noch die Seriennummer des Sticks verwenden. So muß sich der Angreifer nicht nur die Pin ermitteln, sondern neben der Passwortdatei auch noch über die Sernr des USB-Sticks verfügen.

Ist zwar immer noch nicht 100%, aber zumindest schon ein bischen mehr.
Dieter
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH
 
#87
  Alt 12. Sep 2003, 16:16
Zitat:
Man könnte ja zusätzlich noch die Seriennummer des Sticks verwenden. So muß sich der Angreifer nicht nur die Pin ermitteln, sondern neben der Passwortdatei auch noch über die Sernr des USB-Sticks verfügen.
Könnte man machen bringt aber nicht viel mehr. Ein Angreifer wird die Software analysieren und ermittelt das die Seriennummer eine Rolle spielt. Also benutzt er diese. Man muß an die Sache immer so rangehen also ob man die Sourcen jedem verfügbar macht. D.h. die komplette Funktionsweise der Software ist jedem bekannt. Aufbauend auf diesem Gedanken ist ein sicheres Verfahren ein Verfahren das auch dann noch sicher ist wenn man es kennt. Somit bleibt in deinem Falle nur eines übrig. Das Safe-Passwort ist allenig ausschlaggebend für die Sicherheit. Im Falle des USB-Sticks kommt hinzu das man diesen immer bewacht und niemals aus der Hand gibt, ein enormer Vorteil. Ein Angreifer müsste also z.b. das PC System infizieren um unbemerkt die Daten vom Stick zu kopieren. Es ist also nun deine Aufgabe die Software so zu konstruieren das man
1.) nicht unbemerkt Daten vom Stick kopieren kann
2.) das bei der Passworteingabe diese nicht gescannt werden kann
3.) das das benutzte Passwort von guter Qualität ist

Für Punkt 2. und 3. findest du hier im Forum sogar Threads mit Sourcen.
Punkt 1. ist schon schwieriger. Hilfreich wäre es wenn der Stick einen geschützten Speicherbereich hätte der PIN geschützt ist. Deine Anwendung kennt diesen PIN der durch das Safe-Passwort verschlüsselt wurde. In diesem geschützten Speicher wären dann zusätzliche Daten die als Safe-Passwort dienen könnten. D.h. der Anwender installiert deine Software. Diese übernimmt den PIN für den geschützten Speicher und verschlüsselt diese mit dem Anwenderkey. Im geschützten Speicher liegen Zufallsdaten die als Ergänzung zum Safe-Key dienen um die einzelnen Passwörter zu verschlüsseln. Da der Zugriff auf den geschützten Speicher nur über die korrekte PIN möglich ist, und nur deine Anwendung diese kennt, kann man nun sicherheitsrelevante Daten vor dem Kopieren schützen.

Allerdings, ich weis nicht ob es solche Sticks gibt.

Alles andere wären knackbare Pinuts und erhöhen nicht die Sicherheit.
Für all dieses benötigt man keine PublicKey Verfahren. Die Anwendung von PK's ermöglicht drei Dinge mehr
1.) verteilte Schlüssel-Gültigkeiten. D.h. im Safe gespeicherte Schlüssel könnten zB. nur auf ausgewählten PC's entschlüsselbar sein.
2.) shared Schlüssel, d.h. ein Schlüssel muß von einer Benutzergruppe aktiviert werden. Man nennt dies secret Sharing und es beudeutet das z.B. 3 von 5 Personen ihren Key eingeben müssen um an das Geheminis zu kommen.
3.) Das Erzeugen und Schützen eines Keys im Safe geht ohne Passwortabfrage.


Es gibt drei wesentliche Algorithmen die für dich von Nutzen sind
1.) Hashfunktionen, wie von BungeeBug schon angesprochen, zB. SHA1
2.) sym. Verschlüsselungen wie AES Rijndael, Blowfish oder IDEA
3.) Pseudo-Zufalls-Generatoren, wie YARROW von Bruce Schneier. Bei diesen geht es nicht darum das sie zufällig sind, das ist nicht entscheidend. Viel wichtiger ist es das sie nicht reproduzierbaren Output erzeugen. Dazu nutzt man die Mausbwegungen oder Tastenanschläge eines Menschen aus. Ein Mensch erzeugt keinen zufälligen Input, er erzeugt einen Input der genauso individuell wie der Mensch selber ist. Deshalb ist ein solcher Input als Input für eine Hashfunktion ideal als "Zufalls"-Generator geeignet. YARROW macht genau dies.

Die Hashfunktion, Zufallsgeneratoren und Verschlüsselungen kannts'e zB. in meinem "Delphi Encryption Compendium" bei Torry, VCLComponents, Delphi Super Page oder JEDI als Freeware mit Sourcen downloaden.

Gruß Hagen
  Mit Zitat antworten Zitat
BungeeBug

 
Delphi 6 Personal
 
#88
  Alt 12. Sep 2003, 18:04
Hi,

jetzt mal was anderes ... was wollt ihr auf dem Stick speichern?
Abschusscodes für russische Atomraketen? Ich meine wenn man folgende Begebenheit hat. man ist Techniker und muss zu jmd. nach Hause weil sagen wir der PC streikt wird gerade diese Person ein eigal wie geartetes Verschlüsselungssystem knaken, und ein hacker / Cracker / Krypto - Profi wird grad nen Techniker brauchen der seinen PC wartet / repariert. Da sind wa uns schon mal einig. Und wenn man nun sagen wir ne 1024 Bit verschlüsselung einbaut, die zur hälfte aus nem PW und zur hälfte aus dem Zufallteil besteht sollte das für den normalgebrauch doch reichen oder? Zu mal man auch an die Zeit die das ganze zum ver und entschlüsseln benötig denken sollte. Ich z.B.: hab nen 512MB Stick auf den einiges an Daten geht und wenn ich den nun ganz verschlüsseln will und das ne Std. dauert ... die Zeit haben nicht alle und vorallem nicht irgendwelche Techniker oder Admins.
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

 
Delphi XE4 Architect
 
#89
  Alt 12. Sep 2003, 18:21
Jetzt muß aber mal auf die Bremse drücken.

Zitat:
1.) nicht unbemerkt Daten vom Stick kopieren kann
Ich denke, das wird ohne weiteren Einfluß auf die Hardware wohl nicht möglich sein.
Soweit soll/wird es dann ja doch nicht gehen.
Dieter
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH
 
#90
  Alt 12. Sep 2003, 22:51
Zitat:
jetzt mal was anderes ... was wollt ihr auf dem Stick speichern?
Abschusscodes für russische Atomraketen?
Das Zugangspasswort zum Online-Banking, und es wäre für mich persönlich schon enorm frustrierend wenn mein Konto leergeräumt wird. Anderen Benutzern wird es genauso gehen Das allerwichtigste bei dem Kryptostuff ist es das logisch richtige Design zu finden.
Eine Aussage wie

Zitat:
Und wenn man nun sagen wir ne 1024 Bit verschlüsselung einbaut, die zur hälfte aus nem PW und zur hälfte aus dem Zufallteil besteht sollte das für den normalgebrauch doch reichen oder?
erzeugt eben keinerlei Vertrauen, denn mein Konto ist kein Normalgebrauch aus meiner Sicht, und wenn 1024 Bit zur Hälte durch Zufallsdaten ersetzt werden die auf dem Stick gespeichert sind dann reduziert sich die Sicherheit auf nur noch 512 Bit. Warum sollte man dann noch 1024 Bit Verschlüsselung nutzen ? Eben solche Pi*Daumen Aussagen sind das gefährliche beim Umgang mit Kryptographie. Mir reicht eine 128Bit Verschlüsselung, sie muß aber fundiert angewendet werden.
D.h. nicht das 512Bit Verschl. unsicher sind, sondern nur das vom Konzept her eine 1024 Bit Verschl. durch deine Aussagen auf 512 Bit Stärke abgeschwächt werden. Angenommen es stünde eine 128Bit Verschl. zur Verfügung so müsste ich annehmen das du sie auf 64Bit abschwächst, weil dein logisches Konzept so aussieht.

In meinen Postings ging es auch nicht so sehr darum wie stark eine Verschlüsselung sein muß, sondern mir ging es um die heutigen Möglichkeiten, Grenzen und der logischen Analyse des Problemes

Aber, BungeeBug, es ging bei unseren Postings um einen Passwort-Safe. Dieser sollte autom. sichere Passwörter erzeugen können und diese natürlich auch verschlüsselt auf dem Stick speichern. Das hat einige Vorteile, zb. das Menschen dazu neigen unsichere Passwörter zu benutzen oder für verschiendene Zugänge gleiche Passwörter. Der Vorteil eines USB-Stick-Passwort-Safes läge damit auf der Hand. Vom Konzept her sollte er aber so ausgelegt sein das wenn er an einem fremden System hängt nicht so leicht zu knacken ist. Ob 1024Bit oder nur 128Bit verschl. spielt da weniger eine Rolle. Viel wichtiger ist der Schutz vorm Ausspionieren des Masterpasswortes oder dem Kopieren des Passwort-Safes.

Gruß Hagen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 9 von 20   « Erste     789 101119     Letzte »    


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 19:16 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