CET¶ó´Â ±â¼ú óÀ½ ¼±º¸¿©...¸Þ¸ð¸® Ãë¾àÁ¡ ÀͽºÇ÷ÎÀÕ ÇÏ´Â ÇàÀ§ ¾î·Æ°Ô ¸¸µé¾î
[º¸¾È´º½º ¹®°¡¿ë ±âÀÚ] ÀÎÅÚÀÌ »õ·Î¿î CPU ÃþÀ§ÀÇ º¸¾È ±â´ÉÀ» °ø°³Çß´Ù. ¹öÆÛ ¿À¹öÇÃ·Î¿ì µî ¸Þ¸ð¸® °ü·Ã Ãë¾àÁ¡µéÀ» ¾Ç¿ëÇÏ´Â À§ÇùÀ¸·ÎºÎÅÍ ¾ÛÀ» º¸È£Çϱâ À§ÇØ ¸¶·ÃµÈ °ÍÀ̶ó°í ÇÑ´Ù. ÀÌ º¸¾È ±â¼úÀº ¡®Á¦¾î È帧 ½ÃÇà ±â¼ú(control-flow enforcement technology, CET)¡¯À̶ó°í Çϸç, ŸÀÌ°Å ·¹ÀÌÅ©(Tiger Lake)¶ó´Â ¸ð¹ÙÀÏ ÇÁ·Î¼¼¼¸¦ ÅëÇØ ¼±º¸ÀÏ ¿¹Á¤À̶ó°í ÇÑ´Ù.
[À̹ÌÁö = utoimage]
ÀÎÅÚÀÇ Å¬¶óÀ̾ðÆ® ÄÄÇ»Æà ºÎ¹® ºÎȸÀåÀÎ Åè °³¸®½¼(Tom Garrison)Àº CET¿¡ ´ëÇØ ¡°Á¦¾î È帧 ÇÏÀÌÀçÅ·À̶ó°í ºÐ·ùµÇ´Â À¯ÇüÀÇ °ø°ÝÀ» ¸·´Â ±â¼ú¡±À̶ó°í ¼³¸íÇÑ´Ù. ¡°Á¦¾î È帧 ÇÏÀÌÀçÅ·(control-flow hijacking)Àº ¿©·¯ ¸Ö¿þ¾î°¡ Â÷¿ëÇÏ°í ÀÖ´Â ±â¼ú·Î, Äڵ尡 ÀÛ¼ºµÇ°í ½ÇÇàµÇ´Â ¹æ½Ä ÀÚü¸¦ °ø·«ÇØ ÀüÇô ¾û¶×ÇÑ °á°ú¹°ÀÌ ³ª¿Àµµ·Ï ÇÏ´Â °ÍÀÔ´Ï´Ù.¡±
ÀÌ·± ¡®Á¦¾î È帧 ÇÏÀÌÀçÅ·¡¯ °ø°ÝÀÇ ¶Ç ´Ù¸¥ Ư¡Àº ŽÁö°¡ Èûµé´Ù´Â °ÍÀÌ´Ù. ¿À¸®Áö³Î ÄÚµå, Áï ¹é½Å µîÀÌ ¡®¾ÈÀüÇÏ´Ù¡¯°í ÆÇ´ÜÇÏ´Â Äڵ带 °ø°ÝÀÚ ÀÔ¸À´ë·Î ¾Ç¿ëÇÏ´Â °ÍÀ̹ǷΠ¡®¾Ç¼º¡¯À¸·Î ŽÁöµÇÁö ¾Ê´Â °æ¿ì°¡ ´ëºÎºÐÀÌ´Ù. ¡°¼ÒÇÁÆ®¿þ¾î ÃþÀ§¿¡¼ ŽÁö¸¦ ½Ç½ÃÇÏ¸é °á°ú°¡ ½ÅÅëÄ¡ ¾Ê½À´Ï´Ù. ±×·¡¼ CPU Ĩ¼Â ÃþÀ§¿¡¼ºÎÅÍ º¸È£¸¦ ½ÃÀÛÇÏ´Â °ÍÀÌÁÒ.¡±
CET´Â µÎ °¡Áö ±â¼úµéÀ» »ç¿ëÇØ ¡®Á¤»óÀû¡¯ÀÎ Äڵ尡 ¡®Á¦¾î È帧 °ø°Ý¡¯¿¡ ¾Ç¿ëµÇÁö ¾Êµµ·Ï ÇÑ´Ù. Çϳª´Â ¡®°£Á¢ ºÐ±â ÃßÀû(indirect branch tracking)¡¯ÀÌ°í ´Ù¸¥ Çϳª´Â ¡®±×¸²ÀÚ ½ºÅÃ(shadow stack)¡¯ÀÌ´Ù. ¡®°£Á¢ ºÐ±â ÃßÀû¡¯Àº ¡°Äڵ尡 ½ÇÇàµÇ°í, ÄÚµå ³» ´Ù¸¥ ¿µ¿ªÀ¸·Î °Ç³Ê¶Ù¾î¾ß ÇÏ´Â »óȲ¿¡¼ ÃÖÁ¾ ºÐ±âÁ¡(end branch)À¸·Î µµ´ÞÇϵµ·Ï ²Ù¹Ì´Â °Í¡±À» ¸»ÇÑ´Ù.
°³¸®½¼Àº ÀÌ¿¡ ´ëÇØ ´ÙÀ½°ú °°ÀÌ ¼³¸íÇÑ´Ù. ¡°¿¬²ÉÀÌ ÇǾî ÀÖ´Â ¿¬¸øÀ» »ó»óÇغ¸¼¼¿ä. ´ç½ÅÀÌ °³±¸¸®¶ó¸é, ¿¬²ÉÀÙ¿¡¼ ¿¬²ÉÀÙÀ¸·Î ¶Ù¾î´Ù´Ò ¼ö ÀÖ°ÚÁÒ. ¿¬²ÉÀÌ ¾ø´Â °÷À¸·Î ¶Ù¾îµéÁö´Â ¾ÊÀ» °Å¿¡¿ä. ¹°¼ÓÀ¸·Î µé¾î°¡°íÀÚ ÇÏ´Â °Ô ¿ø·¡ Àǵµ°¡ ¾Æ´Ï¶ó¸é¿ä. ¿¬²ÉÀÙ À§·Î ¶Ù´Â µ¿ÀÛÀ» Çߴµ¥, »ç½Ç °Å±â ¾Æ¹«°Íµµ ¾ø´Â »óȲÀ̶ó¸é CPU°¡ À̸¦ °ð¹Ù·Î ŽÁöÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù.¡±
¡®±×¸²ÀÚ ½ºÅá¯Àº °ø°ÝÀÚµéÀÌ ¡®º¹±Í ÁÖ¼Ò¡¯¶ó°í ¾Ë·ÁÁø Á¤º¸¸¦ °¡·Îä°í, À̸¦ °ø°ÝÀÚ°¡ ¿øÇÏ´Â ÁÖ¼Ò·Î ¹Ù²ãÄ¡±â ÇÏ´Â À¯ÇôÀ¸ÀÌ ¸Þ¸ð¸® °ø°ÝÀ» ´Ù·ç±â À§ÇØ ¸¸µé¾îÁ³´Ù. ¡®±×¸²ÀÚ ½ºÅᯠ±â¼úÀº ¸ðµç º¹±Í ÁÖ¼ÒÀÇ º¹»çº»À» ÀúÀåÇÏ°í ÀÖÀ¸¸ç, µû¶ó¼ ´©±º°¡ º¹±Í ÁÖ¼Ò¸¦ Á¶ÀÛÇÒ ¶§ °ð¹Ù·Î ¾Ë¾Æç ¼ö ÀÖ°Ô µÈ´Ù°í ÇÑ´Ù.
°³¸®½¼Àº ºí·Î±×¸¦ ÅëÇØ ¡°ÀÌ·± À¯ÇüÀÇ °ø°ÝÀº ÁÖ·Î ½ºÅà ¹öÆÛ ¿À¹öÇ÷ο쳪 UaF, ¸Þ¸ð¸® º¯ÇüÀ» À¯¹ßÇÏ´Â ¸Ö¿þ¾î¸¦ ÅëÇØ ¹ß»ýÇÑ´Ù¡±¸ç ¡°Æ®·»µå ¸¶ÀÌÅ©·Î(Trend Micro)ÀÇ Á¦·Îµ¥ÀÌ À̴ϼÅƼºê(ZDI)¸¦ ÅëÇØ ¹ß°ßµÈ 1100¿© °³ÀÇ Á¦·Îµ¥ÀÌ Ãë¾àÁ¡µé Áß ¾à 60%°¡ ÀÌ À¯Çü¿¡ ÇØ´çÇÑ´Ù¡±°í °Á¶Çß´Ù.
ÀÎÅÚÀÌ CET »ç¾çÀÌ ±âÀçµÈ ¹é¼¸¦ ¹ßÇ¥ÇÑ °Ç ÀÌ¹Ì 2016³âÀÇ ÀÏÀÌ´Ù. ±× ÈÄ ÀÎÅÚÀº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿ÍÀÇ Çù¾÷À» ÅëÇØ À©µµ¿ì 10°ú °³¹ßÀÚ µµ±¸µé¿¡ CET È°¿ë ±â¼úÀÌ Å¾ÀçµÇµµ·Ï ¸¸µé¾ú´Ù. ÀÎÅÚÀÌ Çϵå¿þ¾î·Î ¸¸µé¾î³½ ±â¼úÀ» ½ÇÁ¦ »ç¿ëÀÚ ¹× °³¹ßÀÚ È¯°æ¿¡¼ »ç¿ë °¡´ÉÇϵµ·Ï ±¸ÇöÇÏ´Â ÀÛ¾÷À» ÇÑ °ÍÀÌ´Ù. ƯÈ÷ ŸÀÌ°Å ·¹ÀÌÅ© ÇÁ·Î¼¼¼ Ãâ½Ã¿Í ¸ÂÃß±â À§ÇØ Çù¾÷À» ÁøÇàÇß´Ù°í ÇÑ´Ù.
¸¶ÀÌÅ©·Î¼ÒÇÁÆ®´Â ÀÌ¹Ì ¿ÃÇØ À©µµ¿ì 10ÀÇ ¡®Çϵå¿þ¾î °È ½ºÅà º¸È£(hardware-enforced stack protection)¡¯¶ó´Â ±â´ÉÀ» ÅëÇØ ÀÎÅÚÀÇ CET¸¦ Áö¿øÇÑ´Ù°í ¹ßÇ¥ÇÑ ¹Ù ÀÖ´Ù. CET »ç¾çÀ» °®Ãá ÀÎÅÚ Ä¨¼ÂÀ» »ç¿ëÇÏ´Â ½Ã½ºÅÛ¿¡¼¸¸ ÀÛµ¿ÇÏ´Â ±â¼ú·Î, ¸Þ¸ð¸® Ãë¾àÁ¡°ú °ü·ÃµÈ À§ÇèÀ» ¿ÏȽÃŲ´Ù°í ´ç½Ã MS´Â ¼³¸íÇß¾ú´Ù.
3ÁÙ ¿ä¾à
1. ÀÎÅÚ, ŸÀÌ°Å ·¹ÀÌÅ©¶ó´Â Ĩ¼Â »õ·Ó°Ô Ãâ½ÃÇÏ¸é¼ Çϵå¿þ¾î º¸¾È ±â´É ¹ßÇ¥.
2. ÀÌ Çϵå¿þ¾î¿¡´Â CET¶ó´Â ¾ÖÇø®ÄÉÀÌ¼Ç º¸È£ ±â´ÉÀÌ Å¾ÀçµÇ¾î ÀÖÀ½.
3. ¸Þ¸ð¸® Á¶ÀÛÇØ ¾ÖÇø®ÄÉÀ̼ÇÀ» °ø°ÝÇÏ´Â ÇàÀ§¿¡ ´ëÇÑ Çϵå¿þ¾î Â÷¿øÀÇ º¸È£ ÀÌ·ïÁú µí.
[±¹Á¦ºÎ ¹®°¡¿ë ±âÀÚ(globoan@boannews.com)]
<ÀúÀÛ±ÇÀÚ: º¸¾È´º½º(www.boannews.com) ¹«´ÜÀüÀç-Àç¹èÆ÷±ÝÁö>