20159318 《網絡攻擊與防範》第5周學習總結

20159318 《網絡攻擊與防範》第5周學習總結

教材學習內容總結

第11章 web應用程序安全攻防

1、web應用程序體系結構及其安全威脅

一、web應用體系結構

B/S計算結構提高部署和應用便捷性,促進了web應用的發展。經過經典的三層架構,即表示層,業務邏輯層和數據層來進行組織與構建。mysql

  • 瀏覽器
    使用HTTP/HTTPS協議,HTML語言和web服務器進行交互,獲取web服務器上的信息和應用服務。
  • Web服務器
    web服務器軟件一般被描述爲HTTP守護程序,接收Web客戶端對資源的請求,,在這些請求上執行一些基本的解析處理以肯定資源的存在,而後將它傳送給web應用程序來執行,待web應用程序執行完邏輯並返回響應時,web服務器在將這個響應返回給web客戶端,在瀏覽器上進行本地執行、渲染和展現。
  • web應用程序
    即處於服務端的業務邏輯是web應用的核心。
  • 數據庫
    是web應用存儲數據的地方,數據層也做爲web應用程序多級結構中的最後一層。
  • 傳輸協議HTTP/HTTPS
    瀏覽器和由web服務器,web應用程序和數據庫所構成的web站點之間的通訊傳輸協議是HTTP/HTTPS協議。web

    二、web應用安全威脅

  • 針對瀏覽器和中端用戶的web瀏覽安全威脅
  • 針對傳輸網絡的網絡協議安全威脅
  • 系統層安全威脅
  • web服務器軟件安全威脅
  • web應用程序安全威脅
  • web數據安全威脅sql

    2、web應用安全攻防技術

    一、web應用的信息收集

    對目標應用web應用服務進行發現與剖析,標示出它的基本輪廓,具體包括服務器域名、IP地址和虛擬IP地址,web服務器端口與其餘開放服務,web站點類型版本,web應用程序類型與版本,以及web服務器和web應用程序中存在的安全漏洞信息等。shell

  • 手工審查web應用程序結構與源碼
    瀏覽web應用的各個頁面,菜單,目錄,查看關鍵頁面源代碼,並收集如下信息
    (1)靜態和動態生成的網頁
    (2)目錄結構
    (3)輔助性文件
    (4)輸入表單
    (5)查詢參數字符串
  • 自動下載與鏡像web站點頁面
  • 使用Google Hacking技術審查與探測web應用程序
    使用Google搜索引擎或其餘Google應用,在web站點中的配置、計算機代碼及包含數據中尋找安全漏洞與敏感信息的計算機黑客技術。
  • web應用程序安全評估與漏洞探測
    web應用程序安全輔助分析工具主要包括一下三種類型
    (1)瀏覽器插件
    (2)免費工具集
    (3)商業web應用安全評估系統和漏洞掃描器數據庫

    二、攻擊web服務器軟件

  • 數據驅動的遠程代碼執行安全漏洞
    緩衝區溢出,不安全指針,格式化字符串等一系列數據驅動安全漏洞的遠程滲透攻擊。
  • 服務器功能擴展模塊漏洞
  • 樣本文件安全漏洞
  • 源代碼泄露
  • 資源解析攻擊瀏覽器

    三、攻擊web應用程序

    web應用程序攻擊角度
    (1)針對認證機制的攻擊
    (2)受權機制的攻擊
    (3)客戶端攻擊
    (4)命令執行攻擊
    (5)信息暴漏
    (6)邏輯攻擊安全

    四、攻擊web數據庫

  • 安全敏感數據泄露
  • 網站篡改
  • 不良信息內容上傳服務器

    五、web應用安全防範手冊

  • web站點網絡傳輸安全設防措施
  • web站點操做系統及服務安全設防措施
  • web應用程序安全設防措施
  • web站點數據安全設防措施網絡

    3、SQL注入

    代碼注入根據攻擊目標分爲如下幾種:架構

  • 惡意讀取、修改與操縱數據庫的SQL注入攻擊
  • 在web服務器端安裝、執行webshell等惡意腳本的PHP注入或ASP注入攻擊
  • 在web服務器端惡意執行操做系統命令的shell注入攻擊
  • 其餘多種多樣的注入攻擊,如LDAP注入,郵件命令注入,空字節注入,SSI注入,XPath注入,XML注入,XQuery注入等。

    一、SQL注入攻擊原理

    利用web應用程序數據層存在的輸入驗證不完善型安全漏洞實施的一類代碼注入攻擊技術。是因爲用戶輸入沒有被正確的過濾以消除SQL語言中的字符串轉義字符。
    原理是向web應用程序提供的用戶輸入接口輸入一段驚心構造的SQL查詢命令,攻擊和利用不完善的輸入驗證機制,使得輸入代碼得以執行完成非預期的攻擊操做行爲。

    二、SQL注入攻擊步驟和過程

    (1)發現SQL注入點
    (2)判斷後臺數據庫類型
    (3)後臺數據庫中管理員用戶口令字猜解

  • 猜解表名
  • 猜解字段名
  • 用戶名與口令猜解

(4)上傳ASP後門,獲得默認帳戶權限
(5)本地權限提高
(5)利用數據庫擴展存儲過程執行Shell命令

三、SQL注入攻擊工具

自動化的SQL注入攻擊工具,可以代替人工實施URL探測,提高攻擊效率,如Wposion可以在動態Web文檔中找到SQL注入漏洞;wieliekoek.pl可以以並以網站鏡像工具生成的輸出爲注入,找含有表單頁面,容許在配置文件中對注入字符串進行修改進行SQL注入漏洞探測。

四、SQL注入攻擊防範措施

(1)適用類型安全(type-safe)的參數編碼機制
(2)凡是來自外部的用戶輸入,必須進行完備檢查
(3)將動態SQL語句替換爲存儲過程、預編譯SQL或ADo命令對象
(4)增強SQL數據庫服務器的配置與鏈接

4、XSS跨站腳本攻擊

XSS跨站腳本攻擊的最終目標不是提供服務的web應用程序,而是使用web應用程序的用戶。

一、XSS攻擊技術原理

XSS攻擊的根源一樣是web應用程序對用戶輸入內容的安全驗證與過濾不夠完善,一旦web應用程序對輸入的合法性進行有效檢查與過濾,就頗有可能讓這些惡意代碼邏輯包含在服務器動態產生或更新的網頁中。

二、XSS攻擊類型

  • 持久性XSS漏洞--持久性XSS攻擊。
    最爲嚴重的XSS漏洞,又稱爲存儲性XSS漏洞。

  • 非持久性XSS漏洞--非持久性XSS 攻擊
    最爲廣泛的類型,因爲缺少恰當的請求數據安全驗證與過濾

    三、XSS攻擊實例

    (1)測試XSS漏洞
    (2)顯示用戶的會話Cookie
    (3)竊取用戶的會話Cookie
    (4)利用Cookie信息假冒其餘用戶發表與修改帖子
    (5)編寫實現XSS蠕蟲

    四、XSS攻擊防範措施

    (1)服務器端防範措施

  • 輸入驗證
  • 輸出淨化
  • 消除危險的輸入點

(2)客服端防範措施
提升瀏覽器訪問非受信網站時的安全等級、關閉Cookie功能或設置Cookie只讀。

第12章 Web瀏覽器安全攻防

1、Web瀏覽器的技術發展與安全威脅

一、Web瀏覽器技術發展

  • 瀏覽器技術發展
    從開始實現簡單的HTTP客戶端、HTML解析與渲染功能,到後來的圖形界面瀏覽器軟件,並逐步提高了對圖片、音視頻等多媒體的支持,經過XML對結構化信息的輸入、存儲與展示功能的支持,以及引入客戶端執行機制、與服務器的異步交互以及瀏覽器可擴展性機制,逐步進化出現代的瀏覽器。
  • 現代Web瀏覽器的基本結構機理
    目前瀏覽器要求可以支持HTML和XHTML、CascadingStyle Sheets、ECMAScript及W3C Doucument Object Model等一系列標準。

    二、Web瀏覽的安全與威脅

  • Web瀏覽器軟件的安全困境三要素
    複雜性、可擴展性、連通性三個方面
  • Web瀏覽安全威脅位置
    (1)針對傳輸網絡的網絡協議安全威脅
    (2)針對Web瀏覽端系統平臺的安全威脅
    (3)針對Web瀏覽器軟件及插件程序的滲透攻擊威脅
    (4)針對互聯網用戶的社會工程學攻擊威脅

    2、Web瀏覽端的滲透攻擊威脅

    一、網頁木馬安全威脅的產生背景

  • 網頁木馬的產生與發展背景
  • 網頁木馬發展與流行的驅動力--黑客地下經濟鏈
  • 網頁木馬存在的技術基礎--Web瀏覽端安全漏洞

    二、網頁木馬機理分析

  • 網頁木馬定義特性
  • 對網頁木馬機理的全方位分析與理解
  • 網頁木馬的本質核心--瀏覽器滲透攻擊
  • 網頁掛馬機制
    (1)內嵌HTML標籤
    (2)惡意Script腳本
    (3)內嵌對象連接
    (4)ARP欺騙掛馬
  • 混淆機制

    三、網頁木馬的檢測與分析技術

  • 基於特徵碼匹配的傳統檢測方法
  • 基於統計與機器學習的靜態分析方法
  • 基於動態行爲結果斷定的檢測方法
  • 基於模擬瀏覽器環境的動態分析檢測方法

    教材學習中的問題和解決過程

視頻學習中的問題和解決過程

1、KaliSecurity - 漏洞分析之數據庫評估(一)

一、BBQSql

這是一個Python編寫的盲注工具,當檢測可疑的注入漏洞時會頗有用,同時也是一個半自動工具,容許客戶自定義參數。以下圖所示,打開BBQSql根據要設置的內容輸入相應參數

二、DBPwAudit(數據庫用戶名密碼枚舉工具)

使用方法DBPwAudit -s <server> -d <db> -D <driver> -U <users> -P <passwords> [options]

使用參考以下:
破解SQLServer數據庫
#./dbpwaudit -s IP -d master(數據庫名) -D mssql(數據庫類型) -U username(字典) -P password (字典)
破解MySQL數據庫
#./dbpwaudit.sh -s IP -d mysql(數據庫名稱) -D MySQL(數據庫類型) -U username(字典) -P password(字典)

三、HexorBase

圖形化的密碼破解與鏈接工具,開源。鏈接並控制數據庫,執行一些語句等等。以下圖所示

四、Jsql Injection

輕量級安全測試工具,能夠檢測SQL注入漏洞。跨平臺、開源且免費將存在注入漏洞的URL貼進來便可進行相應的漏洞利用。以下圖所示

五、MDBTools

包括MDB-Export以及MDB-dump,mdb-parsecsv,mdb-sql,mdb-tables等子工具,以下圖所示

六、Oracle Scanner

用Java開發的Oracle評估工具。基於插件結構,當前有兩個插件能夠作:

  • Sid列舉
  • 口令測試
  • 列舉Oracle版本
  • 列舉帳號角色
  • 列舉帳號特權
  • 列舉帳號哈希
  • 列舉審計信息
  • 列舉口令策略
  • 列舉數據庫連接

    七、SIDGUSser

    一樣是針對Oracle的SID進行暴力枚舉工具,SID喂Oracle實例名,Oracle鏈接字符串,經過實例名+用戶+密碼鏈接。

    八、SQLdict

    用戶名密碼枚舉工具,經過Wine運行,原來是Windows下的工具,在kali下經過Wine模擬。

    2、Kali漏洞分析之數據庫評估二

    一、tnscmd10g

    二、Sqlsus

    開放源碼的Mysql注入和鏈接管工具,使用Perl編寫,基於命令行界面。sqlsus能夠獲取數據庫結構,注入你本身的SQL語句,從服務器下載文件,爬行web站點可寫目錄,上傳和控制後門,克隆數據庫等等。最好用的兩點就是注射獲取數據速度很是快,另一個就是自動搜索可寫目錄。使用方法以下

  • 首先生成配置文件以下圖

  • 編輯配置文件:
    修改our ¥url——start = "";寫入地址
  • 啓動而且測試
    sqlsus test.conf
  • 獲取數據庫數據
  • 查看所有數據庫名字
    sqlsus>get database
  • 設定數據庫
  • 獲取表

    三、Sqlninja

    Perl編寫的一個專門針對Microsoft SQL Server的sql注入工具。側重於得到一個shell

  • 可找到遠程SQL服務器的標誌和特徵
  • 「sa」口令的強力攻擊
  • 原始 xp_cmdshell被禁用後,就建立一個定製的xp_cmdshell
  • 使用純粹的ASCII GET/POST請求來上載netcat.exe程序,不須要FTP鏈接
  • 爲了找到目標網絡的防火牆所容許端口,能夠實施針對目標SQL服務器的TCP/UDP端口掃描
  • 逃避技術
  • 盲目執行攻擊模式
  • 若是獲得權限爲sa,結合msf進一步對目標主機進行滲透

    四、Sqlmap

    開源滲透測試工具,Python編寫,主要用於自動化的偵測和實施SQL注入攻擊以及滲透數據庫服務器。SQLmap配有強大的偵測引擎,是用於高級滲透測試用戶,不只能夠得到不一樣數據庫的指紋信息,還能夠從數據庫中提取數據,此外還可以處理潛在的文件系統以及經過帶外數據鏈接執行系統命令等。

    3、Kali漏洞分析之Web應用代理

    一、Burp Suite

    用於攻擊web應用程序的集成平臺,它有一個代理,經過默認端口8080上運行,使用這個代理,咱們能夠截獲並修改從客戶端到web應用程序的數據包。

    二、OWASP ZAP

    三、Paros

    是一個對web應用程序的漏洞進行評估的代理程序,是一個基於Java的web代理程序,能夠評估web應用程序的漏洞。

第五週進度

基本完成了教材的學習,視頻上一些工具的介紹只是簡單的學習瞭解了,具體還須要多去實踐才能掌握

相關文章
相關標籤/搜索