http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_programming&no=1109 [º¹»ç]
===============================================================================
>¸®´ª½º¿¡¼ ¼Ò½º¸¦ gcc¸¦ ÀÌ¿ëÇؼ ¾î¼Àºí¸®¾î·Î ÄÄÆÄÀÏ Çϸé..
>´ë·«.
>
>movl %esp, %ebp
>
>ÀÌ·±½ÄÀ¸·Î ³ª¿À´Âµ¥..
>Àú±â ºÙÀº %´Â ¹»¶æÇϴ°ÇÁö.. ¶Ç $¶ó°í ³ª¿À´Âµ¥ ÀÌ°ÍÀ» Á¤È®ÇÏ°Ô ¹»¶æÇϴ°ÇÁö..
>±×¸®°í ÀϹÝÀûÀ¸·Î ¾î¼Àºí¸®¾î´Â
>[¸í·É¾î Ç༱Áö, Ãâ¹ßÁö]
>ÀÌ·±Çü½Ä Àε¥.. ¿Ö ¸®´ª½º¿¡¼ ¼Ò½º¸¦ ¾î¼Àºí¸®¾î·Î ÄÄÆÄÀÏÇϸé..
>[¸í·É¾î Ãâ¹ßÁö, Ç༱Áö] Çü½ÄÀ¸·Î µÇ¾îÀÖ´øµ¥.. ¿Ö ÀÌ·±°Ì´Ï±î?
>¸¶Áö¸· Áú¹® Çϳª ´õÇÏ°Ú½À´Ï´Ù.
>lea 0xfffffff8(%ebp), (%eax) ¶ó°í µÇ¾îÀÖÀ¸¸é.
>0xfffffff8(%ebp)¿¡ ÇØ´çµÇ´Â ÁöÁ¡ÀÇ ÁÖ¼Ò¸¦ (%eax)¿¡ ÀúÀåÇÏ°í.
>mov 0xfffffff8(%ebp), (%eax) ¶ó°í µÇ¾îÀÖÀ¸¸é
>0xfffffff8(%ebp)¿¡ ÀúÀåµÇ¾î ÀÖ´Â °ªÀ» (%eax)¿¡ ÀúÀåÇ϶ó´Â ¸» ¾Æ´Õ´Ï±î?
>´äº¯ ºÎŹµå¸³´Ï´Ù.¤Ì.¤Ì
===============================================================================
1. %esp¿¡¼ %ÀÇ ÀǹÌ
esp ¾ÕÀÇ %´Â ÀÌ "esp"°¡ "·¹Áö½ºÅÍ"ÀÓÀ» ³ªÅ¸³À´Ï´Ù.
ÀÌó·³ eax, ebx, esp, ebp µîÀÇ ¸ðµç ·¹Áö½ºÅÍ ¾Õ¿¡´Â %¶ó´Â Á¢µÎ¾î°¡ ºÙ½À´Ï´Ù.
%°¡ ¿Ö ºÙ¾ú´ÂÁö ¹°¾îº¸½Ã´Â°Å º¸´Ï±î INTEL ¹®¹ýÀ» °øºÎÇϽŠºÐ °°½À´Ï´Ù.
´ëÇ¥ÀûÀÎ ¾î¼Àºí¸®¾î ¹®¹ýÀ¸·Î´Â INTEL°ú AT&T ÀÌ·¸°Ô µÎ Á¾·ùÀÇ ¹®¹ýÀÌ ÀÖ½À´Ï´Ù.
ÀÌ µÑÀº ¶È°°Àº ±â°è¾î¸¦ ¾î¼Àºí¸®¾î·Î Çؼ®ÇϵÇ, Ç¥Çö ¹æ¹ý¿¡ ÀÖ¾î¼ ¾à°£ÀÇ Â÷ÀÌ°¡ ÀÖ½À´Ï´Ù.
±× Â÷ÀÌ Áß Çϳª°¡ ¹Ù·Î ¹æ±Ý º¸½Å ·¹Áö½ºÅÍ¿¡ %¸¦ ºÙÀÌ³Ä ¾ÈºÙÀ̳ÄÀÔ´Ï´Ù.
2. $0x10¿¡¼ $ÀÇ ÀǹÌ
$ Á¢µÎ¾î´Â µÚÀÇ ¼ýÀÚ°¡ "°ª"¿¡ ÇØ´çÇÔÀ» ³ªÅ¸³»ÁÝ´Ï´Ù.
%³ª $ ¸ðµÎ ±×Àú »ç¿ëÀÚÀÇ Çؼ®¿¡ µµ¿òÀ» ÁÖ±â À§ÇØ ºÙ¿©ÁØ °ÍÀ̶ó°í º¸½Ã¸é µË´Ï´Ù.
3. ¸í·É¾îÀÇ src¿Í dst ¼ø¼°¡ ´Ù¸¥ ÀÌÀ¯
ÀÌ ¿ª½Ã INTEL°ú AT&TÀÇ ¹®¹ý Â÷ÀÌ¿¡ ±âÀÎÇÕ´Ï´Ù.
INTEL ¹®¹ýÀº [DST], [SRC] ¼ø¼·Î,
AT&T ¹®¹ýÀº ÀÌ ¹Ý´ëÀÎ [SRC], [DST] ¼ø¼·Î ¸í·ÉÀ» Ç¥ÇöÇÕ´Ï´Ù.
ÀϹÝÀûÀ¸·Î UNIX °è¿Àº AT&T¸¦, Windows °è¿Àº INTEL ¹®¹ýÀ» »ç¿ëÇÕ´Ï´Ù.
¸¸¾à INTEL ¹®¹ýÀ» °øºÎÇϼż, AT&T ¹®¹ýÀ» Çؼ®Çϴµ¥ ÁöÀåÀÌ ÀÖÀ¸½Ã´Ù¸é,
gdbÀÇ Ä¿¸Çµå ¶óÀο¡ set disassembly-flavor inteln ¸í·ÉÀ» ÀÔ·ÂÇÏ¿© ¹®¹ýÀ»
º¯°æÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù. (ÇÏÁö¸¸ Çؼ®¿¡ ÁöÀåÀÌ ÀÖÀ» Á¤µµ·Î µÎ ¹®¹ý¿¡ Å« Â÷ÀÌ°¡
ÀÖÁö´Â ¾Ê½À´Ï´Ù.)
4. lea¿Í movÀÇ Â÷ÀÌ
¸»¾¸ÇϽŠ°ÍÀÌ ¸Â½À´Ï´Ù. lea´Â SRC¿¡ ÇØ´çÇÏ´Â "ÁÖ¼Ò °ª"À», mov´Â SRC°¡ °¡Áö°í
ÀÖ´Â "½ÇÁ¦ °ª"À» DST·Î ÀúÀåÇÕ´Ï´Ù.
ÀÌ»óÀÔ´Ï´Ù. ¶Ç ±Ã±ÝÇÑ Á¡ ÀÖÀ¸¸é Áú¹®Çϼ¼¿ä. |
Hit : 3047 Date : 2006/06/05 08:15
|