IOS越獄惡意軟件:WiFi破解大師
Xcode事件把IOS系統(tǒng)終端安全再次推向了風(fēng)口浪尖,AppStore已然如此那作為越獄系統(tǒng)應(yīng)用商店的Cydia中的APP又會(huì)是如何呢?太極越獄重大安全后門暫且按下不表,此次以越獄應(yīng)用“WiFi破解大師”為例進(jìn)行分析。
應(yīng)用簡(jiǎn)介
“WiFi破解大師”是一個(gè)查看wifi密碼小工具,自己連上某個(gè)wifi,朋友第一次來不知道密碼怎么辦?通過wifi密碼查看功能來查看當(dāng)前連接的wifi密碼是什么吧,讓朋友也能一起上網(wǎng)。(摘自BigBoss源應(yīng)用簡(jiǎn)介)。
異常
近日查看路由器的攔截日志(自制路由器)發(fā)現(xiàn)“WiFiPoJieDaShi”有數(shù)據(jù)上傳行為,于是乎抓包看下:
APP向服務(wù)端發(fā)包
泄露信息:用戶外網(wǎng)IP,所屬省份及城市
服務(wù)端頁面
明明是個(gè)WiFI密碼查看應(yīng)用可偏偏向服務(wù)端回傳用戶的WiFi連接信息,這是絕不能忍的!
逆向越獄應(yīng)用
工具簡(jiǎn)介:
class-dump顧名思義是用來dump目標(biāo)class信息的工具,它利用的是OC的runtime特性將存儲(chǔ)在Mach-O文件中的@protocol & @interface提取出來并生成.h文件。
class-dump相對(duì)于其它逆向工具的優(yōu)勢(shì)就在于它能導(dǎo)出任意程序的@interface信息,并整理成開發(fā)者常用的閱讀方式。
利用class-dump導(dǎo)出頭文件列表如下(部分):
經(jīng)排查發(fā)現(xiàn)可疑文件: DMNetwork.h
#import "NSObject.h"@class NSDictionary, NSString; __attribute__((visibility("hidden")))@interface DMNetwork : NSObject{ struct __WiFiNetwork *_network; NSString *_SSID; NSString *_encryptionModel; NSString *_BSSID; NSString *_username; NSString *_password; NSString *_vendor; NSDictionary *_record; float _RSSI; int _channel; int _APMode; int _bars; BOOL _isAppleHotspot; BOOL _isCurrentNetwork; BOOL _isAdHoc; BOOL _isHidden; BOOL _isAssociating; BOOL _requiresUsername; BOOL _requiresPassword; BOOL _isAdhoc;}@property(readonly, nonatomic) struct __WiFiNetwork *_networkRef; @property(nonatomic) BOOL requiresPassword; @property(nonatomic) BOOL requiresUsername; @property(nonatomic) BOOL isAssociating; @property(nonatomic) BOOL isHidden; @property(nonatomic) BOOL isAdHoc; @property(nonatomic) BOOL isCurrentNetwork; @property(nonatomic) BOOL isAppleHotspot; @property(nonatomic) int bars; @property(nonatomic) int APMode; @property(nonatomic) int channel; @property(copy, nonatomic) NSDictionary *record; @property(copy, nonatomic) NSString *vendor; @property(copy, nonatomic) NSString *password; @property(copy, nonatomic) NSString *username; @property(copy, nonatomic) NSString *BSSID; @property(copy, nonatomic) NSString *encryptionModel; @property(nonatomic) float RSSI; @property(copy, nonatomic) NSString *SSID; - (void)populateData;- (id)description;- (void)dealloc;- (id)initWithNetwork:(struct __WiFiNetwork *)arg1;@end
從這段代碼可以看出該惡意軟件收集了:SSID,加密模式,BSSID,用戶名,密碼,WiFi信道,AP模式,是否蘋果熱點(diǎn),是否當(dāng)前網(wǎng)絡(luò),是否隱藏等等…
APP分析小結(jié)
至此已經(jīng)還原并證實(shí)了惡意軟件收集用戶WiFi信息的過程及方法,那我們開始“文明”溯源(不對(duì)服務(wù)端進(jìn)行攻擊),看看作者到底是誰。
情報(bào)分析
作者的警惕性還是很高的,簡(jiǎn)單聊了一會(huì)發(fā)現(xiàn)作者對(duì)WiFi破解大師一直避而不談。
危害
由于“文明”溯源的原因未對(duì)服務(wù)端進(jìn)行測(cè)試,不過從APP獲取信息的方式,手法及下載量上來看服務(wù)端數(shù)據(jù)庫(kù)應(yīng)該存儲(chǔ)著容量相當(dāng)可觀的數(shù)據(jù)量,一旦這些信息被惡意利用將會(huì)造成一定的安全隱患,試想:
場(chǎng)景一:
企業(yè)對(duì)DMZ區(qū)、員工終端及網(wǎng)絡(luò)邊界做了很好的安全防御,可一旦員工安裝了該軟件便相當(dāng)于給攻擊者敞開了一扇直搗黃龍的大門(類似京東園區(qū)wifi滲透)。
場(chǎng)景二:
該軟件搜集用戶的外網(wǎng)IP及位置信息,一旦用戶的寬帶接入設(shè)備或路由器存在漏洞將會(huì)給用戶帶來嚴(yán)重的安全隱患。
場(chǎng)景三:
這些WiFi密碼也是極具價(jià)值的“社工”信息。
結(jié)論
本次分析僅淺嘗輒止,以證明WiFi破解大師存在惡意收集用戶信息的行為,建議使用IOS系統(tǒng)的用戶如非必需盡量不要越獄設(shè)備,一旦越獄請(qǐng)謹(jǐn)慎安裝插件,研究人員可使用測(cè)試機(jī)進(jìn)行測(cè)試以避免信息泄露。