- 資訊首頁(yè) > 互聯(lián)網(wǎng) > 經(jīng)驗分享 >
- web網(wǎng)頁(yè)應用常見(jiàn)安全攻擊手段
主動(dòng)攻擊: 直接向應用服務(wù)器發(fā)起攻擊,傳入代碼,比如OS注入、SQL注入。 被動(dòng)攻擊:誘導客戶(hù)操作,向服務(wù)器發(fā)送植入非法代碼的請求,比如CSRF、XSS。 主動(dòng)與否的判斷依據:攻擊的直接發(fā)起者是普通用戶(hù)還是攻擊者。
JS注入 解決方法:HTML編碼 如:<%=Html.Encode(feedback.Message)%> HTML5引入的新標簽包括、、、
、等等,而這些標簽又有一些有趣的屬性,例如poster、autofocus、onerror、formaction、oninput,這些屬性都可以用來(lái)執行javascript。這會(huì )導致XSS和CSRF跨域請求偽造。
非法修改SQL語(yǔ)句。
通過(guò)web應用調用操作系統命令,通過(guò)shell命令可以調用操作系統的其它程序,只要有能夠調用shell函數的地方就有被攻擊的風(fēng)險。
在響應首部加入換行符(HTTP換行符: ),設置cookie信息,假冒用戶(hù)。 (1)HTTP響應截斷攻擊:需要插入兩個(gè)HTTP換行符,然后并排插入字符串發(fā)送,插入的字符串是偽造的響應主體(網(wǎng)頁(yè)內容)??梢赃_到和跨站腳本攻擊相同的效果。
向郵件首部To/Subject任意添加非法內容,可以對任意郵件發(fā)送廣告郵件或者病毒郵件。
非法訪(fǎng)問(wèn)服務(wù)器其它文件路徑,比如/etc/passed。
(1)表單 在URL添加JavaScript代碼,獲取用戶(hù)表單信息,并且提交到攻擊者的服務(wù)器。 (2)cookie 保護cookie:httponly——服務(wù)端設置Set-Cookie: user=t=bfabf0b1c1133a822; path=/; HttpOnly (3)顯示偽造的圖片、文章 xss防范:
方法一:
阻止 JavaScript 注入攻擊的一種簡(jiǎn)單方法是重新在視圖中顯示數據時(shí),用 HTML 編碼任何網(wǎng)站用戶(hù)輸入的數據 如:<%=Html.Encode(feedback.Message)%> 使用 HTML 編碼一個(gè)字符串的含意是什么呢?使用 HTML 編碼字符串時(shí),危險字符如 < 和 > 被替換為 HTML 實(shí)體,如 < 和 >。所以,當使用 HTML 編碼字符串 。瀏覽器在解析編碼的字符串時(shí)不再執行 JavaScript 腳本。而是顯示無(wú)害的頁(yè)面。 方法二:
除了在視圖中顯示數據時(shí)使用 HTML 編碼數據,還可以在將數據提交到數據庫之前使用 HTML 編碼數據。 StringEscapeUtils.escapeHtml(“前臺提交的數據”);
通常,人們喜歡使用本教程中討論的第一種方法,而不喜歡使用第二種方法。第二種方法的問(wèn)題在于在數據庫中最終會(huì )保留 HTML 編碼的數據。換言之,數據庫中的數據會(huì )包含奇怪的字符。這有什么壞處呢?如果需要用除網(wǎng)頁(yè)以外的形式顯示數據庫數據,則將遇到問(wèn)題。例如,不能輕易在 Windows Forms 應用程序中顯示數據。
訪(fǎng)問(wèn)登錄頁(yè)面,利用服務(wù)器返回的URL誘導用戶(hù)前去認證,再用用戶(hù)的會(huì )話(huà)ID去登錄網(wǎng)站。
利用已經(jīng)認證的用戶(hù),向應用服務(wù)器發(fā)送請求,完成相應操作,比如發(fā)表言論,購買(mǎi)。 1、驗證HTTP Referer字段
在HTTP頭中有Referer字段,他記錄該HTTP請求的來(lái)源地址,如果跳轉的網(wǎng)站與來(lái)源地址相符,那就是合法的,如果不符則可能是csrf攻擊,拒絕該請求 2、在請求地址中添加token并驗證
這種的話(huà)在請求的時(shí)候加一個(gè)token,值可以是隨機產(chǎn)生的一段數字, token是存入數據庫之后,后臺返給客戶(hù)端的,如果客戶(hù)端再次登錄的時(shí)候, 后臺發(fā)現token沒(méi)有,或者通過(guò)查詢(xún)數據庫不正確,那么就拒絕該請求
如果想防止一個(gè)賬號避免在不同的機器上登錄,那么我們就可以通過(guò)token來(lái)判斷, 如果a機器登錄后,我們就將用戶(hù)的token從數據庫清除,從新生成, 那么另外一臺b機器在執行操作的時(shí)候,token就失效了,只能重新登錄,這樣就可以防止兩臺機器登同一賬號 3、在HTTP頭中自定義屬性并驗證
如果說(shuō)通過(guò)每次請求的時(shí)候都得加token那么各個(gè)接口都得加很麻煩, 那么我們通過(guò)http的請求頭來(lái)設置token 例如: $.ajax({ url: ‘/v1/api’, dataType: ‘json’, data: param, type:‘post’, headers: {‘Accept’:‘a(chǎn)pplication/json’,‘Authorization’:tokenValue} success:function(res){ console.log(res) } })
1.不能訪(fǎng)問(wèn)沒(méi)有權限的文本內容,卻能夠訪(fǎng)問(wèn)圖片資源 2.不恰當的錯誤信息拋出
3.開(kāi)放重定向 4.密碼破解
發(fā)布者:水橋丶帕露西
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站