| Autor |
Beitrag |
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mi 15.04.09 22:19
Für den Download reicht Anonymous-FTP, bzw. ein Login über die Programm-Seriennummer.
Der größere Bug ist aber (und das macht Conficker besser): Du überprüfst dein heruntergeladenes Update nicht. Mir fallen aus dem Stegreif 3 Angriffe ein, mit denen ich Dir ein gefälschtes Update unterschieben kann:
1. DNS verbiegen (macht unserere Regierung ja grad  )
2. Via Firewall deinen FTP-Traffic auf meinen Server umlenken
3. In deinen FTP-Traffic mein Update injecten
Weitere Variationen problemlos möglich.
Ansonsten muss ich GTA-Place Recht geben: FTP ohne SSL oder TLS ist sicherheitstechnisch Harakiri! Wenn dann noch ohne Sicherheits-Signatur oder CodeSigning-Zertifikat der Anwendung, hast Du gleich verloren. Wenn Updater, dann bitte richtig!
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Aya
      
Beiträge: 1964
Erhaltene Danke: 15
MacOSX 10.6.7
Xcode / C++
|
Verfasst: Mi 15.04.09 23:13
BenBE hat folgendes geschrieben : | 1. DNS verbiegen (macht unserere Regierung ja grad )
2. Via Firewall deinen FTP-Traffic auf meinen Server umlenken
3. In deinen FTP-Traffic mein Update injecten |
Magst du mir verraten wie man das anstellt OHNE zugriff auf den ziel-rechner des users zu haben?
Aya~
_________________ Aya
I aim for my endless dreams and I know they will come true!
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mi 15.04.09 23:31
Für Nummer 1 nehme man DNS Cache Poisoning oder Frau Zensursula, für die anderen Beiden Punkte nehme man eine Manipulation des Transitweges. Die letzteren Beiden werden insbesondere in Bereichen, wo man mehr oder weniger Kontrolle über die Transitwege hat (z.B. in einem öffentlichen Funknetz, ...) stark begünstigt. Hier wären Angriffe via BGP (größere Transitnetze) oder RIPv1\2 möglich.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Aya
      
Beiträge: 1964
Erhaltene Danke: 15
MacOSX 10.6.7
Xcode / C++
|
Verfasst: Mi 15.04.09 23:51
_________________ Aya
I aim for my endless dreams and I know they will come true!
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 16.04.09 06:54
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Aya
      
Beiträge: 1964
Erhaltene Danke: 15
MacOSX 10.6.7
Xcode / C++
|
Verfasst: Do 16.04.09 09:30
BenBE hat folgendes geschrieben : | Aya hat folgendes geschrieben : | BenBE hat folgendes geschrieben : | | Für Nummer 1 nehme man DNS Cache Poisoning oder Frau Zensursula, für die anderen Beiden Punkte nehme man eine Manipulation des Transitweges. Die letzteren Beiden werden insbesondere in Bereichen, wo man mehr oder weniger Kontrolle über die Transitwege hat (z.B. in einem öffentlichen Funknetz, ...) stark begünstigt. Hier wären Angriffe via BGP (größere Transitnetze) oder RIPv1\2 möglich. |
Ja gut, das bezieht sich aber alles nur auf die nutzung freier WLans etc.. und selbst da ist es bei Hotspots von T-Mobile sehr unwahrscheinlich das sowas passiert  |
Nein, eben nicht. Selbst wenn Du bei mir im LAN wärst oder ich anderweitig dafür sorgen kann, dass deine Verbindung über von mir kontrollierte Systeme geht, kann ich das tun.
Und das letzte Mal, wo ich mir T-Mobile-Hotspots angeschaut habe, waren die Unverschlüsselt  |
Ja, aber ich gehe in der Regel nur bei freuden etc in's LAN... denen vertrau ich insoweit das sie sowas nicht tun.
Eine andere möglichkeit das mein Traffic über dich läuft fällt mir eigentlich nicht ein, insofern sind diese attacken die du da nennst in meinen Augen extrem unwahrscheinlich. Und selbst wenn jemand sowas machen sollte, setzt das immernoch vorraus das er genau die update funktion von diesem einem programm, welches du warum auch immer in einem fremden netzwerk aktualisierst kennt
Aya~
_________________ Aya
I aim for my endless dreams and I know they will come true!
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 16.04.09 09:57
Ich vertraue nicht einmal meinem eigenen Netz. Port 25 ist sowohl nach innen, wie auch nach außen, zu. Nur benötigte Ports sind offen, alles andre wird blockiert. (Wer jetzt fragt, wie ich eMails versende: Port 587 über den Submission-Port meines Servers).
Und selbst wenn es sehr unwahrscheinlich sein dürfte, dass mal jemand "mal eben" auf Verdacht eine Domain verbiegt: Bei ausreichend großen Projekten kann sowas für einen Angreifer durchaus interessant werden. Und wenn Du Ziel einer Targeted Attack wirst, eröffnest Du mit einem unsicherem Updater dem Angreifer unnötig Angriffsfläche. SSL-Certs gibt's inzwischen sowohl kostenlos, wie auch kommerziell. Und eine Digitale Signatur dazu zu verwenden, um nachvollziehen zu können, dass man ein echtes Update hat, ist ja nicht so schwer. Wie gesagt: Macht Conficker auch. Zudem: Wo es möglich ist (TortoiseSVN, GnuPG, TrueCrypt) wird VOR der Installation eines Updates erstmal die Echtheit des Installers geprüft. Und TortoiseSVN ist auf den ersten Blick nicht mal ein üblicher Verdächtiger in Sachen Sicherheit.
Du downloadest doch auch nicht einfach von jeder beliebigen Internet-Seite Windows-Updates oder Kernel-Releases, ohne zu prüfen, dass die auch echt sind. Aber wenn dein Programm GENAU DAS macht, ist das plötzlich in Ordnung. Welch Doppeldenk!
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Wii360
      
Beiträge: 18
MS-Dos, Windows 95, Windows Xp (SP 1,2,3)
Php, HTML, Delphi 7 Ent., Delphi 5 Sta., Delphi 3 Sta., Dreamweaver
|
Verfasst: Do 16.04.09 10:29
@GTA-Place
Hmm .. Ich verstehe nicht genau wie du meinst ... Also die Logindaten sind bei dem Objekt angegeben, aber natürlich hat niemand zu griff auf die Datenbank, die Werden Ja im Fertigen Programm nirgends im Klartext stehen!
So hat niemand Zugriff, da SOFORT nach bekommen des Updates die Verindung auch geschlossen wird. Oder weißt du zufällig das es Möglichkeiten gibt das Passwort abzufangen, bzw. eine bessere alternative auf den FTP-Server zuzugreifen?
@BenBE:
Ich tue über meinen FTP aber leider auch noch andere Sachen Abwickeln (Z.b. Benutzerstatistiken speichern) deswegen komme ich um Ein Passwort und Benutzername wohl nicht drumherum! Oder?
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 16.04.09 10:48
Wii360 hat folgendes geschrieben : | | Hmm .. Ich verstehe nicht genau wie du meinst ... |
Ich meine, dass Du die Authentizität deiner Updates VOR dem Installieren prüfen solltest. Ein Weg wäre Code Signing
Wii360 hat folgendes geschrieben : | | Also die Logindaten sind bei dem Objekt angegeben, |
30 Sekunden und ich hab deinen FTP-Zugang ... nicht mal.
Passwörter gehören nicht an unsichere Stellen!
Und jede Anwendung IST unsicherer Code!
Wenn überhaupt, mach Anonymous FTP ODER sorg dafür, dass der Zugang durch den Client gegen Angreifer geschützt ist (z.B. Auth über SSL).
Wii360 hat folgendes geschrieben : | | aber natürlich hat niemand zu griff auf die Datenbank, |
GANZ sicher???
Wii360 hat folgendes geschrieben : | | die Werden Ja im Fertigen Programm nirgends im Klartext stehen! |
DFM-Dateien stehen im Klartext im Programm. Und die Eigenschaften stehen im Klartext in der DFM --> Die Passwörter stehen im Klartext im Programm.
Wii360 hat folgendes geschrieben : | | So hat niemand Zugriff, |
Nicht mal berechtigte Clients
Wii360 hat folgendes geschrieben : | | da SOFORT nach bekommen des Updates die Verindung auch geschlossen wird. |
WO soll da die Sicherheit liegen? RST- und FIN-Pakete kann man ganz einfach filtern. Wobei Hooks gehen hier auch ganz einfach
Wii360 hat folgendes geschrieben : | | Oder weißt du zufällig das es Möglichkeiten gibt das Passwort abzufangen, |
Die üblichen Verdächtigen: Wireshark und WinPCap.
Wii360 hat folgendes geschrieben : | | bzw. eine bessere alternative auf den FTP-Server zuzugreifen? |
Nutz SSL UND eine vernünftige Authentifizierung (z.B. Digest, CRAM-MD5 oder Client Cert). Am besten aber: Unterlasse den Zugriff und stelle entsprechende Web-Scripte bereit. FTP ist einfach nur grottig.
@ Wii360: Gib mir einmal solch eine EXE per PN und ich versuch mal, die Login-Daten für deinen Server rauszusuchen ...
Wenn Du sogar "Benutzerstatistiken" auf deinem Server damit schreibfähig machst, ist dein Sicherheitsloch nicht nur der Updater ...
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Wii360
      
Beiträge: 18
MS-Dos, Windows 95, Windows Xp (SP 1,2,3)
Php, HTML, Delphi 7 Ent., Delphi 5 Sta., Delphi 3 Sta., Dreamweaver
|
Verfasst: Do 16.04.09 11:11
Oke!
ICh kann froh sein das ich das Programm noch nicht auf meinen Webspace gepostet habe
ICh werds mal per SSL und Auth-dingsbums versuchen!
Danke
MFG Wii360
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 16.04.09 11:19
SSL alleine bringt Dir auch nichts, wenn Du dann nicht korrekt prüfst. Sonst kann ich nämlich meinem Server auch einfach SSL mit nem beliebigen andren Zertifikat beibringen, und dein Updater nimmt das immer noch. Die beste Lösung hier wäre wirklich, sowohl SSL als auch CodeSigning zur Absicherung zu nehmen.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Wii360
      
Beiträge: 18
MS-Dos, Windows 95, Windows Xp (SP 1,2,3)
Php, HTML, Delphi 7 Ent., Delphi 5 Sta., Delphi 3 Sta., Dreamweaver
|
Verfasst: Do 16.04.09 11:45
Okey!
Kann es sein das SSL erst ab Indy9 Unterstützt wird?
Da ich Indy7 habe und ich von SSL nicht benutzen kann... aber ich denkte das ist durch ein Update (  ) machbar... (offentlich)
Und das mit codesigning mach ich das dan auch mit Indy?
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 16.04.09 12:06
Nope. Das mit dem Code Signing hat nichts mit der Übertragung zu tun, sondern damit, dass du beim Herausgeben der Anwendung einmal eine überprüfbare Signatur erzeugst, die jeder, der den öffentlichen Schlüssel dazu hat, überprüfen kann. Mehr Infos unter dem Link, den ich gegeben hab, auch wenn sich das speziell auf die Verwendung bei CAcert (die übrigens kostenlos sind) bezieht.
Unter D7 laufen auch die Indy 10, auf die Du dann gleich updaten solltest, wenn Du schon solch einen Sprung machst.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Wii360
      
Beiträge: 18
MS-Dos, Windows 95, Windows Xp (SP 1,2,3)
Php, HTML, Delphi 7 Ent., Delphi 5 Sta., Delphi 3 Sta., Dreamweaver
|
Verfasst: Do 16.04.09 12:09
Oh ... achsoo!
Okee werd ich versuchen ..
THX nochmol
|
|
delphi10
      
Beiträge: 447
Erhaltene Danke: 2
W2K, XP, Vista64, Win7 64
RAD-Studio 2010
|
Verfasst: Di 21.04.09 16:18
Ich grab das nochmal aus, da mich das Thema auch beschäftigt hat. Meine Lösung:
1. Download der neuen Version vom Server
2. In der laufenden Version:
Delphi-Quelltext 1: 2:
| Application.Terminate; ShellExecute(Application.Handle, 'open',PChar(Neue Version), nil, nil,SW_Normal); |
Alte Version wird sauber beendet und kann gelöscht werden, neu Version startet.
Funktioniert tadellos, Batch-Dateien oder andere Klimmzüge sind nicht erforderlich. Allerdings jetzt nicht unter Vista getestet. Kann das mal jemand machen, hab gerade kein Vista installiert.
_________________ Salus populi suprema lex esto
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Di 21.04.09 16:26
Äh, das steht doch grad gar nicht mehr zur Diskussion?
Außerdem wird durch diese Lösung eine neue exe angelegt (neuer Name). Somit stimmen evtl. vorhandene Verknüpfungen nicht mehr..
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
passiv
      
Beiträge: 270
WIN XP Professional
Delphi 7 Enterprise, Java (Eclipse), Python 2.5, Django 1.1
|
Verfasst: Di 21.04.09 17:37
da reicht dann ja einfach eine kurze abfrage, ob der ist-name der exe mit dem soll-name übereinstimmt, wenn nicht einfach das RenameFile aus den ersten paar posts anwenden
... oder? 
_________________ Die Probleme, die es in der Welt gibt, sind nicht mit der gleichen Denkweise zu lösen, die sie erzeugt hat.
Albert Einstein
|
|
MDX
      
Beiträge: 595
Erhaltene Danke: 4
Windows 8.1, Linux Debian 8, Android Lollipop
Delphi, PHP, Java (Android)
|
Verfasst: Di 21.04.09 18:41
Man kann auch einfach per HTTP Downloaden lassen???
Dann braucht man weder ne Verschlüsselung, noch ein Passwort noch sonst was spezielles?
|
|
Xentar
      
Beiträge: 2077
Erhaltene Danke: 2
Win XP
Delphi 5 Ent., Delphi 2007 Prof
|
Verfasst: Di 21.04.09 19:11
passiv hat folgendes geschrieben : | da reicht dann ja einfach eine kurze abfrage, ob der ist-name der exe mit dem soll-name übereinstimmt, wenn nicht einfach das RenameFile aus den ersten paar posts anwenden |
Ja, aber dann bräuchte man wieder nen Updater, bzw. eine Bat-Datei oder sowas.
Und genau die hat delphi10 ja vermieden
| Zitat: | Man kann auch einfach per HTTP Downloaden lassen???
Dann braucht man weder ne Verschlüsselung, noch ein Passwort noch sonst was spezielles?
|
Lies die Diskussion nochmal.
Es ging darum, zu überprüfen, dass das Update auch "echt" ist, und dir nicht einfach irgendeine Datei untergeschoben wird.
_________________ PROGRAMMER: A device for converting coffee into software.
|
|
Noob23
      
Beiträge: 93
Win XP, Win Server 2003, Win 7, Ubuntu
Delphi 7, c/c++ Dev-c++, µC-8051 Keil, Webdesign Notepad++
|
Verfasst: Di 21.04.09 19:58
Man kann's aber am Ende auch übertreiben und sich selbst ein Protokoll schreiben, weg von FTP, SSL usw. - Weg von Standards eben.
Je weniger von der Sache bekannt ist desto mehr hat der "Hacker" damit zu kämpfen was überhaupt abläuft!
Jede öffentliche Verschlüsselungsmethode wird irgendwann geknackt werden, oder liege ich da falsch?
Es ist zwar gut jede Sicherheitslücke zu vermeiden aber für kleine Freeware-Tools sehe ich das jetzt nicht so tragisch (wenn die Nutzerzahl nicht gerade imens hoch ist). Schlimmer sind doch da wohl die unverschlüsselten W-Lan-Netzwerke!
Gruß
Noob23
_________________ Man streitet zwar noch über die Entstehung der Erde -
Aber über den Untergang sind sich doch schon alle einig...
|
|
|