[so] Intrebari tema 2

Octavian Purdila so@cursuri.cs.pub.ro
Sat, 13 Nov 2004 17:25:36 +0200


On Saturday 13 November 2004 16:44, George Adrian Drumea wrote:
> >> > 4. Este necesar sa restauram hookurile la descarcarea tipd (pt
> >> > procesele injectate la pornire)?
> >> >
> >> > 5. Tipd incearca sa injecteze toate procesele din sistem, sau numai
> >> > ale userului curent logat (cel care ruleaza tipd)?
> >>
> >> Hook-ingul trebuie sa functioneze doar pentru procesele pe
> >> care le rulati avand biblioteca de interceptare in directorul
> >> curent (de lansare al comenzii).
>
> CA> Si un citat din tema: "Pentru a porni interceptarea este suficient
> CA> ca biblioteca ce contine functiile de interceptare sa se afle in
> CA> directorul curent".
>
> CA> Dar singura metoda (din cate stiu eu) de a face ca un DLL sa fie
> CA> incarcat automat de catre un program este ca DLL-ul sa reprezinte
> CA> un proxy. Adica in cazul nostru sa se cheme kernel32.dll si sa
> CA> suprascrie toate functiile din biblioteca originala. Treaba care
> CA> nu este neaparat posibila (nu toate functiile din kernel32.dll
> CA> sunt documentate).
>
> CA> Se poate face incarcarea DLL-ului prin injectare, dar este alt
> CA> lucru si nu vad ce legatura are cu directorul unde se afla
> CA> biblioteca noastra.
>
> Pentru aplicatiile care importa user32.dll exista o cheie in registry
> care specifica o lista de dll-uri ce pot fi incarcate la startup
> (imediat cum se incarca user32.dll). Mai multe informatii la:
> http://support.microsoft.com/kb/q197571/
> Ramane totusi problema cu aplicatiile de consola.
>

Eu as recomanda aceasta varianta, pentru ca este mai simpla. Si la aceasta 
varianta ne-am si gandit cand am scris enuntul. Cei drept am uitat sa dam si 
cheia de registry... Intre timp am facut un update la enunt, in care am 
specificat si cheia.

Intr-adevar, exista probleme cu aplicatiile de consola (care nu folosesc 
user32.dll). Testarea temei se va face cu o aplicatie scrisa de noi, pentru a 
avea niste rezultate cat de cat reproductibile. Aplicatia va fi linkata cu 
user32.dll.

tavi