Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Password in der EXE im klartext! (https://www.delphipraxis.net/18694-password-der-exe-im-klartext.html)

thomasdrewermann 23. Mär 2004 12:22


Password in der EXE im klartext!
 
Hallöchen,
also ich bin gerade dabei, einen Messanger in Kombination mit meinem Forum zu programmieren. Dieser greift auf die MySQl Tabelle meines Forums zurück und trägt dort auch sachen ein. Für den Zugang zu meiner Datenbank sind ja Zugangsdaten nötig, welche ich auch in meine MySQl-Komponente eingetragen habe. Jetzt werden diese Zugangsdaten aber als Recsource einfach in als Klartext in die Exe Geschrieben. Dass heisst, ich kann mit einfachen Mittel als zum Beispiel mit ExeScope mein Datenbank-Passwort auslesen. Das ist nicht gut, und darum wollte ich das Passwort gerne verschlüsselt in der Exe Speichern und Verschlüsselt an den MySql-Server schicken.

Hat jemand einen Lösung für mein Problem?

MFG
THomas

Sharky 23. Mär 2004 12:25

Re: Password in der EXE im klartext!
 
Hai thomasdrewermann,

eine Möglichkeit wäre z.B. das Du das Passwort in einem anderen String "versteckst" und dann mittels einer Funktion das richtige Passwort "herausholst".

thomasdrewermann 23. Mär 2004 12:28

Re: Password in der EXE im klartext!
 
Also einfach den String "Zusammenprogrammieren"?

MFG
THomas

Sharky 23. Mär 2004 12:36

Re: Password in der EXE im klartext!
 
Zitat:

Zitat von thomasdrewermann
Also einfach den String "Zusammenprogrammieren"?

MFG
THomas

Genau.

z.B:

Delphi-Quellcode:
function MyPasswort : String;
const
  s_pw: string[55] = 'dsröEA2kdsfgkdfs34058ä2345$%§$%m,dfkldfgdfs$%345ijopdg$';
begin
  result := s_pw[2] + s_pw[9] + s_pw[11] + s_pw[17] + s_pw[28] + s_pw[33] + s_pw[40] + s_pw[52];
end;

Ergibt dieses Passwort: sdf3%,gp
und das ist dann nicht so leicht zu finden. Wer natürlich mit einem Debugger arbeitet wird es herausbekommen.

thomasdrewermann 23. Mär 2004 13:02

Re: Password in der EXE im klartext!
 
Hat nur ein Problem, weil man den Sourcecode mit ExeScope auch aufdecken kann...

Sharky 23. Mär 2004 13:06

Re: Password in der EXE im klartext!
 
Zitat:

Zitat von thomasdrewermann
Hat nur ein Problem, weil man den Sourcecode mit ExeScope auch aufdecken kann...

Aha, kenne das Programm nicht! Aber wie erstellt dies aus der Echse den SourceCode?

Matze 23. Mär 2004 13:08

Re: Password in der EXE im klartext!
 
Das würde ich auch gern mal wissen. Wäre ja hart!

Achso, hab nachgelesen:

Zitat:

eXeScope 6.41
Resource editor. This can edit resource of EXE/DLL/etc. without source files.
English, Japanese, Russian, Portuguese, Malay, and Korean version exist.
Oh, :cat: hat's ja auch gepostet...

sakura 23. Mär 2004 13:10

Re: Password in der EXE im klartext!
 
Ich glaube nicht, daß ExeSource das kann. Hier mal eine Liste der wichtigsten Features:
Zitat:

Zitat von http://www.softpedia.com/public/cat/5/4/5-4-1.shtml
Features:

· Change font type face and size
· Change size and position of dialog boxes or forms
· Change the arrangement of controls in forms
· Change text in message boxes
· Change text of menus
· Change assignment of accelerator keys
· Export icon, cursor, bitmap, AVI, WAVE, MIDI, JPEG, GIF, etc.
· Rewrite icon, cursor, bitmap, AVI, WAVE, MIDI, JPEG, GIF, etc.
· Examine imported DLLs.
· Examine exported functions of DLL/ActiveX/OCX

...:cat:...

thomasdrewermann 23. Mär 2004 13:16

Re: Password in der EXE im klartext!
 
:oops:
Stimmt. Bei den Object-Daten bzw Forumlardaten ist schluss.

Man kann zwar alle DMF - Files aus der Exe ziehen jedoch NICHT den Quelltext!

Damit hab ich mein Ziel erreicht ich "Berechne" einfach zur laufzeit erst das Passwort.

MFG
Thomas

Xeno-Sebi 26. Mär 2004 21:05

Re: Password in der EXE im klartext!
 
lass dir das pw per md5 verschlüsseln und schreib das verschlüsselte pw dann in deinen code.
bei der pw kontrolle verschlüsselst du das eingegebene auf die gleiche methode und vergleichst es mit dem unverschlüsselten bereits verschlüsselten :zwinker:

w3seek 27. Mär 2004 11:40

Re: Password in der EXE im klartext!
 
nur zum Hinweis, das ist ein extremes Sicherheitsrisiko! Es ist sehr einfach mittels packet sniffern an das passwort zu kommen, ich wuerde davon abstand halten wenn du nicht staendig gehackt werden willst :P

alcaeus 27. Mär 2004 11:52

Re: Password in der EXE im klartext!
 
Eine Möglichkeit ist es, eine PHP-Seite auf deinem Webserver mit Hilfe von TWebBrowser anzusteuern, mit Hilfe von Parametern kannst du dann alles erledigen. Die DP-Seiten arbeiten auch nach diesem Prinzip, die Zugansgdaten stehen in irgendeiner php-Datei, und an den code dieser Datei kommt man nicht so schnell dran.

Xeno-Sebi 27. Mär 2004 11:54

Re: Password in der EXE im klartext!
 
Zitat:

Zitat von w3seek
Es ist sehr einfach mittels packet sniffern an das passwort zu kommen

LOL
md5 lässt sich nicht entschlüsseln!!! das geht ungefähr so:
l=3
o=8

das wird dann addiert
lol wird also zu 3+8+3=14 (stark vereinfacht)
da 14 aber genau so gut 7+7 sein kann, ist es nicht entschlüsselbar.

selbst wenn man das lesen könnte, würde man nciht wissen, was es bedeutet.

mal ein beispiel:
abc = 900150983cd24fb0d6963f7d28e17f72

w3seek 27. Mär 2004 12:38

Re: Password in der EXE im klartext!
 
Zitat:

Zitat von Xeno-Sebi
LOL
md5 lässt sich nicht entschlüsseln!!! das geht ungefähr so:

Das ist mir selbstverstaendlich bekannt, habe sehr viel mit MD4/5 zu tun. Nur wer hindert dich daran, dich mit dem gesnifften MD5 hash einzuloggen? Es geht hier um die Zugangsdaten zur MySQL Datenbank und die sollten *niemals* in einem Programm hinterlegt werden, egal ob gehasht oder normal. Abgesehen davon braucht man beim gehashten passwort wieder das originale Passwort und damit weiss ja jeder wieder die MySQL Zugangsdaten. Naja mir solls egal sein, war nur ein Hinweis dass man grundsaetzlich keine Passwoerter in Programmen hinterlegen sollte.

Sharky 28. Mär 2004 06:12

Re: Password in der EXE im klartext!
 
Zitat:

Zitat von w3seek
[.... Naja mir solls egal sein, war nur ein Hinweis dass man grundsaetzlich keine Passwoerter in Programmen hinterlegen sollte.

Hai w3seek,
wie würdest Du denn dann die Verbindung zum Datenbankserver aufbauen?

w3seek 28. Mär 2004 14:03

Re: Password in der EXE im klartext!
 
Zitat:

Zitat von Sharky
wie würdest Du denn dann die Verbindung zum Datenbankserver aufbauen?

einen server programmieren der verbindungen entgegennimmt, prueft ob ein benutzer mit den gesendeten benutzernamen und passwort existiert, wenn nicht, verbindung trennen. ansonsten befehle engegennehmen und mit mysql kommunizieren und ergebnisse weiterleiten z.b. Somit kann man einzelnen usern jederzeit das wasser abdrehen und keiner hat die echten zugriffsdaten fuer mysql.

Robert_G 28. Mär 2004 14:29

Re: Password in der EXE im klartext!
 
Das ist doch das Gleich in grün!
Oder täusche ich mich da? :gruebel:

w3seek 28. Mär 2004 18:58

Re: Password in der EXE im klartext!
 
nein, gibst du jemanden die zugangsdaten zu einer mysql datenbank/tabelle oder was auch immer kann er alles moegliche damit machen. arbeitest du ueber einen server mit anderen zugangsdaten kannst du z.b. unterbinden dass beim auflisten von benutzernamen auch die (hashes der) passwoerter irgendwie zum client uebermittelt werden, was ja mit einer MySQL query proplemlos moeglich ist wenn man zugriff auf diese daten hat.

Sharky 29. Mär 2004 00:55

Re: Password in der EXE im klartext!
 
Du würdest dir also ein eigenes Protokoll schreiben um mit deinem Distributionsserver zu kommunizieren?
Wobei natürlich sofort die Frage der Geschwindigkeit auftaucht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:43 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