[發(fā)明專利]一種測(cè)試Android應(yīng)用程序的方法和裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201310598510.9 | 申請(qǐng)日: | 2013-11-22 |
| 公開(kāi)(公告)號(hào): | CN104657259B | 公開(kāi)(公告)日: | 2018-05-18 |
| 發(fā)明(設(shè)計(jì))人: | 柴洪峰;楊文博;何朔;李卷孺;楊陽(yáng);徐澤偉 | 申請(qǐng)(專利權(quán))人: | 中國(guó)銀聯(lián)股份有限公司 |
| 主分類(lèi)號(hào): | G06F11/36 | 分類(lèi)號(hào): | G06F11/36 |
| 代理公司: | 中國(guó)專利代理(香港)有限公司 72001 | 代理人: | 鄭冀之;湯春龍 |
| 地址: | 200135 上海*** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 測(cè)試 android 應(yīng)用程序 方法 裝置 | ||
本發(fā)明公開(kāi)測(cè)試Android應(yīng)用程序的方法和裝置。該方法包括以下步驟:A:定位應(yīng)用程序的命令調(diào)用,B:監(jiān)控所述命令調(diào)用并獲取運(yùn)行時(shí)數(shù)據(jù),C:對(duì)獲取的運(yùn)行時(shí)數(shù)據(jù)進(jìn)行分析。
技術(shù)領(lǐng)域
本發(fā)明涉及軟件測(cè)試,并且尤其涉及一種測(cè)試Android應(yīng)用程序的方法和裝置。
背景技術(shù)
在應(yīng)用程序中,通常會(huì)使用標(biāo)準(zhǔn)的密碼算法和協(xié)議來(lái)保護(hù)數(shù)據(jù)。但是,在應(yīng)用程序的開(kāi)發(fā)過(guò)程中可能會(huì)錯(cuò)誤地設(shè)置參數(shù)(例如,密鑰長(zhǎng)度、密鑰內(nèi)容)和/或使用步驟(例如,是否使用證書(shū)、是否校驗(yàn)證書(shū)鏈),使得安全性得不到保證。為此,需要對(duì)應(yīng)用程序進(jìn)行測(cè)試來(lái)避免這樣的問(wèn)題。
現(xiàn)有技術(shù)未公開(kāi)針對(duì)上述問(wèn)題的解決方案。現(xiàn)有技術(shù)中的靜態(tài)自動(dòng)化測(cè)試方法存在的問(wèn)題是無(wú)法獲取運(yùn)行時(shí)參數(shù),而運(yùn)行時(shí)的參數(shù)對(duì)于應(yīng)用程序的涉及密碼算法與協(xié)議使用的部分的分析是至關(guān)重要的。現(xiàn)有技術(shù)中的動(dòng)態(tài)測(cè)試方法往往需要修改應(yīng)用程序或者添加斷點(diǎn)來(lái)調(diào)試,而這樣做將降低程序監(jiān)控的透明性和穩(wěn)定性,例如,修改應(yīng)用程序可能導(dǎo)致應(yīng)用程序運(yùn)行錯(cuò)誤,也會(huì)破壞應(yīng)用程序的簽名機(jī)制。
另一方面,現(xiàn)有技術(shù)的測(cè)試方法僅僅針對(duì)通用性的代碼問(wèn)題,而無(wú)法正對(duì)應(yīng)用程序中的特定命令調(diào)用進(jìn)行測(cè)試和分析。例如,無(wú)法對(duì)應(yīng)用程序的涉及密碼算法與協(xié)議使用的部分進(jìn)行特定性的安全分析(例如,證書(shū)是否缺失或者被篡改),從而無(wú)法進(jìn)行測(cè)試并發(fā)現(xiàn)應(yīng)用程序中的錯(cuò)誤的密碼算法和協(xié)議使用。
為此,本發(fā)明提出一種測(cè)試Android應(yīng)用程序的方法和裝置。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個(gè)目的,公開(kāi)一種測(cè)試Android應(yīng)用程序的方法,包括以下步驟:
A:定位應(yīng)用程序的命令調(diào)用,
B:監(jiān)控所述命令調(diào)用并獲取運(yùn)行時(shí)數(shù)據(jù),
C:對(duì)獲取的運(yùn)行時(shí)數(shù)據(jù)進(jìn)行分析。
在一個(gè)技術(shù)方案中,步驟A包括:
對(duì)應(yīng)用程序進(jìn)行靜態(tài)代碼反編譯,獲取類(lèi)描述符;
根據(jù)類(lèi)描述符,定位命令調(diào)用。
在一個(gè)技術(shù)方案中,步驟A包括:
定位與密碼算法和/或協(xié)議使用相關(guān)的命令調(diào)用。
在一個(gè)技術(shù)方案中,步驟B包括:
利用被附加到Dalvik虛擬機(jī)的Zygote進(jìn)程上的監(jiān)控模塊來(lái)監(jiān)控所述命令調(diào)用并獲取運(yùn)行時(shí)數(shù)據(jù)。
在一個(gè)技術(shù)方案中,所述運(yùn)行時(shí)數(shù)據(jù)是與密碼算法和/或協(xié)議使用相關(guān)的參數(shù)。
在一個(gè)技術(shù)方案中,在步驟A中,在應(yīng)用程序的二進(jìn)制代碼中定位其命令調(diào)用。
在一個(gè)技術(shù)方案中,所述命令調(diào)用是方法調(diào)用或者指令調(diào)用。
根據(jù)本發(fā)明的另一個(gè)目的,公開(kāi)一種測(cè)試Android應(yīng)用程序的裝置,包括:
定位模塊,用于定位應(yīng)用程序的命令調(diào)用,
監(jiān)控模塊,用于監(jiān)控所述命令調(diào)用并獲取運(yùn)行時(shí)數(shù)據(jù),
分析模塊,用于對(duì)獲取的運(yùn)行時(shí)數(shù)據(jù)進(jìn)行分析。
在一個(gè)技術(shù)方案中,定位模塊被配置成:
對(duì)應(yīng)用程序進(jìn)行靜態(tài)代碼反編譯,獲取類(lèi)描述符;
根據(jù)類(lèi)描述符,定位命令調(diào)用。
在一個(gè)技術(shù)方案中,定位模塊被配置成:
定位與密碼算法和/或協(xié)議使用相關(guān)的命令調(diào)用。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國(guó)銀聯(lián)股份有限公司,未經(jīng)中國(guó)銀聯(lián)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310598510.9/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類(lèi)專利
- 專利分類(lèi)
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過(guò)測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過(guò)處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過(guò)軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 軟件測(cè)試系統(tǒng)及測(cè)試方法
- 自動(dòng)化測(cè)試方法和裝置
- 一種應(yīng)用于視頻點(diǎn)播系統(tǒng)的測(cè)試裝置及測(cè)試方法
- Android設(shè)備的測(cè)試方法及系統(tǒng)
- 一種工廠測(cè)試方法、系統(tǒng)、測(cè)試終端及被測(cè)試終端
- 一種軟件測(cè)試的方法、裝置及電子設(shè)備
- 測(cè)試方法、測(cè)試裝置、測(cè)試設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 測(cè)試裝置及測(cè)試系統(tǒng)
- 測(cè)試方法及測(cè)試系統(tǒng)
- 一種數(shù)控切削指令運(yùn)行軟件測(cè)試系統(tǒng)及方法
- 一種Android設(shè)備之間遠(yuǎn)程桌面控制的方法
- 一種Android程序的執(zhí)行路徑的還原方法
- 基于ANCS協(xié)議兼容多平臺(tái)的通知消息獲取方法
- 基于字節(jié)碼插樁的Android程序監(jiān)控系統(tǒng)及方法
- 一種減少Android設(shè)備功耗的優(yōu)化方法及裝置
- 一種縮短無(wú)屏Android設(shè)備開(kāi)機(jī)啟動(dòng)時(shí)間的設(shè)置方法
- 一種基于Android雙系統(tǒng)的系統(tǒng)間通知同步方法
- 基于移動(dòng)操作系統(tǒng)的Android兼容層實(shí)現(xiàn)方法和系統(tǒng)
- 一種Android智能設(shè)備APK安全管控方法
- 一種應(yīng)用程序開(kāi)發(fā)中創(chuàng)建Android庫(kù)模塊依賴關(guān)系的方法及裝置
- 對(duì)虛擬化應(yīng)用程序的基于策略的訪問(wèn)
- 應(yīng)用程序執(zhí)行、應(yīng)用程序提供裝置和應(yīng)用程序分發(fā)方法
- 一種軟件保護(hù)方法、裝置及系統(tǒng)
- 應(yīng)用程序的開(kāi)發(fā)方法和系統(tǒng)
- 應(yīng)用程序的擴(kuò)展方法及裝置
- 一種應(yīng)用程序商店的應(yīng)用程序發(fā)布方法及裝置
- 一種應(yīng)用程序的監(jiān)控方法、裝置及系統(tǒng)
- 用于對(duì)虛擬化應(yīng)用程序的基于策略的訪問(wèn)的方法和系統(tǒng)
- 應(yīng)用程序控制方法、裝置、終端及存儲(chǔ)介質(zhì)
- 一種應(yīng)用程序安裝、卸載方法及通信終端
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





