1596, 1/80 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   salangi11
   ¸®¹ö½º ¿£Áö´Ï¾î¸µ (¾î¼Àºí¸®) -1

http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&no=8386 [º¹»ç]


¸®¹ö½º ¿£Áö´Ï¾î¸µÀ» À§ÇÑ ¾î¼Àºí¸®







1. C¿Í ¾î¼Àºí¸®¸¦ ºñ±³ÇÒ ¶§, ¾î¼Àºí¸®´Â Çѹø¿¡ ÇϳªÀÇ µ¿ÀÛ.




2. Áö±Ý ¹è¿ì´Â °ÍÀº IA-32(°¡Àå ´ëÁßÈ­µÈ °Í.)




3. ±âº»ÇüÅ : "¸í·É¾î + ÀÎÀÚ"




4. ¿ÉÄÚµå(opcode)=¸í·É¾î




5. ÀÎÀÚ : ¾î¶² Àå¼Ò? + ¸í·É¾î¿¡ ¿µÇâ ¹Þ´Â °Í = ¿ÀÆÛ·£µå(operand)




6. push¸¦ ¾²¸é ½ºÅÿ¡ °ªÀÌ ³Ö¾îÁü.


½ºÅÃÀ̶õ?

½ºÅÃ(stack)Àº ¸ðµç ¿ø¼ÒµéÀÇ »ðÀÔ(insert)°ú »èÁ¦(delete)°¡ ¸®½ºÆ®ÀÇ ÇÑÂÊ ³¡¿¡¼­¸¸ ¼öÇàµÇ´Â Á¦ÇÑ Á¶°ÇÀ» °¡Áö´Â ¼±Çü ÀÚ·á ±¸Á¶(linear data structure)·Î¼­, »ðÀÔ°ú »èÁ¦°¡ ÀϾ´Â ¸®½ºÆ®ÀÇ ³¡À» topÀ̶ó ÇÏ°í, ´Ù¸¥ ÇÑÂÊ ³¡À» bottomÀ̶ó ÇÑ´Ù. ½ºÅÃÀº Á¾Á¾ pushdown stackÀ̶ó°íµµ Çϴµ¥, ½ºÅÃÀÇ top¿¡ »õ·Î¿î ¿ø¼Ò¸¦ »ðÀÔÇÏ´Â °ÍÀ» push¶ó ÇÏ°í, °¡Àå ÃÖ±Ù¿¡ »ðÀÔµÈ ¿ø¼Ò¸¦ ÀǹÌÇÏ´Â ½ºÅÃÀÇ topÀ¸·ÎºÎÅÍ ÇÑ ¿ø¼Ò¸¦ Á¦°ÅÇÏ´Â °ÍÀ» popÀ̶ó ÇÑ´Ù. ÀÌ¿Í °°Àº ½ºÅà ¿¬»óÀº Ç×»ó ½ºÅÃÀÇ top¿¡¼­ ¹ß»ýÇϹǷΠtop Æ÷ÀÎÅÍÀÇ °ªÀ» 1¾¿ Áõ°¡ ¶Ç´Â °¨¼Ò½ÃÅ´À¸·Î½á ¼öÇàµÈ´Ù.


[³×À̹ö Áö½Ä¹é°ú] ½ºÅà [stack] (ÄÄÇ»ÅÍÀÎÅͳÝIT¿ë¾î´ë»çÀü, 2011. 1. 20., ÀÏÁø»ç)




7. movµµ push¶û ºñ½ÁÇѵ¥, Á¶±Ý ´Ù¸§

ex) push 12

=>´Â ½ºÅÿ¡ 12¶ó´Â °ªÀ» ³Ö´Â °Í

mov oo, 1000

=>oo¿¡´Ù°¡ 1000 ³Ö´Â °Í.



memcpy´Â ¸Þ¸ð¸® º¹»ç ÇÔ¼ö°í, strcpy´Â ¹®ÀÚ¿­ Àüü º¹Á¦ ÇÔ¼ö¶ó C¾ð¾î¿¡¼­ º¼ ¶§, ÀÌ°Í°ú °°´Ù°í ÇØÁÙ ¼ö ÀÖÀ» °Í °°´Ù.




8. ¾î¼Àºí¸®´Â ´Ü¼ø


->´Ü¼øÇÔ¿¡¼­ ¾î·Á¿òÀÌ ³ª¿È.




C¾ð¾î·Î´Â ½±°Ô Ç¥ÇöÇÒ ¼ö ÀÖ´Â °ÍÀÌ ¸Å¿ì ±æ°Ô Ç¥ÇöµÉ ¼ö ¹Û¿¡ ¾øÀ¸´Ï±î.




9. ·¹Áö½ºÅÍ

IA-32ÀÇ ¹ü¿ë ·¹Áö½ºÅÍ´Â ÃÑ 8°³, ·¹Áö½ºÅ͸¦ 'º¯¼ö'¶ó°í »ý°¢ÇÏÀÚ. CPU°¡ »ç¿ëÇÏ´Â º¯¼ö¶ó°í.

¿¬»ê ·¹Áö½ºÅÍ·Î EAX, EDX, ECX, EBX°¡ ÀÖÀ¸¸ç ÁÖ¼Ò ·¹Áö½ºÅÍ·Î ESI EDIµîÀÌ Á¸ÀçÇÑ´Ù.




9-1. ¿¬»ê ·¹Áö½ºÅÍ




EAX : »ê¼ú °è»êÀ» Çϸç, ¸®ÅÏ°ª(ÄÄÇ»ÅÍ ÇÁ·Î±×·¡¹Ö¿¡¼­ return ¹®Àº ÇöÀçÀÇ ÇÔ¼ö¿¡¼­ °ªÀ̳ª ÁÖ¼Ò¸¦ ¹ÝȯÇÒ ¶§ »ç¿ëÇÑ´Ù.)À» Àü´ÞÇÑ´Ù.

°¡Àå ¸¹ÀÌ ¾²´Â ·¹Áö½ºÅÍ. ¿¬»ê¿¡¼­ »ç¿ëµÈ´Ù.

EAXÀÇ A°¡ AccumulatorÀÇ ¾àÀÚÀÌ´Ù.




EDX : EAX¿Í °°ÀÌ ¿¬»ê¿¡ ÀÌ¿ëÇϵÇ, ¸®ÅÏ °ªÀÇ ¿ëµµ·Î »ç¿ëµÇÁö ¾Ê´Â´Ù.




ECX : ¹Ýº¹¹®À» »ç¿ëÇÒ ¶§, ¹Ýº¹¿¡¼­ Å»ÃâÇϱâÀ§ÇÑ ¿ªÇÒÀÌ ÇÊ¿äÇÏ´Ù. Á¶°ÇÀ» ¼³Á¤ÇÏ°í (i<10) ±× Á¶°ÇÀ» Áõ°¡½ÃÅ°´Â Ä«¿îÆÃ(i++)À» ÅëÇØ

¹Ýº¹¹®À» Áß´ÜÇÏ°í Å»ÃâÇÏ°Ô µÈ´Ù. ¾î¼Àºí¸®¿¡¼­ »ç¿ëµÇ´Â Ä«¿îÆÃÀ̶ó ºÎ¸¦ ¼ö ÀÖ´Â ECX´Â óÀ½ Ãʱ⠰ª¿¡¼­ 1¾¿ °¨¼ÒÇÏ°í, Ä«¿îÅÍ(i)°¡ 0ÀÌ µÉ ¶§, ¹Ýº¹¹®À» Áß´ÜÇÑ´Ù.

C°¡ countÀÇ ¾àÀÚÀÌ´Ù.




EBX : ÀÇ¹Ì ¾ø´Ù. ºÎÁ·Çؼ­ °ø°£ÀÌ ´õ ÇÊ¿äÇÒ ¶§, »ç¿ëÇÑ´Ù.







9-2. ÁÖ¼Ò ·¹Áö½ºÅÍ




ESI : ½ÃÀÛÁö À妽º




EDI : ¸ñÀûÁö À妽º




ESIÀÇ °ªÀ» EDI·Î º¹»çÇÑ´Ù°í »ý°¢ÇÏ¸é ½¬¿ò. (S¿Í D°¡ Source¿Í DestinationÀÇ ¾àÀÚ.)







9-3. ¼¼ºÎ(ÇÏÀ§) ·¹Áö½ºÅÍ




AX : 16ºñÆ®(2¹ÙÀÌÆ®)

AH : 8ºñÆ®(1¹ÙÀÌÆ®)

AL : 8ºñÆ®(1¹ÙÀÌÆ®)




Ex) EAX°¡ 0xabcdefgh¶ó¸é

EAXÀÇ AX´Â efgh, AH´Â de, ALÀº gh´Ù.



​Ã߽Š: »¡¸® À¯Ä¡¿ø»ý¿¡¼­ Å»ÃâÇϸé ÁÁ°Ú´Ù.
        ¹º°¡ ¿À·ùÀÖÀ¸¸é ¸»ÇØÁֽʽÿÀ!!!


Âü°í : ¸®¹ö½º ¿£Áö´Ï¾î¸µ ¹ÙÀ̺í. À§Å°¹é°ú

  Hit : 8563     Date : 2017/02/21 11:59



    
     [°øÁö] °­Á¸¦ ¿Ã¸®½Ç ¶§´Â ¸»¸Ó¸®¸¦ ´Þ¾ÆÁÖ¼¼¿ä^¤Ñ^ [29] ¸Û¸Û 02/27 19450
1595   [pwnable.kr] Shellshock[1]     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/23 98
1594   ShellshockÀÇ ±âº» ¿ä¾à     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/23 78
1593   [pwnable.kr] fd     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/23 73
1592   VPNÀÌ ¿¬°áµÇ¾ú´Ù°¡ µµÁß¿¡ ²¨µµ À¥ ºê¶ó¿ìÀú»ó¿¡¼­ À¯ÁöµÇ´Â ÀÌÀ¯     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/22 79
1591   ÇØÄ¿µéÀÌ ÇØÅ·½Ã »ç¿ëÇÏ´Â µð·ºÅ丮 °ø°£[1]     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/22 116
1590   Keyboard Hooking -part2 - (Python3 ver)     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/20 86
1589   [Windows API] Keyboard Hooking     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/20 74
1588   [pwnable.kr] cmd1 °ø·«     ÇØÅ·ÀßÇÏ°í½Í´Ù
10/23 238
1587   netdiscover ÆÄÀ̽ãÀ¸·Î ±¸ÇöÇϱ⠠   ÇØÅ·ÀßÇÏ°í½Í´Ù
08/13 515
1586   ÆÄÀ̽ãÀ» ÀÌ¿ëÇÑ ½ÉÇà À¥ Å©·Ñ·¯     ÇØÅ·ÀßÇÏ°í½Í´Ù
08/13 407
1585   ÆÄÀ̽ã random¸ðµâÀ» ÀÌ¿ëÇÑ ¼ýÀÚ¸ÂÃ߱⠰ÔÀÓ ±¸Çö     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/30 958
1584   ÆÄÀ̽ã äÆà ÇÁ·Î±×·¥ ±¸Çö     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/28 847
1583   ÆÄÀ̽㠼ÒÄÏ ÇÁ·Î±×·¡¹ÖÀÇ ±âÃÊ     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/26 989
1582   ¸®´ª½º À¥ ·Î±× ºÐ¼®     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/20 675
1581   ¸®´ª½º/À©µµ¿ì º¸¾È Àåºñ ·Î±×     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/20 826
1580   °í¼ö´ÔµéÀÇ µµ¿òÀ» ¹Þ°í ½Í½À´Ï´Ù     vbnm111
02/11 914
1579   ¸®´ª½º Ä¿³Î 2.6 ¹öÀü ÀÌÈÄÀÇ LKM     jdo
07/25 1432
1578   ½©ÄÚµå ¸ðÀ½     ÇØÅ·ÀßÇÏ°í½Í´Ù
01/15 2316
1577   Call by value VS Call by Reference     ÇØÅ·ÀßÇÏ°í½Í´Ù
01/15 1608
1 [2][3][4][5][6][7][8][9][10]..[80]

Copyright 1999-2024 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org