Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Passwortabfrage umgehen verhindern (https://www.delphipraxis.net/83994-passwortabfrage-umgehen-verhindern.html)

fkerber 9. Jan 2007 20:20


Passwortabfrage umgehen verhindern
 
Hi!

Sorry für den fast schon kryptischen Titel, aber Kryptologie ist eigentlich nicht das schlechteste Stichwort.

Ich habe ein Formular, wo der Nutzer Name und Passwort eingeben soll und das wird dann mit einer Datenbank abgeglichen.
Dieser Abgleich erfolgt recht einfach nach dem Prinzip

Delphi-Quellcode:
  if Eingabe = gespeichertes_Passwort then
    begin
      // eingeloggt
    end;
Soweit so schlecht.

Durch Mitverfolgen einiger Threads hier zum Thema "Cracken/Patchen/etc." glaube ich mich erinnern zu können, dass es ein Einfaches ist, dieses = mit einem HexEditor in ein <> zu verwandeln und somit den ganzen Passwortschutz auszuhebeln.


Da stellt sich mir nun die schlaue Frage, wie macht man denn sowas, sodass man es nicht so einfach aushebeln kann?


Ciao, Frederic

MrKnogge 9. Jan 2007 20:26

Re: Passwortabfrage umgehen verhindern
 
Vor dem Problem stand ich auch schon des öfteren, hast du eventuell Daten die du mit dem Passwort ver- und entschlüsseln könntest ?
Das könnte man dann nicht mehr aushebeln ...
Wenn Du aber nur die Oberfläche sperren möchtest, müssen wir wohl auf Hagen warten :mrgreen:

fkerber 9. Jan 2007 20:32

Re: Passwortabfrage umgehen verhindern
 
Hi!

Hmm, verstehe ich das richtig?
Ich sollte also quasi alle Daten, die ich in der DB speichere, ebenfalls mit dem Passwort verschlüsseln?

Ich glaube, das wäre kein guter Plan (*wenn ich da an die Datenmengen/Ver- bzw. Entschlüsselungszeiten denke* - AUTSCH) :mrgreen:


Ciao, Frederic

negaH 9. Jan 2007 22:19

Re: Passwortabfrage umgehen verhindern
 
Läuft die Datenbank auf einem geschützten Server so bekommt man das sicher.
Benutzt man externe einbruchsichere Hardware so kann man es sicher bekommen.
Verschlüsselt man die Datensätze in der Datenbank mit dem oder einem Passwort so ist das auch sicher.

Alles andere wird immer eine unsichere Lösung sein, solange wir voraussetzen müssen das der Rechner auf dem deine Software läuft nicht vertrauenswürdig ist. Das können wir aber annehmen da du ja ein Passwort zu Authentifikation abfragen möchtest, dieses wäre ja ansonsten hinfällig.

Gruß Hagen

fkerber 10. Jan 2007 17:33

Re: Passwortabfrage umgehen verhindern
 
Hi!

Ok, das nennen wir also eine vernichtende Antwort :mrgreen:

Spaß beiseite, also das Mittel der Wahl wäre hier, die zu schützenden Daten ebenfalls mit dem PW zu verschlüsseln. Alles andere wäre unsicher...


Dann mal eine andere Idee (zur Info: die Daten sind einer Access-DB):
Wäre es möglich, die Daten pro Nutzer jeweils in einer DB zu haben und diese dann mit dem PW zu versehen? Dann reduziere ich mein Problem doch auf "Wie knacke ich eine Access DB?"

Jetzt die Frage:
"Was ist die bessere Sache?" oder "Wie leicht knacke ich eine Access DB?" :D


Ciao, Frederic

Klaus01 10. Jan 2007 18:22

Re: Passwortabfrage umgehen verhindern
 
Noch ein gedanklicher Konstrukt.

Wäre es denn nicht, um ein Aushebeln der Passwortabfrage zu erkennen, möglich die Clientdatei (exe)
mit einem Hashcode zu versehen. Den Hashcode in einer Datei auslagern, die Datei verschlüsseln.
Und diesen Hascode beim Start des Programms einlesen und mit einem aktuell erzeugten vergleichen.
Stimmen diese überein, wurde an der Clientdatei nichts verändert und der Passwortabfrage kann vertraut werden.

Grüße
Klaus

MrKnogge 10. Jan 2007 18:25

Re: Passwortabfrage umgehen verhindern
 
Die Idee müsste eigentlich funktionieren, man müsste die externe Datei die den Hashcode enthält nichtmal verschlüsseln.

Klaus01 10. Jan 2007 18:55

Re: Passwortabfrage umgehen verhindern
 
Zitat:

Zitat von MrKnogge
Die Idee müsste eigentlich funktionieren, man müsste die externe Datei die den Hashcode enthält nichtmal verschlüsseln.

Doch verschlüsseln schon, denn wenn Du z.B, das Clientprogramm manipuliert hast
und Du den Algorythmus kennst mit dem der Hashcode berechnet wird, kannst Du
den Hashcode des Clientprogramms berechnen und in der ungesicherten Datei ablegen.
Beim nächsten Programmstart berechnet das Clientprogramm seinen Hashwert
und vergleicht den ermittelten Wert mit dem in der Datei.
Sie stimmen wieder überein, obwohl Clientprogramm und Datei mit Hashwert manipuliert wurden.

Grüße
Klaus

fkerber 10. Jan 2007 22:20

Re: Passwortabfrage umgehen verhindern
 
Hi!

Und wie machst du den Vergleich?

Delphi-Quellcode:
if berechnet = gespeichert then

Ich glaube, diesen Test kann ich ganz gut umgehen....


Ciao, Frederic

lbccaleb 10. Jan 2007 22:32

Re: Passwortabfrage umgehen verhindern
 
hey,


du könntest auch nen crc32 check mit einbauen, um das zu machen gibs im i-net ne komponente:
google mal nach diesem Suchbegriff "delphi crc component"


da solltest du fündig werden

mfg


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:33 Uhr.
Seite 1 von 3  1 23      

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