Windows DLL Preloading remote attack vector - Sicherheitshinweise vorgestellt

MS hat im TechNet-Blog einen Artikel eingestellt, der den Umgang mit o.g. Sicherheitslücke beschreibt.

Background:
Wenn sich Programmierer beim Einsatz von LoadLibrary oder LoadLibraryEx nicht an die von MS vorgegebenen Richtlinien zum Nachladen von DLL-Files halten, kann beim Nachladen von DLL-Files, sofern diese nicht in den durch den DLL-Suchpfadalgorithmus spezifizierten Verzeichnissen gefunden wurden, aus Remote- oder WebDAV-Verzeichnissen Schadcode aus präperierten DLL-Dateien ausgeführt werden. Betroffen im Pool von rund 40 Anwendungen sind u.a. iTunes und Photoshop.

Wer den notwendigen Registrierungsschlüssel (CWDIllegalInDllSearch) nicht selbst anlegen möchte, kann sich mit diesem MS-Tool weiterhelfen.
 
Ich verstehe nicht ganz, was der ganze Aufstand soll.
Beliebige Dynamic Link Libraries konnten schon seit je und eh "nachgeladen" werden (Stichwort: Remote Dll-Injection). Jetzt aufeinmal, da irgendein Sicherheitseini es erwähnt, wirds als kritisch angesehen?

Häh?
 
Richtig, das "Problem" ist seit ...lass mich überlegen und korrigiert mich wenn ich falsch liege... etwa 12 Jahren bekannt. Wenn die Leute bestimmte Prozeduren aus Bequemlichkeit (oder bewusst?) falsch einsetzen, ist es für wahr etwas komisch, dass erst jetzt ein Fass aufgemacht wird.
Dass etwas gegen diese bewusste Ignoranz unternommen wird um den Benutzer zu schützen finde ich persönlich gut. Ich meine, man muss sich diesen Regkey ja nicht anlegen und kann darauf hoffen, dass seine 2000-Oironen-Software schon das richtige macht und niemand eine Lücke ausnutzt. Schließlich regt sich ja auch keiner drüber auf, dass die Polizei die interessierten Bürger über neuste Sicherheitssysteme bspw. bei Fenstern aufklärt und Lücken aufdeckt. Man kann die Tür auch offen stehen lassen...
 
Ich verstehe nicht ganz, was der ganze Aufstand soll.
Beliebige Dynamic Link Libraries konnten schon seit je und eh "nachgeladen" werden (Stichwort: Remote Dll-Injection). Jetzt aufeinmal, da irgendein Sicherheitseini es erwähnt, wirds als kritisch angesehen?

Häh?

Ja, aber nur mit den nötigen Rechten, außerdem schlägt jedes HIDS sofort an.
 
Was ich ja etwas kurios finde... Wenn diese Lücke schon so lange bekannt ist, warum erscheinen dann jetzt erst massenhaft Exploits, die diese Lücke ausnutzen? Schaut man z.B. mal in die Exploit-DB, stellt man fest, dass in den letzten Tagen für dutzende "große" Programme DLL-Hijacking-Exploits erscheinen. Ich beschäftige mich ja sonst recht wenig mit Sicherheit von Windows-Systemen, aber ist es wirklich so, dass Windows-Hacker erst auf die Veröffentlichung einer Lücke warten, bis sie entsprechende Exploits coden?
 
...aber ist es wirklich so, dass Windows-Hacker erst auf die Veröffentlichung einer Lücke warten, bis sie entsprechende Exploits coden?
Nun...da der Großteil der "Hacker" vom System nicht viel mehr verstehen als die Oma muss es halt erst einer vorkauen...die Schul- und allgemeine Lebensmentalität "Überlegen? Warum? Das machen doch andere! Ich will nur konsumieren!" setzt sich halt überall durch... X(
 
Nun...da der Großteil der "Hacker" vom System nicht viel mehr verstehen als die Oma muss es halt erst einer vorkauen...die Schul- und allgemeine Lebensmentalität "Überlegen? Warum? Das machen doch andere! Ich will nur konsumieren!" setzt sich halt überall durch... X(

Gut das du '"' gesetzt hast...
Der Rest deines Argumentes passt auch gut in die Sparte Software-develpment. In jedem Forum dieser Kategorie kann man mal öfters lesen, dass, falls jemand einmal etwas selbst auf die Füße stellen will, man das Rad nicht neu erfinden soll... Das ist aber wieder ne ganz andere Baustelle xD

MfG
 
Was ich ja etwas kurios finde... Wenn diese Lücke schon so lange bekannt ist, warum erscheinen dann jetzt erst massenhaft Exploits, die diese Lücke ausnutzen? Schaut man z.B. mal in die Exploit-DB, stellt man fest, dass in den letzten Tagen für dutzende "große" Programme DLL-Hijacking-Exploits erscheinen. Ich beschäftige mich ja sonst recht wenig mit Sicherheit von Windows-Systemen, aber ist es wirklich so, dass Windows-Hacker erst auf die Veröffentlichung einer Lücke warten, bis sie entsprechende Exploits coden?
*hust*
http://www.buha.info/board/showpost.php?p=300755&postcount=5
CDW; am 26.04.2004 hat gesagt.:
Zusatzfrage: könnt ihr auf Worddokumente klicken (ohne word zu starten)? wenn ja, dann kenn ich ein Bug - man erstelle eine DLL (Riched20) und tue den code rein, den man braucht. Wenn man jetzt die Dll im gleichen Ordner wie das Worddokument hat, wird diese gestartet und der code in "main" ausgeführt.
Ist zumindest mehr oder weniger datumsmäßig "nachweisbar" :wink:.

Der eigentliche Bug/Exploit wurde afaik spätestens mitte ~2000 "in begrenztem Umfang" eingesetzt. Nämlich von einem gewissen HaBo Moderator, der in der Schule unbedingt andere Programme, als vorgegebene Word + IE (oder war es Netscape Navigator?) starten wollte und dem das durch Inis(?) oder ähnliche "Rechtsklick-Registry-CMD-und-alle-Exen-außer-WhitelistSperr-Software" für Win9.x und anfangs Win2000 verwehrt wurde ;)
Code:
F:\oldc\old c\Programme\Microsoft Visual Studio\MyProjects\Riched20>dir /TW
 Datenträger in Laufwerk F: ist Volume
 Volumeseriennummer: 

 Verzeichnis von F:\oldc\old c\Programme\Microsoft Visual Studio\MyProjects\Rich
ed20

15.12.2009  21:12    <DIR>          .
15.12.2009  21:12    <DIR>          ..
15.12.2009  21:12    <DIR>          Debug
25.06.2000  00:00             1.012 dia.cpp
25.06.2000  00:00             1.252 dia.h
27.06.2000  00:00             1.060 dialog1.cpp
27.06.2000  00:00             1.292 dialog1.h
25.06.2000  00:00             3.293 ReadMe.txt
15.12.2009  21:12    <DIR>          Release
15.12.2009  21:12    <DIR>          res
27.06.2000  00:00               460 resource.h
27.06.2000  00:00            33.208 Riched20.aps
27.06.2000  00:00               831 Riched20.clw
11.11.2001  00:00             6.933 Riched20.cpp
25.06.2000  00:00               290 Riched20.def
28.06.2000  00:00             4.200 Riched20.dsp
25.06.2000  00:00               569 Riched20.dsw
25.06.2000  00:00             1.387 Riched20.h
16.06.2005  00:00            66.560 Riched20.ncb
27.06.2000  00:00               369 Riched20.odl
16.06.2005  00:00            50.688 Riched20.opt
11.11.2001  00:00               656 Riched20.plg
27.06.2000  00:00             4.317 Riched20.rc
29.06.2000  00:00             5.686 Riched20forenemy.cpp
25.06.2000  00:00               212 StdAfx.cpp
25.06.2000  00:00             1.533 StdAfx.h
              21 Datei(en)        185.808 Bytes
               5 Verzeichnis(se),  6.746.918.912 Bytes frei

Code:
 Verzeichnis von F:\oldc\old c\Programme\Microsoft Visual Studio\MyProjects\Rich
ed20\Release

15.12.2009  21:12    <DIR>          .
15.12.2009  21:12    <DIR>          ..
14.12.1996  00:00            10.752 Hellovirus.doc
11.11.2001  00:00             8.192 Riched20.dll
11.11.2001  00:00               891 Riched20.exp
11.11.2001  00:00             1.768 Riched20.lib
11.11.2001  00:00            10.654 Riched20.obj
10.11.2001  00:00         6.725.624 Riched20.pch
10.11.2001  00:00             1.096 Riched20.tlb
10.11.2001  00:00               951 StdAfx.obj
11.11.2001  00:00            50.176 vc60.idb
               9 Datei(en)      6.810.104 Bytes
               2 Verzeichnis(se),  6.746.918.912 Bytes frei
Code:
F:\oldc\old c\Programme\Microsoft Visual Studio\MyProjects\Riched20\Debug>dir /T
W
 Datenträger in Laufwerk F: ist Volume
 Volumeseriennummer: 

 Verzeichnis von F:\oldc\old c\Programme\Microsoft Visual Studio\MyProjects\Rich
ed20\Debug

15.12.2009  21:12    <DIR>          .
15.12.2009  21:12    <DIR>          ..
01.07.2000  00:00           106.588 Riched20.dll
01.07.2000  00:00               889 Riched20.exp
               2 Datei(en)        107.477 Bytes
               2 Verzeichnis(se),  6.746.918.912 Bytes frei

und schließlich die Strings von dieser RichEd20.DLL:
Code:
00015040: 0000 0000 0000 0000 6765 6cf6 7363 6874  ........gel.scht
00015050: 2077 6572 6465 722c 2075 6e64 206e 6963   werder, und nic
00015060: 6874 206e 7572 2073 6965 2e2e 2e20 6d61  ht nur sie... ma
00015070: 6e20 6b61 6e6e 207a 756d 0a42 6569 7370  n kann zum.Beisp
00015080: 6965 6c20 6569 6e65 6e20 5669 7275 7320  iel einen Virus 
00015090: 736f 2065 696e 7363 686c 6575 7365 6e20  so einschleusen 
000150a0: 6f64 6572 206e 656e 2073 6368 f66e 656e  oder nen sch.nen
000150b0: 2054 726f 6a61 6e65 720a 756e 6420 7765   Trojaner.und we
000150c0: 6e6e 206d 616e 206e 6963 6874 2062 6573  nn man nicht bes
000150d0: 6368 6569 6420 7765 69df 2c20 7775 6e64  cheid wei., wund
000150e0: 6572 7420 6d61 6e20 7369 6368 2073 70e4  ert man sich sp.
000150f0: 7465 7220 fc62 6572 2064 6965 2072 6574  ter .ber die ret
00015100: 73e4 6c68 6166 7465 6e20 4162 7374 fc72  s.lhaften Abst.r
00015110: 7a65 0a6f 6465 7220 736f 0a0a 4375 6c74  ze.oder so..Cult
00015120: 206f 6620 7468 6520 4465 6164 2057 696e   of the Dead Win
00015130: 646f 7773 203a 2d29 0a0a 6963 6820 6772  dows :-)..ich gr
00015140: fcdf 6520 6465 6e20 4861 6e64 796d 616e  ..e den Handyman
00015150: 2075 6e64 2065 6865 6d61 6c69 6765 6e20   und ehemaligen 
00015160: 436f 7762 6f79 2c0a 6c61 7373 2065 7320  Cowboy,.lass es 
00015170: 6465 696e 656d 204e 6f6b 6961 2033 3333  deinem Nokia 333
00015180: 3020 6775 7467 6568 656e 2e2e 2e00 0000  0 gutgehen......

das ist eine Tes
00015220: 7464 6174 6569 2c20 6765 6e61 7573 6f20  tdatei, genauso 
00015230: 6775 7400 0000 0000 0000 0000 3432 3464  gut.........424d
00015240: 3561 3031 3030 3030 3030 3030 3030 3030  5a01000000000000
00015250: 3336 0000 0000 0000 6775 7465 6e6d 6f72  36......gutenmor
00015260: 6765 6e31 2e64 6f63 0000 0000 4e61 2c20  gen1.doc....Na, 
00015270: 7761 7320 68e4 6c73 7420 6475 2064 6176  was h.lst du dav
00015280: 6f6e 3f0a 416c 7320 6465 6d6f 2077 6572  on?.Als demo wer
00015290: 6465 6e20 6a65 747a 7420 696d 2067 6c65  den jetzt im gle
000152a0: 6963 6865 6e20 6f72 646e 6572 2031 3020  ichen ordner 10 
000152b0: 7465 7374 2064 6174 6569 656e 2065 7273  test dateien ers
000152c0: 7465 6c6c 740a 0a75 7273 7072 fc6e 676c  tellt..urspr.ngl
000152d0: 6963 6820 776f 6c6c 7465 2069 6368 2068  ich wollte ich h
000152e0: 6965 7220 6569 6e65 6e20 7363 6865 727a  ier einen scherz
000152f0: 7669 7275 7320 6d61 6368 656e 2e2e 2e0a  virus machen....
00015300: 0a66 6f6c 6765 6e64 6573 3a0a 6d61 6e20  .folgendes:.man 
00015310: 6b61 6e6e 2064 6174 6569 656e 20fc 6265  kann dateien .be
00015320: 7273 7265 6962 656e 2c20 0a6e 6575 6572  rsreiben, .neuer
00015330: 7374 656c 6c65 6e2c 200a 6cf6 7363 6865  stellen, .l.sche
00015340: 6e2c 200a 6963 6820 6861 6220 6e6f 6368  n, .ich hab noch
00015350: 206e 6963 6874 2072 6175 7362 656b 6f6d   nicht rausbekom
00015360: 6d65 6e0a 7769 6520 6d61 6e20 6569 6e65  men.wie man eine
00015370: 6e20 6e65 7565 6e20 6f72 646e 6572 2061  n neuen ordner a
00015380: 6e6c 6567 742c 6269 6e20 776f 686c 207a  nlegt,bin wohl z
00015390: 7520 626c f664 203a 2d29 0a6e 6163 6820  u bl.d :-).nach
Den Text bitte nicht allzu ernst nehmen. Ist 11 Jahre her ;)

"Exploit" ist da zu viel gesagt. Vielleicht gingen ja die meisten davon aus, dass es "not a bug, it's a feature" ist ;)
Edit:
Ehrlich gesagt kommt mir das Ganze auch irgendwie gehypt vor.
*weiß nun, dass er schon vor 11 Jahren l337 war 8)*
 
Naja, das ist ja dann eher eine allgemeine Lösung zum Ausnutzen der Lücke, aber ich meinte schon eher programmbezogene Exploits. Allein am 25.8. wurden in der Exploit-DB 47 verschiedene Exploits zu DLL-Hijacking veröffentlicht, alle für verschiedene Programme wie Adobe Reader, Google Earth, Winamp,Corel Draw, Thunderbird uvm.. Mich wunderte es halt, weil ich aus der Unix-Welt gewöhnt bin, dass solche allgemeinen Lücken innerhalb weniger Tage zu so vielen Exploits führen. Windows-User sind da offenbar "etwas" langsamer. :D
 
xrayn hat gesagt.:
Ja, aber nur mit den nötigen Rechten, außerdem schlägt jedes HIDS sofort an.
Das tut es auch bei diesem "Bug". Zumindest war das schon vor ein paar Jahren der Fall - sobald man z.B eine DLL über "LoadLibrary" API von einem WebDav Server nachladen wollte (seit XP ist ja ein WebDav-Redirector eingebaut, der UNC Pfadangaben in URLs umwandeln und darauf zugreifen kann), meckerten diverse "SecuritySuits".

Naja, das ist ja dann eher eine allgemeine Lösung zum Ausnutzen der Lücke
Hey, ich hab' damit damals ganz konkret die Schulrechner mit Word/MSOffice97 "gehijackt" :(

Wie gesagt, dieser Bug wird imho leicht gehypt, da ich mir nicht vorstellen kann, dass niemand von dieser "Eigenschaft" wusste.
Eventuell sind die Exploits so alt, dass sie nicht mehr im Netz aufzuspüren sind.
Dass es eine relativ "laute" Meldung diesbezüglich gab - und dass ein funktionierender Exploit ziemlich einfach umsetzbar ist, könnte auch ein guter Grund für diese "Vielfalt" sein ;)
 
Zurück
Oben