成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

web 安全入門

MycLambert / 1897人閱讀

摘要:搞開發(fā)離不開安全這個話題,確保網(wǎng)站或者網(wǎng)頁應用的安全性,是每個開發(fā)人員都應該了解的事。阿里巴巴的安全團隊在實戰(zhàn)中發(fā)現(xiàn),防御產(chǎn)品的核心是檢測技術和清洗技術。表示轉賬的目標賬戶,表示轉賬數(shù)目。

搞 Web 開發(fā)離不開安全這個話題,確保網(wǎng)站或者網(wǎng)頁應用的安全性,是每個開發(fā)人員都應該了解的事。本篇主要簡單介紹在 Web 領域幾種常見的攻擊手段。

1. Cross Site Script(XSS, 跨站腳本攻擊)

首先插播一句,為毛叫 XSS,縮寫明顯是 CSS ???沒錯,為了防止與我們熟悉的 CSS(Cascading Style Sheets)混淆,所以干脆更名為 XSS。

那 XSS 是什么呢?一言蔽之,XSS 就是攻擊者在 Web 頁面中插入惡意腳本,當用戶瀏覽頁面時,促使腳本執(zhí)行,從而達到攻擊目的。XSS 的特點就是想盡一切辦法在目標網(wǎng)站上執(zhí)行第三方腳本。

( 圖片來源:XSS Tutorial )

舉個例子。原有的網(wǎng)站有個將數(shù)據(jù)庫中的數(shù)據(jù)顯示到頁面的上功能,document.write("data from server")。但如果服務器沒有驗證數(shù)據(jù)類型,直接接受任何數(shù)據(jù)時,攻擊者可以會將

( 圖片來源: Cross-Site Scripting (XSS) )

DOM 型 XSS: 有點類似于存儲型 XSS,但存儲型 XSS 是將惡意腳本作為數(shù)據(jù)存儲在服務器中,每個調(diào)用數(shù)據(jù)的用戶都會受到攻擊。但 DOM 型 XSS 則是一個本地的行為,更多是本地更新 DOM 時導致了惡意腳本執(zhí)行。

那么如何防御 XSS 攻擊呢?

從客戶端和服務器端雙重驗證所有的輸入數(shù)據(jù),這一般能阻擋大部分注入的腳本

對所有的數(shù)據(jù)進行適當?shù)木幋a

設置 HTTP Header: "X-XSS-Protection: 1"

2. SQL Injection (SQL 注入)

所謂 SQL 注入,就是通過客戶端的輸入把 SQL 命令注入到一個應用的數(shù)據(jù)庫中,從而得以執(zhí)行惡意 SQL 語句。

先看個例子。

uname = request.POST["username"]
password = request.POST["password"]

sql = "SELECT all FROM users WHERE username="" + uname + "" AND password="" + password + """

database.execute(sql)

上面這段程序直接將客戶端傳過來的數(shù)據(jù)寫入到數(shù)據(jù)庫。試想一下,如果用戶傳入的 password 值是: "password’ OR 1=1",那么 sql 語句便會變成:

sql = "SELECT all FROM users WHERE username="username" AND password="password" OR 1=1"

那么,這句 sql 無論 usernamepassword 是什么都會執(zhí)行,從而將所有用戶的信息取出來。

那么怎么預防 sql 的問題呢?

想要提出解決方案,先看看 sql 注入得以施行的因素:

網(wǎng)頁應用使用 SQL 來控制數(shù)據(jù)庫

用戶傳入的數(shù)據(jù)直接被寫入數(shù)據(jù)庫

根據(jù) OWASP,下面看看具體的預防措施。

Prepared Statements (with Parameterized Queries): 參數(shù)化的查詢語句可以強制應用開發(fā)者首先定義所有的 sql 代碼,之后再將每個參數(shù)傳遞給查詢語句

Stored Procedures: 使用語言自帶的存儲程序,而不是自己直接操縱數(shù)據(jù)庫

White List Input Validation: 驗證用戶的輸入

Escaping All User Supplied Input: 對用戶提供的所有的輸入都進行編碼

3. Distributed Denial of Service (DDoS, 分布式拒絕服務)

DoS 攻擊就是通過大量惡意流量占用帶寬和計算資源以達到癱瘓對方網(wǎng)絡的目的。

舉個簡單的例子,老鄭家面館生意紅火,突然有一天一群小混混進了點,霸占了座位,只閑聊不點菜,結果坐在店里的人不吃面,想吃面的人進不來,導致老鄭無法向正??蛻舴铡?/p>

而 DDoS 攻擊就是將多個計算機聯(lián)合起來一同向目標發(fā)起攻擊,從而成倍地提高拒絕服務攻擊的威力。

(圖片來源于: DDoSCoin - An Incentive to Launch DDoS Attacks?)

一般 DDoS 攻擊有兩個目的:

敲詐勒索,逼你花錢買平安

打擊競爭對手

在技術角度上,DDoS攻擊可以針對網(wǎng)絡通訊協(xié)議的各層,手段大致有:TCP類的SYN Flood、ACK Flood,UDP類的Fraggle、Trinoo,DNS Query Flood,ICMP Flood,Slowloris類、各種社工方式等等,這些技術這里不做詳細解釋。但是一般會根據(jù)攻擊目標的情況,針對性的把技術手法混合,以達到最低的成本最難防御的目的,并且可以進行合理的節(jié)奏控制,以及隱藏保護攻擊資源。

阿里巴巴的安全團隊在實戰(zhàn)中發(fā)現(xiàn),DDoS 防御產(chǎn)品的核心是檢測技術和清洗技術。檢測技術就是檢測網(wǎng)站是否正在遭受 DDoS 攻擊,而清洗技術就是清洗掉異常流量。而檢測技術的核心在于對業(yè)務深刻的理解,才能快速精確判斷出是否真的發(fā)生了 DDoS 攻擊。清洗技術對檢測來講,不同的業(yè)務場景下要求的粒度不一樣。

4. Cross Site Request Forgery (CSRF, 跨站請求偽造)

簡單來說,CSRF 就是網(wǎng)站 A 對用戶建立信任關系后,在網(wǎng)站 B 上利用這種信任關系,跨站點向網(wǎng)站 A 發(fā)起一些偽造的用戶操作請求,以達到攻擊的目的。

舉個例子。網(wǎng)站 A 是一家銀行的網(wǎng)站,一個轉賬接口是 "http://www.bankA.com/transfer?toID=12345678&cash=1000"。toID 表示轉賬的目標賬戶,cash 表示轉賬數(shù)目。當然這個接口沒法隨便調(diào)用,只有在已經(jīng)驗證的情況下才能夠被調(diào)用。

此時,攻擊者建立了一個 B 網(wǎng)站,里面放了一段隱藏的代碼,用來調(diào)用轉賬的接口。當受害者先成功登錄了 A 網(wǎng)站,短時間內(nèi)不需要再次驗證,這個時候又訪問了網(wǎng)站 B,B 里面隱藏的惡意代碼就能夠成功執(zhí)行。

那怎么預防 CSRF 攻擊呢?OWASP 推薦了兩種檢查方式來作為防御手段。

檢查標準頭部,確認請求是否同源: 檢查 source origin 和 target origin,然后比較兩個值是否匹配

檢查 CSRF Token: 主要有四種推薦的方式

Synchronizer Tokens: 在表單里隱藏一個隨機變化的 token,每當用戶提交表單時,將這個 token 提交到后臺進行驗證,如果驗證通過則可以繼續(xù)執(zhí)行操作。這種情況有效的主要原因是網(wǎng)站 B 拿不到網(wǎng)站 A 表單里的 token;

Double Cookie Defense: 當向服務器發(fā)出請求時,生成一個隨機值,將這個隨機值既放在 cookie 中,也放在請求的參數(shù)中,服務器同時驗證這兩個值是否匹配;

Encrypted Token Pattern: 對 token 進行加密

Custom Header: 使用自定義請求頭部,這個方式依賴于同源策略。其中最適合的自定義頭部便是: "X-Requested-With: XMLHttpRequest"

參考:

Cross-site scripting -- MDN

XSS Tutorial

微信公眾號【給產(chǎn)品經(jīng)理講技術】 -- Web安全之CSRF攻擊

Cross-Site Request Forgery (CSRF) Prevention Cheat Sheet_Prevention_Cheat_Sheet)

SQL Injection (SQLi)

SQL Injection

SQL Injection Prevention Cheat Sheet

DDoS,并沒有想象中那么可怕

互聯(lián)網(wǎng)黑市分析:DDoS 啟示錄

DDoS,網(wǎng)絡安全世界里的暗黑殺手

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/11217.html

相關文章

  • 信息安全入門指南

    摘要:以下所列出的鏈接均為在線文檔,有志于信息安全的愛好者可由此作為入門指南。 以下所列出的鏈接均為在線文檔,有志于信息安全的愛好者可由此作為入門指南。 常規(guī)知識 Sun認證-Solaris 9&10安全管理員學習指南 PicoCTF資料 應用軟件安全 OWASP安全編碼規(guī)范 漏洞挖掘 Windows ISV軟件安全防御 移動安全 OWASP十大移動手機安全風險 網(wǎng)...

    jay_tian 評論0 收藏0
  • CTF入門學習2->Web基礎了解

    摘要:安全基礎介紹本意是網(wǎng),這里多指萬維網(wǎng),是由許多互相連接的超文本系統(tǒng)組成的,通過互聯(lián)網(wǎng)訪問。刷新后可以看到瀏覽器發(fā)送了很多請求。同理可以查看和等各種文件格式。Web安全基礎 00 Web介紹 00-00 Web本意是網(wǎng),這里多指萬維網(wǎng)(World Wide Web),是由許多互相連接的超文本系統(tǒng)組成的,通過互聯(lián)網(wǎng)訪問。 Web是非常廣泛的互聯(lián)網(wǎng)應用,每天都有數(shù)以億萬計的...

    W_BinaryTree 評論0 收藏0
  • 信息安全入門書單

    這個書單收集了一些安全領域的入門書籍,分享給各位開發(fā)者。 showImg(http://segmentfault.com/img/bVbN6p); 應用程序安全 軟件安全評估的藝術 作者:Mark Dowd、John McDonald、Justin Schuh? BUG獵手日記 作者:Tobias Klein Fuzzing:暴力漏洞挖掘 作者:Michael Sutton、Adam Gr...

    yagami 評論0 收藏0
  • [譯]Spring入門 - Web應用程序安全

    摘要:一旦最基本的應用創(chuàng)建好了,你可以給他加上安全防護。一旦成功登出了,我們的應用程序重定向到到并顯示相應的登陸成功的消息。這標記該應用程序是一個應用程序,并激活一些關鍵行為,比如創(chuàng)建一個。一旦應用程序啟動,用瀏覽器訪問。 原網(wǎng)頁 https://spring.io/guides/gs/securing-web/ 本指南將引導您完成創(chuàng)建一個資源由Spring Security的保護的一個簡單...

    AlexTuan 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<