Ã¥¼Ò°³
ÇÁ·ÎÅ佺Ÿ´Â ½Ã½ºÅÛ ÇØÅ· ÀÔ¹®ÀÚ¸¦ À§ÇÑ ¿¹Á¦ ¹®Á¦ÀÔ´Ï´Ù. ´ëȸ ¹®Á¦¸¦ ÀÔ¹®Çϱâ Àü¿¡ ´Ù¾çÇÑ ÇÁ·Î±×·¥ Ãë¾àÁ¡°ú ºÐ¼® ÇÁ·Î±×·¥À» ½Ç½ÀÇϱâ ÁÁÀº ȯ°æÀÔ´Ï´Ù. ¼öÁغ°·Î ·¹º§1ºÎÅÍ Çϳª¾¿ ¿Ã¶ó°¡±â¿¡ ºÎ´ãÀÌ ´úÇÕ´Ï´Ù. ½ÇÁ¦ ´Ù¸¥ CTF ´ëȸ¿¡ ÃâÁ¦µÇ´Â ¹®Á¦µéÀº ¼öÁØÀÌ »ó´çÈ÷ ³ô½À´Ï´Ù. ´ëȸ¸¦ ÅëÇØ ¿ì½ÂÀÚ¸¦ °¡·Á³»¾ß Çϱ⠶§¹®ÀÔ´Ï´Ù. ÀÌ ¹®Á¦µéÀ» Çϳª¾¿ ÇØ°áÇØ ³ª°¡¸é ÇØÅ· ´ëȸ¿Í CTF¿¡ Âü¿©Çϱâ À§ÇÑ ±âÃÊ Áö½ÄÀ» ÇнÀÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÇÁ·ÎÅ佺Ÿ°¡ CTF¸¦ µ½´Â´Ù´Â ¸éµµ ÀÖÁö¸¸ ½ÇÁ¦ ȯ°æ¿¡¼ ¸¹Àº ¹ö±×µéÀÌ À¯»çÇÑ ¹æ½ÄÀ¸·Î ³ªÅ¸³³´Ï´Ù. ÃÖ±Ù¿¡ µîÀåÇÏ´Â ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡µéµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. 2018³â¿¡ ¹ß»ýÇÑ PDF Ãë¾àÁ¡ CVE-2018-8120°ú CVE-2018-4990ÀÇ µÎ Ãë¾àÁ¡À» »ç¿ëÇÑ °ø°ÝÀº ´ëÇ¥ÀûÀÎ »ç·ÊÀÔ´Ï´Ù. ³»ºÎÀûÀ¸·Î Èü ½ºÇÁ·¹ÀÌ, ´õºíÇÁ¸®¹ö±×(DFB), ROP¿Í °°Àº ±â¼úµéÀÌ ¾²¿´´Âµ¥ ½ÇÁ¦ ÇÁ·Î±×·¥À» ºÐ¼®ÇÏ¸é¼ ÇнÀÇϱâ´Â ³Ê¹« ¾î·Á¿î ±â¹ýµéÀÔ´Ï´Ù. ¹Ù·Î ½ÇÀüÀ¸·Î µ¹ÀÔÇÏ°Ô µÇ¸é ÇÁ·Î±×·¥ÀÇ ±¸¼º ³À̵µ ¶§¹®¿¡ ºÐ¼®Àº Ä¿³ç ¾Æ¹«°Íµµ ÇÏÁö ¸øÇÒ °¡´É¼ºÀÌ ³ô½À´Ï´Ù. ÀÌ·¯ÇÑ ºÐ¼®À» Çϱâ Àü¿¡ ¹Ýµå½Ã °¢°¢ÀÇ ±â¼úµé¿¡ ´ëÇÑ ½Éµµ ±íÀº ½Ç½À°ú ÀÌÇØ°¡ ÇÊ¿äÇÕ´Ï´Ù. ¹°·Ð ÇÁ·ÎÅ佺Ÿ´Â Èü ½ºÇÁ·¹ÀÌ, ´õºíÇÁ¸®¹ö±×, ROP¿Í°°Àº ±â¼úÀ» ¸ðµÎ ¹è¿ï ¼ö ÀÖ´Â ÁÁÀº ÇнÀ ÇöÀåÀÔ´Ï´Ù.
¸ñÂ÷
01 ÇÁ·ÎÅ佺Ÿ µé¾î°¡±â 12
1.1 ÇÁ·ÎÅ佺Ÿ ½Ã½ºÅÛ ÇØÅ·ÀÇ ÀÔ¹®À» µ½´Â´Ù! 12
1.2 ÇÁ·ÎÅ佺Ÿ Âü°í »çÀÌÆ® 16
1.3 ÇÊ¿ä ¼±¼ö Áö½Ä 17
02 ÇÁ·ÎÅ佺Ÿ ȯ°æ ¼³Á¤ 18
2.1 VM¿þ¾î Ç÷¹À̾î 15 ¼³Ä¡ 18
2.2 ÇÁ·ÎÅ佺Ÿ ¼³Ä¡ 23
2.3 ¹ÝµðÁý ¼³Ä¡ 33
2.4 Ä®¸® ¸®´ª½º ¼³Ä¡ 35
2.5 ¸®´ª½º ¸í·É¾î ±âÃÊ 40
2.6 Putty ¼³Ä¡ 44
2.7 »ùÇà ÆÄÀÏ È¯°æ ¼³Á¤ 49
03 ¾î¼Àºí¸®¾î ¾ð¾î ÀÌÇØ 56
04 GDB ±âÃÊ 69
4.1 gdb¶õ? 69
4.2 gdb ½Ç½À 70
05 stack0 ? ÇØÅ·ÀÇ ½ÃÀÛ 80
5.1 ¼Ò½ºÄÚµå ºÐ¼® 81
5.2 GDB ºÐ¼® 86
5.3 Ãë¾àÁ¡ ºÐ¼® 92
06 stack1 ? Á¤È®ÇÏ°Ô ÀÎÁõÇϱâ 101
6.1 ¼Ò½ºÄÚµå ºÐ¼® 101
6.2 GDB ºÐ¼® 103
6.3 Ãë¾àÁ¡ ºÐ¼® 110
07 ¸®´ª½º Exploit µµ¿ì¹Ì peda 118
7.1 °ø°ÝÀ» µµ¿ÍÁÖ´Â peda 118
7.2 peda »ç¿ë¹ý 119
08 stack2 ? ȯ°æº¯¼ö ¿À¹öÇ÷Π125
8.1 ¼Ò½ºÄÚµå ºÐ¼® 125
8.2 GDB ºÐ¼® 127
8.3 Ãë¾àÁ¡ ºÐ¼® 133
09 ÆùÅø(pwn-tools)À» »ç¿ëÇÑ °ø°Ý ÄÚµå ±¸¼º 141
10 stack3 ? ½ÇÇà È帧 º¯Á¶ 146
10.1 ¼Ò½ºÄÚµå ºÐ¼® 146
10.2 GDB ºÐ¼® 148
10.3 Ãë¾àÁ¡ ºÐ¼® 153
11 stack4 ? Return To Library(RTL) 159
11.1 ¼Ò½ºÄÚµå ºÐ¼® 161
11.2 GDB ºÐ¼® 163
11.3 Ãë¾àÁ¡ ºÐ¼® 165
12 stack5 ? ¿À¹öÇ÷θ¦ È°¿ëÇÑ ¼ÐÄÚµå ½ÇÇà 171
12.1 ¼Ò½ºÄÚµå ºÐ¼® 172
12.2 GDB ºÐ¼® 173
12.3 ¼ÐÄڵ带 ½ºÅÿ¡ »ðÀÔÇÏ´Â ±â¹ý 176
12.4 ¸®ÅÏ Åõ ¶óÀ̺귯¸®(return to lib) ±â¹ý 191
13 stack6 - ret üũ ¿ìȸ 199
13.1 ¼Ò½ºÄÚµå ºÐ¼® 199
13.2 GDB ºÐ¼® 202
13.3 Ãë¾àÁ¡ ºÐ¼® 208
14 stack7 ? ROP ÀÔ¹® 215
14.1 ¼Ò½ºÄÚµå ºÐ¼® 215
14.2 GDB ºÐ¼® 216
14.3 ROP RTL ±â¹ýÀ» È°¿ëÇÑ Exploit 222
14.4 Jmp Esp ±â¹ýÀ» È°¿ëÇÑ Exploit 230