滲透測試網站安全基礎點講解

網站安全發表於2019-09-23

隨著網路的發達,越來越多的網站已悄悄崛起,在這裡我們Sine安全給大家準備講解下滲透測試服務中的基礎點講解內容,讓大家更好的瞭解這個安全滲透測試的具體知識點和詳情過程。主要目的就是為了在網站或app上線前進行全面的滲透測試檢測模擬駭客的手法對網站進行全面的漏洞檢測,並找出漏洞進行修復,防止上線後被駭客所利用導致帶來更大的損失,只有這樣才能讓網站安全穩定的執行,所謂知己知彼 百戰不殆。

滲透測試網站安全基礎點講解

今天所講的是基礎點知識(第一點開始)

1.1. Web技術演化

1.1.1. 靜態頁面

在網際網路最初開始的時候,Web網站的主要內容是靜態的,由文字和圖片組成,製作和表現形式也是以表格為主。當時的使用者行為也非常簡單,僅僅是瀏覽網頁。

1.1.2. 多媒體階段

隨著技術的不斷髮展,音訊、影片、Flash等多媒體技術誕生了。多媒體的加入使得網頁變得更加生動形象,網頁上的互動也給使用者帶來了更好的體驗。

1.1.3. CGI階段

漸漸的,多媒體已經不能滿足人們的請求,於是CGI(Common Gateway Interface)應運而生。CGI定義了Web伺服器與外部應用程式之間的通訊介面標準,因此Web伺服器可以透過CGI執行外部程式,讓外部程式根據Web請求內容生成動態的內容。

在這個時候,各種程式語言如PHP/ASP/JSP也逐漸加入市場,基於這些語言可以實現更加模組化的、功能更強大的應用程式。

1.1.4. Ajax

在開始的時候,使用者提交整個表單後才能獲取結果,使用者體驗極差。於是Ajax(Asynchronous Java And XML)技術逐漸流行起來,它使得應用在不更新整個頁面的前提下也可以獲得或更新資料。這使得Web應用程式更為迅捷地回應使用者動作,並避免了在網路上傳送那些沒有改變的資訊。

1.1.5. MVC

隨著Web應用開發越來越標準化,出現了MVC等思想。MVC是Model/View/Control的縮寫,Model用於封裝資料和資料處理方法,檢視View是資料的HTML展現,控制器Controller負責響應請求,協調Model和View。

Model,View和Controller的分開,是一種典型的關注點分離的思想,使得程式碼複用性和組織性更好,Web應用的配置性和靈活性也越來越好。而資料訪問也逐漸透過物件導向的方式來替代直接的SQL訪問,出現了ORM(Object Relation Mapping)的概念。

除了MVC,類似的設計思想還有MVP,MVVM等。

1.1.6. RESTful

在CGI時期,前後端通常是沒有做嚴格區分的,隨著解耦和的需求不斷增加,前後端的概念開始變得清晰。前端主要指網站前臺部分,執行在PC端、移動端等瀏覽器上展現給使用者瀏覽的網頁,由HTML5、CSS3、Java組成。後端主要指網站的邏輯部分,涉及資料的增刪改查等。

此時,REST(Representation State Transformation)逐漸成為一種流行的Web架構風格。

REST鼓勵基於URL來組織系統功能,充分利用HTTP本身的語義,而不是僅僅將HTTP作為一種遠端資料傳輸協議。一般RESTful有以下的特徵:

  • 域名和主域名分開
  • api.example.com
  • example.com/api/
  • 帶有版本控制
  • api.example.com/v1
  • api.example.com/v2
  • 使用URL定位資源
  • GET /users 獲取所有使用者
  • GET /team/:team/users獲取某團隊所有使用者
  • POST /users 建立使用者
  • PATCH/PUT /users 修改某個使用者資料
  • DELETE /users 刪除某個使用者資料
  • 用 HTTP 動詞描述操作
  • GET 獲取資源,單個或多個
  • POST 建立資源
  • PUT/PATCH 更新資源,客戶端提供完整的資源資料 是 DELETE 刪除資源
  • 正確使用狀態碼
  • 使用狀態碼提高返回資料的可讀性
  • 預設使用 JSON 作為資料響應格式
  • 有清晰的文件
  • 點選新增圖片描述(最多60個字)

滲透測試網站安全基礎點講解

1.1.7. 雲服務

隨著時間的發展,Web的架構越發複雜,負載均衡、資料庫分表、異地容災、快取、CDN、訊息佇列等技術開始應用,增加了Web開發和運維的複雜度。同時雲服務開始逐漸發展,部署環境容器化,各個功能拆成微服務或是Serverless的架構。

1.2. 計算機網路

1.2.1. 計算機通訊網的組成

計算機網路由通訊子網和資源子網組成。

其中通訊子網負責資料的無差錯和有序傳遞,其處理功能包括差錯控制、流量控制、路由選擇、網路互連等。

其中資源子網:是計算機通訊的本地系統環境,包括主機、終端和應用程式等, 資源子網的主要功能是使用者資源配置、資料的處理和管理、軟體和硬體共享以及負載 均衡等。

計算機通訊網就是一個由通訊子網承載的、傳輸和共享資源子網的各類資訊的系統。

1.2.2. 通訊協議

為了完成計算機之間有序的資訊交換,提出了通訊協議的概念,其定義是相互通訊的雙方(或多方)對如何進行資訊交換所必須遵守的一整套規則。

協議涉及到三個要素,分別為:

  • 語法:語法是使用者資料與控制資訊的結構與格式,以及資料出現順序的意義
  • 語義:用於解釋位元流的每一部分的意義
  • 時序:事件實現順序的詳細說明

1.2.3. OSI七層模型

1.2.3.1. 簡介

OSI(Open System Interconnection)共分為物理層、資料鏈路層、網路層、傳輸層、會話層、表示層、應用層七層,其具體的功能如下。

1.2.3.2. 物理層

  • 提供建立、維護和釋放物理鏈路所需的機械、電氣功能和規程等特性
  • 透過傳輸介質進行資料流(位元流)的物理傳輸、故障監測和物理層管理
  • 從資料鏈路層接收幀,將位元流轉換成底層物理介質上的訊號

1.2.3.3. 資料鏈路層

  • 在物理鏈路的兩端之間傳輸資料
  • 在網路層實體間提供資料傳輸功能和控制
  • 提供資料的流量控制
  • 檢測和糾正物理鏈路產生的差錯
  • 格式化的訊息稱為幀

1.2.3.4. 網路層

  • 負責端到端的資料的路由或交換,為透明地傳輸資料建立連線
  • 定址並解決與資料在異構網路間傳輸相關的所有問題
  • 使用上面的傳輸層和下面的資料鏈路層的功能
  • 格式化的訊息稱為分組

1.2.3.5. 傳輸層

  • 提供無差錯的資料傳輸
  • 接收來自會話層的資料,如果需要,將資料分割成更小的分組,向網路層傳送分組並確保分組完整和正確到達它們的目的地
  • 在系統之間提供可靠的透明的資料傳輸,提供端到端的錯誤恢復和流量控制

1.2.3.6. 會話層

  • 提供節點之間通訊過程的協調
  • 負責執行會話規則(如:連線是否允許半雙工或全雙工通訊)、同步資料流以及當故障發生時重新建立連線
  • 使用上面的表示層和下面的傳輸層的功能

1.2.3.7. 表示層

  • 提供資料格式、變換和編碼轉換
  • 涉及正在傳輸資料的語法和語義
  • 將訊息以合適電子傳輸的格式編碼
  • 執行該層的資料壓縮和加密
  • 從應用層接收訊息,轉換格式,並傳送到會話層,該層常合併在應用層中

1.2.3.8. 應用層

  • 包括各種協議,它們定義了具體的面向擁護的應用:如電子郵件、檔案傳輸等
  • 點選新增圖片描述(最多60個字)

滲透測試網站安全基礎點講解

1.2.3.9. 總結

低三層模型屬於通訊子網,涉及為使用者間提供透明連線,操作主要以每條鏈路( hop-by-hop)為基礎,在節點間的各條資料鏈路上進行通訊。由網路層來控制各條鏈路上的通訊,但要依賴於其他節點的協調操作。

高三層屬於資源子網,主要涉及保證資訊以正確可理解形式傳送。

傳輸層是高三層和低三層之間的介面,它是第一個端到端的層次,保證透明的端到端連線,滿足使用者的服務質量( QoS)要求,並向高三層提供合適的資訊形式。 如果對滲透測試有具體詳細的需求可以找專業的網站安全公司來處理解決防患於未然。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31542418/viewspace-2657886/,如需轉載,請註明出處,否則將追究法律責任。

相關文章