AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Sicherer Updater

Ein Thema von caN · begonnen am 27. Mai 2010 · letzter Beitrag vom 28. Mai 2010
Antwort Antwort
Seite 1 von 3  1 23      
caN

Registriert seit: 24. Aug 2007
16 Beiträge
 
Delphi 2010 Professional
 
#1

Sicherer Updater

  Alt 27. Mai 2010, 23:50
Hallo an die Programmierer da Draußen,

Ich stelle mir die Frage wie man einen Updater "sicher" machen kann, komme aber zu keinem Ergebnis.

Hättet ihr irgendwelche Tipps für einen guten, also sicheren, Updater? Vielleicht etwas, an das ich mich orientieren kann oder an das ich mich unbedingt halten sollte?

Ich danke euch schonmal.
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#2

Re: Sicherer Updater

  Alt 27. Mai 2010, 23:53
Was bezeichnest du denn als "sicher" ?

Dass er idiotensicher in der Verwendung ist?
Dass die Datenübertragung kryptografisch sicher ist?
Dass er auch sicher alles updated?
  Mit Zitat antworten Zitat
caN

Registriert seit: 24. Aug 2007
16 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Sicherer Updater

  Alt 27. Mai 2010, 23:55
Sicher vor Manipulation der zu aktualisierenden Dateien.
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#4

Re: Sicherer Updater

  Alt 28. Mai 2010, 00:11
Achso, ok

Aaaaalso:

1)
Dass jemand seine eigenen, lokalen Dateien manipuliert, kannst du nicht verhindern. root hat die Macht, bzw. unter Windows der Administrator.
Du kannst aber verhindern, dass du diese manipulierten Daten im Programm auch annimmst, indem du z.B. in deiner Exe eine Hash-Liste der Dateien mit einkompilierst und dann jede Datei vor Öffnung mit dieser abgleichst. Ist etwas manipuliert worden, dann terminiere das Programm nach einer Fehlermeldung wieder.
Die exe selbst könntest du selbst mit einem AntiCrack-Tool grundlegend vor Manipulation schützen.
Generell gilt aber, dass es immer Leute geben kann, die diese Maßnahmen umgehen können, solange das ganze lokal auf einem fremden Rechner passiert.


2)
Willst du nur die Daten, die vom Server zum Client und vice versa übertragen werden, "sicher" machen, kannst du eine Verschlüsselung der Daten verwenden.
Stichwörter sind hier z.B. das DEC, dessen Algorithmen du verwenden kannst, um die Daten zu übertragen.


...
Oder habe ich das jetzt wieder falsch verstanden?
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#5

Re: Sicherer Updater

  Alt 28. Mai 2010, 00:25
Zu Beginn würde ich auch überlegen, *wer* diese Software bekommt und *ob* es sich überhaupt lohnt, das ganze sicher zu machen, egal wie man dieses Wort nun verstehen mag. Denn 50 Stunden Arbeit in etwas zu investieren, was eh nur die eigene Familie und ein paar Freunde nutzen werden ist eher übertrieben.

Wenn du Dateien via HTTP/FTP herunterlädst kannst du das Ganz via SSL ja verschlüsseln lassen.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
caN

Registriert seit: 24. Aug 2007
16 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Sicherer Updater

  Alt 28. Mai 2010, 00:29
@blackfin
Ja, du hast mich falsch verstanden. Soviel ist mir auch klar, Hashs etc sind mir alle geläufig auch die Kompo DEC
Liegt aber auch an meiner Erklärung bzw. Frage.
Ich dachte da eher in die Richtung Timestamp.

@s.h.a.r.k
Ich weiss nicht wie groß deine Familie ist, aber Familie kann man es nicht mehr nennen
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#7

Re: Sicherer Updater

  Alt 28. Mai 2010, 00:36
Nun ja, lokal kannst einfach alles passend manipulieren. Interessant wäre es eben für den Updates die Hashes der Dateien, die er zu updaten hat, zu wissen und zu prüfen. MD5 bietet sich hierbei an. In die Exe selbst würde ich nichts speichern, da diese Hashes ja auch manipulierbar sind.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
caN

Registriert seit: 24. Aug 2007
16 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Sicherer Updater

  Alt 28. Mai 2010, 00:43
Ja, soweit mach ich das auch alles, wie gesagt der ganze Hash kram ist optimiert.
Meine Frage bezieht sich auf andere Ansätze, also was gibt es außerdem? Ich rede jetzt nicht von sicher im Sinne von Manipulation des Programmes durch den User, sondern vor "falschen" Updates, die nicht von mir kommen. Ich meine etwas von Zeitstempeln gelesen zu haben.
Von MD5 halte ich allerdings nicht viel SHA512 oder Whirlpool sehe ich als besser an.
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#9

Re: Sicherer Updater

  Alt 28. Mai 2010, 00:48
Achso... So habe ich das noch nicht gesehen. Das könntest du auch über Hashes lösen, der dann alle Dateien deiner Installation beim Ausführen der Anwendung prüft. Wenn das Ganze aber so einfach wäre, dann würde das wohl jede Spieleschmiede kurz mal einprogrammieren und gut wäre es. Aber es gitb eben immer Wege sowas auszuhebeln.

Oder du kannst auch so einen geilen Kopierschutz wie Ubisoft bauen

Über Zeitstempel würde ich aber auf keinen Fall fahren.

//edit
Was soll an MD5 so "schlecht" sein? Diese Verfahren ist definitiv ausreichend, selbst wenn du eine Kollision bekommst, zumal diese dezent unwahrscheinlich auftritt.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#10

Re: Sicherer Updater

  Alt 28. Mai 2010, 00:52
Zitat:
Ich dachte da eher in die Richtung Timestamp.
Öhm, jetzt bin ich noch ratloser...TimeStamps von Dateien kann man ja auch ganzleicht manipulieren...

Aber egal, ich sag jetzt einfach mal, wie ich sowas schonmal gemacht habe.
Um herauszufinden, ob und was überhaupt geupdated werden soll, lese ich mit dem Updater die Versionsnummer der Exe des Hauptprogramms aus und sende diese
(verschlüsselt) an das Script auf dem Server. Dieses schaut in der Update-Datenbank nach, ob es ein Paket für diese Version gibt und sagt entweder "nein, es gibt nichts" oder stösst den Updater an, ein bestimmtes Paket herunterzuladen.
Dieses wird dann nach dem Update ausgeführt und installiert die Dateien, wobei sich dann auch wieder die Versionsnummer des Hauptprogramms ändert.

Die exe'n selbst schütze ich, wenns denn unbedingt sein muss, per EurekaLog's "AntiCrack"-Feature.
Damit sind schonmal die meisten Normal-User aussen vor und es wird ziemlich schwierig, das zu knacken.
Eine Unmöglichkeit, das zu knacken, gibt es ja aber nie

Zitat:
Ich rede jetzt nicht von sicher im Sinne von Manipulation des Programmes durch den User, sondern vor "falschen" Updates, die nicht von mir kommen
Woher sollen die kommen? Wenn jemand ein gefälschtes Update-Paket für dein Programm schreibt und ein User installiert das dann? (ohne deinen Updater, da bei dem ja die Daten von deinem Server kommen).
Das wirst du nicht verhindern können. Wenn ich mir einen Selbst-Installer baue, der die Microsoftsche Word.exe überschreibt, dann wird der installer das auch tun, ohne dass Word das merkt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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