使用者登入驗證安全問題

2021-05-22 16:37:18 字數 1018 閱讀 7158

關於登入驗證安全問題,使用者名稱和密碼使用:1=1 or 1=1;

典型的sql:

sql="select * from

表where user= "&user&" and pass= "&pass&" "

為避免:

sql="select * from

表where user= 1 = 1 or 1=1 and pass= 1=1 or 1 = 1 "

解決方法:

一、函式替代法:

用replace 將使用者端輸入的內容中含有特殊字元進行替換,達到控制目的啊!sql="select * from 表where user= "&replace(user," "," ")&" and pass= "&replace(pass," "," ")&" "

這種方法每次只能替換乙個字元,其實危險的字元不只是" " ,還有如">" 、"<" 、"&" 、"%" 等字元應該全控制起來。但用replace 函式好象不太勝任那怎麼辦呢??

二、程式控制法

用程式來對客戶端輸入的內容全部控制起來,這樣能全面控制使用者端輸入的任何可能的危險字元或**,我就的這個方法!

<%

捕捉使用者端提交的表單內容

user=request.from("user")

pass=request.from("pass")

...

迴圈控制開始

for i=1 to len(user)

用mid 函式讀出變數user 中i 位置的乙個字元

us=mid(user,i,1)

將讀出的字元進行比較

if us=" " or us="%" or us="<" or us=">" or us="&" then

如果含有以上字元將出錯提示,不能含有以上特殊字元

response.redirect "err2.htm"

response.end

end if

next

...

%>  

使用者登入時的安全問題剖析

post是提交資料的方式,比較常見的post提交資料的方式有四種 2 multipart form data 瀏覽器支援 向伺服器上傳小檔案,一般不超過2m 4 text xml 瀏覽器不支援 向後台伺服器提交結構化資料 本文主要介紹第一種提交資料的方式 如何用post進行使用者資料安全提交,保護使...

登入安全問題策略

使用者登入介面 img 客戶感覺每次都要輸入驗證碼不爽,那麼你會怎麼做?三次輸入錯誤,24小時內都要驗證碼 我知道的三種解決方法 cookie session 資料庫表記錄 三種儲存方式,資料庫最安全,還可以判斷下對方的ip,根據對方ip儲存,可是我們專案是門戶型 這個使用者量是很大的。cookie...

前端登入安全問題

對於前端開發來說安全問題很重要,我們不希望自己的密碼之類的資訊暴露出來被人獲取。如果前端不加以限制,很多重要資訊容易洩露。比如我們登入的時候,提交post,我們在瀏覽器控制台network的http請求中會直接看到密碼。http協議是明文傳輸,只要別人一抓包就可以獲取到傳輸的報文。那為了讓資料傳輸更...