ASP组件中的安全问题 蒲俊杰 2000年 第12期 Microsoft推出的ASP(Active Server Page)以简单、易用、功能多、可扩充性等强大功能得到了网友和大多数网管的喜爱,大有完全代替CGI的趋势。但是我要对你说,如果使用ASP的话,你网络的安全同时也大大降低了! 在我继续说下去之前,请你完成以下步骤: 1.下载这个文件“http://home.gbsource.net/xuankong/dll.zip”,解压缩后把其中的test.dll文件拷贝到“c:\windows\system”(如果你是使用NT的话,请拷贝到相应目录); 2.接下来打开“开始/运行”菜单输入“regsvr32 test.dll”命令; 3.拷贝解压缩后的文件包中的那个index.asp到你的服务器目录(如果你是使用PWS‘Personal Web Server’调试可以拷贝到“c:\Inetpub\wwwroot”,NT请拷贝到相应的目录); 4.换一台机器用IE浏览index.asp文件看一看(你看到的是出错代码,但是实际上程序已经运行了),你再返回你的机器看一看c:\下是否多了一个文件?!一个名为“xuankong.dat”的文件(其实如果我愿意,你的c:\autoexec.bat文件也可以被我打开并写入一些什么“format c: /q/y”或者“deltree *.* /y”的命令,等你下次重新启动机器。嘿嘿……)。 我们一起来看看到底是怎么一回事,你刚才拷贝的那些DLL文件其实是我使用Visul Basic 5.0开发的一个组件: 1.打开VB5.0新建一个“ActiveX dll”文件,把下面的代码录入进去。 Private Declare Function ExitWindowsEx Lib ″user32″ _ (ByVal uFlags As Long, ByVal dwReserved As Long) _ As Long Sub xuankong()′请不要加上″private″ a$ = InputBox(″请输入你的姓名,如果你的输入是″xuankong″″ + Chr(13) + Chr(10) + ″则会在你的系统中生成一个″xuankong.dat″文件″ + Chr(10) + Chr(13) + ″否则的话你的机器可能重启″, ″请输入″, ″xuankong″) If a$ = ″xuankong″ Then Open ″c:\xuankong.dat″ For Append As #1 Write #1, ″我的朋友,这是一个ASP组件的测试程序″ Write #1, ″hello world!This is a test″ Write #1, ″如果你看到这个文件表示测试成功!!!″ Else ExitWindowsEx &H43, 0′使用API函数重新启动机器 End If Close #1 End Sub 2.把工程名改为dll,类模块改为test,然后把这个工程生成DLL文件到c:\windows\system目录下面。 3.新建一个index.asp文件把下面的代码录入进去。