安全|問題 ASP中可能有哪些安全問題?
ASP具有簡單、易用、多功能,可擴充性等強大功能,但也存在一些問題。譬如,如果使用ASP的話,可能會導致網路的安全性大大降低了!下面為大家舉一個例子,請按照下面的步驟:
(1)從http://home.gbsource.net/xuankong/dll.zip下載這個檔案,解壓縮後把其中的test.dll檔案拷貝到c:windowssystem(如果你使用的是NT的話,請拷貝到相應的目錄中);
(2)接下來開啟"開始/運行"菜單輸入"regsvr32 test.dll"命令;
(3)拷貝解壓後的檔案包中的那個index.asp到你的伺服器目錄(如果你使用的是PWS調試可以拷貝到"c:inetpubwwwroot",NT請拷貝到相應的目錄);
(4)換一台機器用IE瀏覽index.asp檔案看一看(你看到的是出錯代碼,但是實際上程式已經運行了),你再返回你的機器看一看c:下面是不是多了一個檔案?一個名為xuankong.dat的檔案(其實如果我願意,你的c:autoexec.bat檔案頁可以被我開啟並寫進去一些像"format c:/q/u"等命令,那麼等你下次重新啟動的時候,結果就不言自明了)。
ASP頁面的安全問題是如何產生的?
下面我們來看一下到底是怎麼回事,你剛才拷貝的那些dll檔案其實是我使用Visul Basic5開發的一個主件,這個檔案是通過以下步驟產生的:
(1)開啟VB5建立一個"ActiveX.dll"檔案,吧下面的代碼輸入進去:
Private Declare Function ExitWindowsEx Lib "user32"_(ByVal uFlags As Long,ByVal dwReserved As Long)_As LongSub Xuankong ( ) "請不要加上"private"a$ = InputBox ("請輸入你的姓名,如果你輸入的是"xuankong""+Chr(13)+Chr(10)+"則會在你的系統中產生一個"xuankong"檔案"+Chr(10)+Chr(13)+"否則你的機器可能會重起","請輸入","xuankong")If a$ = "xuankong" ThenOpen "c:xuankong.dat" For Append As #Write#1,"我的朋友,這是一個asp主件測試程式"#Write#1,"hello world!this is a test"#Write#1,"如果你看到這個檔案測試就成功!"elseExitWindowsEx&H43,0使用API函數重新啟動機器End ifClose #1End sub
(2)把工程名改為dll,類別模組改為test,然後把這個工程產生dll檔案到c:windowssystem目錄下面。
(3)建立一個index.asp檔案下面的代碼輸入進去:
<html> </html>
(4)拷貝index.asp到你的伺服器內,按照上面的方法調試!
總結:
上面所說的是ASP主件的安全問題!另外如果有些作者再寫ASP主件的時候不小心留下系統bug!那就更加不容易發現了!也可能會帶來意想不到的問題。