Immerhin muss man ja erst eine Datei mit der Endung "DLL" ins Arbeitsverzeichnis der jeweiligen Anwendung hineintransportieren - das geht ja nur unter Ausnutzung anderer schwerwiegender Lücken - wozu braucht man dann noch diese zweite Lücke?
Diese DLL-Geschichte ist ja schon seit Jahrzehnten bekannt, ohne bisher als derart gefährlich angesehen worden zu sein. Sturm im Wasserglas?
Arbeitsverzeichnis != Programmverzeichnis
Selbst ein DAU ist im Jahre 2010 schon so schlau, nicht auf exe-Dateien zu klicken, die er per E-Mail erhält.
Aber wenn er jetzt eine ZIP-Datei von einem "Freund" geschickt kriegt, in der 4 (versteckte) DLL's und eine MP3-Datei sind.
Da denkt doch jeder, da kann man bedenkenlos drauf klicken.
kann er doch auch. er darf die dlls nur nicht in ein arbeitsverzeichnis von einer anwendung tun, die die dlls aufruft.
die ganze geschichte stinkt doch nach sommerloch.
nepumuk schrieb:
--------------------------------------------------------------------------------
> Selbst ein DAU ist im Jahre 2010 schon so schlau, nicht auf exe-Dateien zu
> klicken, die er per E-Mail erhält.
>
> Aber wenn er jetzt eine ZIP-Datei von einem "Freund" geschickt kriegt, in
> der 4 (versteckte) DLL's und eine MP3-Datei sind.
> Da denkt doch jeder, da kann man bedenkenlos drauf klicken.
So einfach ist das auch nicht. Netter ist das doch über Website einzuschleusen. Da wo es nicht so schnell wahrnehmbar ist machen solche Sachen mehr Spaß lmaa-aaml.meinbrutalo.de
seit wann hat der player sein arbeitsverzeichnis bei der mp3-datei?
nepumuk schrieb:
--------------------------------------------------------------------------------
> Selbst ein DAU ist im Jahre 2010 schon so schlau, nicht auf exe-Dateien zu
> klicken, die er per E-Mail erhält.
>
> Aber wenn er jetzt eine ZIP-Datei von einem "Freund" geschickt kriegt, in
> der 4 (versteckte) DLL's und eine MP3-Datei sind.
> Da denkt doch jeder, da kann man bedenkenlos drauf klicken.
cmd
cd c:\mein\verzeichnis\mit\dllundmp3
c:\programme\winamp\winamp.exe meine.mp3
Nur so wuerde es gehen, wenn ich das richtig verstanden habe.
Klickt man aber auf die Mp3 wird doch nur der pfad dem programm übergeben und nicht das programm vom pfad aus aufgerufen.. hmmmmmmm......
Das Arbeitsverzeichnis ist das Verzeichnis, in dem die vom Programm geöffnete Datei (.MP3, .doc, etc) liegt. Viele hier verwechseln das mit dem Programmverzeichnis, in welchem das Programm selbst installiert ist.
Gruß
Tantalus
___________________________
Man sollte sich die Ruhe und Nervenstärke eines Stuhles zulegen. Der muss auch mit jedem Arsch klarkommen.
wenn der player sein arbeitsverzeichnis bei der mp3-datei hätte, würde er nicht mehr auf die eigenen plugins zugreifen können, die meist im programmverzeichnis/plugins/* liegen
aaaaad schrieb:
--------------------------------------------------------------------------------
> seit wann hat der player sein arbeitsverzeichnis bei der mp3-datei?
Schon immer.
Arbeitsverzeichnes -> Das Verzeichnis, in dem die Dateien liegen, mit denen ein Programm "arbeitet".
Sind beim Office die Dokumente, beim Player die Musik-/Videodateien.
SoLeichtGehtsNicht schrieb:
--------------------------------------------------------------------------------
> Nur so wuerde es gehen, wenn ich das richtig verstanden habe.
> Klickt man aber auf die Mp3 wird doch nur der pfad dem programm übergeben
> und nicht das programm vom pfad aus aufgerufen.. hmmmmmmm......
Das Arbeitsverzeinis ist immer das Verzeichnis, in dem die aufgerufene Datei liegt. Sonst müsstest Du z.B. beim Schnellspeichern immer den Pfad mit angeben, unter dem gespeichert werden soll.
Gruß
Tantalus
___________________________
Man sollte sich die Ruhe und Nervenstärke eines Stuhles zulegen. Der muss auch mit jedem Arsch klarkommen.
wenn man ein programm schreibt das eine datei aus den command line arguments öffnet und dann einen speicherdialog anzeigt, dann startet dieser entweder im home verzeichnis oder im anwendungsverzeichnis, aber nicht dort wo die angegebene datei liegt.
Tantalus schrieb:
--------------------------------------------------------------------------------
> Das Arbeitsverzeinis ist immer das Verzeichnis, in dem die aufgerufene
> Datei liegt. Sonst müsstest Du z.B. beim Schnellspeichern immer den Pfad
> mit angeben, unter dem gespeichert werden soll.
>
> Gruß
> Tantalus
Mach eine Verknüpfung zum vlc und gib als parameter den vollständigen pfad einer mp3 an. dann schaust du in den eigenschaften der verknüpfung nach "Ausführen in:". das ist das arbeitsverzeichnis und du kannst es auf "c:\babane" oder sonst was setzen. wenn der vlc keine weiteren dateien aus dem arbeitsverzeichnis braucht, wird die mp3 trotzdem abgespielt.
oder noch besser:
starte process explorer von sysinternals.
öffne eine datei durch doppelklick oder "öffnen mit" mit dem vlc.
geh im process explorer auf die eigenschaften vom vlc.
path: C:\Program Files (x86)\VideoLAN\VLC\vlc.exe
command line: "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" --started-from-file "C:\test.mp3"
current directory: C:\Windows\System32\
Ok, muss mich selbst ein wenig präzisieren:
Standardmäßig ist das Arbeitsverzeichnis das Verzeichnis, in dem die aufgerufene Datei liegt. Wer bitte geht schon her, und ändert den Pafd in der Verküpfung ab? Oo
Gruß
Tantalus
___________________________
Man sollte sich die Ruhe und Nervenstärke eines Stuhles zulegen. Der muss auch mit jedem Arsch klarkommen.
siehe oben
current directory != Arbeitsverzeichnis (AFAIK).
Gruß
Tantalus
___________________________
Man sollte sich die Ruhe und Nervenstärke eines Stuhles zulegen. Der muss auch mit jedem Arsch klarkommen.
current directory ist das verzeichnis in dem die anwendung arbeitet. in dem fall ist es c:\windows\system32, weil das programm vom explorer per shell32.dll gestartet wurde und die liegt in c:\windows\system32.
das führt das beispiel ad absurdum, denn gerade wenn der dau eine mp3 aus einem email-anhang öffnet, befindet sich das arbeitsverzeichnis des players im sichersten verzeichnes überhaupt.
Es geht darum:
Das wäre der erste Fall:
Du hast ein Porgramm VLC.
Du klickst auf Öffnen. Und öffnest einen Datei *.avi. Jetzt änderst du das "Current Working Directory".
Vlc öffnet die Datei. VLC hat ein Pluginsystem und würde nachträglich eine dll laden wollen.
Diese ist aber nicht auf deinem System installiert weil das Plugin fehlt. Ein böser hat ein dll(die VLC durch das Plugin laden würde) mit genau dem Namen genau dort hin gelegt wo du die Datei geöffnet hast *.avi. "Current Working Directory"
Jetzt würde VLC diese Dll laden und den Code ausführen der von VLC aufgerufen wird. Der aber nicht der Code ist
den die Entwickler von VLC entwickelt haben.
Also als Bsp für VLC. ob intern das Pluginsystem so arbeitet weiß ich nicht!
Ein andere Möglichkeit die schon etwas doofer ist.
VLC nutz ein Bibliothek. Diese wird geladen. Diese Bibliothek lädt dlls abhängig ob sie dort sind oder nicht.
Der Entwickler macht in der Bibbliothek etwas unsauberes:
Er setzt irgendwann mal mit SetCurrentDirectory(...) (wohin auch immer) un startet etwas mit CreateProcess(...) um irgendwas zu starten.
Der gestartene Prozess würde dll suchen die es z.b nur auf Windows7 oder XP gibt findet sie nicht.
Der Angreifer kennt das Programm und das Problem und hat aber eine dll dort abgelegt wohin SetCurrentDirectory(...) gesetzt wurde. Diese würde jetzt geladen. Und du brauchst dazu keine Adminrechte um die dll auszutauschen oder so.
Das Problem ist halt das der Entwickler der die Bibliothek lädt davon nichts wissen kann und sich daher auch keine Gedanken darüber macht.
Also ausnützen könnte man das indem du im ersten Fall auf ein Netzlaufwerk gehst und eine *.doc,*.avi,*.blabla öffnest.
Du siehst meistens ja dann nur die Dateien gefiltert und die dll eben nicht. Und natürlich das Programm muss nachträglich Dlls laden.
Meinstens Programme mit Pluginsystem ...
Also extrem vereinfacht :D. Du rufst deinen Kunden an. Er soll über dein Netzlaufwerk eine *.doc öffnen.
Am schluss sagst du hey ich hab gerade kein Word können sie mal F1 drücken ich will mal kurz einen Shortcut wissen aus der Hilfe.
F1 lädt per dlls das Hilfesystem nach und da eine dll auf deinem system nicht da ist die nur unter nur Win7 vorhanden ist lädt er deine dll und führt deinen Code aus und zack.
Oder das man lokal wenn du gerade nicht am PC hockst schnell ne dll hin schiebst. So irgndwie. Aber man braucht halt keine unter umständen keine Admin Rechte.
Oder halt irgendwie per Installer. (aber da gibts dann eh andere Wege).
Also für jemanden der nur lokal auf seinem PC arbeitet ist das eher nicht so schlimm.
äää seinem :)
F1 lädt per dlls das Hilfesystem nach und da eine dll auf "seinem" system nicht da ist, weil sie nur unter nur Win7 vorhanden ist lädt er deine dll und führt deinen Code aus und zack.
Kommentare: 170 | letzter Beitrag 15:54 Uhr
Kommentare: 94 | letzter Beitrag 26.05. 19:45
Kommentare: 68 | letzter Beitrag 14:48 Uhr
Kommentare: 64 | letzter Beitrag 26.05. 17:51
Kommentare: 61 | letzter Beitrag 16:16 Uhr
E-Mail an news@golem.de

Ein soziales Netzwerk für Pornografie muss seine Marke nicht an Facebook übergeben. Faceporn, ein norwegisches Unternehmen, freut sich über den Sieg vor einem kalifornischen Gericht.

Diablo 3 ist toll, sagen viele Spieler - Diablo 3 ist eine Stimulus-Response-Maschine, sagt Rainer Sigl. Der Blogger und leidenschaftliche Gamer erklärt, warum er sich Blizzards jüngstem Werk verweigert.

Lockheed Martin hat eine neue Version des Exoskeletts Hulc vorgestellt, das es einem Menschen ermöglicht, schwere Lasten zu heben und zu tragen. Der Hersteller will das System im Spätsommer testen und, wenn alles gutgeht, danach an US-Soldaten in Afghanistan ausliefern.

Renesas ist nach Elpida der zweite schwer angeschlagene japanische Chiphersteller. Renesas, das Hitachi, Mitsubishi Electric und NEC gehört, macht Verlust und will seine größte Fabrik verkaufen.

RIM soll in den kommenden Tagen erneut einen massiven Stellenabbau ankündigen. "Ich habe herausgefunden, welche Teile ich in meinem Puzzle nicht mehr benötige", sagte Firmenchef Thorsten Heins.

Ein britisches Blog will erfahren haben, dass Facebook den norwegischen Browserhersteller Opera Software kaufen will. Beide Unternehmen wollen sich dazu nicht äußern.