国产精品一品二品_49vv亚洲_亚洲美女激情视频_国产成人亚洲无吗淙合青草_欧美在线天堂_人妻av无码av中文av日韩av_av在线播放免费_91亚洲精品在线观看_韩国 欧美 日产 国产精品_久久人人爽

在線客服:  

「南寧煙寒網絡」提供南寧網站建設、網站策劃、南寧網頁制作、網站設計、網站改版、南寧SEO優化、網站維護、南寧網站優化、南寧網站推廣、廣告設計等服務..

咨詢熱線

在線客服

24小時免費咨詢電話:18978941786

客服時間:上午9:30~下午6點

當前位置:首頁>> 技術文章 >> Web開發 >> ASP網站漏洞的防范八大法則

ASP網站漏洞的防范八大法則

收藏 分享 發布日期:2012-2-12 16:30:45    編輯:admin  文章來源:安全中國網  點擊率:

SQL Injection這樣的漏洞,由于ASP本身存在一些安全漏洞,稍不小心就會給黑客提供可乘之機。事實上,安全不僅是網管的事,編程人員也必須在某些安全細節上注意

  防范技巧:

  (1)為你的數據庫文件名稱起個復雜的非常規的名字,并把它放在幾層目錄下。所謂 “非常規”, 打個比方說,比如有個數據庫要保存的是有關書籍的信息, 可不要給它起個“book.mdb”的名字,而要起個怪怪的名稱,比如d34ksfslf.mdb, 并把它放在如./kdslf/i44/studi/的幾層目錄下,這樣黑客要想通過猜的方式得到你的Access數據庫文件就難上加難了。

  (2)不要把數據庫名寫在程序中。有些人喜歡把DSN寫在程序中,比如: DBPath = Server.MapPath(“cmddb.mdb”)

  conn.Open “driver={Microsoft Access Driver (*.mdb)};dbq=” & DBPath

  假如萬一給人拿到了源程序,你的Access數據庫的名字就一覽無余了。因此建議你在ODBC里設置數據源,再在程序中這樣寫:

  conn.open“shujiyuan”

  (3)使用Access來為數據庫文件編碼及加密。首先在“工具→安全→加密/解密數據庫”中選取數據庫(如:employer.mdb),然后按確定,接著會出現“數據庫加密后另存為”的窗口,可存為:“employer1.mdb”。

  要注意的是,以上的動作并不是對數據庫設置密碼,而只是對數據庫文件加以編碼,目的是為了防止他人使用別的工具來查看數據庫文件的內容。

  接下來我們為數據庫加密,首先打開經過編碼了的 employer1.mdb,在打開時,選擇“獨占”方式。然后選取功能表的“工具→安全→設置數據庫密碼”,接著輸入密碼即可。這樣即使他人得到了employer1.mdb文件,沒有密碼他也是無法看到 employer1.mdb中的內容。

  7、防范遠程注入攻擊

  這類攻擊在以前應該是比較常見的攻擊方式,比如POST攻擊,攻擊者可以隨便的改變要提交的數據值已達到攻擊目的.又如:COOKIES 的偽造,這一點更值得引起程序編寫者或站長的注意,不要使用COOKIES來做為用戶驗證的方式,否則你和把鑰匙留給賊是同一個道理.

  比如: If trim(Request. cookies ("uname"))="fqy" and Request.cookies("upwd") =”fqy#e3i5.com” then

  ……..more………

  End if

  我想各位站長或者是喜好寫程序的朋友千萬別出這類錯誤,真的是不可饒恕.偽造COOKIES 都多少年了,你還用這樣的就不能怪別人跑你的密碼.涉及到用戶密碼或者是用戶登陸時,你最好使用session 它才是最安全的.如果要使用COOKIES就在你的COOKIES上多加一個信息,SessionID,它的隨機值是64位的,要猜解它,不可能.例:

  if not (rs.BOF or rs.eof) then

  login="true"

  Session("username"&sessionID) = Username

  Session("password"& sessionID) = Password

  ‘Response.cookies(“username”)= Username

  ‘Response.cookies(“Password”)= Password

  下面我們來談談如何防范遠程注入攻擊,一般的攻擊都是將單表提交文件拖到本地,將Form ACTION=”chk.asp” 指向你服務器中處理數據的文件即可.如果你全部的數據過濾都在單表頁上,那么恭喜你,你將已經被腳本攻擊了.

怎么才能制止這樣的遠程攻擊?好辦,請看代碼如下: 程序體(9)

  ‘個人感覺上面的代碼過濾不是很好,有一些外部提交竟然還能堂堂正正的進來,于是再寫一個.

  ‘這個是過濾效果很好,建議使用.

  if instr(request.servervariables("http_referer"),"http://";&request.servervariables("host") )<1 then response.write

  "處理 URL 時服務器上出錯。

  如果您是在用任何手段攻擊服務器,那你應該慶幸,你的所有操作已經被服務器記錄,我們會第一時間通知公安局與國家安全部門來調查你的IP. "

  程序體(9)

  本以為這樣就萬事大吉了,在表格頁上加一些限制,比如maxlength啦,等等..但天公就是那么不作美,你越怕什么他越來什么.你別忘了,攻擊者可以突破sql注入攻擊時輸入框長度的限制.寫一個SOCKET程序改變HTTP_REFERER?我不會。網上發表了這樣一篇文章: ------------len.reg-----------------

  Windows Registry Editor Version 5.00

  [HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/擴展(&E)]

  @="C:/Documents and Settings/Administrator/桌面/len.htm"

  "contexts"=dword:00000004

  -----------end----------------------

  -----------len.htm------------------

  ----------end-----------------------

  用法:先把len.reg導入注冊表(注意文件路徑)

  然后把len.htm拷到注冊表中指定的地方.

  打開網頁,光標放在要改變長度的輸入框上點右鍵,看多了一個叫擴展的選項了吧

  單擊搞定! 后記:同樣的也就可以對付那些限制輸入內容的腳本了.

  怎么辦?我們的限制被饒過了,所有的努力都白費了?不,舉起你de鍵盤,說不。讓我們繼續回到腳本字符的過濾吧,他們所進行的注入無非就是進行腳本攻擊。我們把所有的精力全都用到ACTION以后的頁面吧,在chk.asp頁中,我們將非法的字符全部過濾掉,結果如何?我們只在前面虛晃一槍,叫他們去改注冊表吧,當他們改完才會發現,他們所做的都是那么的徒勞。

  8、ASP木馬

  已經講到這里了,再提醒各位論壇站長一句,小心你們的文件上傳:為什么論壇程序被攻破后主機也隨之被攻擊者占據。原因就在……對!ASP木馬!一個絕對可惡的東西。病毒么?非也.把個文件隨便放到你論壇的程序中,您老找去吧。不吐血才怪哦。如何才能防止ASP木馬被上傳到服務器呢?方法很簡單,如果你的論壇支持文件上傳,請設定好你要上傳的文件格式,我不贊成使用可更改的文件格式,直接從程序上鎖定,只有圖象文件格式,和壓縮文件就完全可以,多給自己留點方便也就多給攻擊者留點方便。怎么判斷格式,我這里收集了一個,也改出了一個,大家可以看一下:

  程序體(10)

  ’判斷文件類型是否合格

  Private Function CheckFileExt (fileEXT)

  dim Forumupload

  Forumupload="gif,jpg,bmp,jpeg"

  Forumupload=split(Forumupload,",")

  for i=0 to ubound(Forumupload)

  if lcase(fileEXT)=lcase(trim(Forumupload(i))) then

  CheckFileExt=true

  exit Function

  else

  CheckFileExt=false

  end if

  next

  End Function

  ‘驗證文件內容的合法性 set MyFile = server.CreateObject ("Scripting.FileSystemObject")

  set MyText = MyFile.OpenTextFile (sFile, 1) ’ 讀取文本文件

  sTextAll = lcase(MyText.ReadAll): MyText.close

  ’判斷用戶文件中的危險操作

  sStr ="8 .getfolder .createfolder .deletefolder .createdirectory

  .deletedirectory"

  sStr = sStr & " .saveas wscript.shell script.encode"

  sNoString = split(sStr," ")

  for i = 1 to sNoString(0)

  if instr(sTextAll, sNoString(i)) <> 0 then

  sFile = Upl.Path & sFileSave: fs.DeleteFile sFile

  Response.write "

  "& sFileSave &"文件中含有與操作目錄等有關的命令"&_

  "

  "& mid(sNoString(i),2) &",

  為了安全原因,不能上傳。"&_"

  "

  Response.end

  end if

  next

  把他們加到你的上傳程序里做一次驗證,那么你的上傳程序安全性將會大大提高.

  什么?你還不放心?拿出殺手锏,請你的虛擬主機服務商來幫忙吧。登陸到服務器,將PROG ID 中的

  "shell.application"項和"shell.application.1"項改名或刪除。再將”WSCRIPT.SHELL”項和”WSCRIPT.SHELL.1”

  這兩項都要改名或刪除。呵呵,我可以大膽的說,國內可能近半以上的虛擬主機都沒改過。只能慶幸你們的用戶很合作,否則……我刪,我刪,我刪刪刪……

文章分頁: 1 | 2 | 3 |
本文章由南寧網站建設南寧網站優化南寧網絡公司整理,轉載請注明出處:http://www.hjnf.com.cn/

關于我們 | 域名主機 | 建站套餐 | 企業動態 | 成功案例 | 網站推廣 | 建站知識 | 常見問題 | 聯系我們

南寧煙寒網絡竭誠為您免費提供南寧網站建設南寧網站設計南寧網站優化、維護以及網站技術很方面的網絡服務!

南寧網站建設南寧網絡公司咨詢熱線電話:0771-5306126 18967841786(24小時全天電話)

煙寒網絡 - 讓你進一步走向成功

主站蜘蛛池模板: 通许县| 星座| 沁阳市| 伊通| 黄梅县| 陆川县| 上杭县| 辛集市| 天水市| 清镇市| 沈丘县| 时尚| 余干县| 神农架林区| 蓬安县| 蒙城县| 梧州市| 炎陵县| 平度市| 五大连池市| 鲜城| 和平区| 建平县| 文水县| 伽师县| 靖西县| 高碑店市| 新平| 玉树县| 汶上县| 建水县| 翁牛特旗| 五寨县| 汕尾市| 万荣县| 承德县| 襄垣县| 瓮安县| 宁远县| 股票| 博野县|