ÀϹÝÀûÀ¸·Î º¸¾ÈÀûÀÎ ÇÁ·Î±×·¥µéÀº ±×µéÀÇ ¸ðµç °¡Á¤µé¿¡ Ŭ¶óÀÌ¾ðÆ®µéÀ» µ¿±âȽÃÅ´À» º¸ÁõÇØ¾ß ÇÑ´Ù. Á¾Á¾ À¥ ¾ÖÇø®ÄÉÀ̼ǿ¡ ¿µÇâÀ» ¹ÌÄ¡´Â ÇѰ¡Áö ¹®Á¦´Â Ãâ·ÂÀÇ ¹®ÀÚ ÀÎÄÚµù ÁöÁ¤À» ÀØ´Â ´Ù´Â °ÍÀÌ´Ù. ÀÌ´Â ¸ðµç µ¥ÀÌŸ°¡ ½Å·ÚµÈ Ãâó·ÎºÎÅÍ ¿Â´Ù¸é ¹®Á¦°¡ µÇÁö ¾ÊÁö¸¸ µ¥ÀÌŸ Áß ÀϺΰ¡ ½Å·ÚÇÒ ¼ö ¾ø´Â Ãâó·ÎºÎÅÍ ¿Â´Ù¸é º¸¾ÈÀûÀÎ ÇÁ·Î±×·¥ÀÌ ¿¹»óÇÑ °Í°ú ´Ù¸¥ ÀÎÄÚµùÀ» »ç¿ëÇÏ´Â ½Å·ÚÇÒ ¼ö ¾ø´Â Ãâó·ÎºÎÅÍÀÇ µ¥ÀÌŸ°¡ ½ÇÁ¦ µ¥ÀÌŸ³»¿¡ ¸ô·¡ »ðÀ﵃ ¼öµµ ÀÖ´Ù. ÀÌ´Â cross-site malicious content °ø°Ý¿¡ ´ëÇØ º¸¾È ±¸¸ÛÀ» ¸¸µå´Â °ÍÀ¸·Î ´õ¿í ÀÚ¼¼ÇÑ Á¤º¸´Â 4.9절 ¸¦ º¸¶ó.
CERT's tech tip on malicious code mitigation Àº ÁöÁ¤µÇÁö ¾ÊÀº ¹®ÀÚ ÀÎÄÚµù ¹®Á¦¸¦ ¸Å¿ì Àß ¼³¸íÇϴµ¥ ÀÌ´Â ´ÙÀ½°ú °°´Ù:
¸¹Àº À¥ÆäÀÌÁöµéÀº ¹®ÀÚ ÀÎÄÚµù (HTTP ¿¡¼ "charset" ¸Å°³º¯¼ö) À» Á¤ÀÇÇÏÁö ¾ÊÀº ä µÎ°í ÀÖ´Ù. HTML °ú HTTP Ãʱ⠹öÀü¿¡¼´Â ¹®ÀÚ ÀÎÄÚµùÀÌ Á¤ÀǵǾî ÀÖÁö ¾ÊÀ¸¸é À̸¦ µðÆúÆ®·Î ISO-8859-1 ·Î °£ÁÖÇߴµ¥ »ç½Ç ¸¹Àº ºê¶ó¿ìÀúµéÀº ´Ù¸¥ µðÆúÆ®¸¦ °¡Áö¸ç µû¶ó¼ ISO-8859-1 µðÆúÆ®¿¡ ÀÇÁ¸ÇÏ´Â °ÍÀº ºÒ°¡´ÉÇß´Ù. HTML ¹öÀü 4 ´Â À̸¦ ÇÕ¹ýÈÇϴµ¥ ¹®ÀÚ ÀÎÄÚµùÀÌ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é ¾î¶² ¹®ÀÚ ÀÎÄÚµùµµ »ç¿ëµÉ ¼ö ÀÖ´Ù.
À¥ ¼¹ö°¡ ¾î¶² ¹®ÀÚ ÀÎÄÚµùÀÌ »ç¿ëÁßÀÎÁö¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ¾î¶² ¹®ÀÚµéÀÌ Æ¯º°ÇÑ °ÍÀÎÁö ¾Ë¸± ¼ö ¾ø´Ù. ¹®ÀÚ ÀÎÄÚµùÀÌ ÁöÁ¤µÇÁö ¾ÊÀº À¥ ÆäÀÌÁöµéÀº ´ëºÎºÐÀÇ ¹®ÀÚ¼ÂÀÌ µ¿ÀÏÇÑ ¹®Àڵ鿡 128 ¹Ì¸¸ÀÇ ¹ÙÀÌÆ® °ªµéÀ» ÇÒ´çÇϱ⠶§¹®¿¡ ´ëºÎºÐ ÀÛµ¿ÇÑ´Ù. ±×·¯³ª 128 ÀÌ»óÀÇ °ªµéÁß¿¡¼ ¾î¶² °ªµéÀÌ Æ¯º°ÇѰ¡? ¾î¶² 16 ºñÆ® ¹®ÀÚ ÀÎÄÚµù ü°èµéÀº "<" ¿Í °°Àº Ưº° ¹®Àڵ鿡 ´ëÇØ Ãß°¡ÀûÀÎ ¸ÖƼ ¹ÙÀÌÆ® Ç¥ÇöÀ» °®°í ÀÖÀ¸¸ç ¾î¶² ºê¶ó¿ìÀúµéÀº ÀÌ·¯ÇÑ ´ëü ÀÎÄÚµùÀ» ÀνÄÇØ¼ ÀÌ¿¡ µû¶ó ÇൿÇÑ´Ù. ÀÌ´Â ``Á¤È®ÇÑ" °Åµ¿ÀÌÁö¸¸ ¾ÇÀÇÀÖ´Â ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÑ °ø°ÝÀ» ¿¹¹æÇϱ⠴õ¿í ¾î·Æ°Ô ¸¸µç´Ù. ¼¹ö´Â ¾î¶² ¹ÙÀÌÆ® ½ÃÄö½º°¡ Ưº° ¹®ÀÚµéÀ» ³ªÅ¸³»´ÂÁö ´Ü¼øÈ÷ ¸ð¸¥´Ù.
¿¹¸¦ µé¾î UTF-7 Àº "<" °ú ">" ¿¡ ´ëÇØ ´ëü ÀÎÄÚµùÀ» Á¦°øÇÏ¸ç ¸î¸î ³Î¸®¾²ÀÌ´Â ºê¶ó¿ìÀúµéÀº À̸¦ ½ÃÀÛ ¹× ³¡ ű׷ΠÀνÄÇÑ´Ù. µû¶ó¼ ÀÌ´Â ±×·¯ÇÑ ºê¶ó¿ìÀú¿¡¼´Â ¹ö±×°¡ ¾Æ´Ï¸ç ¹®ÀÚ ÀÎÄÚµùÀÌ ½ÇÁ¦·Î UTF-7 À̶ó¸é ÀÌ´Â Á¤È®ÇÑ °Åµ¿ÀÌ´Ù. ¹®Á¦´Â ºê¶ó¿ìÀú¿Í ¼¹ö°¡ ÀÎÄÚµùÀÌ ÀÏÄ¡ÇÏÁö ¾ÊÀº »óȲ¿¡ ³õÀÌ´Â °ÍÀÌ °¡´ÉÇÏ´Ù´Â °ÍÀÌ´Ù.
°í¸¿°Ôµµ ÀÌ ¹®Á¦¸¦ ¼³¸íÇÏ´Â °ÍÀÌ ¾î·Á¿ò¿¡µµ ºÒ±¸Çϰí HTML ¿¡¼ À̸¦ ÇØ°áÇÏ´Â °ÍÀº °£´ÜÇѵ¥ HTML Çì´õ¿¡ CERT ·ÎºÎÅÍÀÇ ´ÙÀ½ ¿¹¿Í °°ÀÌ charset À» ´Ü¼øÈ÷ ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù:
<HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <TITLE>HTML SAMPLE</TITLE> </HEAD> <BODY> <P>This is a sample HTML page </BODY> </HTML> |