À¯´Ð½º/¸®´ª½º ¼¹ö ½Ã½ºÅÛ º¸¾È
°¡. ÃֽŹöÀü ÆÐÄ¡ Àû¿ë
(1) RPM(Redhat Package Management)À» ÀÌ¿ëÇÑ ¾÷µ¥ÀÌÆ®
À¯´Ð½º °è¿ÀÇ ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡ÇÒ ¶§ ÄÄÆÄÀÏÇÏ´Â ¹ø°Å·Î¿òÀ» ÇØ°áÇϱâ À§ÇÏ¿© RedHat¿¡¼´Â RPMÀ̶ó´Â ÆÐÅ°Áö °ü¸® À¯Æ¿¸®Æ¼¸¦ ¸¸µé¾ú´Ù.
¡Ü ÁÖ¿ä RPM »ç¿ë¹æ¹ý
±¸ºÐ |
¹æ¹ý |
¼³Ä¡¿©ºÎ È®ÀÎ |
rpm -qa apache |
¼³Ä¡ |
rpm -ivh apache-1.3.12-2.i386.rpm |
¾÷±×·¹À̵å |
rpm -Uvh apache-1.3.20-14.i386.rpm |
»èÁ¦ |
rpm -e apache-1.3.20-14 |
¡Ü RPM¿¡¼ Á¦°øÇÏ´Â ¿É¼Ç
±¸ºÐ |
¹æ¹ý |
-i |
¼³Ä¡ |
-U |
¾÷±×·¹À̵å |
-e |
Á¦°Å |
-v |
°ËÁõ |
-h |
ÁøÇà»óŸ¦ #À¸·Î º¸¿©ÁÜ |
-q
|
ÆÐÅ°Áö°¡ ¼³Ä¡µÇ¾î ÀÖ´ÂÁö È®ÀÎ |
--force |
rpm ¹öÀüÀ» ´Ù¿î ±×·¹À̵å |
--nodeps |
ÀÇÁ¸¼º°ü°è¿¡ ÀÖ´Â ´Ù¸¥ ÆÐÅ°Áö°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾Ê´Ù Çصµ °Á¦ ¼³Ä¡ |
--test |
½ÇÁ¦·Î »èÁ¦¸¦ ÇÏÁö ¾Ê°í Å×½ºÆ®ÇÏ´Â ¿É¼Ç |
-qc |
/etc/ ¹Ø¿¡ ¼³Ä¡µÇ´Â ¼³Á¤ ÆÄÀϸ¸ È®ÀÎ |
-qf |
¼³Ä¡µÇ¾î ÀÖ´Â ÆÄÀÏÀÌ ¾î´À ÆÐÅ°Áö¿¡ ¼ÓÇØ ÀÖ´ÂÁö È®ÀÎ |
-ql |
ÆÐÅ°Áö ¸ñ·Ï È®ÀÎ |
-qlv |
ÆÐÅ°Áö ¸ñ·Ï ÀÚ¼¼ÇÑ Á¤º¸ È®ÀÎ |
-q -requires |
ÆÐÅ°Áö°¡ ÇÊ¿äÇÑ ¸ðµâ (ÀÇÁ¸¼º) |
-q -scripts |
ÆÐÅ°Áö°¡ ¼³Ä¡µÇ±â Àü ¶Ç´Â ¼³Ä¡µÈ ÈÄ¿¡ ½ÇÇàµÇ´Â ½ºÅ©¸³Æ® È®ÀÎ |
-qcf |
ÆÄÀÏ°ú °ü·ÃµÈ ¼³Á¤ ÆÄÀÏ È®ÀÎ |
-qpil |
¿øÇÏ´Â ÆÐÅ°Áö·ÎºÎÅÍ ÆÐÅ°Áö Á¤º¸¿Í ¼³Ä¡µÇ´Â °÷ÀÇ Á¤º¸ È®ÀÎ |
-Kv |
md5 üũ¸¦ Çؼ ÀÚ¼¼ÇÏ°Ô º¸¿©ÁÜ | ÆÐÅ°Áöº° RPM¹öÀü ´Ù¿î»çÀÌÆ® : http://ftp.redhat.com/pub/redhat/linux/
(2) Solaris ÆÐÄ¡
¡Ü Solaris ÆÐÄ¡»çÀÌÆ®¿¡¼ ½Ã½ºÅÛ¿¡ ¸Â°Ô ÆÐÄ¡¸¦ ¼±ÅÃÇØ ´Ù¿î¹Þ¾Æ ¾ÐÃàÀ» Ǭ´Ù. ¡Ü ÆÐÄ¡°¡ ÀÌ¹Ì ½Ã½ºÅÛ¿¡ ¼³Ä¡µÇ¾î ÀÖ´ÂÁö È®ÀÎÇÑ´Ù. # showrev -p | grep ¡Ü ÆÐÄ¡°¡ ÀÖ´Â µð·ºÅ丮·Î À̵¿ÇÏ¿© ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÑ´Ù. # patchadd¡°ÆÐÄ¡ ID¡±
¡Ø Solaris ÆÐÄ¡ »çÀÌÆ® http://sunsolve1.sun.com ftp://sunsove1.sun.com
³ª. »ç¿ëÀÚ°èÁ¤ ¹× Æнº¿öµå °ü¸®
¡Ü /etc/passwd ÆÄÀÏÀ» ÁÖ±âÀûÀ¸·Î Á¡°ËÇÏ¿© »ç¿ëÇÏÁö ¾Ê´Â °èÁ¤ ¹× guest °èÁ¤, Æнº¿öµå°¡ ÁöÁ¤µÇÁö ¾ÊÀº °èÁ¤À» »èÁ¦ÇÑ´Ù. ¿¹) adm, lp, sync, shutdown, halt, news, uucp, operator, games, gopher, ftp(anonymous »ç¿ëÄ¡ ¾ÊÀº °æ¿ì Á¦°Å), rpcuser, rpc µî ºÒÇÊ¿äÇÑ °èÁ¤Àº userdel ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¸ðµÎ Á¦°ÅÇÑ´Ù.
# more /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin news:x:9:13:news:/etc/news: uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin gopher:x:13:30:gopher:/var/gopher:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin nobody:x:99:99:Nobody:/:/sbin/nologin ntp:x:38:38::/etc/ntp:/sbin/nologin rpc:x:32:32:Portmapper RPC user:/:/sbin/nologin vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin nscd:x:28:28:NSCD Daemon:/:/sbin/nologin sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin rpm:x:37:37::/var/lib/rpm:/bin/bash mailnull:x:47:47::/var/spool/mqueue:/sbin/nologin smmsp:x:51:51::/var/spool/mqueue:/sbin/nologin | ¡Ü bin, sync, daemon µî°ú °°Àº ½Ã½ºÅÛ °èÁ¤Àº /bin/false, /dev/null µîÀ» ÀÌ¿ëÇÏ¿© ½Ã½ºÅÛ ½©À» ºÎ¿©ÇÏÁö ¾Ê´Â´Ù.
# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/bin/false ? bin °èÁ¤À¸·Î´Â ½©ÀÌ ºÎ¿©µÇÁö ¾ÊÀ½ daemon:x:2:2:daemon:/sbin:/bin/false nobody:x:99:99:Nobody:/:/bin/false hcjung:x:501:10:mail user:/home/hcjung:/bin/false | ¡Ü ÃÖ¼Ò Æнº¿öµå ±æÀÌ Á¦ÇÑ /etc/passwd ÆÄÀÏ¿¡¼ Æнº¿öµåÀÇ ÃÖ¼Ò ±æÀ̸¦ 8ÀÚ¸® ÀÌ»óÀ¸·Î, ¿µ¹®ÀÚ(´ë¼Ò±¸º°), ¼ýÀÚ, Ư¼ö¹®ÀÚ¸¦ È¥¿ëÇÑ °æ¿ì ÀÌ¿Ü¿¡´Â Æнº¿öµå¸¦ ¸¸µéÁö ¸øÇϵµ·Ï ÇÑ´Ù. ÀÌ´Â Æнº¿öµå °ü¸® ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ¿© ¼öÇàÇÒ ¼ö ÀÖ´Ù.
¡Ü °·ÂÇÑ Æнº¿öµå »ç¿ë Æнº¿öµå°¡ ¾ø°Å³ª, ³Ê¹« ½¬¿î Æнº¿öµå¸¦ °¡Áø °èÁ¤À» ã¾Æ¼ ¼öÁ¤Çϵµ·Ï ÇÑ´Ù. ÀÌ´Â CrackÀ» ÀÌ¿ëÇÏ¿© ÁÖ±âÀûÀ¸·Î Á¡°ËÇÒ ¼ö ÀÖ´Ù.
¡Ü Æнº¿öµå À¯È¿±â°£ ¼³Á¤ Æнº¿öµåÀÇ À¯È¿±â°£À» ¼³Á¤ÇÏ¿© °ü¸®Çϵµ·Ï ÇÑ´Ù.
´Ù. ºÒÇÊ¿äÇÑ ¼ºñ½º ÁßÁö
½Ã½ºÅÛ ¼³Ä¡ ½Ã ±âº»À¸·Î ¼³Ä¡µÇ´Â ¿©·¯ ¼ºñ½ºµéÀº ´ëºÎºÐ ÇÊ¿äÇÏÁö ¾ÊÀ¸¸ç º¸¾ÈÃø¸é¿¡¼µµ ÀáÀçÀûÀÎ À§ÇèÀ» °®°í ÀÖÀ¸¹Ç·Î ºÒÇÊ¿äÇÑ ¼ºñ½º´Â Á¦°ÅÇϵµ·Ï ÇÑ´Ù.
¡Ü º¸¾È»ó Ãë¾àÇÑ ¼ºñ½º ¿ø°Ý¿¡¼ ·çÆ® ±ÇÇÑÀ» ÃëµæÇÒ ¼ö ÀÖ´Â popd, imapd, sadmind, rpc.cmsd, rpc.ttdbserverd¿Í °°Àº ¼ºñ½º³ª rsh, rlogin, rexec µî°ú °°Àº¡®r¡¯¸í·É¾îµéÀÌ ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é Á¦°ÅÇÑ´Ù.
¡Ü /etc/inetd.conf, /etc/xinetd.d ÆÄÀÏ¿¡¼ ºÒÇÊ¿äÇÑ ¼ºñ½º Á¦°Å - /etc/inetd.conf¸¦ »ç¿ëÇÒ ¶§ /etc/inetd.confÆÄÀÏ¿¡´Â µðÆúÆ®·Î ¿©·¯ ´Ù¾çÇÑ ¼ºñ½ºµéÀÌ ¼³Á¤µÇ¾î ÀÖÀ¸³ª ´ëºÎºÐ ftp¿Í telnet¸¸ÀÌ ÇÊ¿äÇÏ´Ù. pop, imapd, rsh°ú °°Àº ºÒÇÊ¿äÇÑ ¼ºñ½ºµéÀº ÄÚ¸àÆ®(#)·Î ó¸®ÇÏ¿© Á¦°ÅÇϵµ·Ï ÇÑ´Ù.
¿¹) ¨ç root¸¸ÀÌ Àбâ/¾²±â°¡ °¡´ÉÇϵµ·Ï Æ۹̼ÇÀ» ¹Ù²ãÁØ´Ù. # chmod 600 /etc/inetd.conf ¨è /etc/inetd.conf ÆÄÀÏÀ» ¾Æ·¡¿Í °°ÀÌ ÄÚ¸àÆ® ó¸® ¹× ÆíÁýÇÑ´Ù.
# vi /etc/inetd.conf ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -L -i -o telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd #gopher stream tcp nowait root /usr/sbin/tcpd gn #smtp stream tcp nowait root /usr/bin/smtpd smtpd #nntp stream tcp nowait root /usr/sbin/tcpd in.nntpd | ¨é inetd µ¥¸óÀ» ´Ù½Ã ¶ç¿öÁØ´Ù. # killall -HUP inetd ¨ê °ü¸®ÀÚ¸¸ÀÌ ÀÌ ÆÄÀÏ¿¡´ëÇØ Á¢±ÙÇÒ ¼öÀÖµµ·Ï¡°inetd.conf¡±ÆÄÀÏÀ» ¼ÂÆÃÇØ ´Ù¸¥ »ç¶÷ÀÌ ¼öÁ¤, »èÁ¦ÇÒ ¼ö ¾øµµ·Ï ÇÑ´Ù. ÃßÈÄ inetd.conf ÆÄÀÏÀ» ¼öÁ¤ÇÏ°íÀÚÇϸé Ç÷¡±×¸¦ -i·Î ¹Ù²ã ÁÖ¸é µÈ´Ù. # chattr +i /etc/inetd.conf
- xinetd¸¦ »ç¿ëÇÒ ¶§ ¨ç /etc/xinetd.dµð·ºÅ丮 ³»¿¡´Â ¸®´ª½º ½Ã½ºÅÛ¿¡¼ ½ÇÇàÇÏ´Â °¢°¢ÀÇ ¼ºñ½ºµéÀÇ ¼³Á¤ ÆÄÀÏÀÌ À§Ä¡ÇÏ°í ÀÖ´Ù. Á¦°ÅÇÏ°íÀÚ ÇÏ´Â ¼ºñ½º¸í ÆÄÀÏÀ» ¿¾î ÄÚ¸àÆ® ó¸®ÇÑ´Ù
# vi /etc/inetd.conf ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -L -i -o telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd #gopher stream tcp nowait root /usr/sbin/tcpd gn #smtp stream tcp nowait root /usr/bin/smtpd smtpd #nntp stream tcp nowait root /usr/sbin/tcpd in.nntpd | disable = yes·Î Çϸé ÇØ´ç ¼ºñ½º°¡ ½ÇÇàµÇÁö ¾Ê´Â´Ù.
# vi telnet # default: on # description: The telnet server serves telnet sessions; it uses \ # unencrypted username/password pairs for authentication. service telnet { flags = REUSE socket_type = stream wait = no user = root server = /usr/sbin/in.telnetd log_on_failure += USERID disable = yes } | ¨è /etc/rc.d/init.d¿¡¼ xinetdµ¥¸óÀ» Àç½ÃÀÛÇÑ´Ù. # ./xinetd restart
¡Ü /etc/rc.d/init.d¿¡¼ ºÒÇÊ¿äÇÑ ¼ºñ½º µ¥¸ó »èÁ¦ ntsysv´Â runlevelÀ» Á¶Á¤ÇÒ ¼ö ÀÖ´Â °£´ÜÇÑ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ´Â µµ±¸ÀÌ´Ù. ½© ÇÁ·ÒÇÁÆ® ¿¡¼¡°ntsysv¡±¸¦ ÀÔ·ÂÇÑ´Ù. [*]ó·³ µÈ °ÍÀº ¸®´ª½º ½Ã½ºÅÛÀÌ ºÎÆýÿ¡ ÀÌ µ¥¸óÀ» ÀÚµ¿À¸·Î ½ÃÀÛ½ÃŲ´Ù´Â °ÍÀÌ°í []ó·³ °ø¹éÀ¸·Î µÇ¾î ÀÖÀ¸¸é ÀÌ µ¥¸óÀº ÀÚµ¿À¸·Î ½ÃÀÛµÇÁö ¾Ê´Â´Ù. ¼ºñ½ºÇÏÁö ¾Ê´Â Ç׸ñµéÀº ¸ðµÎ üũ¸¦ ¾ø¾Ö°í ¼¹ö¸¦ Àç½ÃÀÛÇÑ´Ù. XÀ©µµ¿ì ȸéÀÇ GNOME¿¡¼¡°/usr/bin/serviceconf¡±À¯Æ¿¸®Æ¼¸¦ ÀÌ¿ëÇÏ¸é ¸®´ª½º ½Ã½ºÅÛÀ» ½ÃÀÛÇÒ ¶§ ÀÚµ¿À¸·Î ½ÃÀÛÇÒ °ÍÀÎÁö¿¡ ´ëÇØ ÁöÁ¤À» ÇÒ ¼ö ÀÖ´Ù. ¼ºñ½ºÇÏÁö ¾Ê´Â Ç׸ñµéÀº ¸ðµÎ üũ¸¦ ¾ø¾Ö°í ¼¹ö¸¦ Àç½ÃÀÛÇÑ´Ù.
# cd init.d # ls aep1000 firstboot isdn mysql ntpd rawdevices squid yppasswdd anacron functions kWnn named pcmcia rhnsd sshd ypserv apmd gpm kdcrotate netfs portmap saslauthd syslog ypxfrd atd halt keytable network postfix sendmail tux autofs httpd killall nfs postgresql single xfs bcm5820 iptables kudzu nfslock pxe snmpd xinetd crond irda lpd nscd random snmptrapd ypbind |
¶ó. ¿ø°Ý Á¢¼Ó °ü¸®
(1) ¿ø°ÝÁö¿¡¼ root °èÁ¤ Á¢¼Ó Á¦ÇÑ
¡Ü Linux /etc/securetty ÆÄÀÏÀº ¾î¶² °¡»óÀÇ Å͹̳ÎÀÌ root·Î Á¢¼ÓÇÒ ¼ö ÀÖ´ÂÁö¸¦ ¼³Á¤ÇÏ´Â ÆÄÀÏ·Î, ·ÎÄà Á¢¼Ó¸¸ÀÌ °¡´ÉÇÑ tty1, tty2¿Í °°Àº Å͹̳θ¸ ÀÌ ÆÄÀÏ¿¡ ¸®½ºÆ® µÇµµ·Ï ÇÑ´Ù.
# cat /etc/securetty tty1 tty2 tty3 ttyp1 --> ¿ø°ÝÁö¿¡¼ root·Î Á¢±ÙÇÏ´Â °ÍÀ» Çã¿ëÇϱ⠶§¹®¿¡ »èÁ¦ | ¡Ü Solaris /etc/default/login ÆÄÀÏ¿¡¼ CONSOLE º¯¼ö ÄÚ¸àÆ®(#) ¼³Á¤À» ÇØÁ¦ÇÏ¿© root·ÎÀÇ ¿ø°ÝÁöÁ¢¼ÓÀ» Á¦ÇÑÇÑ´Ù.
# cat /etc/default/login ....... # If CONSOLE is set, root can only login on that device. # Comment this line out to allow remote login by root. # CSOLE=/dev/console --> Äֿܼ¡¼¸¸ Á¢¼Ó °¡´ÉÇÔ ........ | (2) ŸÀӾƿô ¼³Á¤
UnixÀÇ °æ¿ì /etc/default/login ÆÄÀÏ¿¡¼ TIMEOUT º¯¼ö¸¦ 0~900»çÀÌ¿¡¼ ¼³Á¤ÇÏ¿©, ¼³Á¤µÈ ½Ã°£ÀÌ Áö³ªµµ·Ï »ç¿ëÇÏÁö ¾ÊÀ¸¸é, ÇØ´ç ¼¼¼ÇÀ» Á¾·áÇϵµ·Ï ¼³Á¤ÇÑ´Ù. Linux¿¡¼ rootÀÇ ÀÛ¾÷ ½Ã°£À» Á¦¾îÇϱâ À§ÇØ »ç¿ëÇÏ´Â ¿É¼ÇÀº TMOUTÀ̸ç, ÀÌ°ÍÀº ¡°/etc/profile¡±µî¿¡ »ç¿ëÇÏ¿© ¸ðµç »ç¿ëÀÚ¿¡°Ô Àû¿ë½Ãų ¼öµµ ÀÖ°í,¡° /root/.bash_profile¡±¿¡¸¸ ÀÔ·ÂÇÏ¿© root¸¸ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ¿¹) rootÀÇ È¨µð·ºÅ丮¿¡ Àִ¡°.bash_profile¡±¿¡ TMOUT¿É¼Ç Ãß°¡
# cat .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs TMOUT=900 PATH=$PATH:$HOME/bin BASH_ENV=$HOME/.bashrc USERNAME=¡±root¡± export USERNAME BASH_ENV PATH | ¡Ø ÁÖÀÇ : TMOUT=900¿¡¼ 900À̶ó´Â ¼ýÀÚÀÇ ´ÜÀ§´Â ÃÊ·Î, root·Î ½Ã½ºÅÛ¿¡ ·Î±×ÀÎ ÇÑ ÈÄ 900ÃÊ µ¿¾È ¾Æ¹«·± ÀÔ·ÂÀÌ ¾øÀ¸¸é ÀÚµ¿À¸·Î ·Î±×¾Æ¿ôµÈ´Ù.
¸¶. ÆÄÀϽýºÅÛ º¸¾È
¡Ü setuid¿Í setgid ÆÄÀÏ¿¡´Â »ç¿ëÀÚ ±×·ìº°·Î ÇØ´ç ÆÄÀÏÀ» »ç¿ëÇÒ ¼ö ÀÖ´Â ±ÇÇÑÀ» ¼³Á¤ÇÒ ¼ö ÀÖ´Ù ÀÖ´Ù. (ÆÄÀÏ ¼ÒÀ¯ÁÖ¸¸ÀÌ °®´Â ±ÇÇÑ, ±×·ìÀÌ °®´Â ±ÇÇÑ, ÀÏ¹Ý »ç¿ëÀÚÀÇ ±ÇÇÑ µî) À̶§ ÆÄÀÏÀÇ ¼ÒÀ¯ÁÖ°¡ ¾Æ´Ñ ´Ù¸¥ »ç¿ëÀÚ¿¡°Ô ¾î¶² ±ÇÇÑÀ» ¼³Á¤ÇÒ °ÍÀΰ¡´Â ´ë´ÜÈ÷ Áß¿äÇÑ ¹®Á¦À̸ç, ƯÈ÷ ¸î °³ÀÇ Æ¯¼öÇÑ ÆÄÀϵéÀº Ưº°ÇÑ ±ÇÇÑ °ü¸®°¡ ÇÊ¿äÇÏ´Ù. ¿¹¸¦ µé¾î Æнº¿öµå °ü¸®¿Í °°Àº °æ¿ì ³²ÀÇ Æнº¿öµå´Â ´ç¿¬È÷ Á¢±ÙÇÒ ¼ö´Â ¾øÀ¸³ª ÀÚ±âÀÇ Æнº¿öµå´Â ¼öÁ¤ÇÒ ¼ö ÀÖ´Â ±ÇÇÑÀÌ ÁÖ¾îÁ®¾ß Çϴµ¥ setuid ¿Í setgid´Â ¹Ù·Î ÀÌ·± °æ¿ì¿¡ »ç¿ëÇÏ´Â ÆÛ¹Ì¼Ç ¼³Á¤ ¹æ¹ýÀÌ´Ù. setuid¿Í setgid´Â À¯ÀÍÇÑ Æ۹̼ÇÀÌÁö¸¸, ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â »ç¿ëÀÚ°¡ ´©±¸À̰ųª ÆÄÀÏÀÇ ¼ÒÀ¯ÀÚ(º¸Åë root) ±ÇÇÑÀ¸·Î ¼öÇàµÇ±â ¶§¹®¿¡ ÇÁ·Î±×·¥¿¡ ¹ö±×°¡ ÀÖ´Ù¸é ±×°ÍÀ» ÀÌ¿ëÇؼ ÇØÅ·ÀÌ °¡´ÉÇϹǷΠ´ÙÀ½ ¸í·É¾î¸¦ ÀÌ¿ëÇÏ¿© setuid³ª setgid ±ÇÇÑÀÌ ¼³Á¤µÈ ÇØ´ç ÆÄÀϵéÀ» ã¾Æ ºñÀΰ¡ µÈ »ç¿ëÀÌ ÀÖ´ÂÁö È®ÀÎÇÑ´Ù.
# find / -type f \(-perm -4000 -o perm -2000 \) -exec ls -al {} \;
setuid³ª setgid Æ۹̼ÇÀÌ ºÒÇÊ¿äÇÏ°Ô ¼³Á¤µÈ °æ¿ì´Â ¾÷±×·¹À̵åÇϰųª »èÁ¦ÇØ ÁØ´Ù.
¡Ü ȯ°æ¼³Á¤ ÆÄÀÏ, ½Ã½ºÅÛ ¸í·É¾î, ·Î±×ÆÄÀÏ¿¡ ´ëÇÑ Á¢±ÙÁ¦¾î ¼³Á¤ - /etc/utmp¿Í /var/adm/wtmp¸¦ 644·Î ¼³Á¤ÇÑ´Ù. - /etc/motd¿Í /etc/mtab¸¦ 644·Î ¼³Á¤ÇÑ´Ù. - /etc/syslog.pid¸¦ 644·Î ¼³Á¤ÇÑ´Ù. - rc.* startup ÆÄÀϵé°ú /etc/hosts.allow¿Í °°Àº ½Ã½ºÅÛ È¯°æ ¼³Á¤ÆÄÀϵéÀº ÀÏ¹Ý »ç¿ëÀÚ°¡ Á¢±ÙÇÏÁö ¸øÇϵµ·Ï, Àб⠱ÇÇѱîÁö Á¦¾àÇÑ´Ù. - /var/log/ ÀÌÇÏÀÇ ¸ðµç µð·ºÅ丮¸¦ root¸¸ ¾²±â °¡´ÉÇϵµ·Ï ÇÑ´Ù. - ÆÄÀϽýºÅÛ º¸¾È±â´ÉÀÌ Áö¿øµÇ¸é ½Ã½ºÅÛ ¸í·É ÆÄÀÏÀº º¯°æÇÏÁö ¸øÇϵµ·Ï Çϸç, ·Î±× ÆÄÀÏÀº Append-only·Î ¼³Á¤ÇÑ´Ù. - /vmunix¿Í °°Àº Ä¿³ÎÀº ¼ÒÀ¯ÀÚ¸¦ root·Î, permissionÀ» 644·Î ¼³Á¤ÇÑ´Ù. - /etc, /usr/etc, /bin, /usr/bin, /sbin, /tmp, /var/tmp´Â ¼ÒÀ¯ÀÚ¸¦ root·Î ÇÏ°í, /tmp¿Í /var/tmp´Â sticky-bitÀ» ¼³Á¤ÇÑ´Ù.
¡Ü ÀÓÀÇÀÇ »ç¿ëÀÚ¿¡°Ô ¾²±â ±ÇÇÑ ±ÝÁö ÀÓÀÇÀÇ »ç¿ëÀÚ¿¡°Ô ÆÄÀÏ°ú µð·ºÅ丮¿¡ ´ëÇؼ ¾²±â ±ÇÇÑÀ» ±ÝÁöÇÑ´Ù. Áï ÆÄÀÏ¿¡ 077À̳ª 027 ó·³ Á¢±Ù±ÇÇÑÀ» ¼³Á¤ÇÏ¸é ¾È µÈ´Ù. ƯÈ÷ root¿¡ ÀÇÇؼ ½ÇÇàµÇ´Â ÆÄÀÏ¿¡ ´ëÇؼ ÀÏ¹Ý »ç¿ëÀÚ¿¡°Ô ¾²±â ±ÇÇÑÀ» Çã¿ëÇÏÁö ¾Êµµ·Ï ÇÑ´Ù.
¹Ù. ¿¹¾à ÀÛ¾÷(Cron) °ü¸®
¡Ü rootÀÇ crontabÀÇ ¼ÒÀ¯ÀÚ¸¦ root·Î Çϸç, Çã¿ë±ÇÇÑÀ» 600À¸·Î ¼³Á¤ÇÑ´Ù. ¡Ü ÀϹݻç¿ëÀÚ¿¡ ´ëÇؼ cronÀ» Diable·Î ¼³Á¤ÇÑ´Ù.
»ç. ½ºÅØ(Stack)½ÇÇà ¹æÁö
Unix(solaris)ÀÇ °æ¿ì /etc/system ÆÄÀÏ¿¡ ´ÙÀ½ÀÇ ¼³Á¤À» Ãß°¡ÇÔÀ¸·Î½á ¿À¹öÇ÷ο츦 ÅëÇÑ ÇØÅ· À» ±Ùº»ÀûÀ¸·Î ¸·À» ¼ö ÀÖ´Ù. set noexec_user_stack=1 set noexec_user_stack_log=1
¾Æ. FTP º¸¾È
FTP¼ºñ½º´Â À¯´Ð½º ³×Æ®¿öÅ©¿¡¼ ÇʼöÀûÀÌÁö¸¸ ¾ÈÀüÇÑ ¼ºñ½º°¡ ¾Æ´Ï¹Ç·Î ¾ö°ÝÇÑ ¼³Á¤ ¿É¼ÇÀ» Àû¿ëÇÏ°í ¸ðµç »óŸ¦ ±â·ÏÇØ¾ß ÇÑ´Ù.
¡Ü ¸¹Àº FTPÇÁ·Î±×·¥Áß¿¡¼ Å×½ºÆ®¸¦ °ÅÃÄ ¾ÈÀüÇÑ °ÍÀ» ¼±ÅÃÇÑ´Ù. ¡Ü FTP ¼³Á¤ ÆÄÀÏ(ftpusers, ftphosts, ftpaccess)µé¿¡ ´ëÇØ Á¤È®ÇÑ º¸¾È ¼³Á¤À» ÇÑ´Ù. ¡Ü ftpwatchµîÀÇ µµ±¸¸¦ ÀÌ¿ëÇØ °¨½ÃÇÑ´Ù. ¡Ü anonymous FTP¸¦ »ç¿ëÇØ Á¢±Ù °¡´ÉÇÑ µð·ºÅ丮³ª ÆÄÀϵéÀÌ Á¦´ë·Î ±¸¼ºµÇ¾î ÀÖ´ÂÁö Á¡°ËÇÑ´Ù. ¡Ü FTPÀÇ ±×·ìÆÄÀÏ·Î ½Ã½ºÅÛ ±×·ìÆÄÀÏÀ» »ç¿ëÇÏÁö ¾Ê´Â´Ù. ¡Ü FTPÀÇ º¸Á¶ µð·ºÅ丮ÀÎ etc, binÀº ftpÀÇ ¼ÒÀ¯¿©¼´Â ¾ÈµÈ´Ù.
Ãâó -Çѱ¹Á¤º¸º¸È£ÁøÈï¿ø »çÀ̹ö¾ÈÀü¸Þ´º¾ó Áß
|
|