¿¬ÃʺÎÅÍ ÀÎÅÚÀÇ CPU °ÔÀÌÆ®°¡ IT¾÷°è¸¦ °Å¸ÇÑ °¡¿îµ¥, ÀÎÅÚ ¹× ÀÏ°¢¿¡¼ ÀÌ¹Ì 9ÀÏ °ø½Ä ¹ßÇ¥¸¦ ÁغñÁßÀ̾ú´Ù´Â ÁÖÀåÀÌ Á¦±âµÆ´Ù.
ƯÈ÷ ÀÌ°°Àº ÁÖÀåÀº ÀÎÅÚ »Ó¸¸ ¾Æ´Ï¶ó AMD, ARM ±×¸®°í CPU¸¦ žÀçÇÏ´Â °¢Á¾ ¼¹ö¾÷ü µî ¼öõ°³ ȸ»ç µîÀÌ °°Àº ³»¿ëÀ» °øÀ¯ÇÏ°í ÀÖ¾ú´ø °ÍÀ¸·Î ¾Ë·ÁÁ®, ³í¶õÀÌ È®»ê ÁßÀÌ´Ù.
¡ß»ç°ÇÀÇ ÁÖ¿ä ³»¿ëÀº = Áö³ 3ÀÏ(ÀÌÇÏ ÇöÁö½Ã°£) ¿µ±¹ ITÀü¹® ¸Åü ·¹Áö½ºÅÍ´Â ÀÎÅÚ x86 ÇÁ·Î¼¼½º ĨÀÇ ‘Ä¿³Ú ¸Þ¸ð¸®’¿¡ °áÇÔÀÌ ÀÖ´Â °ÍÀ¸·Î ³ªÅ¸³µ°í, ÀÌ °áÇÔÀº ‘¸áÆ®´Ù¿î(Meltdown)’°ú ‘½ºÆåÅÍ(Spectre)’·Î ¸í¸íµÈ µÎ °¡Áö¶ó°í ¹àÇû´Ù.
‘¸áÆ®´Ù¿î’Àº ÄÄÇ»ÅÍ¿¡¼ ½ÇÇàµÇ´Â ÇÁ·Î±×·¥ÀÌ ¿î¿µÃ¼Á¦ÀÇ Áß¾Ó ¸Þ¸ð¸®¿¡ Á¢±ÙÇØ ¾×¼¼½º ±ÇÇÑÀÌ ¾ø´Â µ¥ÀÌÅÍ¿¡ Á¢±ÙÇÏ´Â °ÍÀ» °¡´ÉÄÉ ÇÑ´Ù. ¿î¿µÃ¼Á¦ ÆÐÄ¡·Î ¼öÁ¤ÀÌ °¡´ÉÇÏ´Ù.
‘½ºÆåÅÍ’´Â ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼°¡ ÄÄÇ»ÅÍÀÇ ¸Þ¸ð¸®ÀÇ Àüü¸¦ º¼ ¼ö ÀÖµµ·Ï ÇÁ·Î±×·¥ÀÇ Á¢¼ÓÀ» Çã¿ëÇϸç, ÀÌ·Î ÀÎÇؼ Àüü ÄÄÇ»ÅÍÀÇ ³»¿ë¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù
ÀÎÅÚÄÚ¸®¾Æ °ü°èÀÚ´Â “ÀÌ º¸¾È Ãë¾àÁ¡Àº ¿ÜºÎ¿¡¼ µ¥ÀÌÅ͸¦ º¼ ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù, ´ÜÁö °üÂû¸¸ ÇÒ ¼ö ÀÖ´Â °ÍÀÌÁö, CPU ±â´ÉÀ» ¹Ù²Ù°Å³ª ¹¶°¶ ¼ö´Â ¾ø´Ù”¸ç “¿¹¸¦ µé¾î, ¿·ÁýÀÌ ¸ÅÀÏ ¾Æħ 6½Ã¿¡ ºÒÀÌ ÄÑÁö°í ²¨Á³´Ù°¡ ´Ù½Ã ¿ÀÈÄ 6½Ã¿¡ ºÒÀÌ ÄÑÁö´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù´Â ¾ê±â´Ù. ¹°·Ð À̸¦ ¾Ç¿ëÇÏ¸é ¿·Áý »ç¶÷ÀÌ ¾ø´Â Æ´À» Ÿ µµµÏÁúÇÒ °¡´É¼ºÀÌ ÀÖ´Ù”°í ¹ö±× ³»¿ëÀ» ¼³¸íÇß´Ù.
¡ß»ç°ÇÀÇ ¹ß´ÜÀº = ÀÌ »ç°ÇÀº 2017³â 6¿ù·Î °Å½½·¯ ¿Ã¶ó°£´Ù.
±¸±Û ‘ÇÁ·ÎÁ§Æ® Á¦·ÎÆÀ’ ¿£Áö´Ï¾î°¡ ¹®Á¦¸¦ ¹ß°ßÇÏ°í ÀÎÅÚ, AMD, ARM µî CPU Á¦Á¶¾÷ü¿¡°Ô º¸¾È °áÇÔ »ç½ÇÀ» ¾Ë·È´Ù.
<2017³â 6¿ù ±¸±Û ‘ÇÁ·ÎÁ§Æ® Á¦·ÎÆÀ’ÀÇ ¹ßÇ¥³»¿ë>
|
¿ì¸®(±¸±Û ÇÁ·ÎÁ§Æ® Á¦·ÎÆÀ)´Â CPU µ¥ÀÌÅÍ Ä³½Ã ŸÀ̹ÖÀÌ À߸øµÈ ÃßÃø ½ÇÇàÀ¸·ÎºÎÅÍ Á¤º¸¸¦ È¿À²ÀûÀ¸·Î À¯ÃâÇϴµ¥ ¾Ç¿ëµÉ ¼ö ÀÖ´Ù´Â °ÍÀ» ¹ß°ßÇß´Ù.
ÀÌ´Â ÃÖ¾ÇÀÇ °æ¿ì ´Ù¾çÇÑ ¹®¸Æ ³» ·ÎÄà º¸¾È °æ°è¸¦ µû¶ó ÀÓÀÇÀÇ °¡»ó ¸Þ¸ð¸®¸¦ Àд Ãë¾àÁ¡ÀÌ µÈ´Ù´Â °ÍÀ» ¾Ë°Ô µÆ´Ù.
ÇöÀç ¸¹Àº ÇÁ·Î¼¼¼¿¡ ¿µÇâÀ» ³¢Ä¡´Â °ÍÀ¸·Î ¾Ë·ÁÁ® ÀÖ´Ù. ÀÌ´Â ÀÎÅÚ, AMD, ±×¸®°í ARMÀÇ Æ¯Á¤ ÇÁ·Î¼¼¼µµ Æ÷ÇÔÇÑ´Ù.
¸î¸î ÀÎÅÚ°ú AMD CPU ¸ðµ¨¿¡¼ ¿ì¸®´Â ÀÌ ÀÛ¾÷À» ½ÇÁ¦ ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇØ ½ÃµµÇØ ºÃ´Ù. ¿ì¸®´Â ÀÌ À̽´¸¦ ÀÎÅÚ, AMD ±×¸®°í AMD¿¡ 2017³â 6¿ù 1ÀÏ¿¡ º¸°íÇß´Ù.
ÇöÀç±îÁö, ÀÌ À̽´¿Í °ü·ÃÇØ 3°¡Áö ¾Ë·ÁÁø º¯Á¾µéÀÌ Á¸ÀçÇÑ´Ù.
- º¯Á¾ 1: °æ°è °Ë»ç ¿ìȸ (CVE-2017-5753)
- º¯Á¾ 2: ºê·£Ä¡ ¸ñÇ¥ »ðÀÔ (CVE-2017-5715)
- º¯Á¾ 3: À߸øµÈ µ¥ÀÌÅÍ Ä³½Ã ·Îµå (CVE-2017-5754)
- Spectre (º¯Á¾ 1°ú 2)
- Meltdown (º¯Á¾ 3)
ÀÌ¿¡ µû¶ó ¿ì¸®ÀÇ ¿¬±¸¸¦ ¼öÇàÇÏ´Â °úÁ¤¿¡¼ ´ÙÀ½ÀÇ PoC¸¦ °³¹ßÇß´Ù.
1. ÀÎÅÚ ÇϽºÀ£ Á¦¿Â(Intel Haswell Xeon) CPU, AMD FX CPU, AMD PRO CPU ±×¸®°í ARM Cortex A57 Å×½ºÆ®º£µå »ó »ç¿ëÀÚ °ø°£ ³» º¯Á¾ 1 µÚÀÇ ±âº» ¿ø¸®¸¦ º¸¿©ÁÖ´Â PoC.
ÀÌ PoC´Â ¿ÀÁ÷ µ¿ÀÏÇÑ ÇÁ·Î¼¼½º ³»¿¡¼ À߸ø ÃßÃøµÈ ½ÇÇà ³»ÀÇ µ¥ÀÌÅ͸¦ ÀÐÀ» ¼ö ÀÖ´ÂÁö °Ë»çÇß´Ù.
2. º¯Á¾ 1¿¡ ´ëÇÑ PoC.
ÇöÀç ¸®´ª½º Ä¿³Î ÇÏÀÇ ÀÏ¹Ý »ç¿ëÀÚ ±ÇÇÑÀ¸·Î ±¸µ¿µÉ ¶§ ÀÎÅÚ ÇϽºÀ£ Á¦¿Â(Intel Haswell Xeon) CPU »ó Ä¿³Î °¡»ó ¸Þ¸ð¸®¿¡¼ 4GB ¸Þ¸ð¸®¸¦ ÀÓÀÇ·Î ÀÐÀ» ¼ö ÀÖ´Ù.
¸¸¾à Ä¿³ÎÀÇ BPF JIT°¡ °¡´ÉÇÏ´Ù¸é (ÀÌ´Â ±âº» ¼³Á¤ÀÌ ¾Æ´Ô), ÀÌ ¶ÇÇÑ AMD PRO CPU¿¡¼µµ °¡´ÉÇÏ´Ù.
ÀÎÅÚ ÇϽºÀ£ Á¦¿Â CPU¿¡¼, Ä¿³Î °¡»ó ¸Þ¸ð¸®´Â óÀ½ ¾à 4ÃÊ ÈÄ¿¡ ÃÊ´ç 2000¹ÙÀÌÆ® ¼Óµµ·Î ÀÐÀ» ¼ö ÀÖ´Ù.
3. º¯Á¾ 2¿¡ ´ëÇÑ PoC.
ÀÎÅÚ ÇϽºÀ£ Á¦¿Â CPU¿¡¼ °¡»ó ¸Å´ÏÀú¸¦ »ç¿ë, ¸¸µé¾îÁø KVM °Ô½ºÆ® ³»¿¡¼ ·çÆ® ±ÇÇÑÀ¸·Î µ¹¶§, È£½ºÆ® »ó¿¡¼ µµ´Â µ¥ºñ¾ÈÀÇ Æ¯Á¤ ¹öÀü°ú ÇÔ²², ¿ÀÁ÷ ÃÊ´ç ¾à 1500 ¹ÙÀÌÆ®ÀÇ ¼Óµµ·Î Ä¿³Î ¸Þ¸ð¸®¸¦ ÀÐÀ» ¼ö ÀÖ´Ù.
°ø°ÝÀ» ¼öÇàÇϱâ Àü¿¡, 64GBÀÇ ·¥À» °¡Áø ¸Ó½Å¿¡¼ ´ë·« 10¿¡¼ 30ºÐµ¿¾È ÃʱâÈ°¡ ¼öÇàµÅ¾ß ÇÑ´Ù.
ÇÊ¿äÇÑ ½Ã°£Àº È£½ºÆ® ·¥ÀÇ Å©±â¿¡ µû¶ó ¼±ÇüÀ¸·Î È®ÀåµÈ´Ù. (¸¸¾à 2¸Þ°¡ÀÇ Ä¿´Ù¶õ ÆäÀÌÁö°¡ °Ô½ºÆ®¿¡ ÀÌ¿ë °¡´ÉÇÏ´Ù¸é, ÃʱâÈ´Â ´õ ºü¸¦ °ÍÀÌÁö¸¸ °Ë»çµÇÁö´Â ¾ÊÀ» °ÍÀÌ´Ù.)
4. º¯Á¾ 3¿¡ ´ëÇÑ PoC.
ÀÏ¹Ý »ç¿ëÀÚ ±ÇÇÑÀ¸·Î µ¹¸é¼ ¾î¶² »çÀü »óȲ¿¡¼ ÀÎÅÚ ÇϽºÀ£ Á¦¿Â CPU »ó Ä¿³Î ¸Þ¸ð¸®¸¦ ÀÐÀ» ¼ö ÀÖ´Ù.
¿ì¸®´Â °¡´ÉÇÑ ¿ÏÈ ¹æ½ÄÀ» ¾Ë°í ¸î °¡Áö ¾ÆÀ̵ð¾î¸¦ ÇÁ·Î¼¼¼ º¥´õ¿¡°Ô Á¦°øÇß´Ù.
±×·¯³ª ¿ì¸®´Â ÇÁ·Î¼¼¼ º¥´õµéÀÌ ¿ì¸®°¡ ¼³°èÇÏ°í Æò°¡ÇÑ ¿ÏÈ ¼ö´Üº¸´Ù ´õ ³ªÀº À§Ä¡¿¡ ÀÖ´Ù°í ¹Ï´Â´Ù.
±×¸®°í ¿ì¸®´Â ±×µéÀÌ Ã¥ÀÓÀÖ°Ô ¹®Á¦¸¦ ÇØ°áÇÒ °ÍÀ̶ó°í ±â´ëÇÑ´Ù.
¿ì¸®°¡ ÀÛ¼ºÇÑ PoC ÄÚµå¿Í ¹®¼µéÀº CPU º¥´õµé¿¡°Ô Àü´ÞÇßÀ¸¸ç ¾î´À ½ÃÁ¡ÀÌ Áö³ µÚ¿¡ °ø°³ÇÒ °ÍÀÌ´Ù.
|
CPU ¾÷üµéµµ ±¸±ÛÀÌ ¹®Á¦¸¦ Á¦±âÇÑ´ë·Î CPU º¸¾È Ãë¾àÁ¡ÀÌ ÀÖ´Ù´Â »ç½ÇÀ» ÀÎÁ¤Çß´Ù.
´Ù¸¸ ÀÎÅÚÄÚ¸®¾Æ °ü°èÀÚ´Â “¹ßÇ¥µÈ CPU º¸¾È °áÇÔÀº ¾ö¹ÐÈ÷ ¸»ÇÏ¸é °áÇÔÀÌ ¾Æ´Ï´Ù. ÃֽŠCPUÀÇ °øÁ¤¿¡¼ »ý±æ ¼ö ÀÖ´Ù. À̸¦ ‘½ºÆåÅ¥·¯Æ¼ºê ÀͽºÅ¥¼Ç(speculative execution)’À̶ó°í ¸»ÇÒ ¼ö Àִµ¥, ¿¹¸¦ µé¾î CPUÀÇ ½ÇÇà Äڵ尡 1, 2, 3, 4...½ÄÀ¸·Î ¼øÂ÷ÀûÀ¸·Î ½ÇÇàµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó 1¿¡¼ 3, 5·Î °Ç³Ê ¶Ù¾î ½ÇÇàÇÏ´Â °ÍÀÌ´Ù. ÀÌ ±â¼úÀº ¼º´ÉÀ» ³ô¿©ÁØ´Ù”°í ´Ù¼Ò ´Ù¸¥ ¼³¸íÀ» ³»³õ¾Ò´Ù.
Áï ‘½ºÆåÅ¥·¯Æ¼ºê ÀͽºÅ¥¼Ç’ ±â´ÉÀÌ Å¾ÀçµÈ CPU´Â ¸í·É¾î°¡ ½ÇÁ¦ ¼öÇàµÇ´ÂÁö ¿©ºÎ¸¦ ¾Ë±â Àü¿¡ ¸í·É¾î¸¦ ¼öÇàÇÑ´Ù.
ÀÌ ÃßÃøÀÌ Á¤È®ÇÏÁö ¾ÊÀ» °æ¿ì CPU´Â ±âÁ¸ °á·ÐÀ» Æó±âÇÏ°í ¸í·É¾î ´ë·Î CPU¸¦ ½ÇÇàÇÑ´Ù.
CPU¿¡ À̸¥¹Ù ‘¿¹Ãø±â¼ú’À» žÀçÇÑ °ÍÀ¸·Î ÀÌÇØÇÏ¸é µÈ´Ù.
ÃÖ±Ù ¾Ë·ÁÁø CPU ‘º¸¾È°áÇÔ’Àº ‘¸áÆ®´Ù¿î’°ú ‘½ºÆåÅÍ’ ÀͽºÇ÷ÎÀÕ °ø°Ý µî ¾ÇÀÇÀûÀÎ ÇØÄ¿°¡ ‘¿¹Ãø±â¼ú’À» ¾Ç¿ëÇØ ±â¼úÀûÀÎ Á¶Ä¡·Î ÄÄÇ»ÅÍ¿¡ ÀÌ»óÀ» ÀÏÀ¸Å³ ¼ö ÀÖ´Ù´Â °Ô ÁÖ¿ä ³»¿ëÀÌ´Ù.
ÀÎÅÚÄÚ¸®¾Æ °ü°èÀÚ´Â “ÀÎÅÚÀº ÀÌ¿¡ µû¶ó ¾÷°è ÁÖµµÀûÀ¸·Î ÀÌ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ ³ë·ÂÇØ¿Ô´Ù. ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ´Â µ¥´Â ºñ´Ü ÀÎÅÚ¸¸ÀÌ ¾Æ´Ï¶ó ¿î¿µÃ¼Á¦, ½Ã½ºÅÛ ¼ÒÇÁÆ®¿þ¾î µî ¸ðµç ¾÷°èÀÇ °øµ¿ ³ë·ÂÀÌ ÇÊ¿äÇ߱⠶§¹®”À̶ó°í ¹àÇû´Ù.
À̾î ÀÌ °ü°èÀÚ´Â “Æß¿þ¾î, ¹ÙÀÌ¿À½º(BIOS), CPU ¸¶ÀÌÅ©·ÎÄÚµå, ½Ã½ºÅÛ ¼ÒÇÁÆ®¿þ¾î µî ´Ù°¢µµÀÇ ¾÷µ¥ÀÌÆ®¿Í º¸¾ÈÆÐÄ¡¸¦ ÇØ¾ß ÇÏ´Â »óȲÀÌ´Ù. °ü·ÃµÈ IT¾÷üµéÀº °¢ÀÚ ¸ðµÎ ¾÷µ¥ÀÌÆ®, º¸¾ÈÆÐÄ¡ µîÀÇ ÀÛ¾÷À» ÇÏ°í ÀÖÀ¸¸ç ¿Ï·áµÈ °÷µµ ÀÖ´Ù. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®´Â À©µµ 10ÀÇ º¸¾È ÆÐÄ¡¸¦ ¸¶ÃÆ´Ù”°í µ¡ºÙ¿´´Ù.
¾Æ¿ï·¯ ÀÎÅÚÃøÀº “¿µ±¹ ·¹Áö½ºÅÍÁö´Â ±¸±Û, AWS, MS°¡ ±×·¸°Ô ¿ì·ÁÇÒ ¸¸ÇÑ »ç¾ÈÀÌ ¾Æ´Ï¶ó´Â ÈÄ¼Ó º¸µµ¸¦ ³»¸é¼ ³íÁ¶°¡ ´Ù¼Ò ¹Ù²î¾ú´Ù. ¹°·Ð ƯÁ¤ ¾ÖÇø®ÄÉÀ̼ÇÀÇ °æ¿ì ¼º´É ÀúÇÏ°¡ ÀÖÀ» ¼ö ÀÖ´Ù. ÀÎÅÚÀº µ¿¿ø °¡´ÉÇÑ Á¶Ä¡¸¦ ¸ðµÎ ÃëÇÒ °Í”À̶ó°í ÀüÇØ¿Ô´Ù.
ÀÌ°°Àº ÀÎÅÚÀÇ °ø½ÄÀÔÀå°ú ´Þ¸®, ¡ãÀÌ¹Ì °áÇÔ³»¿ëÀ» ¾Ë°í ¹ßÇ¥¸¦ ¹Ì·ð°í ¡ã°áÇÔ ¹æ¾î¿¡ ´ëÇÑ °ø°³ÀûÀÎ ³íÀÇ°¡ ÀÖ¾ú¾î¾ß ÇÏ¸ç ¡ã°ø°³»ç°ú¸¦ Çß¾î¾ß ÇÑ´Ù´Â ºñ³Àº ¸éÅ° ¾î·Á¿ö º¸ÀδÙ.
<±èµ¿±â ±âÀÚ>kdk@bikorea.net
<¹Ú½ÃÇö ±âÀÚ>pcsw@bikorea.net < ÀúÀÛ±ÇÀÚ © BI KOREA ¹«´ÜÀüÀç ¹× Àç¹èÆ÷±ÝÁö > |