最近在學習web安全相關的一些知識,目前對web安全也只有了一些淺顯的理解,下面記錄個人一些理解。
由於對這一塊懂的東西不是不少,有些地方可能寫的不對或者不夠全,因此歡迎你們給點問題和建議。css
目前只看了三種攻擊方式
一.XSS跨站腳本攻擊
二.sql注入
三.CSRF跨站請求僞造html
反射型XSS攻擊
此種攻擊通俗點講,就是在用戶輸入的地方,輸入一些惡意的腳本,一般是textarea,而後經過某種方式當即執行,而後獲取到一些想要獲得的信息,好比cookie等,而後發送到本身的服務器。(沒有想到具體哪些案例會當即執行)
此種攻擊的解決方案通常是在用戶輸入的地方作一些過濾,過濾掉這一部分惡意腳本。
存儲型XSS攻擊
此種攻擊通俗點講,就是在用戶輸入的地方,輸入一些惡意的腳本,一般是富文本編輯器或者textarea等地方,而後在讀取富文本的時候,若是沒有作過濾和限制,就會直接執行用戶輸入的惡意腳本。存儲型說的就是數據會存儲到服務器或者數據庫。
此種攻擊的解決方案和上面同樣,在用戶輸入的地方作一些過濾,過濾掉這一部分惡意腳本。
dom型XSS攻擊
dom型XSS攻擊也是在用戶輸入的地方輸入一些腳本,不一樣的是這個腳本可能直接就在客戶端執行,不通過服務器。web
xss攻擊基本是在用戶輸入的地方輸入一些惡意腳本,已達到如下的目的:sql
基本的防護方法就是在用戶輸入的地方或者顯示的地方:數據庫
關於CSRF攻擊的知識,我是看了這篇博客的Web安全之CSRF攻擊,我的以爲這篇文章還不錯,簡單清晰明瞭。
我我的感受CSRF攻擊和XSS攻擊有點相似,也是在用戶輸入的地方輸入一些腳本,好比一個圖片,在圖片的src里加上某個地址,當頁面再次載入這個輸入的內容的時候,就會發送請求,從而達到某種目的。
CSRF攻擊和xss有點相似,不同的是,CSRF冒充用戶在站內作一些正常的操做,如關注某我的等,而XSS則是獲取一些信息,作一些惡意的操做等,其實具體的區別我也不是很理解,有機會的話再繼續深刻探究一下。
防護CSRF攻擊的方法主要是:小程序
推薦的文章Web安全之CSRF攻擊其實還講了其餘的幾種方法,可是都沒接觸過,不太理解,因此沒有寫下來。微信小程序
我以前寫過一個獲取微信小程序碼的接口,該接口對外開放沒有作任何限制,而後根據一些參數建立文件夾和文件名等信息,發現常常會有一些SELECT開頭的文件夾和文件,SQL注入應該就是傳入的參數裏面帶有SQL語句,後面我加了一些過濾和判斷就沒有出現過了。
防護的主要措施就是:安全