AppScan系列——AppScan操作手冊
轉自:http://zhouanya.blog.51cto.com/4944792/1388681/
1.SQL注入
1.1.什麼是sql注入
所謂SQL注入(SQL Injection),就是利用程式設計師對使用者輸入資料的合法性檢測不嚴或不檢測的特點,故意從客戶端提交特殊的程式碼,從而收集程式及伺服器的資訊,獲取想得到的資料(如資料庫使用者名稱、密碼、表結構等)。
SQL注入是從正常的WWW埠訪問,而且表面看起來跟一般的Web頁面訪問沒什麼區別,所以目前市面的防火牆都不會對SQL注入發出警報。動態生成Sql命令時沒有對使用者輸入的資料進行驗證是Sql注入攻擊得逞的主要原因。
1.2. sql注入原理
攻擊者會將一些惡意程式碼插入到字串中,然後會通過各種手段將該字串傳遞到SQLServer資料庫的例項中進行分析和執行。只要這個惡意程式碼符合SQL語句的規則,則在程式碼編譯與執行的時候,就不會被系統所發現。
SQL注入式攻擊的主要形式有兩種:一是直接將程式碼插入到與SQL命令串聯在一起並使得其以執行的使用者輸入變數,由於其直接與SQL語句捆綁,故也被稱為直接注入式攻擊法。二是一種間接的攻擊方法,它將惡意程式碼注入要在表中儲存或者作為原資料儲存的字串。在儲存的字串中會連線到一個動態的SQL命令中,以執行一些惡意的SQL程式碼。
2.AppScan註冊
2.1.註冊步驟
1.將patch.exe檔案當到APPSCAN的安裝目錄(如:D:\Program Files\IBM\Rational AppScan)下,執行。
2.執行keygen.exe,生成lince.lic檔案。
開啟APPSCAN,幫助-》許可證-》裝入舊格式(.lic)的許可證,將剛才生成的.lic檔案裝載。
3.新建掃描任務
3.1.掃描模板選擇
開啟AppScan工具,點選“新建”,會彈出一個掃描模板選擇框,一般選擇“常規掃描” 或者自己定義的模板。
下一步會進入掃描配置嚮導,選擇執行的掃描型別,預設是“Web應用程式掃描”,點選“下一步”,輸入“起始URL”
3.2.登入管理
進入登入管理,因為有些頁面需要登入後 才能做有效的掃描,這裡記錄的是登入所需資訊,便於掃描時能登入應用程式。總共有4種方法,比較常用的是“記錄”和“自動”
記錄: 點選“記錄”按鈕,進行錄製登入操作。操作類似於用LR做指令碼錄製。
自動:輸入使用者名稱和密碼,掃描時會自動根據這個憑證登入應用程式。
3.3.測試策略選擇
選擇測試策略,AppScan會根據你的測試策略來進行安全掃描測試。我們可以先選擇“Default”,後面再做相應修改,或者點選“瀏覽” 選擇已整理的測試策略模板
3.4.完成掃描配置
完成掃描配置嚮導後,會提供如何啟動的4個選項給你。
1)啟動全面自動掃描:會自動探索URL,而且邊探索邊掃描頁面。
2)僅使用自動“探索”啟動:自動探索URL,不做掃描。
3)使用“手動探索”: 手動去訪問頁面,AppScan會自動記錄你訪問頁面的url
4)我將稍後啟動掃描:AppScan不做任何操作,需要自己手動去啟動掃描。
選擇第4個——“我將稍後啟動掃描”, 在掃描配置模組,可以檢視剛才所做的配置資訊
3.5.導入測試策略模板
掃描配置>>測試策略,點選“導入”,導入一份測試策略模板
3.6.掃描執行緒設定
可以設定掃描的執行緒數,從而減低掃描速度,減少對應用伺服器造成過高負載:
在掃描配置>>連線>>通訊和代理裡設定
3.7.匯出掃描配置模板
掃描任務可能以後我們還需要重複做,為了減少重複的掃描配置,我們可以把掃描配置匯出成模板,便於以後的複用。在“掃描配置”模組,點選“匯出為模板”,字尾名是“.scant”
4.掃描指定的URL
4.1.處理偽靜態頁
偽靜態頁定義:其共同特徵,都是以 html 為字尾名,最後的檔名格式都是 file+ 數字格式;這種型別的頁面經常存在新聞,論壇等。如果訪問這些頁面,發現頁面結構相同,差異的都是裡面的文字內容,如提供不同的新聞內容等,這些頁面就是所謂的“偽靜態頁面”,其實是網站釋出系統動態產生的,由於結果相似,在安全掃描中,沒有必要針對這些頁面每次都進行掃描。
如 autobbs:
http://bbs.pcauto.com.cn/forum-15580.html
http://bbs.pcauto.com.cn/forum-17065.html
方法:在掃描配置>>排除路徑和檔案,增加一個排除的路徑
一般來說,我們需要保留一個html頁來讓它掃描,因此增加一個異常項(例外)
4.2.指定掃描的URL
先排除所有的URL(如配置正則表示式:.*:82),然後把需要掃描的URL設為異常
4.3.排除檔案型別
在掃描配置>>排除路徑和檔案中可設定排除檔案型別,排除一些不掃描的檔案:如swf、jpg、gif
4.4.冗餘路徑設定
如果我們遇到如下型別的頁面,都是 menu 引數值不同,訪問以後發現出現的是頁面中有不同的超連結:
這種頁面是屬於業務型別的“冗餘路徑”,需要全面掃描,這時可以開啟“掃描配置”:探索>>探索選項 中 把 “冗餘路徑限制”的引數值設大一點(預設是5)。
也可以針對該目錄建立一個單獨的掃描任務,只掃描該目錄和其下子目錄。
4.5.探索的結果檢查
探索完後,點選“應用程式資料”,檢視“已訪問的URL”,檢查這些已訪問的URL是否已經包含了指定掃描的URL。
5.掃描結果分析
5.1.安全問題分析
掃描結果會根據安全問題的類別和嚴重級別排序:
點選最下面的節點。
瞭解變體的詳細資訊。可以把變體理解成安全掃描執行的“測試用例”,當實際結果與預期結果一直時,說明應用程式存在這個安全漏洞。
對比測試與原始有什麼不同。一般有差異的地方,appscan會用紅色字型標識。
在瀏覽器中檢視具體的報錯(問題)。
5.2.頁面中模擬重現安全問題
檢視“測試”的請求資訊。
在頁面的“新建分類名稱”中輸入 “\'%20having%201=1--”,點選“新增分類”按鈕,能夠儲存成功
6.加強部分
下面是加強部分,不要求掌握,有興趣可瞭解一下:
6.1.瞭解被測網站
如何瞭解到網站具體有哪些頁面呢?這裡我們可以利用 AppScan 的探索(頁面爬行)功能。
在掃描配置裡面設定了主 URL 以後,工作選單中中依次選擇掃描 - 僅探索。對網站進行探索。一般會讓探索工具執行 10 到 30 分鐘,看該網站具體存在哪些頁面,哪些引數等。這個就可以切換到“應用程式資料”檢視來檢視。
我們一般關心這3個檢視:
·已訪問的URL():AppScan 已經探索到並且進行了分析的頁面
·已過濾掉的URL():AppScan 已經發現,同時根據掃描配置,認為不需要進行安全掃描的頁面。
·中斷連結URL():AppScan 發現了,但是無法訪問到或者訪問出錯的頁面,如 404 頁面不存在,或者 500 伺服器錯誤等。
6.2.制定測試策略模板
確定測試策略,我們主要關心是否存在“跨站點指令碼執行”和 “SQL 注入”的問題,則在掃描規則中,我們就可以選擇這兩種型別的規則,其他規則都排除。可以在掃描配置>>測試 >>測試策略中選擇,如下圖所示:
在測試策略中,有多種不同的分組模式,最經常使用的是“嚴重性”,“型別”,“侵入式”、“WASC 威脅分類”等標準,根據不同分組選擇的掃描策略,最後組成一個共同的策略集合。
測試策略選擇步驟如下:
1選擇預設的掃描策略,切換到按照“型別”分類,取消掉“基礎結構”和“應用程式”兩種型別。
說明:把掃描策略置空,沒有選擇任何的掃描策略。在分組型別中選擇“型別”分類,型別分類中只有兩種型別:“基礎結構”和 “應用程式”,可以快速全部都取消掉。
2分組型別,切換到“WASC 威脅分類”,選擇“SQL 注入”和“跨站點指令碼編制”。
3.分組型別,切換到“型別”,發現這時候“基礎結構”和“應用程式”兩種型別的掃描策略都是選擇上的模式,而且是虛線,說明這兩種型別下均有部分掃描策略被選擇了,我們不關心“基礎結構”級別的安全問題,所以在這裡取消“基礎結構”。
4.分組型別,切換到“侵入式”,發現這時候“侵入式”和“非侵入式”兩種型別的掃描策略都是選擇上的模式。“侵入式”會有有比較強的副作用,可能對系統造成傷害,所以一般掃描生產系統的時候,很少選擇。這裡把“侵入式”的用例取消掉。
把選擇好的測試策略,我們可以把它匯出成一個模板,方便以後使用:
6.3.匹配正則表示式例子
http://xx.xx.com.cn/forum-15580.html
正則表示式:.*forum-\d+.html
http://xx.xx.com.cn/bbs6/forum-16071-2.html
正則表示式:.*forum-\d+-+\d+.html
http://xx.xx.com.cn/bbs6/pick_101-16260.html
正則表示式:.*pick_\d+-+\d+.html
http://xx.xx.com.cn/bbs6/type_g539fg521b-16071.html
正則表示式:type[_a-z0-9]+-+\d+.html
http://xx.xx.com.cn/bbs6/forum-16260_postat.html
正則表示式:forum-\d+_+postat+.html
http://xx.xx.com.cn/bbs6/forum-16071-10_replyat.html
正則表示式:forum-\d+-+\d+_+replyat+.html
http://xx.xx.com.cn/bbs6/time_0-16071-4.html
正則表示式:.*time_\d+-+\d+-+\d+.html
http://xx.xx.com.cn:8002/price/q-p1.html
正則表示式:q+-+[a-z]\d+.html
6.4.重複的“指令碼引數”處理
在“我的應用程式資料”樹狀結構,滑鼠選擇目錄以後,在右邊檢視中選擇“指令碼引數”,然後檢視是否存在不同頁面(URL) 存在相同或者類似引數的情況:如下圖,在不同 URL 中,都存在 title 引數,預設的引數值是“不適用”:
像這些頁面,在一個 URL 中進行測試以後,沒有必要在另外一個頁面也進行測試。所以該引數值的變化,可以認為是冗餘頁面,沒有必要進行下一步的重新探索和測試。可以把title 新增到“引數和cookie”: 掃描配置>>引數和cookie>>其它選項—冗餘調整
取消選擇任何一個選擇框,則表示無論是否含有該引數,無論該引數值是否發生變化,都不認為是新頁面,沒有必要重新測試,而且不應該因為該引數的變化去影響其他引數的測試。
6.5.常見問題
1.IBM Rational AppScan掃描時發生"AppScan記憶體需求已超過預定義的限制"錯誤從而停止工作。
原因:為了防止Rational AppScan因為超過記憶體限度而停止工作,可以進行相應的設定使Rational AppScan當記憶體使用量相對過大時自動重新啟動。這樣當掃描因為剩餘的虛擬記憶體量過低從而被迫停止時,Rational AppScan會監測系統登錄檔的設定來決定是否重新啟動。解決辦法:自Rational AppScan 7.7版本以上,在主畫面中選擇選單[工具]->[選項]->[高階]頁面。
·檢索PerformanceMonitor.RestartOnOutOfMemory屬性並將其設定為布林值True。
還可以使用下面的屬性
·檢索PerformanceMonitor\minScanTimeDurationForRestart屬性並設定適當的DWORD雙位元組數值,該數值是指定Rational AppScan在遇到記憶體問題之前應當執行的分鐘數。
相關推薦
AppScan系列——AppScan操作手冊
轉自:http://zhouanya.blog.51cto.com/4944792/1388681/ 1.SQL注入 1.1.什麼是sql注入 所謂SQL注入(SQL Injection),就是利用程式設計師對使用者輸入資料的合法性檢測不嚴或不檢測的特點,故意從
code_blocks 使用操作手冊
reader -1 parent eight 技術分享 txt -a max-age 方框
linux無鎖化編程--__sync_fetch_and_add系列原子操作函數
arc simple size 設計 spa true void 編程算法 lan linux支持的哪些操作是具有原子特性的?知道這些東西是理解和設計無鎖化編程算法的基礎。 下面的東西整理自網絡。先感謝大家的分享! __sync_fetch_and_add系列的命
Weblogic補丁升級操作手冊
nload info nts -m 登錄 5.0 xml配置 down 命名 1、查看Weblogic版本號 方法一 [[email protected]/* */ ~]$ cd /home/weblogic/Oracle/Middlewar
iVPN用戶登錄操作手冊
對話 網頁資源 support servle 客戶端 tro type 移動 通道 限制條件: ? 用戶具備Ivpn訪問權限 ? IVPN使用程管家令牌。程管家令牌註冊站點:http://itoken/ 一、iVPN用戶登錄操作手冊(PC
國際軟件設計文檔——操作手冊
輸出 測試 單位 初始 編號 是否 結構圖 準則 可能 1 引言 1.1 編寫目的 說明編寫這份操作手冊的目的,指出預期的讀者。 1.2 前景 說明: a. 這份操作手冊所描述的軟件系統的名稱; b. 該軟件項目的任務提出者、開發者、用戶(或首批用戶)及安裝該軟件的計算
Linux系統中安裝MySQL數據庫操作手冊
linux mysql數據庫 Linux系統中MySQL數據庫安裝手冊一、安裝概述: 在Linux操作系統中安裝MySQL數據庫是一個我們必須要掌握的一門技術,也決定了你以後找工作的薪資待遇,所以你知道它的厲害了吧!學會安裝只是第一步,你還得學好數據庫的基本操作,以及搭建一個數據庫的主從配置等等
MySQL操作手冊
mysql數據庫操作MySQL數據庫基本操作一、概述: 我們學習了如何安裝一個MySQL數據庫以後,我們就要學習如何操作MySQL數據庫,本文只是一些基本的操作sql語句,僅供參考。如有什麽不對的地方可以留言。謝謝!二、具體操作: 1、使用“su”命令進入到root用戶。 2、直接輸入“my
FS BPM 業余研發(用戶詳細操作手冊--單人串行/並行)之 深圳分公司技術部請假審批流程
app 人事 截圖 核心 bsp 天數 上傳 頁面 -- 1、FS BPM 簡介 BPM軟件中BPM是英文字母縮寫,大致有二個意思。第一、Business Process Management,即業務流程管理,是一套達成企業各種業 務環節整合的全面管理模式。第二、Bus
SAP Parallel Accounting(平行分類賬)業務配置及操作手冊
line flex otto overview 雙擊 spl 就是 idt cell 目錄 SAP Parallel Accounting(平行分類賬業務)配置及操作手冊... 1 SAP Parallel Accounting(平行分類賬業務)配置及操作
通達OA應用中心操作手冊
函數 jpg 正則表達式 bstr iter abc 技術分享 date 字段名 第1章應用中心功能介紹 1.1 功能介紹 應用中心是一款以企事業單位廣為使用的表單為對象、業務為驅 動、決策為目標,以"平臺" +"實施"的方式,進而幫助企事業單位實
xwiki操作手冊
comment 交集 權限管理 營銷部 groovy save 選擇 cal 位置 Xwiki官網:http://www.xwikichina.com/xwiki/bin/view/Main/中文官網。1 用戶管理1.1
RHEL 6.4 安裝配置Nessus 7.0.0及操作手冊
升級 ref user 過程 des 錯誤 tar 離線更新 define 安裝環境:RHEL 6.4 1.下載Nessus安裝包 下載地址:http://www.tenable.com/products/nessus/select-your-operating-syste
飛塔防火墻官方操作手冊
process mar gif 鏈接 操作 -o 飛塔 火墻 color Handbook4.3版本鏈接:https://pan.baidu.com/s/1smAkrRR5.0版本鏈接:https://pan.baidu.com/s/1i6LVT0x5.2版本鏈接:http
Docker操作手冊
Docker常用命令[鏡像]獲取鏡像sudo docker pull ubuntu 下載鏡像後利用鏡像創建一個容器sudo docker run -t -i ubuntu /bin/bash列出主機上已有的鏡像sudo docker images獲取鏡像的詳細信息sudo docker inspect ubu
通過Powershell調研EWS API刪除特定主題郵件操作手冊
文件中 cdc mod folder port hang obj color 分享圖片 今天給大家分享一個之前做過的案例,通過Powershell調用Exchange ews API去上次特定主題郵件。【我測試的環境Exchange版本為Exchange 2016】具體的操
MongoVUE簡單操作手冊
技術 com static 知識 手冊 [] 關於 .com 文檔 本文轉自網絡,對疑問的地方做了修改 官方參考文獻:http://www.mongovue.com/tutorials/ MongoVUE 是個比較好用的MongoDB客戶端,需要註冊,但是可以變
NanoFabric-ServiceFabric 操作手冊
啟動引導 c-s 管理員權限 調用 命令行 cimage 端口 yar ltm service-fabric-52abp-ocelot A Service Fabric sample with a Frontend, one API Gateway and 52abp Mi
專案管理軟體Dotproject操作手冊——轉
第一章 簡單介紹DotProject DotProject是一個在1996年左右,由開源組織自發組織人員開發的一個開源的專案管理軟體系統,基於Web,可以部署於區域網"廣域網的辦公環境中,客戶端不需要安裝任何軟體,只要有IE,Firefox,Opera等瀏覽器即可,強大,小巧.被翻譯為了大約40多
小水粒操作手冊
1、開啟任意瀏覽器,複製開啟如下網址:https://download.csdn.net/download/qq_32184937/10733016,下載所需軟體 2、下載好後,解壓檔案 3、開啟xiaoshuili資料夾,再解壓檔案 &n