【筆記】網易微專業-Web安全工程師-01.WEB基礎知識
課程概述:
本課是基礎中的基礎,通俗易懂的講解了Web的本質和Web開發的基礎知識。對於Web小白,建議從頭開始抓緊學習;對於已經有一定Web基礎知識的同學,建議快速的過一遍,夯實基礎。
課程大綱:
第一章 Web簡介
第一節.Web介紹
第二節.Web通信
第二章 Web開發基礎知識
第一節.前端開發基礎——HTML
第二節.前端開發基礎——JavaScript
第三節.Web服務端環境
第四節.後端開發基礎——SQL
第五節.後端開發基礎——PHP
筆記心得:
1.1.1 www是什麽?
www是環球信息網(world wide web)的縮寫,中文稱為萬維網,著名的w3cschool中的w3c即表示“萬維網聯盟”。www的作用是讓web客戶端(瀏覽器)訪問web服務器上的內容。在萬維網系統中,每個有用的事物,稱為“資源(Resource)”,並且由一個“全局統一資源標識符(URI:Uniform Resource Identifier)”標識,用戶通過點擊鏈接來定位和獲得資源,這稱為“URL協議(Uniform Resource Locator)”,而這些資源通過“超文本傳輸協議(HyperText Transfer Protocol)”傳輸給用戶。
1.1.2 web1.0和web2.0是什麽?
web1.0:以內容為中心,網站提供內容信息,用戶進行訪問閱讀,信息單向傳輸,典型的有門戶網站和個人網站;
web2.0:以人為中心,用戶可添加內容,彼此溝通互動,典型的有微博和博客;
web3.0:目前很火的概念,但未能有統一的明確定義。常見的概念指網站反過來成為用戶的需求理解者和提供者,以“語義網”為例:通過給萬維網上的文檔 (HTML/XML等)添加能夠被計算機所理解的語義“元數據”(Meta data),從而使整個互聯網成為一個通用的信息交換媒介。
而隨著web從1.0到2.0演進,常見的web攻擊方式也從SQL註入,上傳漏洞等服務端手段拓展到XSS,CSRF等客戶端手段。
客戶端/前端:釣魚、暗鏈、XSS、CSRF、點擊劫持、URL跳轉等;
服務端/後端:SQL註入、命令註入、文件上傳、文件包含、暴力破解等。
1.2.1 當我們通過瀏覽器訪問網址時發生了什麽?
a. DNS服務器將域名解析為ip地址;
b. 瀏覽器向web服務器發送一個HTTP請求;
c. 服務器收到請求並進行處理;
d. web服務器向瀏覽器返回一個HTTP響應;
e. 瀏覽器對收到的響應和內容進行解碼渲染;
1.2.2 URL協議
Uniform Resource Locator,定位服務器的資源
schema://host[:port#]/path/.../[?query-string][#anchor]
schema:底層協議,常見的有http/https/ftp等;host:域名或者ip;port:http默認是80;query-string:發送給服務器的數據;anchor:錨點;
1.2.3 HTTP協議
HyperText Transfer Protocol,傳輸服務器的資源
HTTP請求:請求行、消息報頭(空行)、請求數據;
HTTP響應:狀態行、消息報頭(空行)、響應數據;
HTTP請求方法:GET,POST,HEAD + OPTIONS,PUT,DELETE,TRACE,CONNECT。
HTTP狀態碼:了解常見狀態碼,200 OK,302 Found,403 Forbidden,404 Not Found,500 Internal Server Error,503 Server Unavailable。
2.1 HTML/JS/SQL/PHP
在線學習:w3school
練習工具:phpstudy
web安全相關要點:
HTML:元素(註釋/圖片/鏈接/表單/內聯框架iframe),標簽,屬性(標簽name/id等;事件onload/onerror/onclick等),DOM(Document Object Model);
JS:HTML DOM(獲取元素,定位內容,進行修改),BOM/Browser Object Mode(alert/confirm/prompt;document.cookie等);
SQL:學習基本語句,以及了解常見內置函數;
PHP:$_REQUEST,$_FILES,$_SERVER等;
2.2 目前流行架構
OS | WEB服務 | 解釋執行環境 | 數據庫服務 | |
.NET | Windows Server | IIS | ASP(.NET) | SQL Server |
LAMP | Linux | Apache | PHP | MySQL |
J2EE | UNIX/Windows | Tomcat/Weblogic | JSP | Oracle |
【筆記】網易微專業-Web安全工程師-01.WEB基礎知識