1. Web應用程序體系結構
Web應用程序是一種使用瀏覽器在互聯網或企業內部網上進行訪問操做的應用軟件形態。Web應用體系有瀏覽器做爲客戶端完成數據顯示和展現內容的渲染;由功能強大的服務器完成主要業務的計算和處理,二者之間經過因特網或內聯網上HTTP/HTTPS應用層協議的請求與應答進行通訊。服務器端由Web服務器軟件、Web應用程序與後端數據庫構成,並經過經典三層架構:表示層、業務邏輯層、數據層來進行組織與構建。php
2. Web應用安全威脅java
3. SQL注入mysql
PHP提供了自動對抗SQL注入的機制,被稱爲magic quote,咱們須要關閉它:sudo vim /etc/php5/apache2/php.iniweb
系統會要求你登錄。這個登錄認證由服務器上的login.php實現,須要用戶輸入用戶名和密碼來經過認證。
在用戶名輸入ted'#,密碼空着就行,ted是一個已經存在的用戶名,用單引號結束這個字符串,用#轉義掉後面的語句。sql
當用戶想要在phpBB2中修改他們的資料時,能夠點擊Profile,而後填寫表單修改。用戶發送修改請求後,會執行include/usercp_register.php中的一條UPDATE SQL語句。在這條語句中一樣有一個SQL注入漏洞,能夠用它來達到如下目標:在不知道其餘人密碼的狀況下修改其資料。shell
XSS攻擊步驟:
(1)攻擊者構造出一個包括惡意腳本的bank.com登陸請求連接,並經過Email/HTTP等方式將攻擊連接發送給其它bank.com的網站用戶;
(2)受害用戶點擊攻擊連接後,將會把惡意連接中包含的惡意腳本當作用戶名參數提交給bank.com的登錄處理網頁;
(3)因爲bank.com登陸處理頁面存在XSS漏洞,將會在反饋的歡迎頁面中包含惡意客戶端腳本;
(4)攻擊者的惡意客戶端腳本在受害用戶瀏覽中執行,一般會驅動瀏覽器向攻擊者發送會話令牌。如會話ID、Cookie信息等;
(5)攻擊者得到用戶會話令牌以後,就能夠劫持用戶會話,或者僞造用戶登陸bank.com,並可實施進一步攻擊。數據庫
一、 BBQSql
BBQSql是一個Python編寫的盲注工具(blind SQL injection framework),當檢測可疑的注入漏洞時會頗有用。同時它也是一個半自動工具,容許客戶自定義參數。apache
二、 DBPwAudit(數據庫用戶名密碼枚舉工具)編程
三、 HexorBase
HexorBase是圖形化的密碼破解與鏈接工具,開源;鏈接而且控制數據庫執行一些語句。vim
四、JSQL Injection
是一款輕量級安全測試工具,能夠檢測SQL注入漏洞,他跨平臺(windows,Linux,Mac os,Solaris),開源且免費。將存在注入漏洞的URL貼進來便可進行響應的漏洞利用。圖形化界面比較親民,可是使用效果有待改善。
五、 MDBTools
包括MDB-Export以及MDB-dump,mdb-parsecsv,mdb-sql,mdb-tables等子工具,具體環境具體使用。
六、Orcal Scanner
用JAVA開發的Orcale評估工具。基於插件的結構,能夠列舉不少信息。
Sid列舉
口令測試
列舉Oracle版本
列舉帳號角色
列舉帳號特權
列舉帳號哈希
列舉審計信息
列舉口令策略
列舉數據庫連接
七、SIDGusser
針對Oracle的SID進行暴力枚舉;SID爲Oracle鏈接字符串:實例名+用戶+密碼
八、 SqIDICT(用戶名密碼枚舉工具)
經過wine運行。
一、tnscmd10g
二、Sqlsus
sqlsus是一個開放源代碼的MySQL注入和接管工具,Sqlsus使用perl編寫,基於命令行界面。Sqlsus能夠獲取數據庫結構,注入本身的SQL語句,從服務器下載文件。爬行Web站點可寫目錄,上傳和控制後門,克隆數據庫等等。最好用的亮點就是注射獲取數據速度很是快,另一個最大的特色就是自動搜索可寫目錄。
能夠查看生成的配置文件
三、 Sqlninja
是一款perl編寫的專門針對Microsoft SQL Server的sql注入工具。和市面上其餘注入工具不一樣,sqlninja沒有將精力用在跑數據庫上,而是側重於得到一個shell。
優勢:
四、Sqlmap
SQLMAP是一個開源的滲透測試工具,是用Python編寫。主要用於自動化的偵測和實施SQL注入攻擊以及滲透數據庫服務器。配有強大的偵測引擎,適用於高級滲透冊書用戶,不只能夠得到不一樣的數據庫指紋信息,還能夠從數據庫中提取數據,有很強大的抓取數據的能力。經常使用命令以下:
一、Burp Suite
用於攻擊web應用程序的集成平臺,經過默認端口8080運行,它帶有一個代理,能夠截獲並修改從客戶端到web應用程序的數據包。
使用Burp Suite截獲數據包
二、 OWASP ZAP
攻擊代理,查找網頁應用程序漏洞的綜合類滲透測試工具,包含攔截代理、自動代理、被動代理、暴力破解、端口掃描及蜘蛛搜索等功能。是會話類調試工具。
三、Vega
開源的web應用程序安全測試平臺,Vega能幫助驗證SQL注入、跨站腳本(XSS)、敏感信息泄露和其餘一些安全漏洞。Vega使用java編寫,有GUI,能夠在多平臺下運行。Vega相似於Paros Proxy, Fiddler, Skipfish and ZAproxy。
四、 Paros
paros,是一個對Web應用程序的漏洞進行評估的代理工具,即一個基於Java的Web代理程序,能夠評估Web應用程序的漏洞。它支持動態地編輯/查看HTTP/HTTPS,從而改變cookies和表單字段等項目。它包括一個Web通訊記錄程序,Web圈套程序(spider),hash計算器,還有一個能夠測試常見的Web應用程序攻擊(如SQL注入式攻擊和跨站腳本攻擊)的掃描器。該工具檢查漏洞形式包括:SQL注入、跨站點腳本攻擊、目錄遍歷等。
五、proxystrike
Web會話安全分析工具ProxyStrike
在Web應用中,客戶端發出一次請求,服務器響應一次。這構成一個完整的會話。經過分析請求和響應的數據,能夠發現Web應用存在的漏洞。Kali Linux提供一款專用工具ProxyStrike。該工具提供HTTP代理功能,能夠跟蹤HTTP會話信息,並進行分析統計。同時,該工具也提供攔截功能,安全人員能夠對每一個會話進行分析和修改,以獲取服務器的不一樣響應。
該工具還經過插件模式,提供安全掃描功能。該工具默認集成SQL注入和XSS兩個插件。在捕獲會話的同時,該工具會自動進行安全檢測,以發現目標服務器存在的漏洞。安全人員也可使用該工具對目標網站進行爬取,以蒐集更多的網站資源,並同時進行安全檢測。
六、 webscarab
基於GNU協議,包括HTTP代理、網絡爬行、網絡蜘蛛、會話ID分析等功能。
Burp Suite 是用於攻擊web 應用程序的集成平臺。它包含了許多工具,併爲這些工具設計了許多接口,以促進加快攻擊應用程序的過程。全部的工具都共享一個能處理並顯示HTTP 消息,持久性,認證,代理,日誌,警報的一個強大的可擴展的框架。
工具箱:
Proxy--是一個攔截HTTP/S的代理服務器,做爲一個在瀏覽器和目標應用程序之間的中間人,容許你攔截,查看,修改在兩個方向上的原始數據流。
Spider--是一個應用智能感應的網絡爬蟲,它能完整的枚舉應用程序的內容和功能。
Scanner[僅限專業版]--是一個高級的工具,執行後,它能自動地發現web 應用程序的安全漏洞。
Intruder--是一個定製的高度可配置的工具,對web應用程序進行自動化攻擊,如:枚舉標識符,收集有用的數據,以及使用fuzzing 技術探測常規漏洞。
Repeater--是一個靠手動操做來補發單獨的HTTP 請求,並分析應用程序響應的工具。
Sequencer--是一個用來分析那些不可預知的應用程序會話令牌和重要數據項的隨機性的工具。
Decoder--是一個進行手動執行或對應用程序數據者智能解碼編碼的工具。
Comparer--是一個實用的工具,一般是經過一些相關的請求和響應獲得兩項數據的一個可視化的"差別"。
Intruder是Burp套件的優點,它提供一組特別有用的功能。它能夠自動實施各類攻擊,包括:資源枚舉、數據提取、模糊測試等常見漏洞。在各類有效的掃描工具中,它可以以最細化、最簡單的方式訪問它生產的請求與響應,容許組合利用我的智能與該工具的控制優勢。
(1)首先配置監聽端口,配置瀏覽器。
(2)而後就能夠查看全部請求的數據包
(3)點擊數據包,能夠查看包內容
(4)右鍵單擊包,選擇「send to intruder」,便可進行攻擊
Fuzz是模糊測試的工具,是模糊測試時漏洞挖掘過程當中的重要一步。
一、Bed.pl
Bed(Bruteforce Exploit Detector)是一個純文本協議的Fuzz工具,可以檢查常見的漏洞,如緩衝區溢出,格式串漏洞,整數溢出等。
使用參數以下:
-s 針對FTP協議,FTP參數
-t 目標IP地址
-p 目標端口
-o timeout 發送一連串畸形數據包,嘗試使程序報錯,進行判斷。
二、Fuzz_ipv6
Fuzz_ipv6是THC出品的針對IPV6協議的模糊測試工具
三、Ohrwurm
ohrwurm 是一個小巧而簡單的RTP模糊器,它已經在少許的SIP**上測試過了,它們都沒有經受voip分析工具包的模糊測試。
四、Powerfuzzer
Powerfuzzer做爲Fuzz請求的工具 ,BurpSuit等Web代理工具也具備相應Fuzz能力。
五、 Wfuzz
針對Web應用的模糊測試工具,能夠進行Web應用暴力猜解,也支持對網站目錄、登陸信息、應用資源文件等的暴力猜解,還能夠進行get及post參數的猜解,sql注入、xss漏洞測試等。該工具全部功能依賴於字典。
六、SFuzz:Simple-Fuzzer
七、XSSer
針對XSS漏洞的挖掘,xsser --gtk 圖形化界面,對一個頁面或點進行xss測試,判斷是否有XSS的漏洞。
圖形化界面:xsser --gtk