最近有很多網友在了解web安全方面的知識,但是因為沒有好的老師帶,針對這個情況小猿圈web安全每天會分享一個web安全的知識點,今天分享的是Web安全學習筆記,希望對你學習web安全有所幫助。
一、 Web安全時代
1.0時代:針對服務器進行攻擊,主要包括SQL注入,上傳漏洞,命令鏈接等攻擊方式
2.0時代:針對服務器以及用戶,新增XSS、CSRF等攻擊方式
二、 Web工作流程
Web工作方式類似餐廳點餐,點餐-上菜。這是用戶能看到的部分。而服務員接到點餐后,會把菜單拿給廚師,然后廚師做好菜后會給服務員說,然后服務員就拿到做好的菜品就上菜給客人。
而Web工作流程與上面相似,用戶通過瀏覽器輸入網址,比如baidu.com,瀏覽器會通過DNS服務器找到baidu.com對應的服務器IP地址,服務器接到請求后與數據庫交互,然后得到結果,并返回給用戶。
瀏覽器并不能直接通過我們輸入的網址直接與服務器通訊。當我們輸入需要訪問的網址后,瀏覽器會把我們的網址通過DNS服務器查詢,得到服務器的IP地址,然后服務器直接與這個IP地址進行通訊的。
三、 URL協議
瀏覽器與服務器通訊也需要一種方法,這個方法就是URL協議,它的中文翻譯是“統一資源定位符”,它的作用是以簡潔的方式從互
聯網上得到資源,并且讓每個文件都有一個唯一的URL地址。
URL格式大致為:
協議://用戶名:密碼@域名:端口號/目錄/文件名.文件后綴?參數=值#錨點
協議:URL支持許多協議,我們常見的協議有HTTP、FTP、MAILTO、HTTPS協議,而協議的作用就是告訴瀏覽器將如何處理要打開的文件。
用戶名和密碼:如果服務器需要授權才能訪問就在這里輸入
域名:這里填寫你需要訪問的網站域名,比如www.baidu.com或者image.baidu.com
端口號:如果是http協議,默認的80端口是不需要填寫的,其他的協議根據相應的協議端口進行填寫
目錄以及文件名、后綴:這里是訪問服務器中的文件路徑。
參數:這里是需要傳遞給服務器的一些值,服務器會根據這些傳遞的值作出響應。
錨點:錨點的作用是定位當前文件中的哪一個位置。
四、 HTTP協議
HTTP協議就是web中最重要的協議,也是使用應用最廣泛的協議,每次我們我們訪問網頁都進行了http請求。
4.1.1. 一個完整的http請求包含三部分:
請求行
包含請求的方法以及URL、協議版本,比如:GET /test/xx.php?id=123444 HTTP/1.1
請求頭
常見內容包含:
HOST:主機地址(域名)比如:www.xsscript.com。
User-Agent:讓服務器能夠識別用戶的包含操作系統及版本、CPU、瀏覽器、語言等信息。
Cookie:代表用戶憑證,服務器可以根據這個用戶憑證來識別你是誰。
Referer:服務器可以通過Referer來判斷用戶的來源,也就是你從什么地方過來的。
請求正文
GET請求沒有請求正文,所有的參數均含在請求行和頭中,POST有請求正文
4.1.2. 一個完整的http響應包含三部分:
狀態行包含協議和版本、以及服務器狀態的響應編碼。比如HTTP/1.1 200 OK表示服務器響應成功響應頭
常見內容包含:
Server:HTTP服務器的版本
Content-Type:響應正文類型,讓瀏覽器根據類型進行處理然后顯示給用戶
Set-Cookie:如果用戶沒有Cookie或者Cookie需要更新,服務器會在響應包中含此內容,提示瀏覽器設置或更新Cookie。
Content-Language:響應正文的語言
Content-Length:響應正文的長度。
Location:當用戶訪問www.baidu.com然后響應包中包含了此內容的時候,會跳轉到相應的網址。
響應正文
發送給用戶瀏覽器處理的正文內容。
以上就是小猿圈web安全講師分享Web安全學習筆記,小猿圈web安全講師認為學習就是不斷堅持,不斷進步的過程,只有不斷地學習才能趕上時代的腳步,這樣才不會脫軌,如果你學習遇到問題可以到小猿圈找答案,里面有更全面的知識,你能在里面找到從基礎到實戰所需要的所有內容。如果感覺本篇文章你對你有幫助,記得評論,轉發,收藏呦。