◆李鵬超 楊 鵬
(重慶警察學(xué)院信息安全系 重慶 401331)
基于Android手機(jī)的音頻文件取證技術(shù)研究
◆李鵬超 楊 鵬
(重慶警察學(xué)院信息安全系 重慶 401331)
近年來隨著手機(jī)智能化程度的不斷提高,手機(jī)在人們?nèi)粘I钪兴鸬降淖饔糜油癸@。在偵查人員辦理與智能手機(jī)相關(guān)的違法犯罪案件中,通常會(huì)發(fā)現(xiàn)手機(jī)中存儲(chǔ)了大量有價(jià)值的用戶信息,其中包括與犯罪相關(guān)的通話記錄、圖像、音頻、視頻等信息。智能手機(jī)中存儲(chǔ)的各種類型音頻文件已經(jīng)成為一種普遍存在的信息,因此在手機(jī)取證工作中如何將種類繁多的音頻信息提取并恢復(fù)已經(jīng)成為手機(jī)取證領(lǐng)域研究的熱點(diǎn)內(nèi)容。本文通過在Android智能手機(jī)中音頻文件取證技術(shù)的研究,提出一種解決方案,該方案能成功恢復(fù)并通過轉(zhuǎn)碼的方式正常播放已被刪除的音頻數(shù)據(jù)。與傳統(tǒng)手機(jī)取證方法相比,此方案能夠在不影響信息提取精確度的前提下提高智能手機(jī)中被刪除音頻數(shù)據(jù)的恢復(fù)效率。
數(shù)據(jù)恢復(fù);轉(zhuǎn)碼;Android系統(tǒng);手機(jī)取證
隨著智能手機(jī)相關(guān)技術(shù)的不斷發(fā)展,智能手機(jī)的操作系統(tǒng)也已經(jīng)呈現(xiàn)出了多樣性,主流智能手機(jī)系統(tǒng)包括 Android、Windows、iOS等[1]。在眾多系統(tǒng)中,Android系統(tǒng)因其開源的特點(diǎn),倍受開發(fā)人員和用戶的喜愛,其在智能手機(jī)市場份額中已經(jīng)占據(jù)主導(dǎo)地位。根據(jù)知名數(shù)據(jù)研究公司 International Data Corporation(IDC)的最新調(diào)查表明[2],Android 系統(tǒng)手機(jī)已占全球智能手機(jī)市場近70%的份額,到 2019年市場占有率將上升至82.6%。隨著 Android系統(tǒng)手機(jī)用戶數(shù)量的爆發(fā)式增長,Android系統(tǒng)已經(jīng)成為移動(dòng)互聯(lián)網(wǎng)惡意程序攻擊的主要對(duì)象。根據(jù)相關(guān)調(diào)查顯示[3],2016年針對(duì)Android平臺(tái)開發(fā)的互聯(lián)網(wǎng)惡意攻擊程序,共有2,053,450個(gè),占99%以上,位居第一。在移動(dòng)互聯(lián)網(wǎng)惡意程序攻擊的背后隱藏著龐大的基于手機(jī)用戶的違法犯罪活動(dòng),已經(jīng)對(duì)社會(huì)造成嚴(yán)重的危害。為了有效打擊非法犯罪活動(dòng),存儲(chǔ)于手機(jī)中的電子數(shù)據(jù)已經(jīng)成為一種新的證據(jù)形式[4]。目前大多數(shù)基于手機(jī)的犯罪活動(dòng)在最終偵破過程中電子證據(jù)都起到了至關(guān)重要的作用[5]。但是,智能手機(jī)上存儲(chǔ)的電子數(shù)據(jù)因其脆弱性會(huì)給手機(jī)上電子證據(jù)的提取帶來困難。同時(shí),伴隨犯罪嫌疑人的反偵察意識(shí)和技術(shù)的不斷提高,犯罪嫌疑人會(huì)通過各種技術(shù)手段對(duì)智能手機(jī)上存儲(chǔ)的電子數(shù)據(jù),如短信、通話記錄、音頻、視頻等進(jìn)行刪除或銷毀。如何有效的將智能手機(jī)系統(tǒng)中已經(jīng)被破壞或銷毀的電子數(shù)據(jù)恢復(fù)已經(jīng)成為司法取證的關(guān)鍵,并直接影響案件能否成功偵破。
Android系統(tǒng)手機(jī)數(shù)據(jù)取證技術(shù)是通過技術(shù)手段獲取犯罪嫌疑人使用的Andriod系統(tǒng)手機(jī)中存儲(chǔ)的關(guān)鍵數(shù)據(jù)線索,包括存儲(chǔ)的短信、微信、QQ等已刪除但沒有被覆蓋的電子數(shù)據(jù)等內(nèi)容[6]。
近年來,由于智能手機(jī)可以安裝微信、QQ等通信工具為人們的生活和交流提供便利。根據(jù)中國2016年有關(guān)手機(jī)用戶日常行為調(diào)查報(bào)告顯示,手機(jī)用戶除了打電話、發(fā)信息等基本通訊功能的使用外, 手機(jī)軟件如,微信、QQ等應(yīng)用已經(jīng)成為絕大多數(shù)手機(jī)用戶打發(fā)碎片時(shí)間、獲取資訊、信息交互的主要渠道和日常行為。其中使用的手機(jī)通信軟件中應(yīng)用最多的為QQ和微信。這些通信軟件也逐漸被犯罪嫌疑人利用作為從事違法犯罪活動(dòng)的通訊或傳輸信息的工具。因此,在對(duì)違法犯罪案件證據(jù)提取的過程中,智能手機(jī)中保存的音頻文件,如通話錄音、手機(jī)錄音、微信語音、QQ語音等,已經(jīng)成為偵查人員重點(diǎn)關(guān)注的信息。但由于智能手機(jī)類型繁多且其中安裝的軟件種類各不相同,導(dǎo)致智能手機(jī)中存儲(chǔ)的語音文件類型多、存儲(chǔ)原理復(fù)雜,同時(shí)由于智能手機(jī)犯罪的隱蔽性和部分犯罪嫌疑人具有很強(qiáng)的反偵察意識(shí),會(huì)利用刪除、刷機(jī)、格式化、破壞手機(jī)硬件等手段銷毀證據(jù)。因此,直接針對(duì)智能手機(jī)中音頻文件的取證已經(jīng)變得非常困難,在很大程度給司法機(jī)關(guān)偵破與之相關(guān)的違法犯罪案件帶來了障礙。因此,研究一套針對(duì)Android智能手機(jī)中存儲(chǔ)的各類音頻文件的檢測、判別、提取、恢復(fù)的方案已經(jīng)成為一項(xiàng)迫在眉睫的工作。
目前市面上已經(jīng)出現(xiàn)了較多帶有音頻文件恢復(fù)功能的智能手機(jī)取證工具,可以恢復(fù)文本、圖片、視頻、音頻等數(shù)據(jù)。其不足在于這些智能手機(jī)取證軟件應(yīng)用范圍局限性很大,受到手機(jī)品牌、型號(hào)、存儲(chǔ)原理、文件類型、丟失原因等限制,很可能找不到丟失的有效音頻數(shù)據(jù)或無法對(duì)音頻信息進(jìn)行恢復(fù)。同時(shí),這些手機(jī)取證工具還會(huì)因?yàn)橐纛l文件格式不兼容等問題遇到“不支持QQ、微信語音文件播放”的問題。因此,常規(guī)手機(jī)取證工具可在一定程度上協(xié)助調(diào)取音頻文件,但不能作為主要音頻文件取證手段。本文為解決Android智能手機(jī)中音頻文件信息快速、準(zhǔn)確恢復(fù)和播放問題,提出一種全新的技術(shù)解決方案,通過從手機(jī)數(shù)據(jù)底層著手分析,解決有效音頻數(shù)據(jù)的查找、恢復(fù)和音頻文件解碼播放(QQ、微信語音播放)等問題。本設(shè)計(jì)方案可以不受反偵察手段、手機(jī)品牌及音頻格式等限制,實(shí)現(xiàn)快速、現(xiàn)場對(duì)Android手機(jī)中存儲(chǔ)的音頻文件進(jìn)行取證。
在對(duì)Android智能手機(jī)中的音頻文件進(jìn)行取證時(shí),首先要分析音頻幀類型和結(jié)構(gòu),計(jì)算音頻幀數(shù)量(由音頻文件大小和幀大小決定),以判斷儲(chǔ)存在Android智能手機(jī)中的音頻數(shù)據(jù)是否有效(沒有被破壞或覆蓋)、是否值得恢復(fù)、是否可恢復(fù)。音頻幀結(jié)構(gòu)一般包括四個(gè)部分:幀頭、錯(cuò)誤校驗(yàn)、音頻信息和輔助數(shù)據(jù)[7]。不同音頻格式,音頻幀結(jié)構(gòu)不同,具體的音頻幀大小計(jì)算方法也各不同。判斷與計(jì)算的前提是要確定音頻類型,當(dāng)前Android智能手機(jī)音頻文件格式主要包括AMR、SILK、MIDI、MP3、AAC、WAV、W4A、WMA、OGG等。其中,以AMR和SILK文件格式為主。SILK來源于即時(shí)通訊軟件Skype,主要是指微信、QQ等聊天軟件中產(chǎn)生的音頻文件[8]。AMR主要是指手機(jī)錄音、通話錄音等手機(jī)自帶錄音功能產(chǎn)生的音頻文件,AMR稱為自適應(yīng)多速率語音編碼,主要用于移動(dòng)設(shè)備的音頻,壓縮比比較大,相對(duì)其他的壓縮格式質(zhì)量比較差,因此多用于人聲通話[7]。音頻文件由文件頭和數(shù)據(jù)幀組成,文件頭標(biāo)識(shí)占6個(gè)字節(jié),后面緊跟著就是音頻幀,通過文件頭中的信息可以確定音頻文件的類型和數(shù)據(jù)幀的大小,按照音頻文件的結(jié)構(gòu)特征對(duì)文件進(jìn)行提取。
在成功檢測并判別出有效音頻數(shù)據(jù)幀后,再對(duì)音頻文件進(jìn)行恢復(fù)。Android手機(jī)中音頻數(shù)據(jù)的恢復(fù)關(guān)鍵是提取手機(jī)存儲(chǔ)器中未被覆寫的數(shù)據(jù)并進(jìn)行對(duì)應(yīng)的還原。
Android智能手機(jī)在存儲(chǔ)文件時(shí)除文件內(nèi)容外,還將文件名、創(chuàng)建時(shí)間、長度等相關(guān)數(shù)據(jù)進(jìn)行存儲(chǔ),在存儲(chǔ)過程中創(chuàng)建鏈表,對(duì)存儲(chǔ)文件需要占用的空間進(jìn)行標(biāo)記。這樣有利于其文件系統(tǒng)的識(shí)別并顯示出哪個(gè)區(qū)域已存儲(chǔ)了文件。當(dāng)對(duì)Android智能手機(jī)中的某個(gè)音頻數(shù)據(jù)文件進(jìn)行刪除操作時(shí),手機(jī)閃存中的數(shù)據(jù)不會(huì)改變,而只是將該文件相關(guān)數(shù)據(jù)狀態(tài)標(biāo)記為已刪除狀況。若要進(jìn)行徹底刪除時(shí),才將手機(jī)存儲(chǔ)器中的存儲(chǔ)位置擦涂成空白狀態(tài)(全0或全1),用于后續(xù)新數(shù)據(jù)的存儲(chǔ)。在對(duì)音頻文件進(jìn)行恢復(fù)時(shí),首先要了解音頻文件的存儲(chǔ)格式,音頻格式即保存在智能終端中音頻文件存放的格式。上文中提到音頻文件種類繁多,不同的音頻文件由于推出廠家、研發(fā)技術(shù)的不同,各有差異,文件結(jié)構(gòu)也各不相同。在對(duì)不同類型音頻文件進(jìn)行恢復(fù)時(shí)需要結(jié)合音頻文件的具體類型正確對(duì)相關(guān)文件進(jìn)行檢測和恢復(fù)。雖然音頻文件種類繁多,格式多樣,但是在進(jìn)行取證恢復(fù)時(shí)的原理基本一致。雖然不同格式的音頻文件以各自特定的編碼方式進(jìn)行編排,但是每類音頻文件的頭部信息具有其唯一性。Android系統(tǒng)就是通過音頻文件的頭部信息識(shí)別不同類型的音頻數(shù)據(jù)。本文利用音頻文件頭部信息的這一特性規(guī)律,完成對(duì)刪除音頻文件的恢復(fù)和取證。具體過程和原理如下:
首先,對(duì)取證對(duì)象作鏡像[8],利用相關(guān)軟件打開鏡像文件,并根據(jù)所要恢復(fù)的音頻信息頭文件的特征標(biāo)識(shí),如SILK音頻文件的頭部標(biāo)識(shí)SILK_V3進(jìn)行全面搜素,以確定要恢復(fù)的音頻文件在磁盤中的準(zhǔn)確位置。
然后,結(jié)合該類音頻文件的結(jié)構(gòu)和文件頭部標(biāo)識(shí)進(jìn)行分析,尋找出文件被刪除時(shí)出現(xiàn)異常的位置及異常的類型。
最后,對(duì)文件的異常進(jìn)行修復(fù),恢復(fù)文件的完整性使得音頻文件恢復(fù)可用性和可讀性。
因此,本方案就是利用不同類型音頻文件所具有的特定頭部特征碼,對(duì)音頻文件以十六進(jìn)制的形式進(jìn)行深入分析,能夠比較高效地檢測到被破壞或刪除的音頻文件位置,并進(jìn)行分析、修改和恢復(fù)。
對(duì)于常規(guī)音頻文件數(shù)據(jù)恢復(fù)工具和數(shù)據(jù)恢復(fù)方法而言,要實(shí)現(xiàn)音頻文件的檢索、提取和恢復(fù)并不難,真正的難點(diǎn)在于如何將恢復(fù)后的音頻文件進(jìn)行正常播放,以達(dá)到音頻文件作為證據(jù)或線索的可用性之目的。上文中已經(jīng)提到手機(jī)音頻文件格式主要包括AMR、SILK、MIDI、MP3、WAV等類型,不同品牌、不同操作系統(tǒng)、不同版本的手機(jī)可能使用不同的音頻格式。比如微信及QQ的音頻格式文件類型為SILK。其實(shí),在用戶直接獲取的微信的語音文件是以.AMR為后綴的文件,但其本身并不是真正的AMR類型文件,如果直接將其用以播放AMR類型的播放器不能對(duì)音頻文件正常播放 ,它其實(shí)是SILK_ V3格式。 對(duì)于常見的音頻文件格式如,MIDI、WAV等其他格式的音頻文件能通過暴風(fēng)影音等任意第三方工具播放,但對(duì)于SILK類型的音頻文件則失效,必須將SILK文件進(jìn)行轉(zhuǎn)碼[9]。而SILK音頻文件解碼就是音頻文件取證的最大難點(diǎn)。本文提出的手機(jī)音頻文件提取技術(shù)方案中使用了基于Skype官方提供的SDK設(shè)計(jì)一種基于SILK的音頻文件編解碼算法,可將SILK音頻文件直接解碼成MP3格式,在手機(jī)或電腦上(微軟Windows Media Player)直接播放。SILk的音頻文件編解碼算法原理:
首先,將恢復(fù)后的SILK源文件解碼為PCM類型的音頻文件,PCM格式的音頻數(shù)據(jù)是最原始音頻數(shù)據(jù),可以被聲卡直接識(shí)別并接收。
然后,將PCM格式的音頻文件轉(zhuǎn)碼成MP3格式。將所提取和恢復(fù)的音頻文件進(jìn)行編碼轉(zhuǎn)碼成 MP3格式后,取證人員就可在現(xiàn)場直接提取并正常播放被刪除的 QQ、微信等語音文件,提升取證效率。
與常規(guī)數(shù)據(jù)恢復(fù)手段相比,本文所提出的手機(jī)音頻文件取證技術(shù)方案優(yōu)點(diǎn)在于通過判斷音頻文件格式和類型準(zhǔn)確、快速地找到智能手機(jī)中的已經(jīng)被刪除的音頻文件位置,并根據(jù)格式解析音頻文件結(jié)構(gòu)和頭部的特征碼分析出音頻文件出現(xiàn)異常的原因,對(duì)音頻文件加以恢復(fù),最后通過相應(yīng)的音頻解碼算法將音頻文件組合為手機(jī)或電腦直接可播放的形式,幫助取證人員快速獲取Android智能手機(jī)中的存儲(chǔ)的音頻電子證據(jù)。
但是,由于犯罪嫌疑人出于反偵察或節(jié)省流量等方面原因考慮,會(huì)對(duì)于一些即時(shí)通信的語音文件或即時(shí)通信錄音數(shù)據(jù)做一定的壓縮再進(jìn)行存儲(chǔ),如果這樣的文件被刪除后,因?yàn)闊o法正確查找到其特征碼而給取證帶來極大的困難。
另外,如果音頻文件是按順序存儲(chǔ)在手機(jī)存儲(chǔ)器中同一區(qū)域,那么這類音頻文件很容易被取證。例如兩個(gè)連續(xù)存儲(chǔ)的音頻文件在物理地址上是連貫存儲(chǔ)的且中間數(shù)據(jù)沒有隔斷,在對(duì)手機(jī)音頻文件恢復(fù)時(shí)只需判斷出視頻文件大小,再將數(shù)據(jù)文件內(nèi)容提取出就可以將整個(gè)音頻文件進(jìn)行恢復(fù)。如果需要取證的犯罪嫌疑人的Android手機(jī)使用了比較長的時(shí)間,其存儲(chǔ)器的可用存儲(chǔ)空間比較少時(shí),這些音頻文件就會(huì)被存儲(chǔ)在不同區(qū)域,缺少數(shù)據(jù)與文件之間的關(guān)聯(lián)性,取證時(shí)需要把很多文件碎片拼湊成完整的音頻文件就會(huì)變得相當(dāng)困難,這也為音頻文件取證工作帶了挑戰(zhàn)。
[1] Wikipedia.Smartphone[EB/OL].https://en.wikipedia.org/wiki/Smartphone.
[2] Android and iOS Squeeze the Competition, Swelling to 96.3% of the Smartphone Operating System Market for Both 4Q14 and CY14,According to IDC[EB/OL].http://www.idc.com/getdoc.jsp?container Id=pr US25450615.
[3] 劉洪偉,戴芬,李璐.Android手機(jī)手工恢復(fù)文件方法研究[J].信息通信,2016.
[4] 陳浩.Android手機(jī)的 SQLite數(shù)據(jù)恢復(fù)技術(shù)研究[D].浙江:杭州電子科技大學(xué),2016.
[5] 楊衛(wèi)軍.Android手機(jī)短信獲取與恢復(fù)方法[J].警察技術(shù),2013.
[6] 危蓉,麥永浩.基于winhex手機(jī)圖片信息的取證與技術(shù)[J].信息安全研究,2016.
[7] 張瑜.音頻文件格式的轉(zhuǎn)換研究與實(shí)現(xiàn)[J].微型電腦應(yīng)用,2008.
[8] 方冬蓉.基于 Android手機(jī)的數(shù)據(jù)恢復(fù)方法研究及應(yīng)用[D].甘肅:蘭州理工大學(xué),2014.
[9] 童文.基于安卓的樂音識(shí)別及 MIDI文件輸出的研究和實(shí)現(xiàn)[D].北京:中國科技大學(xué),2013.
本論文由重慶警察學(xué)院院級(jí)科研課題資助。