网络通信 频道

Unix系统的攻击和防范 (1)

§.前言

   这篇文章主要针对一些对网络安全感兴趣、同时又还不怎么熟悉Unix入侵和防范的朋友们而写的一篇文章。本文循序渐进地介绍了黑客攻击Unix主机的主要方法和系统管理员如何针对这些方法进行有效的防御等。
   §.Unix的特点

   Unix能流行起来绝对不是偶然的,这跟Unix本身的特点之突出是分不开的特点,那就是:1、极强的可移植性;2、启动异步进程的能力;3、一致的文件、设备和进程间I/O;5、层次化的文件系统;6、可用其它Shell来替代默认Shell的能力; 7、真正的多用户和多任务。

   列位注意,通常的Unix系统用户有两种:根用户和普通用户。

   1.root——根用户

   这是SuperUser(超级用户)的帐号,可以用这个帐号对本系统进行所有操作!获得对系统的根访问权限,也是黑客们拼命追求的终极目标。

   2.普通用户

   给User(普通用户)使用,具体权限由root分配的账户。可以有多个等级。黑客们多由此类账户开始试图进入系统,如下例就是如此。

   §.攻击Unix系统的范例

   先补了一些关于Unix的知识,下面我们要开始小试牛刀了。我们的攻击平台是一台安装了Redhat 6.0(内核版本2.2.5-15)的工作站(当然Win9x/Win2000上也可以试试啰!)。

   声明:本文中的目标主机的IP分别是202.202.0.8、202.103.10.110和211.50.33.117,以上IP纯属本人杜撰。如该IP所属主机确实存在,则纯属巧合。

   开始啦!

   “又死机了!这是什么烂东西?可恶!”我愤怒地猛击键盘“还号称全智能化软件……给您‘身临其境的美妙体验''……,完全是放P!”我怒吼着。才买几天的英语学习软件就频频死机,而且花去了不菲的xxx大元人民币,使我有一种彻底受骗的感觉。“你这个骗子,我非要给你点厉害看看,看你还到处骗人!”我一边愤愤地叫着,一边抄下了包装盒上那个“骗子”软件公司的网址:www.shitsoft.com.cn 。当夜无话。

   第二天。忙了一早上,直到中午吃完中餐后才闲下来,众人皆昏昏然欲见周公,我则坐到我的红帽子旁,开始了正义的惩罚……

   首先找一台Proxy,这样就不会被反查法给抓到了。^_^ 不知原来那台韩国的“公鸡”还在不在?试一试:

bash# telnet 211.50.33.117
Red Hat Linux release 6.2 (Goozer)
Kernel 2.2.14-5.0 on an i686
login:crossbow
password:
bash$

   Ok! 还可以用,这么长时间没有理它,竟然还可以用!韩国的管理员真是太“好”了!^_^ 接着ping一下我们的目标,看看它长得啥模样:

bash$ pwd
/home/crossbow
bash$ ping www.shitsoft.com.cn
Pinging www.shitsoft.com.cn [202.202.0.8] with 32 bytes of data:

Reply from 202.202.0.8: bytes=32 time<10ms TTL=245
Reply from 202.202.0.8: bytes=32 time<10ms TTL=245
Reply from 202.202.0.8: bytes=32 time<10ms TTL=245
Reply from 202.202.0.8: bytes=32 time<10ms TTL=245

Ping statistics for 202.202.0.8:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms

速度不慢,看IP是中国教育网的机器,从TTL看估计是一台Unix。验证一下:
bash$ telnet 202.202.0.8
SunOS 5.6
login:

   呵呵,是一台SunOS 5.6的烂机器。先猜猜看:

login:adm
password:
Login incorrect

login:oracle
password:
Login incorrect

login:ftp
password:
Login incorrect

^C

   可恶!今天火气真差!一个没猜到。:-( 用messala扫描一下看有没有CGI漏洞:(略去复杂的扫描过程)………… 结果是滴水不漏!:-( 这个鸟管理员还挺勤快的…… 只好用nss看看它开了什么服务吧!…………还好,telnet、ftp和finger的端口都打开了!^_^ 先看看有没有匿名ftp账户:

bash$ ftp 202.202.0.8
Connected to 202.202.0.8...
220 Cool FTP server(Version xxx Tue Dec 8 12:42:10 CDT 2001) ready.
Name(202.202.0.8:FakeName):anonymous
331 Guest login ok,send you complete e-mail address as password.
Password:
230:Welcome,archive user!
…………
…………
…………
ftp>

   还行,匿名ftp服务没有关,竟然可以用anonymous账户进来了!赶紧抓他的passwd:

ftp>ls
…………
bin boot etc dev home lib usr proc lost+found root sbin src tmp usr var
…………
ftp>cd /etc
…………
ftp>ls *passwd*
…………
passwd passwd-
…………

   不会如此简单吧?看一看?:

ftp>cat passwd|more
…………
root:x:0:1:Super-User:/:/sbin/sh
daemon:x:1:1::/:
bin:x:2:2::/usr/bin:
sys:x:3:3::/:
adm:x:4:4:Admin:/var/adm:
telnet:x:71:8:Line Printer Admin:/usr/spool/lp:
uucp:x:5:5:uucp Admin:/usr/lib/uucp:
nuucp:x:9:9:uucp Admin:/var/spool/uucppublic:/usr/lib/uucp/uucico
listen:x:37:4:Network Admin:/usr/net/nls:
ftp:60001:60001:Ftp:/:
noaccess:x:60002:60002:No Access User:/:
nobody:x:65534:65534:SunOS 4.x Nobody:/:
dennis:x:1005:20::/export/home/dennis:/bin/sh
walter:x:1001:100::/export/home/walter:/bin/sh
power:x:9589:101::/export/home/power:/bin/sh
deal:x:1035:20::/export/home/deal:/bin/sh
jessica:x:3000:300:Agent Client 1:/export/home/jessica:/bin/sh
smith:x:3001:300:Agent Client 2:/export/home/smith:/bin/sh
render:x:9591:101::/export/home/render:/bin/sh

…………

   倒霉,是个空的passwd!看看备份:

ftp>cat passwd-|more
…………
root:x:0:1:Super-User:/:/sbin/sh
daemon:x:1:1::/:
bin:x:2:2::/usr/bin:
sys:x:3:3::/:
adm:x:4:4:Admin:/var/adm:
telnet:x:71:8:Line Printer Admin:/usr/spool/lp:
uucp:x:5:5:uucp Admin:/usr/lib/uucp:
nuucp:x:9:9:uucp Admin:/var/spool/uucppublic:/usr/lib/uucp/uucico
listen:x:37:4:Network Admin:/usr/net/nls:
ftp:60001:60001:Ftp:/:
noaccess:x:60002:60002:No Access User:/:
nobody :x:65534:65534:SunOS 4.x Nobody:/:
dennis:x:1005:20::/export/home/dennis:/bin/sh
walter:x:1001:100::/export/home/walter:/bin/sh
power:x:9589:101::/export/home/power:/bin/sh
deal:x:1035:20::/export/home/deal:/bin/sh
jessica:x:3000:300:Agent Client 1:/export/home/jessica:/bin/sh
smith:x:3001:300:Agent Client 2:/export/home/smith:/bin/sh
render:x:9591:101::/export/home/render:/bin/sh

…………

没救了,一样的!查查看有没有shadow文件:
ftp>ls *shadow*
…………
shadow shadow-
…………

   哈哈,一般passwd是空的,那么密码就在shadow中!

ftp>cat shadow|more
…………
[sh$ cat shadow|more]: Permission denied
…………

   可恶,看都不让看,试试备份文件:

ftp>cat shadow-|more
…………
[sh$ cat shadow-|more]: Permission denied
…………

   都一样——不让看!Faint! 只好可怜惜惜地把空passwd抓回来——有几个用户名总比没有强吧?

ftp>get passwd
226 Transfer complete.
540 bytes received in 0.55 seconds (1.8Kbytes/s)
ftp>bye
221 Goodbye.
bash$

   研究一下,除去root和被关掉的账号,还有七个可用账号:dennis、walter、power、deal、jessica、smith和render,他们就是我们进入该主机最后的希望。^_^ finger上场!

bash$ finger @202.202.0.8
[202.202.0.8 ]
Login  Name      TTY Idle When Where
daemon  ???               < . . . . >
bin    ???               < . . . . >
sys    ???               < . . . . >
walter  Walter Wan   pts/0      202.202.0.114
dennis  Dennis Lee   437       888wnet.net
power   Power Xiong   0       202.202.0.10
deal   H Wang     pts/2      202.202.0.11
admin   ???              < . . . . >
jessica Jessica Xiao  pts/0      202.202.0.9
smith  Smith Liu    pts/0      202.202.0.13
render  Render     pts/0      202.103.10.117
ftp    ???              < . . . . >

   好!我需要的Name出来了,赶快保存:

bash$ finger @202.202.0.8 >> /home/crossbow/name.lst
bash$ more /home/crossbow/name.lst
[202.202.0.8 ]
Login   Name    TTY  Idle When Where
daemon   ???              < . . . . >
bin    ???              < . . . . >
sys    ???              < . . . . >
walter  Walter Wan  pts/0        202.202.0.114
dennis  Dennis Lee   437        888wnet.net
power  Power Xiong  0         202.202.0.10
deal   H Wang    pts/2       202.202.0.11
admin   ???     pts/0       < . . . . >
jessica  Jessica Xiao   pts/0       202.202.0.9
smith   Smith Liu    pts/0       202.202.0.13
render  Render Chen   0        202.103.10.117
ftp    ???              < . . . . >

(未完待序)

文章转载地址:http://www.cnpaf.net/Class/hack/05121820345032303596.htm

0
相关文章