RE FORUM

[REVERSE ENGINEERING] => Programming => Topic started by: Conflict on March 12, 2008, 08:03:08 AM

Title: Vista a jeho problemy
Post by: Conflict on March 12, 2008, 08:03:08 AM
zdarec,

pri vyvoji Masterova teoremu o funkcnim protektoru sem narazil na jednu drobnost a tou je zaspani doby. Asi ste si vsimli ze pomalu nastupuji win64. Ale mozna ste si nevsimli jak se pozmenilo programovani v asm. Treba starej znamej SEH na XP pres FS:[0]... uz nefunguje pokazdy. Pri nastaveni DllCharacteristics na DynamicBase (40h) a NoSeh (400h) uz nefunguje. DynamicBase = ASLR coz je zavedeni programu (knihovny) do pameti na ruzne imagebase.
NoSeh je prave ono zakazani SEHu. V exe je vytvorena .pdata sekce do ktere se ulozi struktury. A kdyz se objevi vyjimka, tak se system podiva do pdata a zisti kde to vzniklo atd. Jenze jak nastavit obsluhu vyjimky, kdyz vytvarim kod v pameti pomoci mega-hype-poly-meta-morfni-kaskadne-knizkovo-zaoblenyho alga? Jedny stranky rikaj ze sem jeste porad krytej a ze ve win64 existuje api RtlAddFunctionTable
Adds a dynamic function table to the dynamic function table list.
Kdyz neco vytvorime tak by to pak melo jit i smazat RtlDeleteFunctionTable
Removes a dynamic function table from the dynamic function table list.

Sice sou to moc pekny funkcicky, ale porad nevim jak to udelat v asm. Takze cilem threadu je sdileni zajimavosti o win64. Pokud vite jak na ten SEH pri NoSeh, napiste.
Title: Re: Vista a jeho problemy
Post by: Master on March 12, 2008, 09:32:52 AM
Na ty fce se muzu zkusit mrknout.Ovsem pokud jsou jen pri x64 tak na x86 vistach to asi shori.

Edit:Koukal sem na ne a zavadi se tam struktury a dalsi veci coz muze bejt trochu i problem.Navic to funguje opravdu jen na x64 bitech.