CyRhmU.jpeg
²é¿´: 454  |  »Ø¸´: 2
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£

sdlj8051

½ð³æ (ÖøÃûдÊÖ)

[½»Á÷] SEH ì¶²¡¶¾µÄ‘ªÓÃ[תÌù]

*ß@ƪÎÄÕÂëb³öì¶Ñо¿²¡¶¾ÓÃ;£¬Õˆ²»ÒªÓô˼¼ÐgÖÆÔì¾ßÓÐÆÆ‰ÄÐԵIJ¡¶¾¡£ÖxÖx£¡ÈçÓÐÈκÎÈËÓô˼¼Ðg
Ôì³ÉÈÎºÎÆÆ‰Ä£¬ì¶±¾ÈËŸoêP£¡


º†½é£º

SEH ÊÇʲüN£¿²»ÖªµÀÊÇʲüN–|–|µÄÔ’£¬¾ÍÏÈÈ¥¿´¿´humeŒ‘µÄ¡¶SEH in ASM µÄÑо¿¡·»òÕß
¡¶Win32 Exception handling for assembler programmers by Jeremy Gordon¡·£¬ÔÙ»Ø?í¿´ß@ƪ
 €ÎÄÕ°ɣ¡


1.žéʲüNÒªÔÚ²¡¶¾ÑeʹÓÃsehÄØ£¿

ÈκγÌÐò¶¼ÓпÉÄÜÓÐåeÕ`³ö¬FµÄ£¬ÔÚÎÒ‚ƒµÄ²¡¶¾ÑeÒ²ÊÇÒ»˜Ó¡£²¡¶¾Í¨³£ÊÇÓÑôÔÚ²»Öª²»ÓXÏÂ
×öÊÖÄ_£¬Èç¹ûÎÒ‚ƒµÄ²¡¶¾³öÁËåe£¬ÄÇüN¾ÍÓпÉÄÜ?—³öÒ»‚€‚€Ó‘…’µÄåeÕ`ÐÅÏ¢¿ò£¬ß@˜ÓÒ»?íÎÒ‚ƒµÄ²¡¶¾
¾Í›]ÓÐʲüNÒâ˼ÁË¡£²»±»ÓÑô²ìÓXÊÇÊ®·ÖÖØÒªµÄ£¬ËùÒÔÎÒ‚ƒÒªÓÃSEH?íÌŽÀíÎÒ‚ƒ²¡¶¾ÑeÓпÉÄܳö¬FµÄåe
Õ`¡£ß@ÊÇ SEH ì¶²¡¶¾ÖеđªÓÃÖ®Ò»£¬ÏàÐÅÄãÔÚ¿´Íê³ÉSEH µÄÎÄÕÂáᣬ‘ªÔ“ÖªµÀÔõ˜ÓʹÓÃSEHȥ̎ÀíÔÚ
²¡¶¾ÑeËù®aÉúµÄ®?³£¡£

ÔÚÎÒ‚ƒµÄ²¡¶¾Ñe߀ÓÐÒ»˜ÓºÜÖØÒªµÄÊÇ--±ÜÃâ±»‚ɲ쵽£¬²»È»ÎÒ‚ƒµÄ²¡¶¾ÔÚé_ʼß\Ðеĕrºò¾Í±»
°l¬FºÍš¢µô£¬ÄÇüNÎÒ‚ƒµÄÐÄѪ¾ÍÅÝœ«ÁË£¡ËùÒÔÎÒ‚ƒÒªÁîÎÒ‚ƒµÄ²¡¶¾²»ÈÝÒ×½o ·´²¡¶¾ÒýÇæ °l¬F¡£

®”Ò»‚€³ÌÐòß\ÐЕr£¬·´²¡¶¾ÒýÇæ•þÄ£”M³ÌÐòµÄ´ú´a£¬Èç¹ûËüÕÒµ½µÄÒÉüc¶àµÄÔ’£¬ÄÇüNß@‚€³ÌÐò
´ó¶àÊDZ»²¡¶¾¸ÐȾÁË£¡ß@•r·´²¡¶¾ÒýÇæ•þ×ö³ößm®”µÄÌŽÀí¡£ËùÒÔÎÒ‚ƒ¿ÉÒÔÔÚ²¡¶¾ÑeʹÓÃSEHÔOÓ‹Ò»‚€ÏÝÚå
½oAVsµÄEmulator¡£ß@˜Ó¾Í¿É±ÜÃâ±»²¶£¡¹þ¹þ£¡



2.ÈçºÎÓÃSEHì¶ÄãµÄ²¡¶¾È¥¸ã¶¨Emulator£¿


o®”£¡o®”£¡ÈëÕýî}£¡¼ÈÈ»ËüÄÇüNϲšgҪģ”MÎÒ‚ƒµÄ´ú´a£¬ÎÒ‚ƒ¾ÍÔÚ²¡¶¾Ò»é_ʼ¾Í°²ÑbÒ»‚€SEH,
Ô“ÌŽÀí®?³£³ÌÐò¾ÍÊÇÎÒ‚ƒµÄ²¡¶¾£¬È»ááÑuÔìÒ»‚€®?³£¡£ß@˜Ó¾ÍßMÈë®?³£ÌŽÀí³ÌÐò(ÎÒ‚ƒµÄ²¡¶¾)À^ÀmˆÌÐÐ
¡£¶ø·ÂÕæÆ÷…s•þÒÔžéÊÇß@ÊÇ‚€ÆÕͨ®?³£ÌŽÀí³ÌÐò£¬µ«ÊÇÓÐЩAVs•þÔÚÓöµ½åeÕ`´ú´aÖ®ºóÔ‡ˆDÀ^ÀmÄ£”MÏÂÒ»
‚€Ö¸ÁÄÇüNÎÒ‚ƒ¾Í׌ËüßMÈëÒ»‚€ËÀÑ­­h£¡¹þ¹þ£¡How£¿ ¿´¿´ÏÂÃæµÄ´ú´a:

*²¿·Ö´ú´aÊÇÒýÓÃbenny's polymorphic engine

start:call Set_SEH;ß@¾äÆäŒ?¾ÍÊÇ push offset CONTINUE
;      JMP Set_SEH
CONTINUE:mov esp, [esp+8];»Ö?Ͷї££¬ ®”Ò»‚€®?³£®aÉú•r,ϵ½y•þ’ìÆð³ÌÐò£¬?Kºô½ÐÌŽÀí³ÌÐò£¬                          
                                       ;‚÷ËÍÌŽÀí³ÌÐòµÄ…¢”µÑe,ÔÚ[ESP+8]ÌŽƒ¦´æµÄÊÇÅfµÄ¶Ñ—£µÄµØÖ·


push offset Start_Virus ;----_ °ÑStart_Virus µÄµØÖ·‰ºßM¶Ñ—£Ñe£¬®”×÷·µ»ØµØÖ·
ret;----  ¸úÖø?íÒ»‚€ret£¬Ìøµ½Start_VirusÈ¥£¬ÊDz»ÊǺÜmagic?



Set_SEH:sub edx, edx            ;Edx =0

;Èç¹ûÄãʹÓõÄÊÇmasm£¬‘ªÔ“¼ÓÏÂÃæÒ»¾ä,²»È»¾Í•þÒýÆð¾Ž×gåeÕ`
;Assume fs:nothing

push dword ptr fs:[edx];°Ñָȥ _EXCEPTIONAL_REGISTRATION_RECORD ½Y˜‹µÄָᘉºµ½¶Ñ—£
mov fs:[edx], esp;°²ÑbÒ»‚€seh ¿ò¼Ü
mov [edx],edx;×¢Òâß@ÑeÒýÆðÒ»‚€®?³£,Òòžéedx=0, ËùÒÔ•þÒýÆðÒ»‚€×xŒ‘ƒÈ´æ›_Í»µÄ®?³££¬

;Èç¹ûEmulator ²»Àí•þ®?³££¬²»ßMÈëseh ÌŽÀí³ÌÐò(¼´ CONTINUE: )£¬À^ÀmÄ£
;”MÏ‚€Ö¸ÁҲ¾ÍÊÇjmp start£¬ÄÇüN¾Í•þßMÈëÒ»‚€ËÀÑ­­h£¬ß@¿ÉÄÜ•þÔì³É®”
               jmp start       ;™C


Start_Virus:    .....
.....

×Ô¼ºÔ‡Ô‡¿´°É!
Ã÷°×Áˆ᣿²»Ã÷°×£¿›]êPϵ£¬›]ÓÐʲüNÈËʲüN¶¼¶®£¬Œ‘ÐŽoÎÒ£¬ÎÒ‚ƒ?íӑՓһϰɣ¡ÎÒµÄqq:50527053,icq 72424549
email:henrynote@msn.com


*ááÔ’
SEH µÄ‘ªÓúÜ?V£¬²»ëbÊÇÔÚ²¡¶¾ÑeÓÐÓÃ(?UÔ’)£¬×î³£ÓõĮ”È»ÊÇÓÃ?íÌŽÀíÔÚ¿ÉîAÖªµÄ®?³££¬SEH ¼¼ÐgÒ²¿ÉÒÔÓÃì¶
·µ¸úÛ™µÈµÈ£¡
Œ‘ß@ƪµÄÎÄÕµÄÄ¿µÄÊÇžéÁ˺͸÷λ³õŒWÕß·ÖÏíŒWÁ•½Y¹û,ÎÒÒ²ÊdzõŒWÕߣ¬Ï£ÍûÄÜÅc´ó¼ÒһͬßM²½¡£
ÔÚß@ÑeÒª¸ÐÖxºÜ¶àÈË£¬ËùÓÐŽÍÖúß^ÎÒµÄÅóÓÑ£¬ÓйĄîÎÒŒ‘ß@ƪÎÄÕµÄ-ÀÏÁ_£¬ß€Óкܶà´ó¸ç¡£

--------------------------------------------------------------------------------------------------------------
ÈçÐèÞDÝd£¬ÕˆÔ]Ã÷±¾ÎÄÓÉhenrynoteÖø! Henry's WorkShop :http://hackit2000.virtualave.net
Thankyou For Very Much !

[ Last edited by sdlj8051 on 2006-10-6 at 12:46 ]
»Ø¸´´ËÂ¥
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

gph-rabbit

½ð³æ (СÓÐÃûÆø)

¿´¿´ÁË£¬Ð»Ð»¡£
2Â¥2006-12-29 01:20:26
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
3Â¥2006-12-29 09:49:07
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ sdlj8051 µÄÖ÷Ìâ¸üÐÂ
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û