1、SQL注入攻擊
???定義:
? ? ? 攻擊者在HTTP請求中注入惡意的SQL代碼,當服務器利用參數構建SQL語句的時候,惡意的SQL代碼被一起構建,并在數據庫中執行。
???示例:
? ? ? 用戶登錄: 輸入用戶名xx, 密碼 'or '1' = ' 1,如果此時使用參數構建的方式,就會出現
?? ? ?select * from user where name = "xx" and password = '' or '1' = '1' ,這樣不管輸入的用戶名和密碼是什么內容,查詢出來的用戶列表都不會為空。
???預防:?
? ? ? > web方面
? ? ? ? # 有效性校驗
?? ??? ?# 限制輸入字符串長度
? ? ? > 服務器方面
? ? ? ? # 有效性校驗【為什么服務器端還要做有效性校驗,第一準則,外部的都是不可信的,防止攻擊者繞過WEB請求】
?? ??? ?# 不用拼接的SQL字符串?? ??? ?
??? ??? ?# 過濾SQL需要的參數中的特殊字符
?? ??? ?# 使用預編譯的preparestatement
?? ??? ?
2、XSS攻擊
? ??定義:
?? ??? ?跨站點腳本攻擊,攻擊者通篡改網頁,嵌入惡意腳本程序,在用戶瀏覽網頁時,控制用戶瀏覽器進行惡意操作的一種方式。
?? ?預防:
?? ??? ?# 前端,服務端同時對字符串輸入長度限制
?? ??? ?# 前端,服務端同時對HTML進行轉義處理,將其中的<,>等特殊字符進行轉義編碼。
?? ??? ?防xss的核心是必須對輸入的數據進行過濾處理。
3、CSRF攻擊
? ??定義:
?? ??? ?跨站點請求偽造:攻擊者通過跨站請求,以合法的用戶身份進行非法操作,可以這么理解,攻擊者利用你的身份或你的名義向第三方發送惡意請求。CSRF能做到的事情包括利用你的身份發郵件,發短信甚至盜取賬號信息,交易轉賬等。
?? ?預防:?? ?
?? ??? ?token機制:在HTTP請求中進行token驗證,如果請求中沒有token或者token內容不正確,則認為是csrf攻擊而拒絕該請求。
?? ??? ?驗證碼:通常情況下,驗證碼能夠很好的遏制CSRF攻擊,但是很多情況下,處于用戶體驗,驗證碼只是一種輔助手段,而不是主要的解決方案。
?? ??? ?referer:在HTTP Header中有個字段referer,他記錄http請求的來源地址。如果refer是其他網站的話。則可能是CSRF攻擊,從而拒絕該請求。但是有些情況下,服務器并非都能取到referer。
?? ??? ?1)驗證請求來源地址。
?? ??? ?2)關鍵操作添加驗證碼。
?? ??? ?3)在請求地址中添加token并驗證。
4、文件上傳漏洞
?? ?定義:
?? ?指的是用戶上傳一個可執行的腳本文件,并通過此腳本文件獲得了執行服務端命令的能力。許多第三方框架、服務,都曾經被爆出文件上傳漏洞,比如很早之前的 Struts2,以及富文本編輯器等等,可被攻擊者上傳惡意代碼,有可能服務端就被人黑了。
?? ?預防:
?? ??? ?# 文件上傳的目錄設置為不可執行。
?? ??? ?# 判斷文件類型。在判斷文件類型的時候,可以結合使用 MIME Type,后綴檢查等方式。因為對于上傳文件,不能簡單地通過后綴名稱來判斷文件的類型,因為攻擊者可以將可執行文件的后綴名稱改為圖片或其他后綴類型,誘導用戶執行。
?? ??? ?# 對上傳的文件類型進行白名單校驗,只允許上傳可靠類型。
?? ??? ?# 上傳的文件需要進行重新命名,使攻擊者無法猜想上傳文件的訪問路徑,將極大地增加攻擊成本,同時向 shell.php.rar.ara 這種文件,因為重命名而無法成功實施攻擊。
?? ??? ?# 限制上傳文件的大小。
?? ??? ?# 單獨設置文件服務器的域名
5、DDOS攻擊
????定義:
?? ? ?客戶端向服務端發送請求鏈接數據包,服務端向客戶端發送確認數據包,客戶端不向服務端發送確認數據包,服務器一直等待來自客戶端的確認,沒有徹底根治的辦法,除非不使用 TCP
?? ?預防:
?? ?# 限制同時打開 SYN 半鏈接的數目
?? ?# 縮短 SYN 半鏈接的 Time out時間
?? ?# 關閉不必要的服務
網絡安全學習路線
對于從來沒有接觸過網絡安全的同學,我們幫你準備了詳細的學習成長路線圖。可以說是最科學最系統的學習路線,大家跟著這個大的方向學習準沒問題。
同時每個成長路線對應的板塊都有配套的視頻提供:
需要網絡安全學習路線和視頻教程的可以在評論區留言哦~
最后
- 如果你確實想自學的話,我可以把我自己整理收藏的這些教程分享給你,里面不僅有web安全,還有滲透測試等等內容,包含電子書、面試題、pdf文檔、視頻以及相關的課件筆記,我都已經學過了,都可以免費分享給大家!
給小伙伴們的意見是想清楚,自學網絡安全沒有捷徑,相比而言系統的網絡安全是最節省成本的方式,因為能夠幫你節省大量的時間和精力成本。堅持住,既然已經走到這條路上,雖然前途看似困難重重,只要咬牙堅持,最終會收到你想要的效果。
黑客工具&SRC技術文檔&PDF書籍&web安全等(可分享)
結語
網絡安全產業就像一個江湖,各色人等聚集。相對于歐美國家基礎扎實(懂加密、會防護、能挖洞、擅工程)的眾多名門正派,我國的人才更多的屬于旁門左道(很多白帽子可能會不服氣),因此在未來的人才培養和建設上,需要調整結構,鼓勵更多的人去做“正向”的、結合“業務”與“數據”、“自動化”的“體系、建設”,才能解人才之渴,真正的為社會全面互聯網化提供安全保障。
特別聲明:
此教程為純技術分享!本教程的目的決不是為那些懷有不良動機的人提供及技術支持!也不承擔因為技術被濫用所產生的連帶責任!本教程的目的在于最大限度地喚醒大家對網絡安全的重視,并采取相應的安全措施,從而減少由網絡安全而帶來的經濟損失