由网络安全技术联盟[]提供
一:前言
(仅以此文感谢好友。不是他,我可能不用这么担心安全问题的。呵呵!)
人说,一朝被蛇咬,十年怕.....。就是这样。2000年初,当我终于摆脱winnt 4.0 那可怕的补
丁之旅,迈向 时。我终于可以比较放心我的服务器了。但随着sp1的补丁出现。我知道,
与微软的补丁因缘又开始轮回了。但还好。自动化的管理还是让我放心好多,而以前管理winnt后
的失眠症状也逐渐消失了。偶尔还能见到我的“梦”老弟。但这一切都伴随者同的一次知心交谈
中付之东流了。一次。发来qq。给我看了一段代码。我一看就知道这不是写的代码,那
么烂,不过有点熟悉。再一看。啊?!这不是我的数据库连接字符串吗!!god。顿时觉得有一种不祥的
预兆。不过还好,这个只是个的,我还用了一些手段防止他被下载。但这足以让我长时间的失眠又
来了。(再次说明,不是蛇,他是鹰)
二:安装过程中的iis 与 asp安全防护。(这里只考虑是web服务器,而不是本地机子上的web开发平台。
)
接下来的几天有是几个难熬的日子。我开始重新部署 web服务器的安全策略。
找到asp代码被泄漏的原因,原来。我的补丁每次打得都比较及时的。但一次因为卸载ftp时,重装了
iis,而这之后,我并没有再打补丁而导致最新的漏洞web解析出错。(就是那个较新的漏洞
:f 用这个加上一些工具就可以看到asp的代码了。)
首先,开始重装iis。
这次安装的策略就是安全,够用。去掉一些多余的东西。
一:ftp不要安装了,功能不好,还容易出错,并且漏洞很大。ftp缺省传输密码的过程可是明文传送
,很容易被人截获。(可以考虑用第三方工具。)
二:一切实例、文档也不要安装了。这是在web服务器上,最好不要这些例子,事实证明可以从这些例
子站点突破iis的防线的。
三:安装时选择站点目录,建议不要用缺省目录c:/,最好安装道不是系统盘的盘上。如:
d:/,可以考虑自建目录。这样即使iis被突破,也能尽可能的保护好系统文件了。
四:不要安装html的远程管理。html的远程管理在winnt 4.0还能用的上,但漏洞比较大,而且比较危
险,端口号虽然是随机的,但很容易被人扫描道,从而留下隐患。事实上,我们可以通过另一台服务器上
的iis来管理他。这样比较安全。
五:多余的服务也不要安了,如nntp,如果不做新闻组。就不要安了。smtp,如果有更好的邮件服务
,也不要装他了。
六:索引服务器。这个索引真的是很有用,但我没有用过他。否则,你可以用他建立个整个站点的文
件搜索的,但现在好像大多数的asp网页都是一个网页,动态从数据库里查询。所以根本用不上索引服务
器了,(不是索引不好,而是本身上面的那种asp文件结构就不适合)所以可以不要安装。
三:有目的进行安全配置。
一:开发前的工作。
首先,启动iis后,看有没有/,/,/msadc/,这些目录,如果有,他们大多是用来作为
例子,帮助安装的,删掉他们,再把脚本库也删掉,直到web目录只留下干静的新建的虚拟目录即可,如果
有管理的web站点,也删掉他。没有他,我们一样可以工作的更好。 还有看看有没有的文件夹,
他们大多数都是些通过web来访问打印机的。ms就是怪。为了表示我的功力强大,允许通过web来远程打印
。相信没有哪个网络公司是通过web网来打印的把。也不可能让网友来使用你的计算机吧。那好,去掉他
。
然后。开始详细配置各个web虚拟目录的安全。大概的策略是这样的。
分类每个文件夹管理,如,可以吧扩展名是相同的分配到同一目录,如*.asp的,和*.inc就尽量分开
。如果是*.asp的,则开放虚拟目录权限,但将实际目录权限授予,(完全控制)
(rc)即可。这样可以通过web允许读取。但实际上你可以加大安全力度,如果你认位他是比较保
密的。如果是*.inc的,则开放目录权限,但不允许通过直接访问。这里又一个技巧了。比如。你可以允
许实际目录被访问,但在iis中,你把改目录浏览项去掉,则改包含文件只能被源文件读取,但
不允许被直接读许。这样,他就不可能下在倒一些你的单机数据库了。而且你的*.inc文件也不会被浏览
器直接阅读。
刚才我的老弟“梦”还在问我,有没有办法可以让别人看不到你的连接字符串,你可以试试下面的方法
!
1 首先建立连接字符串,并建立一个单独的文件*.inc(要是*.inc的,不要*.asp的)你把你的连接字
符串用变量复制进来。
如:=""=.1;=passw;...................."
2 然后建立一个文件夹,放在根目录里。
3 然后每一个文件用下面的办法打开连接。
如:
set conn=.("adodb.")
conn.open
4 最后在iis里把 文件夹用拒绝读的方法保护起来。你会发现,你的连接可以照常打开,但是
如果对方看到你的源代码,他也看不到连接字符串,即使他看到了包含文件路径及名称。他也无法下载,
或是用ie 打开。所以,可以保护你的连接字符串了。
这里用的方法是nt 权限与 iis权限的共同审核。我们知道,为了让用户从web上访问道服务器的文件
,每个安装了iis后的服务器都会有两个内置账号。,(x为你的机器名),这样
你就可以有的放矢的防治某些从你的web网络查看你的必要信息的用户了。
当然,还有一些比较好的文件策略你可以参考一下:
如:cgi (.exe, .dll, .cmd, .pl) (x)不允许读去,运行。(完全控制)
(完全控制)
所以,你在编写asp应用程序时,尽量归类好你的目录。方便用iis和nt进行管理。
如。采用下列结构比较好
d:/web// (放置*.htm)
d:/web// (放置*.asp)
d:/web//(放置*.inc)
d:/web// (放置*.gif,*.jpg)
这样你就可以用上面的方法来达到安全目的了。
二:启用日志监测。
这是亡羊补牢的好工具,至少你可以用它来监测谁通过webl干了什么,当然,你还要保护该日志的权限只
能是被系统管理员。和超级管理所控制。这样避免某些人的干了某些事而不留痕迹。为了留好现场而又不
影响iis的响应速度。还是建议选则w3c扩展日志格式比较好。(以前别人介绍我用odbc,看来比较方便,
但实际上不是这样。他受到数据库的影响很大。而且速度较慢了)。
可以考虑纪录下一下现场数据:
客户 ip 地址
用户名
方法
uri 资源
未经允许不得转载! 作者:admin,转载或复制请以超链接形式并注明出处墨迹游戏网。
原文地址:《安全维护 iis asp 站点的高级技巧》发布于:2024-12-07





