目前我經常用的漏洞檢測工具主要就是愛內測,因為愛內測會根據應用特性,對程序機密性會采取不同程度不同方式的檢測,檢測項目包括代碼是否混淆,DEX、so庫文件是否保護,程序簽名、權限管理是否完整等;組件安全檢測主要針對Activity、Broadcast Receiver、Service、WebView、Intent等是否存在漏洞,并給出針對性建議;數據安全會全面檢測APP存在的數據泄漏漏洞和輸出層、協議層等所有涉及數據安全的漏洞,確保APP里那些可能導致帳號泄露的漏洞被全部檢測出。
創新互聯專注于牟平網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供牟平營銷型網站建設,牟平網站制作、牟平網頁設計、牟平網站官網定制、小程序制作服務,打造牟平網絡公司原創品牌,更為您提供牟平網站排名全網營銷落地服務。
一、前言
在SDK最近的項目中上線的包被第三方殺毒軟件報出有病毒的問題,后來經過查驗發現是SDK懸浮窗動畫的邏輯被檢驗出有病毒,最后進行了修改。事情雖然解決了,但是引起該問題的一個原因是在測試中沒有安全測試,而安全測試的標準,方法都沒有。因此今天將之前工作中參與過的安全測試以及從網上查閱到有關安全測試的資料進行整理。有不足的之處,盡情諒解。
二、軟件權限
1)扣費風險:瀏覽網頁,下載,等情況下是否會扣費,一般在游戲APP,和社交APP等需要考慮這些。
2)隱私泄露風險。例如在我們安裝APP應用時通常會看到"xx要讀取手機通訊錄"等提示,這些提示可以提示用戶拒絕接受,這些是APP測試中的測試點。
3)校驗input輸入。對于APP有輸入框的要對輸入的信息進行校驗,比如密碼不能顯示明文。在測試中紅人館注冊時需要對input進行測試。
4)限制/允許使用手機功能接人互聯網,收發信息,啟動應用程序,手機拍照或者錄音,讀寫用戶數據。這個在通信行業用的比較多,比如展訊,高通等芯片廠商,他們在出廠芯片時要對手機各個功能進行測試。
三、代碼安全性
之所以單獨拿出來說,是因為在SDK測試過程中SDK代碼被第三方工具檢測出游病毒代碼,這樣一來就會影響輸入法的使用。因此在后續測試中要嘗試加入安全性測試。
四、安裝與卸載安全性
1)應用程序應能正確安裝到設備驅動程序上
2)能夠在安裝設備驅動程序上找到應用程序的相應圖標。在SDK測試項目中發現有些設備受權限的問題,無法下發圖標創建快鏈。
3)是否包含數字簽名信息。在SDK測試項目中基本上沒有,但是在輸入法打包和主線版本上存在這樣的測試。
4)安裝路徑應能指定
5)沒有用戶的允許應用程序不能預先設定自動啟動
6)卸載是否安全,其安裝進去的文件是否全部卸載
7)卸載用戶使用過程中產生的文件是否有提示
8)其修改的配置信息是否復原
9)卸載是否影響其他軟件的功能
10)卸載應該移除所有的文件
11)安裝包的存放。在SDK下載安裝包的測試中我們經常會看到下載下來的包后面有四個隨機的字符串,這個的目的是為了防止第三方工具惡意刪除安裝包的問題。
在SDK測試項目中有專門針對下載安裝卸載的用例,對安裝的路徑和下載的文件夾路徑等有相關的測試,測試結果頁表明,某些手機(例如華為mate1)在刪除了某個下載路徑文件夾之后受權限應用不會自動創建。
五、數據安全性
1)當將密碼或其他的敏感數據輸人到應用程序時,其不會被儲存在設備中,同時密碼也不會被解碼
2)輸人的密碼將不以明文形式進行顯示
3)密碼,信用卡明細,或其他的敏感數據將不被儲存在它們預輸人的位置上
4)不同的應用程序的個人身份證或密碼長度必需至少在4一8個數字長度之間
5)當應用程序處理信用卡明細,或其他的敏感數據時,不以明文形式將數據寫到其它單獨的文件或者臨時文件中。以防止應用程序異常終止而又沒有刪除它的臨時文件,文件可能遭受人侵者的襲擊,然后讀取這些數據信息。
6)當將敏感數據輸人到應用程序時,其不會被儲存在設備中
7)備份應該加密,恢復數據應考慮恢復過程的異常通訊中斷等,數據恢復后再使用前應該經過校驗
8)應用程序應考慮系統或者虛擬機器產生的用戶提示信息或安全警告
9)應用程序不能忽略系統或者虛擬機器產生的用戶提示信息或安全警告,更不能在安全警告顯示前,利用顯示誤導信息欺騙用戶,應用程序不應該模擬進行安全警告誤導用戶
10)在數據刪除之前,應用程序應當通知用戶或者應用程序提供一個"取消"命令的操作
11)"取消"命令操作能夠按照設計要求實現其功能
12)應用程序應當能夠處理當不允許應用軟件連接到個人信息管理的情況
13)當進行讀或寫用戶信息操作時, 應用程序將會向用戶發送一個操作錯誤的提示信息
14)在沒有用戶明確許可的前提下不損壞刪除個人信息管理應用程序中的任何內容
15)應用程序讀和寫數據正確。
16)應用程序應當有異常保護。
17)如果數據庫中重要的數據正要被重寫,應及時告知用戶
18)能合理地處理出現的錯誤
19)意外情況下應提示用戶
20)HTTP、HTTPS覆蓋測試。在測試中我們經常會遇到與請求的加密解密測試,以確保產品的安全性
功能測試:這個不用過多解釋,就是點點點,保證頁面的功能實現,沒有業務邏輯方面問題。
UI測試:主要關注頁面顏色是否舒服,布局是否合理,有無錯別字等等。
兼容性測試:就是測試你的app程序在不同手機品牌上面是否能正常運行,頁面布局如何,是否亂序。需要覆蓋到目前市場上面主流的手機類型,最好使用真機測試,不推薦模擬器。還需要考慮不同操作系統版本對于程序的影響。
場景測試:使用App時要考慮到各種不同的使用場景,比如正在使用app,來電話或者短信了程序如何應對?正在聽音樂,app也有個播放功能和喇叭發生資源搶奪怎么辦?以及不同應用程序之間的切換和前后臺切換等等。
性能測試:考慮內存,耗電量,安裝包大小,流量耗用多少以及響應事件的快慢等等......?
弱網測試:不同類型2g,3g,4g,5g的移動流量或者是wifi模式下程序的運行情況。網絡速度極差或者斷網的情況下,程序運行狀況等等。
安裝/卸載/更新:需要考慮卸載時是否要保留用戶數據?更新的話是提示更新還是強制更新?更新過程中手機沒電關機或者用戶關閉退出等等。
權限測試:主要是用戶關閉了某項權限時,程序是否還能正常使用;是否可以訪問通訊錄,相冊,錄音等;以及檢測App的用戶授權級別,數據泄露,非法授權訪問等。?
穩定性測試:避免程序出現卡頓,閃退,崩潰等現象,這個可以使用工具比如monkey自動頻繁快速操作各個功能檢測程序穩定性。
安全測試:應用是否保存敏感數據到本地,應用與服務器之間的數據傳輸是否加密。如果金融類的涉及錢的應用,重點測試,支付接口是否能被外部調用偽造等。
大概列了一下App測試需要注意的常見的測試點,僅供參考。最后說一下,app測試工具有哪些:
adb:?安卓手機的官方檢測工具,用來操作安卓系統。
monkey:可以無規律的模擬用戶操作,檢測程序運行的穩定性。
monkey ?runner:可以自己寫腳本模擬用戶進行操作,更加的靈活。
Appium:?app自動化框架,適用于python/java語言。
騰訊有個平臺可以實現適配兼容、服務器壓力、性能測試、弱網絡、耗電量測試等等,挺全面的。WeTest騰訊質量開放平臺,本人親測過體驗還不錯。
下面說一下測試一個App具體包括哪些方面,以及每個方面的關鍵點。
測試人員常被看作bug尋找者,但你曾想過他們實際是如何開展測試的嗎?你是否好奇他們究竟都做些什么,以及他們如何在一個典型的技術項目中體現價值?本文將帶你經歷測試人員的思維過程,探討他們測試app時的各種考慮。本文的目的在于揭示測試人員的這一思維過程,并展示他們通常所考慮內容的廣度和深度。
本文是基于我的工作經驗而寫的,作為一名敏捷軟件開發團隊的測試經理,我一心投入測試工作。在與其他app測試專家交流的過程中,我深刻了解到app測試工作的困難。在日常工作的摸索中,我將如何做好app的測試歸結為如下內容。
(1) ? 非功能測試
app測試的一個重要方面是app的非功能需求。移動app在推出市場或進行進一步開發前,測試人員有一定的職責做該類需求的跟蹤工作。
早期開發階段要進行的第一個測試應該是實用性測試。通常是由alpha用戶或同事進行的。走進一家咖啡館或餐廳,問問里面的人他們的app使用情況。讓他們看看現階段開發的第一個版本并收集反饋,看看用戶是否能很好地使用新功能,以便得出第一印象。
(2) ? 功能測試
每項開發的新功能都需要進行測試。app測試中功能測試是一個重要方面。測試人員應該要進行手動測試和后期的自動化測試維護。剛開始測試時,測試員必須把app當做"黑盒"一樣進行手動測試,看看提供的功能是否正確并如設計的一樣正常運作。除了經典軟件測試,像點擊按鈕、提交訂單看看會發生什么,測試員還必須執行更多功能的app測試。
除了整個手動測試過程,測試自動化對移動app也很重要。每個代碼變化或新功能都可能影響現存功能及它們的狀態。通常手動回歸測試時間不夠,所以測試員不得不找一個工具去進行自動化回歸測試。現在市面上有很多自動化測試工具,有商業的也有開源的,面向各個不同平臺,如Android,iPhone,WindowsPhone7,BlackBerry以及移動Webapp。根據開發策略和結構,品質管理測試專家需找出最適合他們環境的自動化工具。
(3) ? 客戶端性能測試
一個App做的好不好,不僅僅只反應在功能上。被測的app在中低端機上的性能表現也很重要。比如:一個很好玩的游戲或應用,只能在高端機上流暢運行,在中低端機上卡的不行,也不會取得好的口碑。
關于App的性能測試,我們比較關注的參數有:CPU,內存,耗電量,流量,FPS。同時也需關注一下App的安裝耗時和啟動耗時。
目前大家可能比較困惑的一個問題,多高的CPU,內存,耗電量,流量,FPS才算是符合發布的值呢?這里可以告訴大家,可以參考精品游戲的一些數值,將自己研發的app與業內精品的app數據做對比。
(4) ? 適配兼容測試
市面上目前存在的移動設備五花八門,下圖列出過去12個月的移動設備品牌占比情況。
? App在經過功能測試后,也需對其進行適配兼容測試需要檢查的項主要有以下幾點:
(a) 在不同平牌的機型上的安裝、拉起、點擊和卸載是否正常;
(b) 在不同的操作系統上的安裝、拉起、點擊和卸載是否正常;
我們在實際測試中,常常會遇到下列問題:
(a) 在某個平牌某個系統上,app安裝不上;
(b) 在某個平牌某個系統上,app無法拉起;
(c) 在某個平牌某個系統上,app拉起后無響應或拉起后黑屏、花屏;
(d) 在某個平牌某個系統上,app無法順利卸載;
騰訊WeTest這個產品可以實現多款熱門機型的適配兼容測試。
(5) ? 弱網絡測試
App在使用的過程中,難免會遇到弱網絡環境,例如在公車上、在地鐵里。在這種情況下,常常會出現網絡抖動、上行或下行超時,導致應用中出現丟包。
作為一個測試人員,我們要對app在上線前做一定場景的弱網絡環境模型,并查看app在弱網絡環境下是否存在某些未知的問題。下面是我們常用的弱網絡環境場景:
(a) 3G弱網絡信號場景模擬;
(b) 市區低速移動場景模擬;
(c) 郊區高速移動場景模擬;
(d) 請求回應超時_上行超時場景模擬;
(e) 請求回應超時_下行超時場景模擬;
(f) 網絡抖動場景模擬;
這個工具也可以解決
(6) ? 耗電量測試
App在手機上的表現,除了功能外,app是否耗電,也是測試過程中重點要關注的一項。手機設備在滿電的時候,這個App能玩多久;App每小時的耗電是多少;App在某個場景掛機10分鐘耗電量是多少;這些都是我們平時在耗電量測試中比較關注的點。
(7) ? 協議測試
模擬客戶端直接發送協議包給服務器,看看服務器是否有一定的校驗,認不認客戶端發過來的數據。協議測試,主要是為了處理用戶發送惡意協議到服務器,騙過服務器的校驗。
(8) 安全測試
App在上線前,都需要做詳細的安全測試。安全測試主要為了檢測應用是否容易被外界破解;是否存在被惡意代碼注入的風險;上線后外掛的風險高不高等。
(9) 服務器性能測試
服務器性能測試,主要包含單機容量測試和24小時穩定性測試。單機容量測試,可以檢測到單機服務器在90%的響應時間和成功率都達標的前提下,能夠承載多少用戶量。使用特定游戲模型壓測24小時,服務無重啟,內存無泄漏,并且各事務成功率達標。
這個可以在WeTest入口預約。
(10) 服務器容災測試
服務器容災測試,主要指某個服務進程奔潰掉后,是否具有自行恢復能力。比如游戲邏輯進程消失后,是否會自動拉起;memcached崩潰時,是否會重新啟動,是否會對所有玩家有影響。這些都是app測試過程中需要考慮的因素。
(11) 中斷測試
針對智能終端應用的服務等級劃分方式及實時特性所提出的測試方法,如:App在前臺和后臺運行狀態時與來電、文件下載、音樂收聽等關鍵運用的交互情況測試等。測試電話,短信,彩信,微博或其他通知進來時app的反應。
(12) 上線后期的輿情跟蹤
新的app上線后,用戶對此應用的評價,存在哪些測試期間未察覺的Bug,論壇上對于該應用熱門的帖子有哪些,應用商店中該應用的口碑如何等,都是app在上線后,測試人員需要關注的點。若需要測試期間未發現的Bug,需要新測試服進行確認并根據該問題的修復。
?很高興看到騰訊在研發生產資料,而不是產品,好的企業應該積累出自己的工具鏈,并造福生態圈!最后祝大家都能把手下的app測試工作做好!
文章題目:app服務器安全怎么測試 app服務器被攻擊怎么辦
文章來源:http://m.newbst.com/article40/dogpoeo.html
成都網站建設公司_創新互聯,為您提供定制開發、全網營銷推廣、外貿網站建設、網站營銷、企業網站制作、品牌網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯