½Ã½ºÅÛ ÇØÅ·

 1576, 1/79 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   ·¥±ï´Â³ëÀÎ
   "ÇØÅ· : °ø°ÝÀÇ ¿¹¼ú" ÀÇ ¹öÆÛ ¿À¹öÇ÷οì exploit_searchnote¿¡ °üÇÑ Áú¹®ÀÔ´Ï´Ù.

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=1697 [º¹»ç]


¾È³çÇϼ¼¿ä. "ÇØÅ· : °ø°ÝÀÇ ¿¹¼ú" Ã¥À¸·Î È¥ÀÚ °øºÎÇϰí ÀÖ´Â ÇлýÀÔ´Ï´Ù. ¹öÆÛ ¿À¹öÇ÷ο츦 °øºÎÇÏ´Ùº¸´Ï ¸·È÷´Â ºÎºÐÀÌ ÀÖ¾î ÀÌ Ã¥À» °¡Áö°í ÀÌÀü¿¡ °øºÎÇϼ˴ø ºÐµéÀÇ Á¶¾ðÀ» ¾ò°íÀÚ Áú¹®À» ¿Ã¸³´Ï´Ù.

Á¦°¡ ¸·È÷´Â ºÎºÐÀº ¹öÆÛ ¿À¹öÇ÷οì éÅÍÀÇ exploit_notesearch ÇÁ·Î±×·¥ÀÔ´Ï´Ù. Àú´Â ÀÌ ÇÁ·Î±×·¥À» ¹öÆÛ ¿À¹ö ÇÃ·Î¿ì ½Ãų ¾Æ±Ô¸ÕÆ®¸¦ Á¦ÀÛÇϰí notesearch·Î º¸³»´Â ÇÁ·Î±×·¥À¸·Î ÀÌÇØÇϰí ÀÖ½À´Ï´Ù. notesearch·Î º¸³»°í ³ª¸é char searchstring[100]º¯¼ö¸¦ ÀÌ¿ëÇÏ¿© notesearchÀÇ mainÀÌ returnµÇ´Â ÁÖ¼Ò¸¦ shell code°¡ ÀúÀåµÈ ÁÖ¼Ò(Á¤È®È÷´Â NOP½ä¸ÅÀÇ ÀϺÎ)·Î ¸®ÅϽÃŰ´Â ¹æ½ÄÀ¸·Î ÇÁ·Î±×·¥ ÁøÇà ¹æÇâÀ» ½©ÄÚµå·Î ¹Ù²ã¼­ ·çÆ® ±ÇÇÑÀ» ȹµæ ÇÑ´Ù°í ¾Ë°í ÀÖ½À´Ï´Ù. ±×·±µ¥, ºí·Î±×ÀÇ ¼³¸í°ú Ã¥ÀÇ ¼³¸íÀ» º¸¸é ¸®ÅÏ ÁÖ¼Ò¸¦ exploit_notesearchÀÇ mainÇÔ¼öÀÇ ½ºÅØÇÁ·¹ÀÓ¿¡ ÀÖ´Â i¸¦ ÀÌ¿ëÇÏ¿© ¾ò½À´Ï´Ù. Á¦°¡ ÀÌÇØÇϱâ·Î´Â exploit_notesearch°ú notesearch´Â ¼­·Î ´Ù¸¥ ÇÁ·Î¼¼½º´Ï±î ¼­·Î ´Ù¸¥ ¸Þ¸ð¸® ¿µ¿ªÀ» °¡Áö°í Àִµ¥ ±×·¸´Ù¸é ¸®ÅÏÇÏ´Â ÁÖ¼Ò¸¦ exploit_notesearchÀÇ ½ºÅØÇÁ·¹ÀÓ¿¡ ÀÖ´Â i¸¦ ±âÁØÀ¸·Î ¸¸µå´Â °ÍÀÌ ¾Æ´Ï¶ó notesearchÀÇ ½ºÅØÇÁ·¹ÀÓ¿¡ ÀÖ´Â ¾î¶² º¯¼ö¸¦ ±âÁØÀ¸·Î ¸¸µé¾î¾ß Çϴ°ÍÀÌ ¾Æ´Ñ°¡ »ý°¢Çߴµ¥ À̺κÐÀÌ ´Þ¶ó¼­ Á» Çò°¥¸³´Ï´Ù. ±×·¡¼­ »ý°¢Çغ»°ÍÀÌ ¾îÂ÷ÇÇ notesearch ÇÁ·Î±×·¥ÀÇ ½ºÅؾîµò°¡¿¡ ÀÖÀ» NOP½ä¸ÅÀÇ ÁÖ¼Ò¸¦ exploit_notesearchÇÁ·Î±×·¥ÀÇ ½ºÅØ¿¡ ÀÖ´Â iÀÇ ÁÖ¼Ò¿¡¼­ ¿ÀÇÁ¼ÂÀ» ´ëÃæ »©°¡¸é¼­ ¶§·Á¸ÂÃç Âï¾îº¸´Â°ÍÀº ¾Æ´Ñ°¡ »ý°¢À» ÇØ”f´Âµ¥ ÀÌ°Ô ¸Â´Â ÃßÃøÀΰ¡¿ä? ¸¸¾à ÀÌ ÃßÃøÀÌ ¸Â´Ù¸é Ȥ½Ã¶óµµ notesearchÇÁ·Î±×·¥ ¾îµò°¡¿¡ ÀÖÀ» NOP½ä¸ÅÀÇ ÁÖ¼Ò°¡ exploit_notesearchÀÇ iº¸´Ù ³ôÀº ÁÖ¼Ò¿¡ ÀÖ´Â °æ¿ì´Â i¿¡¼­ offsetÀ» »©°¡¸é¼­ »óÀ§ ½ºÅØÀ¸·Î ã¾Æ°¡´Â°ÍÀÌ Çê¼ö°í°¡ µÇ´Âµ¥ ÀÌ ºÎºÐÀº ¾î¶»°Ô »ý°¢ÇϽôÂÁöµµ ±Ã±ÝÇÕ´Ï´Ù.

Ãß°¡ÀûÀ¸·Î ½ÇÁ¦·Î gdb·Î exploit_notesearchÀÇ ¸Þ¸ð¸®¸¦ °Ë»çÇØº» °á°ú NOP½ä¸Å°¡ ÀÖ´Â ¸®ÅÏÁÖ¼Ò·Î 0xbffff6e6À» ›§´Âµ¥ notesearchºÐ¼®°á°ú 0xbffff6e6Àº ½ÇÁ¦·Î searchstringº¸´Ùµµ ¾Õ¿¡ ÀÖ´Â ÁÖ¼Ò¿´½À´Ï´Ù(searchstring Àº 0xbffff760¿¡ Á¸Àç). µû¶ó¼­ 0xbffff6e6À¸·Î ¸®ÅÏÇØ¹ö¸®¸é NOP½ä¸Å¸¦ ¸¸³¯¼ö ¾ø´Âµ¥ ÀÌ°Ô ¾î¶»°Ô µÈ°É±î¿ä?

ÀÛÀº Á¶¾ðÀÌ¶óµµ ÇØÁÖ½Ã¸é °¨»çÇϰڽÀ´Ï´Ù. ÀÌ Àǹ®ÀÌ Ç®¸®Áö ¾Ê¾Æ 4Àϰ ¸Ó¸´¼Ó¿¡¼­ ÀÌ »ý°¢¸¸ ÇÕ´Ï´Ù. ÀÛÀº Á¶¾ðÀÌ¶óµµ ÀÌ ºÎºÐÀ» µ¹ÆÄÇϴµ¥ Å« µµ¿òÀÌ µÉ°Í °°½À´Ï´Ù. ÀоîÁּż­ °¨»çÇÕ´Ï´Ù.

  Hit : 4481     Date : 2013/07/15 12:17



    
manorgass NOP°¡ overflowµÈ memory address´Â exploit_notesearchÀÇ iº¸´Ù ³ôÀº ÁÖ¼Ò¿¡ ÀÖÀ» ¼ö ¾ø½À´Ï´Ù.

ÇØ´ç ¿¹Á¦¿¡¼­ notesearch ÇÁ·Î±×·¥Àº exploit_notesearch.c ¾ÈÀÇ systemÇÔ¼ö¿¡ ÀÇÇØ È£ÃâµË´Ï´Ù.

stack ±¸Á¶»ó ³ôÀºÁÖ¼Ò -> ³·ÀºÁÖ¼Ò ·Î Å©±â¸¦ È®Àå½ÃÄÑ °¡¹Ç·Î ´ç¿¬È÷ exploit_notesearch°¡ »ç¿ëÁßÀÌ´ø stackÀÇ ²À´ë±â Áï, esp register°¡ °¡¸®Å°°í ÀÖ´Â ÁÖ¼Ò¸¦ ¹Ù´ÚÀ¸·Î ÀÛ¾ÆÁö´Â ÇüÅ·Π¸Þ¸ð¸®¿¡ ÀûÁ¦µÉ °ÍÀÔ´Ï´Ù. µû¶ó¼­ notesearchÀÇ ¸â¹öº¯¼öµéÀº ¸ðµÎ exploit_notesearchÀÇ Áö¿ªº¯¼öÀÎ unsigned int i º¸´Ù ³·Àº ÁÖ¼Ò¿¡ À§Ä¡ÇÏ°Ô µÇ´Â °ÍÀÌÁÒ.
2013/07/15  
manorgass ¼³¸íÀÌ ºÎÁ·ÇÏ´Ù¸é manorgass@gmail.comÀ¸·Î ¸ÞÀÏ ÁÖ¼¼¿ä. ÀÌÇØÇÏ½Ç ¼ö ÀÖµµ·Ï µµ¿òµå¸®°Ú½À´Ï´Ù. 2013/07/15  
·¥±ï´Â³ëÀÎ ¸ÞÀÏ µå·È½À´Ï´Ù. 2013/07/15