; n: q+ j- L7 \2 V7 O[b:1c8b84d2b5]3. ttysnoop(s)[/b:1c8b84d2b5] - G Y V/ Q4 O$ p$ N& { ttysnoop是一个重定向对一个终端号的所有输入/输出到另一个终端的程序。目前我所知道的它的所在网站为http://uscan.cjb.net,但是始终连不上去,从其它途径我得到了ttysnoop-0.12c-5 ,地址是http://rpmfind.net/linux/RPM/contrib/libc6/i386/ttysnoop-0.12c-5.i386.html这个版本好象还不能支持shadow password,安装后你需要手动创建目录/var/spool/ttysnoop测试这个程序是有趣的,下面是相关指令: * X; ~7 O; }& K! r 2 k& {* ~3 m. ]7 ]4 w; D 首先改/etc/inetd.conf中的in.telnetd默认调用login登录程序为/sbin/ttysnoops,象下面这样: t% |3 }5 ^' F j8 s* V' K2 f7 m5 p
[code:1:1c8b84d2b5][root@jephe /etc]# more inetd.conf | grep in.telnetd & Q/ a! i5 g& K0 d, ~( Ntelnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -L /sbin/ttysnoops[/code:1:1c8b84d2b5] . c; I* p* p, I, R6 C
更改后一定要运行killall -HUP inetd使之生效,确保不要使用阴影口令,用#pwunconv禁止阴影口令。 3 H) C; \, v2 }& D0 q: M; _再编辑文件/etc/snooptab默认配置就可以了。 ) ^ x4 @ @8 h# t5 b+ a4 t
[code:1:1c8b84d2b5][root@jephe /etc]# more snooptab 1 K+ U4 w5 |: A _" y; }; W
ttyS1 /dev/tty7 login /bin/login 2 r) V6 m3 e+ rttyS2 /dev/tty8 login /bin/login 4 R0 d4 h. w" A8 }* socket login /bin/login[/code:1:1c8b84d2b5] + c$ L. \* k4 C; N0 p, a1 h------ ( K, ~; I. F+ f) n 最后,如果在某个终端上有人登录进来(你可以用w命令查看它在哪个终端),如登录终端设备为ttyp0,则你可以登录进服务器打入#/bin/ttysnoop ttyp0(提示输入root口令,再次,上面提到的这个版本不支持阴影口令)以监视用户的登录窗口。 ! C# N/ I8 J$ r1 j1 {9 ?
1 j( q. z! Z0 W
[b:1c8b84d2b5]4. nmap[/b:1c8b84d2b5] " v( E% S; K% ] nmap 是用来对一个比较大的网络进行端口扫描的工具,它能检测该服务器有哪些tcp/ip端口目前正处于打开状态。你可以运行它来确保已经禁止掉不该打开的不安全的端口号。 + {! p. Z+ g: z7 f2 `+ I3 R ~ nmap的主页在http://www.insecure.org/nmap/index.html ) H- Q5 X) e& h6 d$ s5 O( X* p
, d: @+ L/ _5 F t
下面给出一个简单的例子: 9 y7 H' f" P, p% h# W[code:1:1c8b84d2b5][root@sh-proxy /etc]# /usr/local/bin/nmap public.sta.net.cn * O1 v+ x: K5 n A; Y ( b' `+ x9 \9 E; C* y) c( C" f) cStarting nmap V. 2.12 by Fyodor (fyodor@dhp.com, www.insecure.org/nmap/) 0 i n2 S% A, n" o( I
Interesting ports on public.sta.net.cn (202.96.199.97): 2 s( j/ g6 P' J9 o0 HPort State Protocol Service " t/ u* ^3 d+ A
21 open tcp ftp & `7 ? o2 e* Z7 g0 ?! N* G
23 open tcp telnet 7 R& }' {0 z' @1 v4 E" ?' u8 y
25 open tcp smtp + g4 f) c- m ?: e( D/ r) J109 open tcp pop-2 0 z- \% \3 [6 a B1 P110 open tcp pop-3 ; G) g8 d. H5 i" y+ ]. v* J143 open tcp imap2 v7 ?# R. n* b9 t. [
513 open tcp login 1 z4 `) @' F) e) |514 open tcp shell # r) R( G) D2 k4 ?: P
7000 open tcp afs3-fileserver 9 a5 v; N, h2 l; H( p, j! `$ p' [' i Q5 N5 N7 g. l0 b
Nmap run completed -- 1 IP address (1 host up) scanned in 15 seconds[/code:1:1c8b84d2b5] " I1 C _6 y) M5 a- |& Y! b% Y( s! Q* S- T2 ~
% T/ a& r: T+ P4 R4 v) w) H$ E2 \0 O0 t Q, Y* M3 p& e3 Q
[b:1c8b84d2b5]第二部分[/b:1c8b84d2b5] - a) [8 C- h& g3 N, V
8 ~$ g( M! e$ ?
[b:1c8b84d2b5]一 John the ripper[/b:1c8b84d2b5] 8 k( z6 I- z( c 0 q2 B# o j. L' |; }* D 在Linux中,密码以hash格式被存储,你不能反向从该hash数据表中分析出密码,但可以以一组单词hash后和它进行比较,如相同则就猜测出密码。故起一个很难被猜测的密码是非常关键的。一般地你决不能用字典存在的某个单词作为密码,那是相当容易被猜测出来的。另外也不能用一些常见的有规则性的字母数字排列来作为密码,以123abc等。 ; Y& ?# U* l. G
, I3 L5 L: A5 F6 K7 H1 H6 T9 w) U John the ripper是一个高效的易于使用的密码猜测程序,其主页在http://www.openwall.com/john/ " Z2 ~- g1 T1 A, L% w9 W下载tar.gz格式的for UNIX的程序,然后用tar xvfz john*.tar.gz解开到任一目录下。进入src目录,打入 make linux-x86-any-elf (我用redhat 6.1)后会在run目录下生成几个执行文件,包括主程序john。现在要Crack密码就运行./john /etc/passwd即可。 ' B, u) Y( s0 E; ]4 l/ c
2 V, T g( Q9 ?1 |3 i John也可以Crack由htpasswd 生成的用于验证apache用户的密码,如果你用htpasswd -c apachepasswd user创建了一个用户user,并生成了密码,你也可以用john apachepasswd来进行猜测。John在猜测密码时输出在终端上,并把猜测出的密码存于john.pot文件中。 * W9 v4 B( A0 M$ Q& z4 N 另一个password Cracker是大家知道的经典的Cracker. 主页在http://www.users.dircon.co.uk/~crypto/ , J% Z& O9 U3 f' K r7 V$ {' Y, H# K; B5 Z/ O/ d
[b:1c8b84d2b5]二.Logcheck[/b:1c8b84d2b5] 9 V; y/ y8 C/ l7 t) j7 \! T6 f
3 f* [- `+ I7 {" o" A Logcheck是用来自动检查系统安全入侵事件和非正常活动记录的工具,它分析各种Linux log文件, ; R* V$ F$ V, H象/var/log/messages, /var/log/secure,/var/log/maillog等等,然后生成一个可能有安全问题的问题报告自动发送email给管理员。你能设置它基于每小时,或者每天用crond来自动运行。 8 j3 T- {: {& w8 s- o& l( Y+ K1 X 5 V3 i' z4 f/ n logcheck工具的主页在http://www.psionic.com/abacus/logcheck/下载后用tar xvfz logcheck*解开到一临时目录如/tmp下,然后用./make linux自动生成相应的文件到/usr/local/etc,/usr/local/bin/等目录下,你可能更改设置如发送通知能谁的邮件帐号,默认发送到root,你能设置root的邮件别名帐号到一批人,更改设置让其忽略某些类型的消息如你的邮件记录文件中的plug-gw,因为plug-gw做反向IP查找,若找不到则记录一个警告消息到/var/log/maillog,logcheck默认记录下所有这些警告发送给你,你可以通过设置忽略掉它们。 n$ c+ H% J4 U/ u' l" B* i
0 D& G* {& G7 }
利用logcheck工具分析你的所有logfile,避免了你每天经常手动地检查它们,节省了时间,提高了效率。 8 R: ]3 }( p! r8 W4 c- E. q 2 y' H! J% Q3 ~: Z, G. i% G[b:1c8b84d2b5]三. Tripwire[/b:1c8b84d2b5] 1 P+ R' m: r) w 2 \ d" J# c# m. U2 p0 l% q \$ ?' k Tripwire 是一个用来检验文件完整性的非常有用的工具,你能定义哪些文件/目录需要被检验,不过默认设置能满足大多数的要求,它运行在四种模下:数据库生成模式,数据库更新模式,文件完整性检查,互动式数据库更新。当初始化数据库生成的时候,它生成对现有文件的各种信息的数据库文件,万一以后你的系统文件或者各种配置文件被意外地改变,替换,删除,它将每天基于原始的数据库对现有文件进行比较发现哪些文件被更改,你能根据email的结果判断是否有系统入侵等意外事件。 2 E/ y8 m! o- X% }' R