Practically Useful UNIX Security Administration

±èÈÖ°­ (Sakai Kim) sakai@major.kaist.ac.kr

¡¡

Contents

  • General Security Administration II ºÎ(Áö³­ È£)
  • Process °ü¸®, °¨½Ã¹ý
  • General Security Administration III ºÎ(À̹ø È£)
  • ½Ã½ºÅÛÀÇ ·Î±× °ü¸® ¹× ºÐ¼®¹ý.

À̹øÈ£¿¡¼­´Â Áö³­È£¿¡ À̾î General Security Administration Áß System log file Management , ¿¡ ´ëÇØ ´Ù·ç°Ú´Ù. À̹ø È£¿¡¼­ ÁßÁ¡ÀûÀ¸·Î ´Ù·ê ³»¿ëÀº ½Ã½ºÅÛ¿¡ Á¸ÀçÇÏ´Â ·Î±×È­ÀϵéÀ» ºÐ¼®ÇÏ°í ¹®Á¦Á¡À» ¹ß°ßÇÏ´Â ¹ý, À̸¦ ÅëÇؼ­ ÇØÄ¿°¡ ħÀÔÀ» Çß´ÂÁö À¯¹«¸¦ ±¸ºÐÇØ ³»°í ÃßÀûÇÏ´Â ¹ý¿¡ ´ëÇØ »ìÆ캸µµ·Ï ÇÏ°Ú´Ù.

¡¡

General Security(·Î±×ºÐ¼®)

1. ·Î±×È­Àϵé

½Ã½ºÅÛ ³»ºÎ¿¡´Â ¾î¶°ÇÑ ·Î±×È­ÀϵéÀÌ »ý±â´Â°¡? ¹°·Ð ±¸µ¿½ÃÅ°°í ÀÖ´Â ÇÁ·Î±×·¥À̳ª daemon ¿¡ µû¶ó ´õ ¸¹ÀÌ Á¸ÀçÇÒ ¼öµµ ÀÖ°í, ´ú Á¸ÀçÇÒ ¼öµµ ÀÖÁö¸¸, ÀϹÝÀûÀ¸·Î ´ÙÀ½°ú °°Àº ·Î±×È­ÀϵéÀÌ Á¸ÀçÇÏ°í ÀÖ´Ù.

¡¡

  • sulog - su ¸í·É¾î °ü·Ã ±â·Ï
  • .history - »ç¿ëÀÚ È÷½ºÅ丮 È­ÀÏ
  • utmp - ÇöÀç »ç¿ëÀÚ ¸®½ºÆ®.
  • wtmp - ·Î±ä, reboot Á¤º¸.
  • lastlog - »ç¿ëÀÚ ÃÖÁ¾ ·Î±ä Á¤º¸.
  • pacct - »ç¿ëÀÚ ¸í·É Á¤º¸.
  • messages - Ä¿³Î ¿¡·¯, ¸®ºÎÆà ¸Þ½ÃÁö.
  • syslog - ¸ÞÀÏ µð¹ö±ë Á¤º¸.

¡¡

°¢°¢¿¡ ´ëÇØ ÀÚ¼¼È÷ »ìÆ캸±â·Î ÇÏÀÚ.

1.1. sulog

¸ðµç UNIX ½Ã½ºÅÛ¿¡¼­´Â superuser °¡ µÇ´Â ½Ãµµ¸¦ logging (¸Þ½ÃÁö¸¦ È­ÀÏ·Î ÀúÀåÇØ ±â·ÏÇÏ´Â °Í) Çϵµ·Ï ±¸ÇöµÇ¾î ÀÖ´Ù. ÀÌ·¯ÇÑ ·Î±×È­ÀϵéÀº ´©°¡ superuser °¡ µÇ¾ú´ÂÁö Á¶»çÇÒ ¼ö ÀÖ´Â ÀÚ·á°¡ µÇ±â ¶§¹®¿¡ ¾ÆÁÖ À¯¿ëÇÏ´Ù.

superuser °¡ µÇ´Â ¸í·É¾î·Î su °¡ ÀÖ°í, su¿¡ ´ëÇÑ log È­ÀÏÀÎ sulog ´Â ´ÙÀ½ÀÇ µð·ºÅ丮¿¡ º¸°üÀÌ µÇ°Ô µÈ´Ù.

¡¡¡¡

  • SCO UNIX , Solaris

/etc/default/su È­ÀÏ¿¡ SULOG È­ÀÏÀÇ À§Ä¡¸¦ ÁöÁ¤ÇØ ÁÙ ¼ö ÀÖÀ½

  • AIX

/var/adm/sulog

  • Digital UNIX

/var/adm/sialog

  • HP-UX 9.x

/usr/adm/sulog

  • HP-UX 10.x , IRIX

/var/adm/sulog

  • SunOS

Syslog facility ¸¦ »ç¿ëÇÏ¿© ¸Þ½ÃÁö¸¦ ³²±â°Ô µÈ´Ù.

  • Linux

/etc/login.defs ¿¡¼­ SULOG È­ÀÏÀÇ À§Ä¡¸¦ ÁöÁ¤ÇØ ÁÙ ¼ö ÀÖÀ½.

  • sudo ¸¦ »ç¿ëÇÏ´Â °æ¿ì

/var/adm/sudo.log ¿¡ ÀúÀåÀÌ µÈ´Ù.

¡¡

su ´Â ¶ÇÇÑ argument ¸¦ ÁÖ¾î su username À» Çϸé username À¸·Î ·Î±äÇÒ ¼ö ÀÖÀ¸¹Ç·Î sulog ¿¡´Â root ·Î su ÇÑ °Í ¿Ü¿¡µµ ´Ù¸¥ À¯Àú·Î su ¸¦ ½ÇÇà½ÃŲ °á°ú±îÁö logging ÀÌ µÇ°í ÀÖ´Ù.

´ÙÀ½Àº ±× È­ÀÏÀÇ ³»¿ëÀÌ´Ù. ´ÙÀ½ÀÇ ÇüÅ·ΠÀúÀåÀÌ µÈ´Ù.

SU ³¯Â¥ ½Ã°£ ¼º°øÀ¯¹«(+/-) tty fromID-toID

SU 04/18 18:41 + ttypb guard-wkshin
SU 04/18 18:44 + ttypb guard-wjshin
SU 04/19 00:50 + ttyp2 chester-guard
SU 04/19 06:27 + ttyp1 sakai-root
SU 04/19 06:29 + ttyp1 sakai-root
SU 04/19 06:29 + ttyp1 sakai-root
SU 04/19 06:32 + ttyp1 sakai-root

¡¡

À§ÀÇ È­ÀÏÀ» º¸¸é sakai ¶õ »ç¿ëÀÚ°¡ root ·Î 4/19 ÀÏ 6:32 ºÐ¿¡ ttyp1 ¿¡¼­ su ¸¦ ÇßÀ½À» ¾Ë ¼ö ÀÖ´Ù.

1.2. .history

% history
1 12:06 ls
2 12:06 clear
3 12:06 finger
4 12:06 cd /usr
5 12:07 bdf
6 12:07 cd /users
7 12:07 cd syscore
8 12:07 ls -asl
9 12:07 vi bounds
% cat .history
ls
clear
finger
cd /usr
bdf
cd /users
cd syscore
ls -asl
vi bounds

¡¡

history ´Â »ç¿ëÀÚ°¡ ¾î¶°ÇÑ ¸í·ÉÀ» ½ÇÇà½ÃÄ״°¡¸¦ º¸¿©ÁÖ´Â ¸í·ÉÀÌ°í, À̸í·É¿¡ ´ëÇÑ ·Î±×È­ÀÏÀº Ȩµð·ºÅ丮ÀÇ .history È­ÀÏÀÌ´Ù. ÀÌ È­ÀÏÀº ´Ü¼øÈ÷ shell ÀÇ history °ü·Ã ¸í·ÉÀ̳ª history control À» À§ÇØ ÀÖ´Â °ÍÀº ¾Æ´Ï´Ù.

ÇØÄ¿ÀÇ Ä§ÀÔÀÌ ÀÖÀ» ¶§ root ÀÇ »óÅ¿¡¼­ ¾î¶°ÇÑ ¸í·ÉÀ» ³»·È´ÂÁö ¾Ë¼öµµ ÀÖ´Â °ÍÀÌ´Ù. ÇÏÁö¸¸ ÇØÄ¿°¡ ¾î¶°ÇÑ »ç¿ëÀÚÀÇ account ·Î ħÀÔÀ» Çß´Ù¸é, ÀÛ¾÷À» ÇÏ°í ³­ µÚ, Áõ°Å¸¦ ¾ø¾Ö±â À§ÇØ

% set history=0

µî°ú °°Àº ¸í·ÉÀ» ¼öÇàÇÏ¿© ±â·ÏµÈ history ¸¦ ¾ø¾Ö´Â °ÍÀÌ º¸ÅëÀ̹ǷΠ±×´ÙÁö Å« ±â´ë¸¦ ÇÏ±ä ¾î·ÆÁö¸¸, ÇØÄ¿°¡ ½Ç¼ö·Î Àú ¸í·ÉÀ» ¼öÇàÇÏÁö ¾Ê¾ÒÀ» ¼öµµ ÀÖÀ¸´Ï °ü½ÉÀ» °¡Áú ÇÊ¿ä´Â ÀÖ´Ù°í »ý°¢ÇÑ´Ù.

.cshrc , .login °ú °°Àº startup È­ÀÏ¿¡¼­ history ¸¦ º¸°üÇϵµ·Ï ÁöÁ¤ÇØ µÎ´Â °ÍÀÌ ÁÁ´Ù.

  • csh °è¿­ »ç¿ëÀÚÀÎ °æ¿ì

set history = 100

set savehist = 100

  • ksh °è¿­ »ç¿ëÀÚ

export HISTSIZE = 100

export HISTFILE= /var/adm/.rh

1.3. utmp

utmp ´Â ÇöÀç »ç¿ëÀÚÀÇ ¸®½ºÆ®¸¦ ÀúÀåÇÏ´Â È­ÀÏÀÌ´Ù. w, who ¿Í °°Àº ¸í·ÉÀ» ÅëÇØ ÇöÀç »ç¿ëÀÚ »óȲÀ» ÆľÇÇÒ ¼ö ÀÖ´Ù. º¸Åë /etc/utmp ³ª /var/adm/utmp ·Î ÀúÀåÀÌ µÈ´Ù.

1.4. wtmp

wtmp ´Â utmp ¿Í °°Àº data structure ¸¦ »ç¿ëÇÏ°í Àִµ¥, ÁÖ·Î login À̳ª reboot ¿Í °ü·ÃµÈ Á¤º¸¸¦ ´ã°í ÀÖ´Ù. º¸Åë /etc/wtmp ³ª /var/adm/wtmp ·Î ÀúÀåÀÌ µÈ´Ù.

1.5. lastlog

lastlog ´Â »ç¿ëÀÚ°¡ ¸¶Áö¸·À¸·Î ·Î±äÇÑ °ÍÀº ¾ðÁ¦ÀÎÁö¿¡ ´ëÇÑ Á¤º¸°¡ ÀúÀåÀÌ µÈ´Ù. º¸Åë lastlog ´Â /var/adm/lastlog ·Î ÀúÀåÀÌ µÇ°í, AIX ÀÇ °æ¿ì¿¡´Â /etc/security µð·ºÅ丮¿¡ ÀúÀåÀÌ µÈ´Ù.

last ¶õ ¸í·ÉÀ» ÅëÇؼ­ lastlog, wtmp ¿¡ ´ëÇÑ Á¤º¸¸¦ º¼ ¼ö Àִµ¥ ,argument ·Î keyword ¸¦ ÁÖ¾î ÇØ´ç»çÇ׸¸ º¼ ¼ö ÀÖ´Â ÀåÁ¡ÀÌ ÀÖ´Ù. ´ÙÀ½Àº ±× ¿¹ÀÌ´Ù.

$ last
sakai pts/14 A.miso.co.kr Fri Nov 8 15:05 °è¼Ó ·Î±×ÀÎ Áß
vector console Fri Nov 8 14:05 - 14:22 (00:16)
gangster pts/13 B.miso.co.kr Fri Nov 8 13:15 - 13:24 (00:09)
jahng ftp night Fri Nov 8 13:03 - 13:08 (00:04)
$ last console
root console Mon Apr 21 12:07 - 12:08 (00:00)
w3master console Mon Apr 21 12:06 - 12:07 (00:00)
root console Mon Apr 21 11:48 - 11:59 (00:10)
root console Mon Apr 21 11:23 - 11:37 (00:13)
root console Mon Apr 21 11:12 - 11:22 (00:09)
$ last reboot
reboot system boot Fri Apr 18 22:15
reboot system boot Thu Apr 17 09:19
reboot system boot Thu Apr 17 00:17
reboot system boot Wed Apr 9 20:43
$ last sakai -3
sakai pts/12 eve.kaist.ac.kr Fri Nov 8 12:51 °è¼Ó ·Î±×ÀÎ Áß
sakai pts/0 cspc15.kaist.ac. Fri Nov 8 12:25 °è¼Ó ·Î±×ÀÎ Áß
sakai pts/0 cspc15.kaist.ac. Fri Nov 8 12:00 - 12:23 (00:22)
.login ¿¡ last login ·Î±ä½Ã¸¶´Ù last -3 À» ÀÌ¿ëÇÏ¿© ħÀÔ´çÇß´ÂÁö Á¡°ËÇÏ´Â °Íµµ ÁÁÀº ¹æ¹ýÀÌ´Ù.

1.6. pacct

¸ðµç »ç¿ëÀÚ°¡ ·Î±äÇÑ ÈÄ ·Î±×¾Æ¿ôÇÒ ¶§°¡Áö ÀÔ·ÂÇÑ command ¿Í ½Ã°£, ÀÛµ¿µÈ tty µîÀ» ÀúÀåÇÑ´Ù. ÇÏÁö¸¸ ·Î±×È­ÀÏÀÇ »çÀÌÁî°¡ ½±°Ô Áõ°¡ÇÏ¿© ½Ã½ºÅÛÀÇ ¸®¼Ò½º¸¦ ¸¹ÀÌ Â÷ÁöÇϹǷΠ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­´Â À̸¦ logging ÇÏ°í ÀÖÁö ¾ÊÀ¸³ª, logging ÇÑ´Ù¸é ½Ã½ºÅÛ¿¡ ¹®Á¦°¡ »ý°åÀ» ¶§ hacker ¸¦ ÃßÀûÇÏ°í, ÀÌ hacker °¡ ¹«½¼ ÀÛ¾÷À» Çß´ÂÁö¸¦ ½±°Ô ¾Ë ¼ö ÀÖ°Ô µÈ´Ù. ´Ü, command ÀÇ argument ·Î ¹«¾ùÀ» ÀÔ·ÂÇÏ¿´´ÂÁö±îÁö´Â ·Î±×°¡ ³²Áö ¾Ê´Â ´ÜÁ¡ÀÌ ÀÖ´Ù.

º¸Åë /var/adm/pacct ¿¡ À§Ä¡ÇÑ´Ù.

°ü·ÃµÈ ¸í·É¾î·Î´Â lastcomm, acctcom, acctcms °¡ ÀÖ´Ù. ÀÌ¿¡ ´ëÇØ ÀÚ¼¼È÷ »ìÆ캸µµ·Ï ÇÏÀÚ.

lastcomm Àº SCO UNIX ¿Í IRIX ¸¦ Á¦¿ÜÇÑ ¸ðµç UNIX ½Ã½ºÅÛ¿¡¼­ Á¦°øµÇ´Â ¸í·ÉÀÌ´Ù. ½ÇÇàµÇ¾ú´ø ¸ðµç ¸í·ÉÀ» ±âº»ÀûÀ¸·Î º¸¿©ÁÖ°Ô µÈ´Ù. ´ÙÀ½Àº ½ÇÇà ¿¹ÀÌ´Ù.

# lastcomm
lpd F root ___ 0.08 secs Mon Sep 19 15:06
date sakai ttyp7 0.02 secs Mon Sep 19 15:06
sh cenda ttyp3 0.05 secs Mon Sep 19 15:04
calculus D mtdog ttyq8 0.95 secs Mon Sep 19 15:09
more X urd ttypf 0.14 secs Mon Sep 19 15:03
mail S root ttyp0 0.95 secs Mon Sep 19 15:03

·Î±×´Â ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ³²´Â´Ù.

process ¸¦ ¼öÇàÇÑ ¸í·É¾î, µ¥¸ó : Flag : ID : tty : CPU time : ½ÃÀÛÇÑ ½Ã°£ÀÌ Flag ¿¡´Â ´ÙÀ½°ú °°Àº °ÍÀÌ ÀÖ´Ù.

  • S : Superuser °¡ »ç¿ëÇÑ ¸í·É
  • F : fork ÈÄ¿¡ »ç¿ëµÈ ¸í·É
  • D : core ¸¦ ´ýÇÁÇÏ°í Á¾·áµÈ ¸í·É
  • X : Signal ¿¡ ÀÇÇØ Á¾·áµÈ ¸í·É

Áï À§ÀÇ log ¸¦ º¸¸é, lpd ´Â init process ¿¡ ÀÇÇØ fork µÇ¾úÀ¸¹Ç·Î F flag À» °¡Áö°Ô µÇ°í, root °¡ ½ÇÇà½ÃÄ×À¸¸ç daemon process À̹ǷΠÀâ°í ÀÖ´Â tty ´Â ¾ø´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù.

ÀÌ ¸í·Éµµ, last ¸í·É°ú ºñ½ÁÇÏ°Ô keyword ¸¦ ÁÖ¾î Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ´Ù.

# lastcomm mtdog
calculus D mtdog ttyq8 0.95 secs Mon Sep 19 15:09

¡¡

lastcomm °ú ºñ½ÁÇÑ ¿ªÇÒÀ» ÇÏ´Â ¸í·ÉÀ¸·Î acctcom, acctcms ÀÌ ÀÖ´Ù. ÀÌ¿¡ ´ëÇØ »ìÆ캸µµ·Ï ÇÏÀÚ.

acctcom Àº System V °è¿­¿¡¼­ Á¦°øµÇ´Â ¸í·É¾îÀÌ´Ù. (Linux ¿¡¼­´Â Æ÷ÇÔÀÌ µÇ¾î ÀÖÁö ¾Ê´Ù.) ´ÙÀ½Àº ½ÇÇà ¿¹ÀÌ´Ù.

# acctcom
COMMAND START END CPU
NAME USER TTYNAME TIME TIME (SECS)
calculus mtdog ttyq8 15:52:49 16:12:23 0.95
grep sakai ttyq3 15:52:51 15:52:55 0.02

¡¡

ÀÌ ¸í·ÉÀ» ÅëÇØ ½ÇÇà½ÃŲ command À̸§, »ç¿ëÀÚ, tty , ½ÃÀ۽ð£, Á¾·á½Ã°£, CPU time µîÀ» ¾Ë ¼ö ÀÖ´Ù. ¶ÇÇÑ ¿É¼ÇÀ» ÁÖ¾î ÇÊ¿äÇÑ Á¤º¸¸¦ ¾ò¾î³¾ ¼ö ÀÖ´Ù.

# acctcom -u root -n vi
COMMAND START END CPU
NAME USER TTYNAME TIME TIME (SECS)
vi root tty01 10:33:12 10:37:44 0.04

acctcom ¸í·É¿¡ ´ÜÁ¡ÀÌ ÀÖ´Ù¸é ¸í·ÉÀÌ ½ÇÇàµÈ date °¡ ³ª¿ÀÁö ¾Ê¾Æ /usr/adm/pacct È­ÀÏ°ú ´ëÁ¶¸¦ Çغ¸¾Æ¾ß ÇÑ´Ù´Â Á¡ÀÌ´Ù.

¡¡

ÀÌ ÇÁ·Î±×·¥ ¿ª½Ã System V °è¿­¿¡¼­ Á¦°øµÇ´Â ¸í·É¾î ÀÌ´Ù.( ¿ª½Ã Linux ¿¡´Â Æ÷ÇԵǾî ÀÖÁö ¾Ê´Ù.) ÀÌ ¸í·ÉÀ» ÅëÇؼ­ ÁÖ·Î ½ÇÇàµÈ ¸í·É¾îÀÇ Åë°èÀû ºÐ¼®À» ÇÒ ¼ö ÀÖ´Â ÀåÁ¡ÀÌ ÀÖ´Ù.´ÙÀ½Àº ±× ½ÇÇà ¿¹ÀÌ´Ù.

¡¡

# acctcms -a -o -n /var/adm/pacct
NON-PRIME TIME 	COMMAND SUMMARY
COMMAND NUMBER TOTAL TOTAL
NAME CMDS KCOREMIN CPU-MIN
Ls 26 0.00 0.02
Grep 21 0.80 0.01
More 15 0.10 0.03
...............
fuckfuck 1 0.26 1.10

À§ÀÇ ½ÇÇà°á°ú¸¦ »ìÆ캸¸é fuckfuck À̶õ ¸í·ÉÀº ÀÚ¼¼È÷ Á¶»çÇØ¾ß ÇÒ ÇÊ¿ä°¡ ÀÖÀ½À» ¾Ë ¼ö ÀÖ´Ù. »ç¿ëºóµµµµ 1 ÀÏ»Ó ¾Æ´Ï¶ó , ÇØ´ç Ä¿¸ÇµåÀÇ À̸§ÀÌ OS ¿¡ ¾ø´Â ¸í·ÉÀ̱⠶§¹®ÀÌ´Ù.

1.7. messages

º¸Åë /var/adm/messages ·Î ÀúÀåÀÌ µÇ¸ç Ä¿³Î ¿¡·¯, ¸®ºÎÆà ¸Þ½ÃÁö, ·Î±ä ½ÇÆÐ, su ·Î±× µîÀÌ ³²´Â È­ÀÏÀÌ´Ù. ´ÙÀ½Àº ±× ¿¹ÀÌ´Ù.

¡¡

% cat /var/adm/messages
Apr 19 12:44:13 miso named[93]: zoneref: Masters for secondary zone 15.104.192.in-addr.arpa unreachable
Apr 19 12:45:23 miso telnetd[22005]: gethostbyaddr: librb126.kaist.ac.kr != 143.248.8.126
Apr 19 12:46:57 miso login: REPEATED LOGIN FAILURES ON ttype FROM sgs115.kaist.ac., x
Apr 19 16:18:08 miso vmunix: /: file system full
Apr 19 16:18:38 miso su: 'su soyeon' succeeded for acorn on /dev/ttyq5

1.8. syslog

À§¿¡¼­µµ »ìÆì º¸¾ÒÁö¸¸, ½Ã½ºÅÛ ³»¿¡´Â ¼ö¸¹Àº ·Î±×È­ÀÏÀÌ ÀÌ°÷Àú°÷¿¡ ³²°Ô µÈ´Ù. À̸¦ ÀüüÀûÀ¸·Î °ü¸®¸¦ ÇÒ ÇÊ¿ä°¡ Àִµ¥ Áï, ¸Þ½ÃÁöµéÀÇ ºÐ»êÀ» ÇØ°áÇÑ °ÍÀÌ syslog facility ÀÌ´Ù.

log È­ÀÏÀÌ ÀúÀåµÇ´Â À§Ä¡´Â /etc/syslog.conf ¿¡¼­ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.

/etc/syslog.conf ¿¡¼­ ´ÙÀ½°ú °°Àº ³»¿ëÀ» Á¤ÀÇÇÒ ¼ö ÀÖ´Ù. (´Ü, DG-UX ÀÇ °æ¿ì¿¡´Â syslog ÀÇ configuration È­ÀÏÀº /var/adm/sysyslog.dated/auth.log ¿¡ À§Ä¡ÇÑ´Ù. ¶ÇÇÑ IRIX ÀÇ °æ¿ì¿¡´Â syslog.conf °¡ ´Ù¸¥ OS µéÀÇ °Í¿¡ ºñÇØ ±â´ÉÀÌ È®ÀåµÇ¾î filtering À» ÇÒ program À» °¢ Ç׸ñ¸¶´Ù ÁöÁ¤ÇØ ÁÙ ¼ö ÀÖ´Ù.

´ÙÀ½Àº IRIX ¿¡¼­ÀÇ syslog.conf ÀÇ ¿¹ÀÌ´Ù.

*.alert |/var/adm/sysmonpp /var/adm/SYSLOG

Linux ÀÇ °æ¿ì¿¡´Â klogd ¸¦ syslogd ´ë½Å¿¡ »ç¿ëÇÑ´Ù.)

syslog.conf ´Â ´ÙÀ½°ú °°Àº ÇüÅ·ΠÀúÀåÀÌ µÈ´Ù.

facility.level destination

facility ´Â ·Î±×Á¤º¸¸¦ ¿äûÇÑ ÇÁ·Î±×·¥ Á¾·ù·Î ±¸ºÐÁö¾îÁö´Âµ¥ ´ÙÀ½°ú °°´Ù.

kern (kernel ¿¡¼­ ¿äûÇÑ °æ¿ì)

mail (mail subsystem ¿¡¼­ ¿äûÇÑ °æ¿ì)

lpr (printing subsystem ¿¡¼­ ¿äûÇÑ °æ¿ì)

daemon (System server processes ¿¡¼­ ¿äûÇÑ °æ¿ì)

auth (login authentication system ¿¡¼­ ¿äûÇÑ °æ¿ì)

level Àº severity level ¸¦ ÀǹÌÇϴµ¥ ´ÙÀ½°ú °°Àº ´Ü°è·Î ±¸ºÐÁöÀ» ¼ö ÀÖ´Ù.

½É°¢ÇÑ Á¤µµ´Â emerg > alert > crit > err > warn > notice > info > debug ¼øÀÌ´Ù.

¡¡

  • emerg (System ÀÌ "panic" À» ÀÏÀ¸Å³ Á¤µµ·Î ½É°¢(emergency)ÇÑ »óȲ)
  • alert (Áï½Ã ÁÖÀǸ¦ ¿äÇÏ´Â serious ÇÑ ¿¡·¯°¡ ¹ß»ýÇÑ °æ¿ì)
  • crit (Çϵå¿þ¾î °°Àº device Á·¿¡¼­ critical ÇÑ ¿¡·¯°¡ ¹ß»ýÇÑ °æ¿ì)
  • err (Errors , ¿¡·¯µé)
  • warn (Warning, °æ°íµé)
  • notice (critical ÇÏÁø ¾ÊÀº ¸Þ½ÃÁöµé)
  • info (À¯¿ëÇÑ Á¤º¸¸¦ ´ã°í ÀÖ´Â ¸Þ½ÃÁöµé)
  • debug (¹®Á¦ÇØ°áÀ» ÇÒ ¶§ µµ¿òÀÌ µÉ¸¸ÇÑ ¿ÜºÎÁ¤º¸µé)
  • none (facility ¿¡¼­ ¹«½ÃÇÏ´Â Á¤º¸µé)
  • mark (¸îºÐ¸¶´Ù ¸Þ½ÃÁöµéÀ» »ý¼ºÇÒ °ÍÀÎÁö¸¦ °áÁ¤ÇÑ´Ù. µðÆúÆ® °ªÀº 20 ºÐÀÌ´Ù.)

mark (¸îºÐ¸¶´Ù ¸Þ½ÃÁöµéÀ» »ý¼ºÇÒ °ÍÀÎÁö¸¦ °áÁ¤ÇÑ´Ù. µðÆúÆ® °ªÀº 20 ºÐÀÌ´Ù.)

ÁÖÀÇÇÒ Á¡Àº mart ¸¦ Á¦¿ÜÇÑ ³ª¸ÓÁö level µéÀº *.alert , *.debug µî°ú °°ÀÌ facility ¸¦ wild card ¸¦ »ç¿ëÇÏ¿© ³ªÅ¸³¾ ¼ö ÀÖÁö¸¸, mark ÀÇ °æ¿ì¿¡´Â wild card ¸¦ »ç¿ëÇÒ ¼ö ¾ø´Ù´Â °ÍÀÌ´Ù.

´ÙÀ½Àº /etc/syslog.conf ÀÇ ¿¹ÀÌ´Ù. ¿¹Á¦ È­ÀÏÀ» º¸¸é À§¿¡ ¼³¸íÇÑ ³»¿ëµéÀÌ ½±°Ô ÀÌÇØ°¡ °¥ °ÍÀÌ´Ù.

*.err /dev/console
*.err;daemon,auth.notice;mail.crit /var/adm/messages
lpr.debug /var/adm/lpd-errs
mail.debug /var/spool/mqueue/syslog
*.alert root
*.emerg root,sysadmins, operators
auth.info;*.warn @hamlet
*.debug /dev/tty01

À§ÀÇ ¿¹´Â ´ÙÀ½°ú °°Àº ¶æÀÌ´Ù.

  • ¸ðµç facility ¿¡¼­ ¹ß»ýÇÑ err ¸Þ½ÃÁöµéÀº /dev/console ¿¡ »Ñ·ÁÁØ´Ù.
  • ¸ðµç facility ¿¡¼­ ¹ß»ýÇÑ ¿¡·¯ ¸Þ½ÃÁö, daemon °ú auth facility ¿¡¼­ ¹ß»ýÇÑ notice ¸Þ½ÃÁöµé, mail facility ¿¡¼­ ¹ß»ýÇÑ crit ¸Þ½ÃÁöµéÀº /var/adm/messages ¿¡ÀúÀåÇÑ´Ù.
  • lpr facility ¿¡¼­ ¹ß»ýÇÑ debug ¸Þ½ÃÁöµéÀº /var/adm/lpd-errs ¿¡ ÀúÀåÇÑ´Ù.
  • mail facility ¿¡¼­ ¹ß»ýÇÑ debug ¸Þ½ÃÁöµéÀº /var/spool/mqueue/syslog È­ÀÏ¿¡ ÀúÀåÇÑ´Ù.
  • ¸ðµç facility ¿¡¼­ ¹ß»ýÇÑ alert ¸Þ½ÃÁöµéÀº root ¿¡°Ô ¸ÞÀÏ·Î Àü¼ÛÇÑ´Ù.
  • ¸ðµç facility ¿¡¼­ ¹ß»ýÇÑ emerg ¸Þ½ÃÁöµéÀº root, sysadmins, operators ¿¡°Ô ¸ÞÀÏ·Î Àü¼ÛÇÑ´Ù.
  • auth facility ¿¡¼­ ¹ß»ýÇÑ info ¸Þ½ÃÁöµé°ú ¸ðµç facility ¿¡¼­ ¹ß»ýÇÑ warn ¸Þ½ÃÁöµéÀº hamlet À̶õ È£½ºÆ®¿¡ ·Î±×¸¦ ³²±ä´Ù.
  • ¸ðµç facility ¿¡¼­ ¹ß»ýÇÑ debug ¸Þ½ÃÁöµéÀº /dev/tty01 ¿¡ »Ñ·ÁÁØ´Ù.

2. ·Î±×È­ÀÏ Á¡°ËÇϱâ

¾Õ¿¡¼­´Â ·Î±×È­ÀÏ µéÀÇ Àǹ̰¡ ¹«¾ùÀÌ°í, ¾î¶°ÇÑ »çÇ×µéÀÌ ¾î¶°ÇÑ ·Î±×È­ÀÏ¿¡ ³²´Â´Ù´Â °ÍÀ» »ìÆ캸¾Ò´Ù.

Áï, ·Î±×È­ÀÏÀº ½Ã½ºÅÛ ³»¿¡ ÀÖ¾ú´ø Àϵé, ¹®Á¦°¡ µÉ¸¸ÇÑ »çÇ×µîÀ» ±â·ÏÀ¸·Î ³²°ÜÁֱ⠶§¹®¿¡ Áß¿äÇÑ ÀÚ·áÀÎ °ÍÀÌ´Ù. À̸¦ ÅëÇØ ½Ã½ºÅÛÀÌ crash µÇ¾úÀ» ¶§ µð¹ö±× ÇÒ ¼ö ÀÖ°Ô µÇ´Â °ÍÀÌ°í, ¶ÇÇÑ ½Ã½ºÅÛ¿¡ ÇØÄ¿°¡ ħÀÔÇß´ÂÁö, ¶Ç ħÀÔÇÑ ÈÄ¿¡ ¹«½¼ ÀÏÀ» Çß´ÂÁö¸¦ ¾Ë ¼ö ÀÖ´Â ±Ù°Å°¡ µÇ´Â °ÍÀÌ´Ù. ÇÏÁö¸¸ ÇØÄ¿µµ ¹Ùº¸°¡ ¾Æ´Ñ ÀÌ»ó ¸Ó¸®¸¦ ¾´´Ù.

È£½ºÆ®¿¡ ħÀÔÇÑ ÈÄ, ÀڽŰú °ü°èµÇ´Â ·Î±×È­ÀÏÀ» ÀüºÎ Áö¿ì°Å³ª, ÆíÁýÇؼ­ Àڽſ¡ ´ëÇÑ ±â·ÏÀ» ¸ðµÎ Áö¿ì°í ³ª°¡´Â °ÍÀÌ º¸ÅëÀÌ´Ù. °¡·É telnet À» ÅëÇØ Ä§ÀÔÇß´Ù¸é messages, utmp , wtmp µîÀ» Áö¿ì·Á ÇÒ °ÍÀÌ°í, ·Î±×¾Æ¿ôÇϱâ Àü¿¡ set history=0 µî°ú °°Àº ¸í·ÉÀ» ½ÇÇàÇÏ°í, pacct È­ÀÏÀ» »èÁ¦ÇÏ¿© ¼öÇàÇÑ ¸í·É¿¡ ´ëÇÑ ±â·ÏÀ» Áö¿ï °ÍÀÌ´Ù.

ÀÌ·± ½ÄÀ¸·Î ƯÁ¤ ID ¿¡ ´ëÇÑ ·Î±×µéÀ» ¸ðµÎ Áö¿öÁÖ´Â ÇÁ·Î±×·¥µµ ÇØÄ¿µé »çÀÌ¿¡ À¯ÅëÀÌ µÇ°í ÀÖ´Ù. ±× ¿¹·Î wtmp , lastlog ¿Í °°Àº È­ÀÏ¿¡¼­ ÀÚ½ÅÀÇ ±â·ÏÀ» Áö¿ì´Â ÇÁ·Î±×·¥À¸·Î zap.c , zap2.c µîÀÌ ÀÖ°í, ÀÌ´Â anonymous ftp site ¿¡µµ °ø°³µÇ¾î ÀÖÀ» Á¤µµÀÌ´Ù.

¶ÇÇÑ µé¾î¿Í¼­ ¼öÇà½ÃÅ°´Â ¸í·Éµµ °¡±ÞÀû Á¤º¸¸¦ ³²±âÁö ¾ÊÀ¸·Á ³ë·ÂÇÒ °ÍÀÌ´Ù.

ftp ¸¦ ÅëÇØ È­ÀÏÀ» Àü¼Û½ÃÄ×´Ù¸é ÇÁ·ÒÇÁÆ®»ó¿¡¼­´Â ftp -n À» ÀÔ·ÂÇØ history file À̳ª pacct È­ÀÏ¿¡¼­´Â ¾î´À°÷À¸·Î Á¢¼ÓÀ» ½ÃµµÇß´ÂÁö ¸ð¸£µµ·Ï ÇÒ °ÍÀÌ°í , ¿ø·¡ OS ¿¡¼­ Á¦°øÇÏ´Â ÇÁ·Î±×·¥ÀÇ À̸§ÀÌ ¾Æ´Ñ ´Ù¸¥ À̸§À¸·Î aliasing À» ÇÏ¿© ¸í·ÉÀ» ¼öÇàÇÏ´Â °ÍÀÌ º¸ÅëÀÌ´Ù.

°á·ÐÀûÀ¸·Î ¸»ÇØ ¾Æ¹«¸® log ¸¦ °­·ÂÇÏ°Ô ³²°Üµµ ,ÇØÄ¿´Â °­·ÂÇÏ°Ô Áö¿ì°í °£´Ù´Â Á¡À» ÀØÁö ¸»¶ó´Â °ÍÀÌ´Ù. ±×·¸±â ¶§¹®¿¡ Á¤±âÀûÀ¸·Î ·Î±× È­ÀÏÀ» Á¡°Ë,ºÐ¼®ÇÏ´Â °ÍÀÌ ¿ä±¸µÈ´Ù´Â °Í°ú ¶ÇÇÑ ·Î±×È­Àϵ鿡 ´ëÇÑ ¹é¾÷ÀÌ Áß¿äÇÏ´Ù.

±×·¸´Ù°í Àý¸ÁÀûÀÎ °ÍÀº ¾Æ´Ï´Ù. lastlog , pacct , wtmp ´Â °íÀ¯ÇÑ data structure ¸¦ »ç¿ëÇÏ´Â non-text È­ÀÏÀ̱⠶§¹®¿¡, ÇØÄ¿°¡ ÀÚ½ÅÀÇ Á¤º¸¸¦ »èÁ¦ÇÏ¿´´Ù¸é È­ÀÏ¿¡¼­ »èÁ¦ÇÑ ºÎºÐ¿¡ °ø¹éÀÌ »ý±â°Ô µÇ¾î À̸¦ ÅëÇØ ·Î±×È­ÀÏÀÌ ÇØÄ¿¿¡ ÀÇÇØ º¯Á¶µÇ¾ú´ÂÁö À¯¹«¸¦ ÆľÇÇÒ ¼ö ÀÖ´Ù.

ÀÌ·± ÀÏÀ» ÇÏ´Â Åø¿¡´Â ´ÙÀ½°ú °°Àº °ÍÀÌ ÀÖ´Ù. ÀÌ ÇÁ·Î±×·¥µéÀº DFN-CERT ¿¡¼­ °³¹ßµÈ ÅøµéÀÌ´Ù.

chkacct ÀÇ °æ¿ì dot È­Àϵé(e.g. .rhosts )±îÁö Á¡°ËÀ» ÇÏ°Ô µÈ´Ù.

  • chkacct

ftp://ftp.kreonet.re.kr/pub/security/tools/etc/chkacct

  • chklastlog

ftp://ftp.kreonet.re.kr/pub/security/tools/etc/chklastlog

  • chkwtmp

ftp://ftp.kreonet.re.kr/pub/security/tools/etc/chkwtmp

´ÙÀ½Àº À§ÀÇ ÇÁ·Î±×·¥µéÀÇ ½ÇÇà ¿¹ÀÌ´Ù.

% chklastlog
user ley deleted from lastlog!
% chkwtmp
1 deletion(s) between Thu Sep 29 08:23:57 1994 and Thu Sep 29 14:11:58 1994

ÀÌ·± ºÎ¼öÀûÀÎ Åø ¿Ü¿¡µµ OS ÀÚü¿¡¼­ Á¦°øÇÏ´Â ¸í·ÉÀ» ÀÌ¿ëÇÏ¿© log È­ÀϵéÀ» Á¡°ËÇØ ÁÙ ¼ö ÀÖ´Ù.

AIX ÀÇ °æ¿ì /etc/security/ ¿¡ ´Ù¾çÇÑ Á¾·ùÀÇ ·Î±×È­ÀϵéÀ» »ý¼º½ÃÅ°´Âµ¥ ´ÙÀ½Àº user ¿¡ ±â·ÏµÈ ÀڷḦ Á¶»çÇÏ´Â ¿¹ÀÌ´Ù.

À̸¦ ÅëÇØ »ç¿ëÀÚµéÀÇ ½ÇÆÐÇÑ ·Î±äÀÇ È½¼ö¸¦ ÆľÇÇÒ ¼ö ÀÖ´Ù. ½ÇÆÐÇÑ ·Î±ä¼ö°¡ ¸¹Àº »ç¿ëÀÚÀÇ °æ¿ì ÀûÀýÇÑ Á¶Ä¡¸¦ ÃëÇÏ¸é µÈ´Ù.

¡¡

# egrep '^[^*].*:$|gin_coun' /etc/security/user |\
awk {if (NF >1 && $3>3) {print s,$0}} ;\
NF==1 {s=$0}'
sakai: unsuccessful_login_count = 27

À§ÀÇ ¸í·É°ú °°Àº ¿ªÇÒÀ» ÇØÁÖ´Â ¸í·É¾îµµ ´Ù¸¥ OS ¿¡¼­ Á¸ÀçÇÑ´Ù.

Linux ÀÇ °æ¿ì shadow ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ °æ¿ì /var/adm/faillog ¶õ È­ÀÏ¿¡ ·Î±×ÀÎ ½ÇÆÐÇÑ °æ¿ì¸¦ ±â·ÏÇÏ°Ô µÈ´Ù. °ü·ÃµÈ ¸í·É¾î·Î´Â faillog °¡ ÀÖ´Ù.

# faillog -p
Username Failures Maximum Latest
root 2 0 Fri Mar 17 17:4..
sakai 5 0 Fri Mar...

3. ¸ÎÀ¸¸ç

´Ü¼øÇÑ ·Î±×È­ÀÏ ºÐ¼®¿¡ ³Ê¹« Áö¸éÀ» ÇÒ¾ÖÇÑ °Ç ¾Æ´ÑÁö ¸ð¸£°Ú´Ù. ÇÏÁö¸¸ ·Î±×È­ÀÏ ºÐ¼®Àº »ó´çÈ÷ Áß¿äÇÑ º¸¾ÈÀÇ ÇÑ ºÎºÐÀ̶ó´Â Á¡À» ÀØÁö ¸»±â ¹Ù¶õ´Ù.

(footnote)

# ´Â root shell ÇÁ·ÒÇÁÆ®¸¦ ¶æÇÑ´Ù.

$ Àº ÀÏ¹Ý »ç¿ëÀÚÀÇ borne shell °è¿­ ½© ÇÁ·ÒÇÁÆ®¸¦ ¶æÇÑ´Ù.

% ´Â ÀÏ¹Ý »ç¿ëÀÚÀÇ C shell °è¿­ ½© ÇÁ·ÒÇÁÆ®¸¦ ¶æÇÑ´Ù.

¡¡

Reference

  1. System Administration, O'Reilly & Assoiates, Inc.
  2. [General Security Technique - Practically Useful], ±èÈÖ°­, Á¦ 4 ȸ WWW-KR Conference