CTF — web入门(持续更新…)
WEB簡介
web俗稱web安全,當大家打開瀏覽器那一刻。就開始和web打交道了,web安全是網(wǎng)絡中最經(jīng)典的應用之一。
WEB常見術語
web前端
Web前端開發(fā)工程師,主要職責是利用(X)HTML/CSS/JavaScript/Flash等各種Web技術進行客戶端產(chǎn)品的開發(fā)。完成客戶端程序(也就是瀏覽器端)的開發(fā),開發(fā)JavaScript以及Flash模塊,同時結合后臺開發(fā)技術模擬整體效果,進行豐富互聯(lián)網(wǎng)的Web開發(fā),致力于通過技術改善用戶體驗。
web后端
后端開發(fā)(Back-End Development,也稱服務端開發(fā)、服務器端開發(fā)等)是創(chuàng)建完整可運行的Web應用服務端程序(服務端程序和資源合稱為后端,即在服務器上運行的、不涉及用戶界面的部分)的過程,是Web應用程序開發(fā)的一部分。后端開發(fā)者使用Java、Golang等語言及其衍生的各種框架、庫和解決方案來實現(xiàn)Web應用程序的核心業(yè)務邏輯,并向外提供特定的API,使得Web應用能夠高效、安全、穩(wěn)定地運行。
URL
URL(Uniform Resource Locator),統(tǒng)一資源定位符,用于定位互聯(lián)網(wǎng)上資源,俗稱網(wǎng)址。比如 http://www.w3school.com.cn/ht…,遵守以下的語法規(guī)則:
scheme://host.domain:port/path/filename- scheme - 定義因特網(wǎng)服務的類型。常見的協(xié)議有 http、https、ftp、file,其中最常見的類型是 http,而 https 則是進行加密的網(wǎng)絡傳輸。
- host - 定義域主機(http的默認主機是WWW)
- domain - 定義因特網(wǎng)域名(com.cn)
- port - 定義主機上的端口號(HTTP的默認端口號是80)
- path - 定義服務器上的路徑
- filename - 定義文檔 / 資源的名稱
參數(shù)部分:從“?”開始到“#”為止之間的部分為參數(shù)部分,又稱搜索部分、查詢部分。本例中的參數(shù)部分為“boardID=5&ID=24618&page=1”。參數(shù)可以允許有多個參數(shù),參數(shù)與參數(shù)之間用“&”作為分隔符。
IP地址
- 互聯(lián)網(wǎng)上的所有數(shù)據(jù)都是存儲在主機(服務器)上
- 互聯(lián)網(wǎng)中的所有主機都擁有唯一的IP地址
- 互聯(lián)網(wǎng)中任意兩臺主機通信都是通過IP地址來實現(xiàn)
IP 地址是指互聯(lián)網(wǎng)協(xié)議地址,是 IP Address 的縮寫。IP 地址是 IP 協(xié)議提供的一種統(tǒng)一的地址格式,它為互聯(lián)網(wǎng)上的每一個網(wǎng)絡和每一臺主機分配一個邏輯地址,以此來屏蔽物理地址的差異。IP 地址是一個 32 位的二進制數(shù),比如 127.0.0.1 為本機 IP。
端口
跟在域名后面的是端口,域名和端口之間使用“:”作為分隔符。端口不是一個URL必須的部分,如果省略端口部分,將采用默認端口.
如果把IP地址比作一間房子 ,端口就是出入這間房子的門。真正的房子只有幾個門,但是一個IP地址的端口可以有65536(即:2^16) 個之多!端口是通過端口號來標記的,端口號只有整數(shù),范圍是從0 到65535(2^16-1)。
在Internet上,各主機間通過TCP/IP協(xié)議發(fā)送和接收數(shù)據(jù)包,各個數(shù)據(jù)包根據(jù)其目的主機的ip地址來進行互聯(lián)網(wǎng)絡中的路由選擇,把數(shù)據(jù)包順利的傳送到目的主機。大多數(shù)操作系統(tǒng)都支持多程序(進程)同時運行,那么目的主機應該把接收到的數(shù)據(jù)包傳送給眾多同時運行的進程中的哪一個呢?顯然這個問題有待解決,端口機制便由此被引入進來。
http:默認端口號80 ; https:默認端口號443 ; ftp:默認端口號2。
域名
ip是房子的門牌地址,域名是房子的主人名字。房子可以換主人,但是不能換地址。ip地址是Internet網(wǎng)中主機地址的一種數(shù)字標識,IP就使用這個地址在主機之間傳遞信息,而域名是互聯(lián)網(wǎng)中用于解決地址對應問題的一種方法。域名像名字一樣簡單好記,可以廣泛傳播。
- com是頂級域名
- baidu.com是二級域名(俗稱一級域名)
- www.baidu.com是三級域名(俗稱二級域名)
域名類型:
- .com 用于商業(yè)公司
- .org 用于組織、協(xié)會等
- net 用于網(wǎng)絡服務
- .edu 用于教育機構
- .gov. 用于政府部
- .mil 用于軍事領域
DNS
DNS (Domain Name Server ) 譯為:域名解析服務
在瀏覽器輸入網(wǎng)址后,首先要經(jīng)過域名解析,DNS 協(xié)議提供通過域名查找 IP 地址,或逆向從 IP 地址反查域名的服務。DNS 是一個網(wǎng)絡服務器,我們的域名解析簡單來說就是在 DNS 上記錄一條信息記錄。
瀏覽器
瀏覽器是用來檢索、展示以及傳遞Web信息資源的應用程序。Web信息資源由統(tǒng)一資源標識符( URI)所標記,它是一張網(wǎng)頁、一張圖片、一段視頻或者任何在Web上所呈現(xiàn)的內容。
瀏覽器如何通過域名去查詢 URL 對應的 IP?
瀏覽器通過向 DNS 服務器發(fā)送域名,DNS 服務器查詢到與域名相對應的 IP 地址,然后返回給瀏覽器,瀏覽器再將 IP 地址打在協(xié)議上,同時請求參數(shù)也會在協(xié)議搭載,然后一并發(fā)送給對應的服務器。
TCP 三次握手
在客戶端發(fā)送數(shù)據(jù)之前會發(fā)起 TCP 三次握手用以同步客戶端和服務端的序列號和確認號,并交換 TCP 窗口大小信息。
HTTP
超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)是一個簡單的請求-響應協(xié)議,它通常運行在TCP之上。
TCP 三次握手結束后,開始發(fā)送 HTTP 請求報文。
1 .請求行包含請求方法、URL、協(xié)議版本
- 請求方法包含 8 種:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE。
- URL 即請求地址,由 <協(xié)議>://<主機>:<端口>/<路徑>?<參數(shù)> 組成
- 協(xié)議版本即 http 版本號
2 .請求頭包含請求的附加信息,由關鍵字/值對組成,每行一對,關鍵字和值用英文冒號“:”分隔。
—— 常見頭部字段
服務器
服務器是網(wǎng)絡環(huán)境中的高性能計算機,它偵聽網(wǎng)絡上的其他計算機(客戶機)提交的服務請求,并提供相應的服務,比如網(wǎng)頁服務、文件下載服務、郵件服務、視頻服務。而客戶端主要的功能是瀏覽網(wǎng)頁、看視頻、聽音樂等等,兩者截然不同。 每臺服務器上都會安裝處理請求的應用——web server。常見的 web server 產(chǎn)品有 apache、nginx、IIS 或 Lighttpd 等。 web server 擔任管控的角色,對于不同用戶發(fā)送的請求,會結合配置文件,把不同請求委托給服務器上處理相應請求的程序進行處理(例如 CGI 腳本,JSP 腳本,servlets,ASP 腳本,服務器端 JavaScript,或者一些其它的服務器端技術等),然后返回后臺程序處理產(chǎn)生的結果作為響應。
shell
真正能夠控制計算機硬件(CPU、內存、顯示器等)的只有操作系統(tǒng)內核(Kernel),圖形界面和命令行只是架設在用戶和內核之間的一座橋梁。
由于安全、復雜、繁瑣等原因,用戶不能直接接觸內核(也沒有必要),需要另外再開發(fā)一個程序,讓用戶直接使用這個程序;該程序的作用就是接收用戶的操作(點擊圖標、輸入命令),并進行簡單的處理,然后再傳遞給內核。如此一來,用戶和內核之間就多了一層“代理”,這層“代理”既簡化了用戶的操作,也保護了內核。
用戶界面和命令行就是這個另外開發(fā)的程序,就是這層“代理”。在Linux下,這個命令行程序叫做 Shell。
木馬
木馬全稱為特洛伊木馬,來源于古希臘神話。木馬是通過欺騙或誘騙的方式安裝,并在用戶的計算機中隱藏以實現(xiàn)控制用戶計算機的目的。
——木馬詳解
總結
以上是生活随笔為你收集整理的CTF — web入门(持续更新…)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OT网络安全-OT客户端安全防护要采取那
- 下一篇: 智慧消防的业务流程 智慧消防解决方案