[ ljyxx @ 30.01.2006. 20:21 ] @
Uzeti u obzir da zelim da prikazem listu fajlova a ne procesa. Ili eventualno uhvatiti trenutak kada se fajl startuje tako da ne mora da se gleda na to sta je trenutno otvoreno. Pozdrav. |
[ ljyxx @ 30.01.2006. 20:21 ] @
[ obucina @ 30.01.2006. 22:22 ] @
Koliko sam mogao da vidim nije lako. SysInternals alati otvorene fajlove otkrivaju uz pomoc drajvera (smesten u resurse). A u drajveru se pozivaju funkcije cija imena nikada nisam video. Mislim da nije lako...
[ reiser @ 31.01.2006. 00:00 ] @
Ako hoces da "hvatas trenutak" kad se fajl otvara, moras da hookujes neke fje koje su zaduzene za to, samo gledaj da hookujes sto "nize" fje, a ne wrappere istih (recimo, OpenProcess je wrapper od NtOpenProcess fje - mislim da je i NtOpenProcess wrapper neke fje, nisam siguran).
Elem, siguran sam da postoji tablica unutar sistema koja sadrzi spisak otvorenih handle-ova ka fajlovima - ali opet, tesko je da se sve to iscita... Korisni linkovi - www.rootkit.com & www.sysinternals.com ---- EDIT Sad mi je palo na pamet - mozda mozes da napravis popis svih aktivnih procesa na sistemu, i da iz njih kreiras popis fajlova koji su ti procesi otvorili - verovatno je lakse od ove prve dve ultra-mega-driver tehnike :D ali pitanje je koliko ces dobiti pouzdane rezultate. poz [Ovu poruku je menjao reiser dana 31.01.2006. u 01:05 GMT+1] [ ljyxx @ 31.01.2006. 01:01 ] @
Imam resenje da popisem sve procese i putanje tih EXE fajlova ali da li imas konkretnu ideju kako popisati fajlove otvorene iz tih procesa ? Mislim da ce mi rezultati biti dovoljno pouzdani jer bukvalno obracam paznju na samo par ekstenzija koje su otvorene tipa *.doc, *.txt, *.xls i mozda jos koja.
[ 0.C00L @ 31.01.2006. 18:22 ] @
Zasto jednostavno ne hookovati CreateFileA/W i tu proveriti sa kojim flagovima se otvara koji fajl. Struktura:
HANDLE CreateFile( LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile ); Naravo trebace ti system hook, koji ce se odnositi na sve procese. [ obucina @ 02.02.2006. 01:02 ] @
U prilogu. Rekoh ja - treba drajver. Imaj u vidu da drajver u prilogu neki AV programi detektuju kao virus.
A mozes jednostavno da uzmes i onaj SysInternalsov handle.exe, izvrsis ga, pokupis izlaz i isparsujes - dobices listu otvorenih fajlova. Inace, sve radi uz pomoc Object Managera, nedokumentovanog Windows mehanizma. [Ovu poruku je menjao obucina dana 02.02.2006. u 02:04 GMT+1] Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|