[Delphi + Zeoslib] Voorkomen van inloggen op nep server

Pagina: 1
Acties:

  • Glacier
  • Registratie: Juli 2000
  • Niet online
Ik wist niet precies hoe ik in de topictitel duidelijk moest maken wat ik bedoelde, maar ik zal het hier verduidelijken.
In mijn Delphi (7) app moeten mensen inloggen. De login gegevens worden naar de mysql server gestuurd en als ze kloppen, is de user ingelogd.

Nou is dit systeem nog niet helemaal waterdicht. Je kunt door middel van de windows hosts file het programma makkelijk laten denken dat hij met de juiste server communiceert, terwijl hij met een nep server die lokaal gehost wordt (of wat dan ook) communiceert.

Dat wil ik uiteraard voorkomen, maar hoe onderneem ik stappen om het mensen iig zo moeilijk mogelijk te maken om het programma om de tuin te leiden? Ik ben me er uiteraard van bewust dat er geen 100% waterdicht systeem zal bestaan.

  • Daos
  • Registratie: Oktober 2004
  • Niet online
Als het alleen voor verificatie is, dan kan je het nooit voorkomen.

Kan je niet alle data die nodig is voor het programma ook in de database zetten? Je kan dan je schermpjes dynamisch opbouwen etc.. Als er dan geen verbinding is met de database, dan kan het programma gewoon niet werken.

  • Glacier
  • Registratie: Juli 2000
  • Niet online
Daos schreef op woensdag 04 januari 2006 @ 12:40:
Kan je niet alle data die nodig is voor het programma ook in de database zetten? Je kan dan je schermpjes dynamisch opbouwen etc..
Hoe bedoel je dat precies?

  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Of doe het via een ip adres ipv host name. En bovendien wordt meestal het wachtwoord niet over de lijn gestuurd, maar alleen de hash van het wachtwoord. Deze hash wordt vergeleken met de hash op de server en als ze gelijk zijn is het wachtwoord hetzelfde. Een hash is praktisch niet te herleiden naar het originele wachtwoord. Het lijkt me ook geen specifiek Delphi en/of ZeosLib probleem.

We adore chaos because we like to restore order - M.C. Escher


  • martijn_brinkers
  • Registratie: November 2001
  • Laatst online: 31-10-2025
Het zou het mooist zijn als je de connectie via TLS (aka SSL) kon laten verlopen. Je kan dan controleren of je 'spreekt' met de server waarmee je denkt te 'spreken'.

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Is een challenge-systeem niet een oplossing?

"The shell stopped unexpectedly and Explorer.exe was restarted."


  • Daos
  • Registratie: Oktober 2004
  • Niet online
Glacier schreef op woensdag 04 januari 2006 @ 13:21:
[...]

Hoe bedoel je dat precies?
Dat je het schermpje in de code opbouwt tijdens het draaien van je programma met data uit de database. Je kan bijvoorbeeld de teksten op je knopjes en labels elke keer ophalen uit de database.

  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Mja je zou iets met een certificaat kunnen gaan doen; dan weet je vrij zeker dat je de server 'aan de lijn' hebt.

ook wat andere vormen van public key infrastructure, en een hash overzenden lijkt me wel ok :)
Pagina: 1