°£Æí°áÁ¦, ½Å¿ëÄ«µå û±¸ÇÒÀÎ
ÀÎÅÍÆÄÅ© ·Ôµ¥Ä«µå 5% (38,480¿ø)
(ÃÖ´ëÇÒÀÎ 10¸¸¿ø / Àü¿ù½ÇÀû 40¸¸¿ø)
ºÏÇǴϾð ·Ôµ¥Ä«µå 30% (28,350¿ø)
(ÃÖ´ëÇÒÀÎ 3¸¸¿ø / 3¸¸¿ø ÀÌ»ó °áÁ¦)
NH¼îÇÎ&ÀÎÅÍÆÄũīµå 20% (32,400¿ø)
(ÃÖ´ëÇÒÀÎ 4¸¸¿ø / 2¸¸¿ø ÀÌ»ó °áÁ¦)
Close

C & C++ ½ÃÅ¥¾î ÄÚµù : ¹ö±× ¾ø´Â ¾ÈÀüÇÑ ¼ÒÇÁÆ®¿þ¾î¸¦ À§ÇÑ[°³Á¤ÆÇ]

¿øÁ¦ : Secure Coding in C and C++ 2nd Edition (SEI Series in Software Engineering)
¼Òµæ°øÁ¦

2013³â 9¿ù 9ÀÏ ÀÌÈÄ ´©Àû¼öÄ¡ÀÔ´Ï´Ù.

ÆÇ¸ÅÁö¼ö 67
?
ÆÇ¸ÅÁö¼ö¶õ?
»çÀÌÆ®ÀÇ ÆÇ¸Å·®¿¡ ±â¹ÝÇÏ¿© ÆÇ¸Å·® ÃßÀ̸¦ ¹Ý¿µÇÑ ÀÎÅÍÆÄÅ© µµ¼­¿¡¼­ÀÇ µ¶¸³ÀûÀÎ ÆÇ¸Å Áö¼öÀÔ´Ï´Ù. ÇöÀç °¡Àå Àß ÆÈ¸®´Â »óǰ¿¡ °¡ÁßÄ¡¸¦ µÎ¾ú±â ¶§¹®¿¡ ½ÇÁ¦ ´©Àû ÆÇ¸Å·®°ú´Â ´Ù¼Ò Â÷À̰¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. ÆÇ¸Å·® ¿Ü¿¡µµ ´Ù¾çÇÑ °¡ÁßÄ¡·Î ±¸¼ºµÇ¾î ÃÖ±ÙÀÇ À̽´µµ¼­ È®Àνà À¯¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇØ´ç Áö¼ö´Â ¸ÅÀÏ °»½ÅµË´Ï´Ù.
Close
°øÀ¯Çϱâ
Á¤°¡

45,000¿ø

  • 40,500¿ø (10%ÇÒÀÎ)

    2,250P (5%Àû¸³)

ÇÒÀÎÇýÅÃ
Àû¸³ÇýÅÃ
  • I-Point Àû¸³Àº Ãâ°í¿Ï·á ÈÄ 14ÀÏ À̳» ¸¶ÀÌÆäÀÌÁö¿¡¼­ Àû¸³¹Þ±âÇÑ °æ¿ì¸¸ Àû¸³µË´Ï´Ù.
  • Ãß°¡ÇýÅÃ
    ¹è¼ÛÁ¤º¸
    ÁÖ¹®¼ö·®
    °¨¼Ò Áõ°¡
    • À̺¥Æ®/±âȹÀü

    • ¿¬°üµµ¼­(83)

    • »çÀºÇ°

    ÃâÆÇ»ç ¼­Æò

    ÀÌ Ã¥Àº ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡ÀÇ ±Ùº» ¿øÀÎÀ» ¼³¸íÇϰí ħÅõ¸¦ ¸·±â À§ÇØ ÃëÇÒ ¼ö ÀÖ´Â ´ëÃ¥À» ¾Ë·ÁÁØ´Ù. ´õ¿íÀÌ ÀÌ Ã¥À» ÅëÇØ ÇÁ·Î±×·¡¸Ó´Â ´çÀå ¿À´Ã¸¸ÀÌ ¾Æ´Ï¶ó ¹Ì·¡ÀÇ °ø°ÝÀ¸·ÎºÎÅÍ ¼ÒÇÁÆ®¿þ¾î¸¦ º¸È£ÇÏ´Â ÃÖ»óÀÇ º¸¾È ¾÷¹« äÅðú º¸¾È »ç°í ¹æ½ÄÀ» ¹ßÀü½Ãų ¼ö ÀÖ´Ù. ·Î¹öÆ® ½ÃÄÚµå´Â CERT º¸°í¼­¿Í °á·ÐÀ» Ȱ¿ëÇØ ÇÁ·Î±×·¥ ¿¡·¯°¡ ´ëºÎºÐ º¸¾È ±¸¸ÛÀÌ µÇ´Â °ÍÀ» ü°èÀûÀ¸·Î È®ÀÎÇϰí, ±× º¸¾È ±¸¸ÛÀÌ ¾î¶»°Ô ¹«´Ü ÀÌ¿ëµÉ ¼ö ÀÖ´ÂÁö¸¦ º¸À̸ç, °¡´ÉÇÑ °á°ú¸¦ °íÂûÇØº¸°í ¾ÈÀüÇÑ ¹æ¹ýÀ» ³»³õ´Â´Ù. ÀÌ Ã¥¿¡´Â À©µµ¿ì¿Í ¸®´ª½º¿¡¼­ ±¸ÇöÇÑ ¼ö¹é °³ÀÇ ¾ÈÀüÇÑ ÄÚµå, ºÒ¾ÈÀüÇÑ ÄÚµå, ÀͽºÇ÷ÎÀÕ ¿¹Á¦°¡ µé¾îÀÖ´Ù. ¾ÈÀüÇÑ C ¶Ç´Â C++ ¼ÒÇÁÆ®¿þ¾î¸¦ ¸¸µé(¶Ç´Â ¾ÈÀüÇÏ°Ô Áöų) Ã¥ÀÓÀÌ ÀÖ´Ù¸é ÀÌ Ã¥¿¡¼­ °¡Àå ÀÚ¼¼Çϰí Àü¹®ÀûÀÎ Áö¿øÀ» ¾òÀ» ¼ö ÀÖ´Ù.

    ÀÌ Ã¥¿¡¼­ ´Ù·ç´Â ³»¿ë
    - C³ª C++ ¾ÖÇø®ÄÉÀ̼ÇÀÇ Àüü º¸¾ÈÀ» Çâ»ó½Ãų ¼ö ÀÖ´Â ¹æ¹ý
    - ºÒ¾ÈÀüÇÑ Á¶ÀÛ ·ÎÁ÷À» ¹«´Ü ÀÌ¿ëÇÏ´Â ¹öÆÛ ¿À¹öÇ÷Î, ½ºÅà ½º¸Å½Ì, ¹Ýȯ ÁöÇâÀû ÇÁ·Î±×·¡¹Ö °ø°Ý µîÀ» ¹«·ÂÈ­½Ãų ¹æ¹ý
    - µ¿Àû ¸Þ¸ð¸® °ü¸® ÇÔ¼öÀÇ À߸øµÈ »ç¿ëÀ¸·Î ¹ß»ýÇÏ´Â Ãë¾àÁ¡°ú º¸¾È ÇãÁ¡À» ¿¹¹æÇÏ´Â ¹æ¹ý
    - ºÎÈ£ Á¤¼ö ¿À¹öÇ÷Î, ¹«ºÎÈ£ Á¤¼ö ·¡ÇÎ, À߸² ¿¡·¯·Î ÀÎÇØ ¹ß»ýÇÏ´Â Á¤¼ö °ü·Ã ¹®Á¦¸¦ Á¦°ÅÇÏ´Â ¹æ¹ý
    - ½ÃÅ¥¾î I/O¸¦ ¼öÇàÇØ ÆÄÀÏ ½Ã½ºÅÛ Ãë¾àÁ¡À» ¿¹¹æÇÏ´Â ¹æ¹ý
    - Çü½Ä ¹®ÀÚ¿­ Ãë¾àÁ¡À» ¸¸µéÁö ¾Ê°í Çü½ÄÈ­µÈ Ãâ·Â ÇÔ¼ö¸¦ ¿Ã¹Ù¸£°Ô »ç¿ëÇÏ´Â ¹æ¹ý
    - µ¿½Ã ¹ß»ý Äڵ带 °³¹ßÇÏ´Â µ¿¾È¿¡ °æÇÕ »óÅÂ¿Í ±âŸ ¹«´Ü ÀÌ¿ë °¡´ÉÇÑ Ãë¾àÁ¡À» ¿¹¹æÇÏ´Â ¹æ¹ý
    - C11¿Í C++11¿¡ ´ëÇÑ ³»¿ë ¾÷µ¥ÀÌÆ®
    - ¹®ÀÚ¿­, µ¿Àû ¸Þ¸ð¸® °ü¸®, Á¤¼ö º¸¾È °ü·Ã ³»¿ë ¾÷µ¥ÀÌÆ®
    - µ¿½Ã ¹ß»ý¿¡ ´ëÇÑ »õ·Î¿î ´Ü¿ø Ãß°¡

    ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ
    ÀÌ Ã¥Àº C¿Í C++·Î ¼ÒÇÁÆ®¿þ¾î °³¹ß°ú À¯Áö º¸¼ö¿¡ Á¾»çÇÏ´Â »ç¶÷¿¡°Ô À¯¿ëÇÏ´Ù.

    - C/C++ ÇÁ·Î±×·¡¸Ó¶ó¸é ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡ÀÌ µÇ´Â Åë»óÀûÀÎ ÇÁ·Î±×·¡¹Ö ¿¡·¯¸¦ È®ÀÎÇϰí ÀÌ·¯ÇÑ ¿¡·¯°¡ ¾î¶»°Ô ¹«´Ü ÀÌ¿ëµÇ´ÂÁö¸¦ ÀÌÇØÇÏ¸ç ¾ÈÀü ¹æ½ÄÀ¸·Î ÇØ°áÃ¥À» ±¸ÇöÇÏ´Â ¹æ¹ýÀ» ¾Ë ¼ö ÀÖ´Ù.
    - ¼ÒÇÁÆ®¿þ¾î ÇÁ·ÎÁ§Æ® °ü¸®ÀÚ¶ó¸é ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡ÀÇ Á߿伺°ú À§ÇèÀ» ½Äº°ÇØ ½ÃÅ¥¾î ¼ÒÇÁÆ®¿þ¾î °³¹ß¿¡ ÅõÀÚ ÇØ¾ß ÇÒÁö¸¦ ÆÇ´ÜÇÒ ¼ö ÀÖ´Ù.
    - ÄÄÇ»ÅͰøÇаú ÇлýÀ̶ó¸é ³ª»Û ½À°üÀÌ µå´Â °ÍÀ» ¸·¾ÆÁÖ¸ç ÇÁ·Î Á÷¾÷ÀÎÀÌ µÅ¼­ ½ÃÅ¥¾î ÇÁ·Î±×·¥À» °³¹ßÇÒ ¼ö ÀÖ´Â ÇÁ·Î±×·¡¹Ö ½Ç±â¸¦ ÀÍÈú ¼ö ÀÖ´Ù.
    - º¸¾È ºÐ¼®°¡¶ó¸é ÀÏ»óÀûÀÎ Ãë¾àÁ¡¿¡ ´ëÇØ ¼¼ºÎÀûÀÎ ¼³¸íÀ» ÀÌÇØÇϰí ÀÌ·¯ÇÑ Ãë¾àÁ¡À» ¹ß°ßÇÏ´Â ¹æ¹ýÀ» ¾Ë°Ô µÇ¸ç ½ÇÁ¦ÀûÀÎ ¿¹¹æ Àü·«À» ÀÍÈú ¼ö ÀÖ´Ù.

    ÀÌ Ã¥ÀÇ ±¸¼º
    1Àå, '°¡À§µé°í ¶Ù±â'¿¡¼­´Â ¹®Á¦ÀÇ °³·«À» Á¦°øÇϰí, º¸¾È ¿ë¾î¿Í °³³äÀ» ¼Ò°³ÇÏ¸ç ±×Åä·Ï ¸¹Àº Ãë¾àÁ¡ÀÌ C¿Í C++ ÇÁ·Î±×·¥¿¡¼­ ¹ß°ßµÇ´Â ÀÌÀ¯¸¦ ¾Ë·ÁÁØ´Ù.

    2Àå, '¹®ÀÚ¿­'¿¡¼­´Â C¿Í C++¿¡¼­ÀÇ ¹öÆÛ ¿À¹öÇÃ·Î¿Í ½ºÅà ½º¸Å½Ì °°Àº ¹®ÀÚ¿­ Á¶ÀÛ, Åë»óÀûÀÎ º¸¾È °áÇÔ, ±× °á°ú·Î ³ªÅ¸³ª´Â Ãë¾àÁ¡À» ¼³¸íÇÑ´Ù. ÄÚµå ÀÎÁ§¼Ç°ú ¾ÆÅ© ÀÎÁ§¼Ç ÀͽºÇ÷ÎÀÕÀ» ¸ðµÎ ¾Ë¾Æº»´Ù.

    3Àå, 'Æ÷ÀÎÅÍ º¯Á¶'¿¡¼­´Â °ø°ÝÀÚ°¡ ¸Þ¸ð¸®ÀÇ ¾î´À À§Ä¡¿¡¼­µç ÁÖ¼Ò¸¦ ¾µ ¼ö ÀÖ´Â ÀÓÀÇ ¸Þ¸ð¸® ¾²±â ÀͽºÇ÷ÎÀÕÀ» ¼Ò°³Çϰí, ÀÌ·± ÀͽºÇ÷ÎÀÕÀÌ µé¾î°£ ¸Ó½Å¿¡¼­ ÀÓÀÇ Äڵ带 ½ÇÇàÇÏ´Â µ¥ »ç¿ëµÉ ¼ö ÀÖ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù. ÀÓÀÇ ¸Þ¸ð¸® ¾²±â·Î ¹ß»ýÇÑ Ãë¾àÁ¡Àº ÀÌÈÄÀÇ Àå¿¡¼­ ´Ù·é´Ù.

    4Àå, 'µ¿Àû ¸Þ¸ð¸® °ü¸®'¿¡¼­´Â µ¿Àû ¸Þ¸ð¸® °ü¸®¸¦ ¼³¸íÇÑ´Ù. µ¿ÀûÀ¸·Î ÇÒ´çµÈ ¹öÆÛ ¿À¹öÇ÷Î, ÇØÁ¦µÈ ¸Þ¸ð¸®¿¡ ¾²±â, ÀÌÁß ÇØÁ¦ Ãë¾àÁ¡À» ¼³¸íÇÑ´Ù.

    5Àå, 'Á¤¼ö º¸¾È'¿¡¼­´Â Á¤¼ö ¿À¹öÇ÷Î, ºÎÈ£ ¿¡·¯, À߸² ¿¡·¯ µîÀÇ Çʼö º¸¾È ¹®Á¦(Á¤¼ö¸¦ Ãë±ÞÇÏ´Â º¸¾È ¹®Á¦)¸¦ ´Ù·é´Ù.

    6Àå, 'Çü½ÄÈ­µÈ Ãâ·Â'¿¡¼­´Â Çü½ÄÈ­µÈ Ãâ·Â ÇÔ¼öÀÇ ÀûÀýÇϰųª ºÎÀûÀýÇÑ »ç¿ëÀ» ¼³¸íÇÑ´Ù. À̵é ÇÔ¼öÀÇ ºÎÀûÀýÇÑ »ç¿ëÀ¸·Î ÀÎÇÑ Çü½Ä ¹®ÀÚ¿­°ú ¹öÆÛ ¿À¹öÇ÷ΠÃë¾àÁ¡ ¸ðµÎ¸¦ ¼³¸íÇÑ´Ù.

    7Àå, 'µ¿½Ã¼º'¿¡¼­´Â ±³Âø »óÅÂ, °æÇÕ »óÅÂ, ºÎÀûÀýÇÑ ¸Þ¸ð¸® Á¢±Ù ¼ø¼­·Î ÀÎÇØ ¹ß»ýÇÏ´Â µ¿½Ã¼º°ú Ãë¾àÁ¡¿¡ ÃÊÁ¡À» ¸ÂÃá´Ù.

    8Àå, 'ÆÄÀÏ I/O'¿¡¼­´Â ÆÄÀÏ I/O¿Í °ü·ÃµÈ Åë»óÀûÀÎ Ãë¾àÁ¡À» ¼³¸íÇϴµ¥, ¿©±â¿¡´Â °æÇÕ »óÅÂ¿Í TOCTOU Ãë¾àÁ¡ÀÌ Æ÷ÇԵȴÙ.

    9Àå, '±Ç°í °üÇà'¿¡¼­´Â C/C++ ¾ÖÇø®ÄÉÀ̼ÇÀÇ Àüü º¸¾ÈÀ» Çâ»ó½Ã۱â À§ÇØ Æ¯Á¤ °³¹ß °üÇàÀ» ±Ç°íÇÑ´Ù. ÀÌ·± ±Ç°í¾ÈÀº ƯÁ¤ Ãë¾àÁ¡ ºÎ·ùÀÇ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ °¢ Àå¿¡ ÀÖ´Â ±ÇÀå »çÇ׵鿡 À̾îÁö´Â °ÍÀÌ´Ù.

    ̵̧ȍ

    »çȸ°¡ ³×Æ®¿öÅ© ¼ÒÇÁÆ®¿þ¾î ½Ã½ºÅÛ¿¡ ÀÇÁ¸ÇÒ¼ö·Ï ÀÌ·± ½Ã½ºÅÛÀ» °Ü³ÉÇÑ °ø°Ý Ƚ¼ö´Â ³ª³¯ÀÌ Áõ°¡Çß´Ù. ¶ÇÇÑ ÀÌ·± °ø°Ý(Á¤ºÎ, ±â¾÷, ±³À° ±â°ü, °³ÀÎÀÌ ´ë»ó)À¸·Î Áß¿ä µ¥ÀÌÅÍÀÇ ÆÄ±«¿Í ¼Õ»ó, ½Ã½ºÅÛ ÇÇÇØ, »ý»ê¼º Ç϶ô, °æÁ¦Àû ¼Õ½ÇÀÌ ¹ß»ýÇß´Ù.

    ¿À´Ã³¯ ÀÎÅͳݿ¡¼­ ÇàÇØÁö´Â °ø°ÝÀÇ ´ëºÎºÐÀº ´Ü¼øÇÑ °ñÄ©°Å¸® ¼öÁØ¿¡¼­ ³¡³ª±ä ÇÏÁö¸¸, Á¡Á¡ ¹üÁË, Å×·¯, ±× ¿ÜÀÇ ¾ÇÀÇÀûÀÎ ¸ñÀûÀ» ¶ì°í ¼ÒÇÁÆ®¿þ¾îÀÇ Ãë¾àÁ¡À» ³ë¸®´Â ÀϵéÀÌ Á¡Á¡ ´Ã¾î³ª´Â Ãß¼¼´Ù. ÃÖ±Ù Åë°è¿¡ µû¸£¸é ¿¬°£ 4,000°³ ÀÌ»óÀÇ ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡ÀÌ ¹ß°ßµÈ´Ù°í ÇÑ´Ù. ÀÌ·± Ãë¾àÁ¡Àº ¼ÒÇÁÆ®¿þ¾î¸¦ °³¹ßÇÒ ¶§ ½Ã½ºÅÛ º¸È£¸¦ ÀûÀýÈ÷ ÇÏÁö ¾Ê¾Ò°Å³ª º¸¾È °áÇÔÀ» Á¦°ÅÇÏ´Â µ¥ ÃæºÐÈ÷ ÁýÁßÇÏÁö ¸øÇ߱⠶§¹®¿¡ ¹ß»ýÇÑ´Ù.

    Ãë¾àÁ¡ÀÌ Áõ°¡ÇÔ¿¡ µû¶ó °ø°ÝÀÇ º¹À⼺°ú È¿À²¼ºµµ ²ÙÁØÈ÷ ¹ßÀüÇß´Ù. ħÀÔÀÚ´Â Á¦Ç°¿¡¼­ ¹ß°ßµÈ Ãë¾àÁ¡À» ÆÄ°íµé ½ºÅ©¸³Æ®¸¦ À绡¸® °³¹ßÇßÀ¸¸ç, ½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇØ ÄÄÇ»Å͸¦ ¼Õ»ó½ÃŰ´Â °ÍÀº ¹°·Ð, ´Ù¸¥ °ø°ÝÀÚµéÀÌ »ç¿ëÇÒ ¼ö ÀÖ°Ô ½ºÅ©¸³Æ®¸¦ °øÀ¯Çϱâ±îÁö ÇÑ´Ù. ÀÌ·¸°Ô °øÀ¯µÈ ½ºÅ©¸³Æ®¸¦ Ȱ¿ëÇÑ ÇÁ·Î±×·¥ÀÌ ¸¸µé¾îÁö¸é Ãë¾àÁ¡ÀÌ ÀÖ´Â ½Ã½ºÅÛÀ» ÀÚµ¿ °Ë»öÇØ °ø°ÝÇÏ°í ¼Õ»ó½Ã۸ç, ±×·± ½Ã½ºÅÛµéÀ» °æÀ¯ÇØ ´õ ¸¹Àº ½Ã½ºÅÛÀ» °ø°ÝÇÑ´Ù.

    ¸Å³â ¸·´ëÇÑ ¼öÀÇ Ãë¾àÁ¡ÀÌ ¹ß°ßµÇ¹Ç·Î °ü¸®ÀÚµéÀº ±âÁ¸ ½Ã½ºÅÛÀ» ÆÐÄ¡ÇÏ´Â µ¥ ´õ¿í °ñ¸Ó¸®¸¦ ¾Î°í ÀÖ´Ù. ÆÐÄ¡ Àû¿ëÀÌ ¾î·Á¿ï ¼ö ÀÖ°í ¿¹»óÄ¡ ¸øÇÑ ºÎÀÛ¿ëÀÌ ÀÖÀ»Áöµµ ¸ð¸¥´Ù. ¾÷ü°¡ º¸¾È ÆÐÄ¡¸¦ ³»³õÀº ÈÄ¿¡ Ãë¾àÁ¡ÀÌ ÀÖ´Â ÄÄÇ»ÅÍÀÇ 90~95%°¡ ÆÐÄ¡¸¦ Àû¿ëÇϱâ±îÁö´Â ¼ö°³¿ù, ½ÉÁö¾î ¼ö³âÀÌ °É¸± ¼ö ÀÖ´Ù.

    ÀÎÅÍ³Ý »ç¿ëÀÚµéÀº °ø½Å·Â ÀÖ´Â º¸¾È °ü·Ã ÀÎÅÍ³Ý Ä¿¹Â´ÏƼ¿¡ Å©°Ô ÀÇÁ¸ÇÑ´Ù. ±×·¯³ª ¿À´Ã³¯ ±×·± ÇØ°á ¹æ½ÄÀº Á¡Á¡ ÇѰ迡 ºÎµúÈ÷°í ÀÖ´Ù. °¢°¢ÀÇ Ã³¸® Á¶Á÷ÀÌ ÀýÂ÷¸¦ ´É·üÀûÀÌ°íµµ ÀÚµ¿È­ÇÏ´Â µ¥ ¸ðµÎ ¿­½ÉÀ̱ä ÇÏÁö¸¸, »ó¿ë ¼ÒÇÁÆ®¿þ¾î Á¦Ç°ÀÇ Ãë¾àÁ¡ ¼ö°¡ ³Ê¹« ¸¹¾Æ ¾ÆÁÖ ¶Ù¾î³­ Á¶Á÷ÀÌ ¾Æ´Ï¶ó¸é ÀÌÁ¦ ÇØ°áÀÌ ºÒ°¡´ÉÇÑ ¼öÁØ¿¡ ¿Í ÀÖ´Ù.

    ´ëºÎºÐ Á¦Ç°¿¡¼­ º¸¾ÈÀÌ ´õ °­È­µÆ´Ù°í´Â º¼ ¼ö ¾ø´Ù. Áï, ¸¹Àº ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚµéÀº Ãë¾àÁ¡ÀÇ ¿øÀÎÀ¸·Î ¾òÀº ±³ÈÆÀ» ÀÌÇØÇÏÁö ¸øÇϰųª ÀûÀýÇÑ ¿ÏÈ­ Àü·«À» ÆîÄ¡Áö ¸øÇϰí ÀÖ´Ù. CERT/CC°¡ Ãʱ⠹öÀüÀÇ Á¦Ç°¿¡¼­ ¹ß°ßÇß´ø °Í°ú ¶È°°Àº Á¾·ùÀÇ Ãë¾àÁ¡À» ÀÌÈÄ ¹öÀü¿¡¼­µµ °è¼Ó ¹ß°ßÇÏ´Â »ç½Ç·Î ¹Ì·ç¾î ÀÌ Á¡À» ¾Ë ¼ö ÀÖ´Ù.
    À§ ¿ä¼ÒµéÀ» Çϳª·Î ÇÕÃÄ »ý°¢Çغ¸¸é ½ÇÁ¦·Î ½Ã½ºÅÛ ¼Óµµ°¡ »¡¶óÁø ¸¸Å­ ´Ü½Ã°£ ³»¿¡ ¸¹Àº °ø°ÝÀ¸·Î »ó´çÇÑ °æÁ¦Àû ¼Õ½Ç°ú ¼­ºñ½º È¥¶õÀÌ ¹ß»ýÇÒ °ÍÀ¸·Î º¸ÀδÙ.
    ÀÏ»çºÒ¶õÇÑ Ã³¸®°¡ °è¼Ó ÇÊ¿äÇÏÁö¸¸ ½±°Ô °ø°Ý ´çÇÏÁö ¾Ê°Ô ´õ ¸¹Àº º¸¾È ½Ã½ºÅÛÀ» °®Ãç¾ß ÇÑ´Ù.

    ÀÌ Ã¥¿¡¼­´Â 1988³â¿¡ CERT¸¦ ¼³¸³ÇÑ ÀÌ·¡·Î ±â·ÏµÈ °¡Àå ÈçÇϰí À§ÇèÇÏ¸ç ÆÄ±«ÀûÀÎ ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡¿¡ ´ëÇÑ C/C++ ÇÁ·Î±×·¡¹Ö ÁÖ¿ä ¿¡·¯¸¦ ´Ù·é´Ù. ÀÌ Ã¥À¸·Î ÇÁ·Î±×·¡¹Ö ¿¡·¯¸¦ ±íÀÌ ÀÖ°Ô ±â¼úÀûÀ¸·Î ºÐ¼®Çϰí, ħÅõ À§ÇèÀ» ÁÙÀ̰ųª Á¦°ÅÇÏ´Â µ¥ È¿°úÀûÀÌ°íµµ ½Ç¿ëÀûÀÎ ¿ÏÈ­ Àü·« ¸ðµÎ¸¦ ¹è¿ï ¼ö ÀÖ´Ù.

    1987³â 4¿ù, ·Î¹öÆ®°¡ ¼ÒÇÁÆ®¿þ¾î °øÇÐ ¿¬±¸¼Ò(SEI, Software Engineering Institute)¿¡ óÀ½À¸·Î ÇÕ·ùÇÒ ¶§ºÎÅÍ ÁÙ°ð ÇÔ²² ÀÏÇØ ¿Ô´Ù. ·Î¹öÆ®´Â ³ë·ÃÇÏ°íµµ Áö½ÄÀÌ Ç³ºÎÇÑ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾îÀε¥, ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡À» ¼¼¼¼ÇÏ°Ô ºÐ¼®Çϰí ÀÚ½ÅÀÌ °üÂûÇÏ°í ¹ß°ßÇÑ ³»¿ëÀ» Àß ¼³¸íÇß´Ù. ±×·¸±â ¶§¹®¿¡ ÀÌ Ã¥Àº ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚµéÀÌ Á÷¸éÇÏ´Â °¡Àå ÀϹÝÀûÀÎ ¹®Á¦µé¿¡ ´ëÇØ ¸Å¿ì ½ÅÁßÇÑ Ã³¸®¿Í ½ÇÁúÀû ÇØ°áÃ¥À» Á¦°øÇÑ´Ù. ·Î¹öÆ®´Â ¼ÒÇÁÆ®¿þ¾î °³¹ß¿¡ ´ëÇØ ±¤¹üÀ§ÇÑ ¹è°æ Áö½ÄÀ» °®°í ÀÖ¾î ¼Ò½ºÄÚµå °³¹ß ½Ã¿¡ ÀÌÇØµæ½ÇÀ» µûÁ®¾ß ÇÏ´Â ¼º´É ±ÕÇü, À¯¿ë¼º, ±âŸ ǰÁú ¼Ó¼º¿¡µµ ½Å°æÀ» ±â¿ï¿´´Ù. ·Î¹öÆ®ÀÇ ´É·Â¿¡ ´õÇØ ÀÌ Ã¥¿¡´Â CERT¸¦ ¿î¿ëÇϸ鼭 ¾òÀº ÃàÀûµÈ Áö½ÄµéÀÌ µé¾îÀÖ°í, SEIÀÇ CERT/CC Ãë¾àÁ¡ ºÐ¼® ÆÀ, CERT ¿î¿µ ½ºÅÂÇÁ, ±×¸®°í ÆíÁý ¹× Áö¿ø ½ºÅÂÇÁÀÇ Æ¯º°ÇÑ ÀÛ¾÷µµ µé¾îÀÖ´Ù.
    - ¸®Â÷µå Æä½Ã¾Æ(Richard D. Phethia) / CERT µð·ºÅÍ

    ¸ñÂ÷

    1Àå. °¡À§µé°í ¶Ù±â
    1.1 À§Çù ¾Ë¾Æº¸±â
    ¼Õ½Ç ºñ¿ëÀº ¾ó¸¶Àΰ¡?
    ´©°¡ À§ÇùÇϴ°¡?
    ¼ÒÇÁÆ®¿þ¾î º¸¾È
    1.2 º¸¾È °³³ä
    º¸¾È Á¤Ã¥
    º¸¾È °áÇÔ
    Ãë¾àÁ¡
    ÀͽºÇ÷ÎÀÕ
    ¿ÏÈ­
    1.3 C¿Í C++
    °£·«ÇÑ ¿ª»ç
    C ¾ð¾î¿¡¼­ÀÇ ¹®Á¦Á¡
    ·¹°Å½Ã ÄÚµå
    ±âŸ ¾ð¾î
    1.4 °³¹ß Ç÷§Æû
    ¿î¿µÃ¼Á¦
    ÄÄÆÄÀÏ·¯
    1.5 Á¤¸®
    1.6 Ãß°¡ Âü°í ÀÚ·á

    2Àå. ¹®ÀÚ¿­
    2.1 ¹®ÀÚ¿­
    ¹®ÀÚ¿­ µ¥ÀÌÅÍ Çü
    UTF-8
    È®Àå ¹®ÀÚ¿­
    ¹®ÀÚ¿­ ¸®ÅÍ·²
    C++¿¡¼­ÀÇ ¹®ÀÚ¿­
    ¹®ÀÚÇü
    int
    unsigned char
    wchar t
    ¹®ÀÚ¿­ Å©±â ÁöÁ¤
    2.2 ÀÏ¹Ý ¹®ÀÚ¿­ ó¸® ¿¡·¯
    ±æÀÌ Á¦ÇÑ ¾ø´Â ¹®ÀÚ¿­ º¹»ç
    1¹ÙÀÌÆ® ¿À¹öÇ÷Π¿¡·¯
    null Á¾·á ¿¡·¯
    ¹®ÀÚ¿­ À߸²
    ÇÔ¼ö ¾øÀÌ ¹ß»ýÇÏ´Â ¹®ÀÚ¿­ ¿¡·¯
    2.3 ¹®ÀÚ¿­ Ãë¾àÁ¡°ú ÀͽºÇ÷ÎÀÕ
    ¿À¿°µÈ µ¥ÀÌÅÍ
    º¸¾È °áÇÔ: IsPasswordOK
    ¹öÆÛ ¿À¹öÇ÷Î
    ÇÁ·Î¼¼½º ¸Þ¸ð¸® Á¶Á÷
    ½ºÅà °ü¸®
    ½ºÅà ½º¸Å½Ì
    ÄÚµå ÀÎÁ§¼Ç
    ¾ÆÅ© ÀÎÁ§¼Ç
    º¹±Í ÁöÇâ ÇÁ·Î±×·¡¹Ö
    2.4 ¹®ÀÚ¿­¿¡ ´ëÇÑ ¿ÏÈ­ Àü·«
    ¹®ÀÚ¿­ ó¸®
    C11 Annex K °æ°è Á¡°Ë ÀÎÅÍÆäÀ̽º
    µ¿Àû ÇÒ´ç ÇÔ¼ö
    C++ std::basic string
    ¹®ÀÚ¿­ °´Ã¼ ÂüÁ¶ÀÇ ¹«È¿È­
    basic string »ç¿ë¿¡¼­ÀÇ ±âŸ ÀϹÝÀû ½Ç¼ö
    2.5 ¹®ÀÚ¿­ ó¸® ÇÔ¼ö
    gets()
    C99
    C11 Annex K °æ°è Á¡°Ë ÀÎÅÍÆäÀ̽º: gets s()
    µ¿Àû ÇÒ´ç ÇÔ¼ö
    strcpy()¿Í strcat()
    C99
    strncpy()¿Í strncat()
    memcpy()¿Í memmove()
    strlen()
    2.6 ·±Å¸ÀÓ ¹æÁö Àü·«
    °ËÃâ°ú º¹±¸
    ÀÔ·Â À¯È¿È­
    °´Ã¼ Å©±â Á¡°Ë
    ºñÁÖ¾ó ½ºÆ©µð¿À ÄÄÆÄÀÏ·¯°¡ »ý¼ºÇÏ´Â ·±Å¸ÀÓ Á¡°Ë
    ½ºÅà ī³ª¸®¾Æ
    ½ºÅà ½º¸Å½Ì ÇÁ·ÎÅØÅÍ(ÇÁ·ÎÆú¸®½º)
    ¿î¿µÃ¼Á¦ Àü·«
    °ËÃâ°ú º¹±¸
    ºñ½ÇÇà ½ºÅÃ
    W^X
    PaX
    ÇâÈÄ ¹æÇâ
    2.7 ÁÖ¸ñÇÒ ¸¸ÇÑ Ãë¾àÁ¡
    ¿ø°Ý ·Î±×ÀÎ
    Ä¿¹ö·Î½º
    2.8 Á¤¸®
    2.9 Ãß°¡ Âü°í ÀÚ·á

    3Àå. Æ÷ÀÎÅÍ º¯Á¶
    3.1 µ¥ÀÌÅÍ À§Ä¡
    3.2 ÇÔ¼ö Æ÷ÀÎÅÍ
    3.3 °´Ã¼ Æ÷ÀÎÅÍ
    3.4 ¸í·É Æ÷ÀÎÅÍ ¼öÁ¤
    3.5 Àü¿ª ¿ÀÇÁ¼Â Å×À̺í
    3.6 .dtors ¼½¼Ç
    3.7 °¡»ó Æ÷ÀÎÅÍ
    3.8 atexit()¿Í on exit() ÇÔ¼ö
    3.9 longjmp() ÇÔ¼ö
    3.10 ¿¹¿Ü ó¸®
    ±¸Á¶Àû ¿¹¿Ü ó¸®
    ½Ã½ºÅÛ ±âº» ¿¹¿Ü ó¸®
    3.11 ¿ÏÈ­ Àü·«
    ½ºÅà ī³ª¸®¾Æ
    W^X
    ÇÔ¼ö Æ÷ÀÎÅÍÀÇ ÀÎÄÚµù/µðÄÚµù
    3.12 Á¤¸®
    3.13 Ãß°¡ Âü°í ÀÚ·á

    4Àå. µ¿Àû ¸Þ¸ð¸® °ü¸®
    4.1 C ¸Þ¸ð¸® °ü¸®
    C Ç¥ÁØ ¸Þ¸ð¸® °ü¸® ÇÔ¼ö
    Á¤·Ä
    alloca()°ú °¡º¯ Å©±â ¹è¿­
    4.2 ÀϹÝÀûÀÎ C ¸Þ¸ð¸® °ü¸® ¿¡·¯
    ÃʱâÈ­ ¿¡·¯
    ¹Ýȯ °ª Á¡°Ë »ý·«
    NullÀ̳ª ºÎÀûÀýÇÑ Æ÷ÀÎÅÍÀÇ ¿ªÂüÁ¶
    ÇØÁ¦µÈ ¸Þ¸ð¸® ÂüÁ¶
    ¸Þ¸ð¸®ÀÇ ¿©·¯ ¹ø ÇØÁ¦
    ¸Þ¸ð¸® ´©¼ö
    0 ±æÀÌ ÇÒ´ç
    DR #400
    4.3 C++ µ¿Àû ¸Þ¸ð¸® °ü¸®
    ÇÒ´ç ÇÔ¼ö
    ÇÒ´ç ÇØÁ¦ ÇÔ¼ö
    °¡ºñÁö ÄÝ·º¼Ç
    4.4 ÀϹÝÀûÀÎ C++ ¸Þ¸ð¸® °ü¸® ¿¡·¯
    ÇÒ´ç ½ÇÆÐ¸¦ ¿Ã¹Ù·Î ó¸® ¸øÇÔ
    ¦ÀÌ À߸øµÈ ¸Þ¸ð¸® °ü¸® ÇÔ¼ö
    ¸Þ¸ð¸® ¿©·¯ ¹ø ÇØÁ¦
    ÇÒ´ç ÇØÁ¦ ÇÔ¼öÀÇ ¿¹¿Ü ó¸®
    4.5 ¸Þ¸ð¸® °ü¸®ÀÚ
    4.6 ´õ±× ¸®ÀÇ ¸Þ¸ð¸® ÇÒ´çÀÚ
    Èü¿¡¼­ÀÇ ¹öÆÛ ¿À¹öÇ÷Î
    4.7 ÀÌÁß ÇØÁ¦ Ãë¾àÁ¡
    ÇØÁ¦µÈ ¸Þ¸ð¸®¿¡ ¾²±â
    RtlHeap
    ¹öÆÛ ¿À¹öÇ÷Î(¸®´ö½º)
    4.8 ¿ÏÈ­ Àü·«
    Null Æ÷ÀÎÅÍ
    Àϰü¼º ÀÖ´Â ¸Þ¸ð¸® °ü¸® ½À°ü
    phkmalloc
    ¹«ÀÛÀ§È­
    OpenBSD
    jemalloc ¸Þ¸ð¸® °ü¸®ÀÚ
    Á¤Àû ºÐ¼®
    ·±Å¸ÀÓ ºÐ¼® µµ±¸
    4.9 Áß¿äÇÑ Ãë¾àÁ¡
    CVS ¹öÆÛ ¿À¹öÇ÷ΠÃë¾àÁ¡
    ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® µ¥ÀÌÅÍ ¾×¼¼½º ÄÄÆ÷³ÍÆ®(MDAC)
    CVS ¼­¹öÀÇ ÀÌÁß ÇØÁ¦
    MIT Ä¿¹ö·Î½º 5ÀÇ Ãë¾àÁ¡
    4.10 Á¤¸®

    5Àå. Á¤¼ö º¸¾È
    5.1 Á¤¼ö º¸¾È ¼Ò°³
    5.2 Á¤¼ö µ¥ÀÌÅÍ Çü
    ºÎÈ£ ¾ø´Â Á¤¼öÇü
    ·¦¾î¶ó¿îµå
    ºÎÈ£ ÀÖ´Â Á¤¼öÇü
    ºÎÈ£ ÀÖ´Â Á¤¼öÇüÀÇ ¹üÀ§
    Á¤¼ö ¿À¹öÇ÷Î
    ¹®ÀÚÇü
    µ¥ÀÌÅÍ ¸ðµ¨
    ±âŸ Á¤¼öÇü
    5.3 Á¤¼ö º¯È¯
    Á¤¼ö º¯È¯
    Á¤¼ö º¯È¯ ¼øÀ§
    Á¤¼ö ÇÁ·Î¸ð¼Ç
    º¸ÅëÀÇ »ê¼ú º¯È¯
    ºÎÈ£ ¾ø´Â Á¤¼öÇüÀÇ º¯È¯
    ºÎÈ£ ÀÖ´Â Á¤¼öÇüÀÇ º¯È¯
    ¾Ï½ÃÀû º¯È¯
    5.4 Á¤¼ö ¿¬»ê
    ´ëÀÔ
    µ¡¼À
    »¬¼À
    °ö¼À
    ³ª´°¼À°ú ³ª¸ÓÁö
    ½ÃÇÁÆ®
    5.5 Á¤¼ö Ãë¾àÁ¡
    Ãë¾àÁ¡
    ·¦¾î¶ó¿îµå
    º¯È¯°ú À߸² ¿¡·¯
    ¿¹¿Ü°¡ ¾Æ´Ñ Á¤¼ö ·ÎÁ÷ ¿¡·¯
    5.6 ¿ÏÈ­ Àü·«
    Á¤¼öÇü ¼±ÅÃ
    Ãß»ó µ¥ÀÌÅÍ Çü
    ÀÓÀÇ Á¤È® ¿¬»ê
    ¹üÀ§ Á¡°Ë
    ¼±Çà Á¶°Ç°ú ÈÄÇà Á¶°Ç °Ë»ç
    ½ÃÅ¥¾î Á¤¼ö ¶óÀ̺귯¸®
    ¿À¹öÇ÷Π°ËÃâ
    ÄÄÆÄÀÏ·¯°¡ »ý¼ºÇÑ ·±Å¸ÀÓ °Ë»ç
    ÀÔÁõ °¡´ÉÇÑ ¹üÀ§ ³» ¿¬»ê
    AIR Á¤¼ö ¸ðµ¨
    °Ë»ç¿Í ºÐ¼®
    5.7 Á¤¸®

    6Àå. Çü½ÄÈ­µÈ Ãâ·Â
    6.1 ¹è¸®¾îµñ ÇÔ¼ö
    6.2 Çü½ÄÈ­µÈ Ãâ·Â ÇÔ¼ö
    Çü½Ä ¹®ÀÚ¿­
    GCC
    ºñÁÖ¾ó C++
    6.3 Çü½ÄÈ­µÈ Ãâ·Â ÇÔ¼ö °ø°Ý
    ¹öÆÛ ¿À¹öÇ÷Î
    Ãâ·Â ½ºÆ®¸²
    ÇÁ·Î±×·¥ÀÇ ºñÁ¤»óÀû Á¾·á
    ½ºÅà ³»¿ë º¸±â
    ¸Þ¸ð¸® ³»¿ë º¸±â
    ¸Þ¸ð¸® µ¤¾î¾²±â
    ±¹Á¦È­
    È®Àå ¹®ÀÚ Çü½Ä ¹®ÀÚ¿­ Ãë¾àÁ¡
    6.4 ½ºÅà ¹«ÀÛÀ§È­
    ½ºÅà ¹«ÀÛÀ§È­ ¾ø¾Ö±â
    µÎ °³ÀÇ ¿öµå·Î ÁÖ¼Ò ±â·Ï
    Á÷Á¢ ÀÎÀÚ Á¢±Ù
    6.5 ¿ÏÈ­ Àü·«
    Çü½Ä ¹®ÀÚ¿­¿¡¼­ »ç¿ëÀÚ ÀÔ·Â ¹èÁ¦
    Á¤Àû ³»¿ëÀÇ µ¿Àû »ç¿ë
    ±â·ÏµÉ ¹ÙÀÌÆ® Á¦ÇÑ
    C11 Annex K °æ°è Á¡°Ë ÀÎÅÍÆäÀ̽º
    iostream°ú stdio
    °Ë»ç
    ÄÄÆÄÀÏ·¯ Á¡°Ë
    Á¤Àû ¿À¿° ºÐ¼®
    ¹è¸®¾îµñ ÇÔ¼ö ±¸Çö ¼öÁ¤
    Exec ½Çµå
    Æ÷¸Ë°¡µå
    Á¤Àû ¹ÙÀ̳ʸ® ºÐ¼®
    6.6 ÁÖ¸ñÇÒ ¸¸ÇÑ Ãë¾àÁ¡
    ¿ö½ÌÅÏ ´ëÇÐÀÇ FTP µ¥¸ó
    CDE ÅøÅäÅ©
    ÀÌÅÍĸ ¹öÀü NG-0.7.2
    6.7 Á¤¸®
    6.8 Ãß°¡ Âü°í ÀÚ·á

    7Àå. µ¿½Ã¼º
    7.1 ¸ÖƼ½º·¹µù
    7.2 º´·Ä ó¸®
    µ¥ÀÌÅÍ º´·Ä ó¸®
    ÀÛ¾÷ º´·Ä ó¸®
    7.3 ¼º´É ¸ñÇ¥
    ¾Ï´ÞÀÇ ¹ýÄ¢
    7.4 ÀϹÝÀûÀÎ ¿¡·¯
    °æÇÕ »óÅÂ
    ¼Õ»óµÈ °ª
    Èֹ߼º °´Ã¼
    7.5 ¿ÏÈ­ Àü·«
    ¸Þ¸ð¸® ¸ðµ¨
    µ¿±âÈ­ ±âº» ¿¬»ê
    ½º·¹µå ¿ªÇÒ ºÐ¼®(¿¬±¸)
    ºÒº¯ µ¥ÀÌÅÍ ±¸Á¶
    ÇöÀç ÄÚµå ¼ºÁú
    7.6 ¿ÏÈ­ ÇÔÁ¤
    ±³Âø »óÅÂ
    ÀÏÂï ÇØÁ¦ÇÑ Àá±Ý
    ÀïÅ»
    ABA ¹®Á¦
    7.7 ÁÖ¸ñÇÒ ¸¸ÇÑ Ãë¾àÁ¡
    ¸ÖƼÄÚ¾î DRAM ½Ã½ºÅÛ¿¡¼­ÀÇ DoS °ø°Ý
    ½Ã½ºÅÛ È£Ãâ ·¡ÆÛ¿¡¼­ÀÇ µ¿½Ã¼º Ãë¾àÁ¡
    7.8 Á¤¸®

    8Àå. ÆÄÀÏ I/O
    8.1 ÆÄÀÏ I/O ±âº»
    ÆÄÀÏ ½Ã½ºÅÛ
    Ư¼ö ÆÄÀÏ
    8.2 ÆÄÀÏ I/O ÀÎÅÍÆäÀ̽º
    µ¥ÀÌÅÍ ½ºÆ®¸²
    ÆÄÀÏ ¿­°í ´Ý±â
    POSIX
    C++¿¡¼­ÀÇ ÆÄÀÏ I/O
    8.3 Á¢±Ù Á¦¾î
    À¯´Ð½º ÆÄÀÏ ±ÇÇÑ
    ÇÁ·Î¼¼½º Ư±Ç
    Ư±Ç º¯°æ
    Ư±Ç °ü¸®
    ±ÇÇÑ °ü¸®
    8.4 ÆÄÀÏ ½Äº°
    µð·ºÅ丮 À̵¿
    µ¿ÀÏ ¿¡·¯
    ½Éº¼¸¯ ¸µÅ©
    Á¤±ÔÈ­
    ÇÏµå ¸µÅ©
    ÀåÄ¡ ÆÄÀÏ
    ÆÄÀÏ ¼Ó¼º
    8.5 °æÇÕ »óÅÂ
    Á¡°Ë ½Ã°£, »ç¿ë ½Ã°£
    ±³Ã¼ ¾øÀÌ »ý¼º
    ¹èŸÀû Á¢±Ù
    °øÀ¯ µð·ºÅ丮
    8.6 ¿ÏÈ­ Àü·«
    °æÇÕ À©µµ¿ì ´Ý±â
    °æÇÕ °´Ã¼ Á¦°Å
    °æÇÕ °´Ã¼¿¡ ´ëÇÑ Á¢±Ù Á¦¾î
    °æÇÕ °ËÃâ µµ±¸
    8.7 Á¤¸®

    9Àå. ±Ç°í °üÇà
    9.1 º¸¾È °³¹ß »ý¸íÁÖ±â
    TSP ½ÃÅ¥¾î
    °èȹ°ú ÃßÀû
    ǰÁú °ü¸®
    9.2 º¸¾È ÈÆ·Ã
    9.3 ¿ä±¸ »çÇ×
    ½ÃÅ¥¾î ÄÚµù Ç¥ÁØ
    º¸¾È ǰÁú ¿ä±¸ °øÇÐ
    À¯Áî/¹Ì½ºÀ¯Áî ÄÉÀ̽º
    9.4 ¼³°è
    ½ÃÅ¥¾î ¼ÒÇÁÆ®¿þ¾î °³¹ß ¿øÄ¢
    À§Çù ¸ðµ¨¸µ
    °ø°Ý¸é ºÐ¼®
    ±âÁ¸ ÄÚµåÀÇ Ãë¾àÁ¡
    ½ÃÅ¥¾î ·¡ÆÛ
    ÀÔ·Â °ËÁõ
    ½Å·Ú °æ°è
    ºí·¢¸®½ºÆÃ
    È­ÀÌÆ®¸®½ºÆÃ
    °Ë»ç
    9.5 ±¸Çö
    ÄÄÆÄÀÏ·¯ º¸¾È ±â´É
    ¹«ÇÑ ¹üÀ§ Á¤¼ö ¸ðµ¨
    ¾ÈÀüÇÑ ½ÃÅ¥¾î C/C++
    Á¤Àû ºÐ¼®
    ¼Ò½ºÄÚµå ºÐ¼® ½ÇÇè±â
    öÀúÇÑ ¹æ¾î
    9.6 °ËÁõ
    Á¤Àû ºÐ¼®
    ħÅõ Å×½ºÆÃ
    ÆÛÁî °Ë»ç
    ÄÚµå °¨»ç
    °³¹ßÀÚ Áöħ°ú Á¡°ËÇ¥
    µ¶¸³ º¸¾È ¸®ºä
    °ø°Ý¸é ¸®ºä
    9.7 Á¤¸®
    9.8 Âü°í ÀÚ·á

    º»¹®Áß¿¡¼­

    1988³â 11¿ù, ÀÎÅÍ³Ý ½Ã½ºÅÛÀÇ 10%¸¦ ¸ØÃß°Ô ¸¸µç ¸ð¸®½º(Morris) ¿ú »ç°ÇÀÌ °è±â°¡ µÅ ¹Ì±¹ ¹æÀ§ °íµî ¿¬±¸ °èȹ±¹(DARPA, Defense Advanced Research Projects Agency)Àº CERT¸¦ Ãâ¹ü½ÃÄ×´Ù. CERT´Â Ææ½Çº£ÀÌ´Ï¾Æ ÁÖ ÇÇÃ÷¹ö±×ÀÇ ¼ÒÇÁÆ®¿þ¾î °øÇÐ ¿¬±¸¼Ò(SEI, Software Engineering Institute) ³»¿¡ ÀÖÀ¸¸ç, ¿¬¹æ Á¤ºÎ ±â±ÝÀ¸·Î ¿î¿µµÇ´Â ¿¬±¸°³¹ß ¼¾ÅÍÀÎ SEI¸¦ ¹Ì ±¹¹æºÎ°¡ Áö¿øÇÑ´Ù.

    Ãʱ⿡ CERT´Â »ç°Ç ´ëÀÀ°ú ºÐ¼®¿¡ ÁýÁßÇß´Ù. °ø°Ý ½Ãµµ, ½ÃÇè, Ž»ö °°Àº »ç°ÇÀÌ ÀÖ¾ú°í, ¼­ºñ½º ¼Õ»óÀ̳ª °ÅºÎ¿Í °°ÀÌ °ø°Ý¿¡ ¼º°øÇÑ »ç°Çµéµµ ÀÖ´Ù. 1988³âºÎÅÍ CERT´Â Á¤º¸¸¦ ¿äûÇϰųª ÄÄÇ»ÅÍ º¸¾È »ç°í¸¦ ½Å°íÇÏ´Â 22,665°Ç ÀÌ»óÀÇ ±ä±ÞÀüÈ­¸¦ ¹Þ¾ÒÀ¸¸ç, 319,992°Ç ÀÌ»óÀÇ ÄÄÇ»ÅÍ º¸¾È »ç°ÇÀ» ó¸®Çß´Ù. ¸Å³â º¸°íµÇ´Â »ç°Ç ¼ö´Â °è¼Ó Áõ°¡ÇÏ´Â Ãß¼¼´Ù.

    »ç°Ç¿¡ ´ëÇÑ ´ëÀÀÀÌ ÇÊ¿äÇÏÁö¸¸ »óÈ£ Á¤º¸ ½Ã½ºÅÛ°ú ÀÎÅͳÝÀ» ÁöŰ±â¿¡´Â ¿ªºÎÁ·ÀÌ´Ù. ºÐ¼®Çغ¸¸é ´ë´Ù¼öÀÇ »ç°ÇÀÌ Æ®·ÎÀÌ ¸ñ¸¶ ¾Ç¼ºÄÚµå, »çȸ°øÇÐ(social engineering), ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡À» ÀÌ¿ëÇØ ¹ß»ýÇϴµ¥, ¼ÒÇÁÆ®¿þ¾î °áÇÔ, µðÀÚÀÎ °áÁ¤, ±¸¼º °áÁ¤, ±×¸®°í ½Ã½ºÅÛ °£ÀÇ ÀÌ»ó ÀÛµ¿µéµµ ¿øÀÎÀÌ µÈ´Ù. CERT´Â Ãë¾àÁ¡ Á¤º¸¿¡ ´ëÇÑ °ø°³µÈ ¼Ò½ºµéÀ» »ìÆìº¸°í Á¤±âÀûÀ¸·Î Ãë¾àÁ¡ º¸°í¸¦ ¹Þ´Â´Ù. 1995³â ÀÌ·¡·Î 16,726°Ç ÀÌ»óÀÇ Ãë¾àÁ¡ÀÌ º¸°íµÆ´Ù. º¸°í¸¦ ¹ÞÀ¸¸é CERT´Â Ãë¾àÁ¡ÀÌ µÉ ¸¸ÇÑ ºÎºÐÀ» ºÐ¼®Çϰí, ±× Á¦Ç°ÀÇ ±â¼ú ÇÁ·Îµà¼­µé°ú ÇÔ²² ÀÛ¾÷ÇØ º¸¾È °áÇÔÀ» ÇØ°áÇÑ´Ù.

    Åë°è·Î º¸¸é »ç°Ç º¸°í¿Í ºñ½ÁÇÏ°Ô Ãë¾àÁ¡ º¸°íµµ ºÒ¾ÈÇÒ Á¤µµ·Î °è¼Ó ´Ã¾î³ª°í ÀÖ´Ù. Ãë¾àÁ¡À» °ü¸®ÇÏ·Á¸é ó¸® °úÁ¤À» µÇ¤¾î º¸°Ô µÇ´Âµ¥, ÀÎÅͳݰú Á¤º¸ ½Ã½ºÅÛ º¸¾È ¹®Á¦¿¡ ´ëóÇϱ⿡´Â ÃæºÐÄ¡ ¾Ê´Ù. ´Ã¾î³ª´Â Ãë¾àÁ¡°ú »ç°Ç ¸ðµÎ¿¡ ´ëóÇÏ·Á¸é ¼ÒÇÁÆ®¿þ¾î °³¹ß ¹× À¯Áö °ü¸®ÇÏ´Â µ¿¾È¿¡ ¼ÒÇÁÆ®¿þ¾î Ãë¾àÁ¡ÀÌ ³¢¾îµéÁö ¸øÇÏ°Ô ÇÏ´Â °ÍÀÌ ¹®Á¦ °ø·«¿¡ ´ëÇÑ ´õ È®½ÇÇÑ ¹æ¹ýÀÌ µÈ´Ù. ±âÁ¸ Ãë¾àÁ¡À» ºÐ¼®Çغ¸¸é »ó´ëÀûÀ¸·Î »ç¼ÒÇÑ ±Ùº» ¿øÀÎµé ¶§¹®¿¡ ´ë´Ù¼öÀÇ Ãë¾àÁ¡ÀÌ ¹ß»ýÇÑ´Ù´Â °ÍÀ» ¾Ë°Ô µÈ´Ù. ÀÌ Ã¥ÀÇ ¸ñÇ¥´Â °³¹ßÀڵ鿡°Ô ÀÌ·± ±Ùº» ¿øÀΰú Ãë¾àÁ¡ÀÌ ÀϾÁö ¾Ê°Ô ÃëÇÒ ¼ö ÀÖ´Â Á¶Ä¡¿¡ °üÇØ ±³À°ÇÏ´Â °ÍÀÌ´Ù.
    (/ ÀúÀÚ ¼­¹® Áß¿¡¼­)

    ½ºÀ§½º Á¦³×¹Ù ¼ÒÀç À¯·´ÀÔÀÚ¹°¸®¿¬±¸¼Ò¿¡ ±Ù¹«ÇÏ´ø ÆÀ ¹ö³Ê½º¸®(Tim Berners-Lee)°¡ 1989ÃÖ±Ù ¿ì¸®³ª¶ó¿¡ º¸¾È »ç°í°¡ ²÷ÀÌÁö ¾Ê°í ÀÖ´Ù. ÀºÇà°ú Åë½Å»ç¸¦ ºñ·ÔÇÑ ±â¾÷ü¿¡¼­ °³Àο¡ À̸£±â±îÁö ÀÚ·á À¯Ãâ°ú ÈѼÕÀº ±× ½É°¢¼º¿¡µµ ºÒ±¸Çϰí ÀØÀ» ¸¸Çϸé ÅÍÁ® ³ª¿Â´Ù. ºñ´Ü ¿ì¸®³ª¶ó¿¡ ±¹ÇÑµÈ °Íµµ ¾Æ´Ï´Ù. ÀÌ ±ÛÀ» ÀÛ¼ºÇÏ´Â Áö±Ýµµ TV ´º½º¿¡¼­ ¹Ì±¹ ¼Ò´Ï ÇÈó½ºÀÇ º¸¾ÈÀÌ ¶Õ·Á ¹Ì°³ºÀÀÛµéÀÌ À¯ÃâµÈ ¼Ò½ÄÀÌ Èê·¯³ª¿À°í ÀÖ´Ù. °¢ ¾÷ü´Â ¾Õ´ÙÅý º¸¾ÈÀ» °­È­Çϰí ÀÖÁö¸¸ ½±»ç¸® ¿Ïº®ÇÑ ´ëºñ¸¦ ¸øÇϰí ÀÖ´Ù. °ø°ÝÀÚ´Â ¾î¶»°Ôµç »õ ¹æ¹ýÀ» µ¿¿øÇØ ÇãÁ¡À» ãÀ¸·Á Çϱ⠶§¹®¿¡ ÇÁ·Î±×·¥ °³¹ßÀÚ´Â Á¶±Ýµµ ¹æ½ÉÇÒ ¼ö ¾ø´Â ÀÔÀåÀÌ´Ù.

    ÀÌ·± ¶§¿¡ ÀÌ Ã¥À» ¹ø¿ªÇÏ°Ô µÅ ±â»Ú°Ô »ý°¢ÇÑ´Ù. ÀÌ Ã¥ÀÇ ÀúÀÚÀÎ ½ÃÄÚµå´Â Çö¾÷¿¡¼­´Â ¹°·ÐÀ̰í ÀÎÅͳݿ¡¼­µµ º¸¾È Àü¹®°¡·Î ¸í¼ºÀÌ ³ô´Ù. ±×°¡ ½ÃÅ¥¾î ÇÁ·Î±×·¡¹ÖÀ» À§ÇÑ Á¦¹Ý »çÇ×À» ÇÑ ±ÇÀÇ Ã¥¿¡ ´ãÀ¸·Á ³ë·ÂÇÑ ÈçÀûÀÌ °÷°÷¿¡ º¸ÀδÙ. ÀÌ Ã¥ÀÇ ³»¿ëÀº ÇÁ·Î±×·¡¹Ö¿¡ ¾î´À Á¤µµ °æÇèÀÌ ÀÖ´Â µ¶ÀÚ¸¦ À§ÇÑ °ÍÀ¸·Î, ÇÁ·Î±×·¡¹Ö Ãʺ¸ÀÚ°¡ º¸±â¿¡´Â ¾î·Á¿î ºÎºÐµéÀÌ ´õ·¯ ÀÖ´Ù. ÇÏÁö¸¸ ÇÁ·Î±×·¡¹Ö °ÉÀ½¸¶ºÎÅÍ ¾ÈÀüÇÑ ÇÁ·Î±×·¡¹Ö ½À°üÀ» µéÀÌ´Â °ÍÀÌ Áß¿äÇÏ´Ù´Â Á¡¿¡¼­ ÇÁ·Î±×·¡¹ÖÀ» ½ÃÀÛÇÏ´Â Ãʺ¸ÀÚµµ ÀÌ Ã¥À» °ç¿¡ µÎ±æ ±ÇÇÑ´Ù. ¾î´À ¼öÁØÀÇ µ¶ÀÚ°¡ ÀÌ Ã¥À» Àеç ÇÁ·Î±×·¥ º¸¾È Âü°í¼­·Î Ȱ¿ëÇÑ´Ù¸é ±× °¡Ä¡¸¦ ÃæºÐÈ÷ ÇØ³»¸®¶ó ¹Ï´Â´Ù.
    (/ ¿Å±äÀÌÀÇ ¸» Áß¿¡¼­)

    ÀúÀÚ¼Ò°³

    ·Î¹öÆ® ½ÃÄÚµå(Robert C. Seacord) [Àú] ½ÅÀ۾˸² SMS½Åû ÀÛ°¡DBº¸±â
    »ý³â¿ùÀÏ -
    Ãâ»ýÁö -
    Ãâ°£µµ¼­ 0Á¾
    ÆÇ¸Å¼ö 0±Ç

    ÇÇÃ÷¹ö±×¿¡ ÀÖ´Â Ä«³×±â ¸á·Ð ´ëÇÐÀÇ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î¸µ ¿¬±¸¼Ò(SEI)¿¡¼­ ±Ù¹«ÇÏ´Â CERT ÇÁ·Î±×·¥ÀÇ ½ÃÅ¥¾î ÄÚµå ±â¼ú °ü¸®ÀÚ´Ù.
    CERT ÇÁ·Î±×·¥Àº ¿î¿µ»ó °ü·ÃµÈ »çÀ̹ö º¸¾È ¿¬±¸¿Í ¹Ì±¹ ±¹°¡ÀÇ »çÀ̹ö º¸¾È µµÀü¿¡ ´ëÇÑ Çõ½ÅÀûÀÌ°í ½Å·Ú¼º ÀÖ´Â Á¦°øÀÚ´Ù. ½ÃÅ¥¾î ÄÚµå ÀÌ´Ï¼ÅÆ¼ºê´Â ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚ¿Í ¼ÒÇÁÆ®¿þ¾î °³¹ß Á¶Á÷ü¿Í ÇÔ²² ÀÛ¾÷ÇØ ÄÚµå ¿¡·¯·Î ¹ß»ýÇÏ´Â Ãë¾àÁ¡ÀÌ ÆÛÁö±â Àü¿¡ Á¦°ÅÇÑ´Ù. Ä«³×±â ¸á·Ð ´ëÇп¡ ÀÖ´Â Àü»ê°úÇÐ ´ëÇаú Á¤º¸ ³×Æ®¿öÅ· ¿¬±¸¼ÒÀÇ °´¿ø ±³¼öÀ̱⵵ ÇÏ´Ù. [¹ö±× ¾ø´Â ¾ÈÀüÇÑ ¼ÒÇÁÆ®¿þ¾î¸¦ À§ÇÑ CERT C ÇÁ·Î±×·¡¹Ö](¿¡ÀÌÄÜÃâÆÇ, 20

    ÆîÃ帱â
    »ý³â¿ùÀÏ -
    Ãâ»ýÁö -
    Ãâ°£µµ¼­ 0Á¾
    ÆÇ¸Å¼ö 0±Ç

    ÇѾƽýºÅÛ¿¡¼­ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î·Î ±Ù¹«ÇßÀ¸¸ç, ÇöÀç ÇÁ¸®·£¼­·Î ÀÏÇϰí ÀÖ´Ù. »ï°¢ÇüÇÁ·¹½º¿¡¼­ Ãâ°£ÇÑ [Boogazine JFC PROGRAMMING](1997), [Java Workshop 2.0 21ÀÏ ¿Ï¼º](1997), [Boogazine Visual J++ 6.0](1998), [XML ±âº»+Ȱ¿ë ¸¶½ºÅÍÇϱâ](2002)¸¦ ÁýÇÊÇß°í, [JAVA ¼­ºí¸´ & JSP ÇÁ·Î±×·¡¹Ö ÇѲ¨¹ø¿¡ ³¡³»±â](2002)¸¦ ¹ø¿ªÇß´Ù. ¶ÇÇÑ ¿¡ÀÌÄÜÃâÆÇ»ç¿¡¼­ Ãâ°£ÇÑ [(°³Á¤ÆÇ) C & C++ ½ÃÅ¥¾î ÄÚµù](2015), [´å³Ý °³¹ßÀÚ¸¦ À§ÇÑ AngularJS](2016), [ÆÄÀ̽㠺лê ÄÄÇ»ÆÃ](2016), [¾Þ±Ö·¯2 ÄÄÆ÷³ÍÆ® ¸¶½ºÅÍ](2016), [À¯´ÏƼ °ÔÀÓ °³¹ßÀ» À§ÇÑ ÀýÂ÷Àû ÄÜÅÙÆ® »ý¼º](2

    ÆîÃ帱â

    ÀÌ »óǰÀÇ ½Ã¸®Áî

    ¿¡ÀÌÄÜ ÇØÅ·°ú º¸¾È ½Ã¸®Áî(ÃÑ 117±Ç / ÇöÀ籸¸Å °¡´Éµµ¼­ 84±Ç)

    ÆîÃ帱â

    ÀÌ Ã¥°ú ³»¿ëÀÌ ºñ½ÁÇÑ Ã¥ ? ³»¿ë À¯»çµµ¶õ? ÀÌ µµ¼­°¡ °¡Áø ³»¿ëÀ» ºÐ¼®ÇÏ¿© ±âÁØ µµ¼­¿Í ¾ó¸¶³ª ¸¹ÀÌ À¯»çÇÑ ÄÜÅÙÃ÷¸¦ ¸¹ÀÌ °¡Áö°í Àִ°¡¿¡ ´ëÇÑ ºñÀ²ÀÔ´Ï´Ù.

      ¸®ºä

      2.0 (ÃÑ 0°Ç)

      ±¸¸Å ÈÄ ¸®ºä ÀÛ¼º ½Ã, ºÏÇǴϾð Áö¼ö ÃÖ´ë 600Á¡

      ¸®ºä¾²±â

      ±â´ëÆò

      ÀÛ¼º½Ã À¯ÀÇ»çÇ×

      ÆòÁ¡
      0/200ÀÚ
      µî·ÏÇϱâ

      ±â´ëÆò

      0.0

      ±³È¯/ȯºÒ

      ±³È¯/ȯºÒ ¹æ¹ý

      ¡®¸¶ÀÌÆäÀÌÁö > Ãë¼Ò/¹Ýǰ/±³È¯/ȯºÒ¡¯ ¿¡¼­ ½ÅûÇÔ, 1:1 ¹®ÀÇ °Ô½ÃÆÇ ¶Ç´Â °í°´¼¾ÅÍ(1577-2555) ÀÌ¿ë °¡´É

      ±³È¯/ȯºÒ °¡´É ±â°£

      °í°´º¯½ÉÀº Ãâ°í¿Ï·á ´ÙÀ½³¯ºÎÅÍ 14ÀÏ ±îÁö¸¸ ±³È¯/ȯºÒÀÌ °¡´ÉÇÔ

      ±³È¯/ȯºÒ ºñ¿ë

      °í°´º¯½É ¶Ç´Â ±¸¸ÅÂø¿ÀÀÇ °æ¿ì¿¡¸¸ 2,500¿ø Åùèºñ¸¦ °í°´´ÔÀÌ ºÎ´ãÇÔ

      ±³È¯/ȯºÒ ºÒ°¡»çÀ¯

      ¹ÝǰÁ¢¼ö ¾øÀÌ ¹Ý¼ÛÇϰųª, ¿ìÆíÀ¸·Î º¸³¾ °æ¿ì »óǰ È®ÀÎÀÌ ¾î·Á¿ö ȯºÒÀÌ ºÒ°¡ÇÒ ¼ö ÀÖÀ½
      ¹è¼ÛµÈ »óǰÀÇ ºÐ½Ç, »óǰÆ÷ÀåÀÌ ÈÑ¼ÕµÈ °æ¿ì, ºñ´Ò·¦ÇÎµÈ »óǰÀÇ ºñ´Ò °³ºÀ½Ã ±³È¯/¹ÝǰÀÌ ºÒ°¡´ÉÇÔ

      ¼ÒºñÀÚ ÇÇÇØº¸»ó

      ¼ÒºñÀÚ ÇÇÇØº¸»óÀÇ ºÐÀïó¸® µî¿¡ °üÇÑ »çÇ×Àº ¼ÒºñÀÚºÐÀïÇØ°á±âÁØ(°øÁ¤°Å·¡À§¿øÈ¸ °í½Ã)¿¡ µû¶ó ºñÇØ º¸»ó ¹ÞÀ» ¼ö ÀÖÀ½
      ±³È¯/¹Ýǰ/º¸ÁõÁ¶°Ç ¹× ǰÁúº¸Áõ ±âÁØÀº ¼ÒºñÀڱ⺻¹ý¿¡ µû¸¥ ¼ÒºñÀÚ ºÐÀï ÇØ°á ±âÁØ¿¡ µû¶ó ÇÇÇØ¸¦ º¸»ó ¹ÞÀ» ¼ö ÀÖÀ½

      ±âŸ

      µµ¸Å»ó ¹× Á¦ÀÛ»ç »çÁ¤¿¡ µû¶ó ǰÀý/ÀýÆÇ µîÀÇ »çÀ¯·Î ÁÖ¹®ÀÌ Ãë¼ÒµÉ ¼ö ÀÖÀ½(ÀÌ °æ¿ì ÀÎÅÍÆÄÅ©µµ¼­¿¡¼­ °í°´´Ô²² º°µµ·Î ¿¬¶ôÇÏ¿© °íÁöÇÔ)

      ¹è¼Û¾È³»

      • ÀÎÅÍÆÄÅ© µµ¼­ »óǰÀº Åùè·Î ¹è¼ÛµÇ¸ç, Ãâ°í¿Ï·á 1~2Àϳ» »óǰÀ» ¹Þ¾Æ º¸½Ç ¼ö ÀÖ½À´Ï´Ù

      • Ãâ°í°¡´É ½Ã°£ÀÌ ¼­·Î ´Ù¸¥ »óǰÀ» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä »óǰÀ» ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.

      • ±ººÎ´ë, ±³µµ¼Ò µî ƯÁ¤±â°üÀº ¿ìü±¹ Åù踸 ¹è¼Û°¡´ÉÇÏ¿©, ÀÎÅÍÆÄÅ© ¿Ü Ÿ¾÷ü ¹è¼Û»óǰÀÎ °æ¿ì ¹ß¼ÛµÇÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù.

      • ¹è¼Ûºñ

      µµ¼­(Áß°íµµ¼­ Æ÷ÇÔ) ±¸¸Å

      2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)

      À½¹Ý/DVD/ÀâÁö/¸¸È­ ±¸¸Å

      2,000¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)

      µµ¼­¿Í À½¹Ý/DVD/ÀâÁö/¸¸È­/
      Áß°íÁ÷¹è¼Û»óǰÀ» ÇÔ²² ±¸¸Å

      2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)

      ¾÷üÁ÷Á¢¹è¼Û»óǰ ±¸¸Å

      ¾÷üº° »óÀÌÇÑ ¹è¼Ûºñ Àû¿ë