¢Â Á¦¸ñ
Linux Kernel do_brk() Ãë¾àÁ¡
¢Â °³¿ä
Linux Kernel¿¡¼ »ç¿ëµÇ´Â ƯÁ¤ ÇÔ¼ö¿¡¼ Ãë¾àÁ¡ÀÌ ¹ß°ßµÇ¾ú´Ù.
ÇØ´ç Ãë¾àÁ¡Àº Local»ó¿¡¼ ½Ã½ºÅÛ¿¡ Àå¾Ö¸¦ Áְųª root±ÇÇÑÀ» ȹµæÇÒ ¼ö ÀÖ´Ù.
¢Â °ø°ÝÀ¯Çü
- ½Ã½ºÅÛ Ãë¾àÁ¡À» ÀÌ¿ëÇÑ ±ÇÇÑ »ó½Â °ø°Ý
- ½Ã½ºÅÛ Ãë¾àÁ¡À» ÀÌ¿ëÇÑ ¼ºñ½º °ÅºÎ(Denial of Service) °ø°Ý
¢Â ÇØ´ç½Ã½ºÅÛ
Linux kernel 2.4.22ÀÌÇÏ ¸ðµç ¹öÀü
¢Â ¿µÇâ
ÀÌ Ãë¾àÁ¡Àº Linux Kernel ³»ºÎÄÚµåÀÇ À߸øµÈ ¼³°è·Î ÀÎÇÑ Ãë¾àÁ¡À¸·Î ÀϹÝÀ¯Àú°¡ Kernel ¸Þ¸ð¸®¿¡ Á÷Á¢ Á¢±ÙÇÒ ¼ö ÀÖ´Ù.
Kernel ¸Þ¸ð¸®ÀÇ Á¢±ÙÀ» ÅëÇÏ¿© ½Ã½ºÅÛÀ» Crash½ÃŰ°Å³ª ¸Þ¸ð¸®Á¶ÀÛÀ» ÅëÇÑ root±ÇÇÑ È¹µæÀÌ °¡´ÉÇÏ´Ù.
ÇöÀç±îÁö ¾Ë·ÁÁø °ø°Ý¹æ¹ýÀº Local»ó¿¡¼¸¸ °¡´ÉÇϸç remote¿¡¼´Â ºÒ°¡´ÉÇϹǷΠÀϹݰèÁ¤À» ÅëÇØ LoginÀ» ÇÏ¿©¾ß¸¸ÀÌ °ø°Ý °¡´ÉÇÏ´Ù.
¢Â ¼³¸í
Linux Kernel¿¡´Â brk()¶ó´Â ½Ã½ºÅÛÄÝÀÌ ÀÖÀ¸¸ç ÇØ´ç ½Ã½ºÅÛÄÝ¿¡¼´Â do_brk()ÇÏ´Â ÇÔ¼ö°¡ Á¸ÀçÇÑ´Ù.
do_brk()ÇÔ¼ö´Â ELF, a.outµîÀÇ ½ÇÇàÆÄÀÏÀ» ½ÇÇà½Ã¿¡ ¸Þ¸ð¸®¿¡ ·ÎµùÇÏ´Â ¿ªÈ°À» Çϸç do_brk()ÇÔ¼ö³»ÀÇ Ã³¸®ºÎºÐ¿¡¼ ¸Þ¸ð¸®Å©±â¸¦ ÀûÀýÇÏ°Ô °Ë»çÇÏÁö ¸øÇÏ¿© Kernel¿µ¿ªÀÇ ¸Þ¸ð¸®±îÁö Á¢±Ù°¡´ÉÇÒ ¼ö ÀÖ´Ù.
Kernel¸Þ¸ð¸®´Â OSÀÚüÀÇ ÄÚµåµé°ú Á¤º¸°¡ Æ÷ÇԵǾî ÀÖ¾î ÀϹÝÀ¯Àú´Â Á¢±ÙÀÌ ºÒ°¡´ÉÇϸç ÀÌ Ãë¾àÁ¡À» »ç¿ëÇÏ¿© ÀÏ¹Ý À¯Àú°¡ ¸Þ¸ð¸®¿¡ writeÇÒ °æ¿ì ½Ã½ºÅÛÀÌ crashµÇ°Å³ª rootȹµæµîÀÇ ÀÛ¾÷À» ÇÒ ¼ö ÀÖ´Ù.
¢Â ÇØ°áÃ¥
KernelÀÚü¸¦ UpgradeÇÏ¿©¾ß Çϸç 2.4.23ÀÌ»ó ¹öÀüÀÇ Kernel¿¡¼ Ãë¾àÁ¡ÀÌ Á¦°ÅµÈ´Ù.
Linux Kernel
http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.23.tar.bz2
RedHat Linux
http://rhn.redhat.com/errata/RHSA-2003-392.html
Ãë¾àÁ¡ CVE
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0961