亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于編碼知識的關鍵字搜索在電子數(shù)據(jù)取證中的應用

        2020-02-14 05:58:28程琳
        計算機時代 2020年1期

        程琳

        摘 ?要: 隨著計算機技術和網(wǎng)絡技術的飛速發(fā)展,電子數(shù)據(jù)在證明案件事實、擴展偵查線索等方面起著越來越重要的作用。電子數(shù)據(jù)取證過程中,往往要對存儲介質(zhì)底層數(shù)據(jù)進行分析,而字符編碼分析、基于編碼知識的關鍵字搜索查詢則是其中的重要工作之一。本文結(jié)合常見編碼特點和文件系統(tǒng)存儲原理,從文件名搜索、文件內(nèi)容搜索、郵件內(nèi)容搜索三個方面對搜索方法進行分析總結(jié)?;诰幋a知識的關鍵字搜索能夠有效的解決電子數(shù)據(jù)取證工作中目標區(qū)域關鍵字的存在性問題,提高取證工作的效率。

        關鍵詞: 電子數(shù)據(jù)取證; 編碼知識; 文件名搜索; 文件內(nèi)容搜索; 郵件內(nèi)容搜索

        中圖分類號:TP391 ? ? ? ? ?文獻標識碼:A ? ?文章編號:1006-8228(2020)01-43-04

        Abstract: With the rapid development of computer technology and network technology, digital data plays an increasingly important role in proving the authenticity of cases and expanding investigation clues. The underlying data of storage medium often needs to be analyzed in the process of digital forensics, while character coding analysis and keyword search based on coding knowledge are one of the important things. Combining with the common coding characteristics and file system storage principle, this paper analyzes and summarizes the search methods from three aspects: file name search, file content search and mail content search. The coding knowledge based keyword search can effectively solve the problem of keyword existence in the target area of digital forensics and improve the efficiency of the digital forensics work.

        Key words: digital forensics; coding knowledge; file name search; file content search; email content search

        隨著信息技術的不斷發(fā)展和法律制度的不斷完善,電子數(shù)據(jù)取證在各類案件中的重要性日益凸顯[1]。電子數(shù)據(jù)取證與鑒定在司法實踐中的應用越來越多,涉及到的行業(yè)領域也越來越廣[2]。在電子數(shù)據(jù)取證過程中,結(jié)合取證工具,靈活運用相關知識,對取證介質(zhì)進行底層的數(shù)據(jù)分析具有非常重要的意義。

        編碼是不同國家的語言在計算機中的一種存儲和解釋規(guī)范。用戶可以在不知道編碼的原則及方法的情況下使用計算機,但對于電子數(shù)據(jù)取證從業(yè)人員來講,學習和掌握編碼知識是至關重要的,字符編碼、文件存儲原理等知識的不足有可能造成對電子數(shù)據(jù)分析不夠全面透徹,也有可能錯失一些線索。在電子數(shù)據(jù)取證過程中,關鍵字搜索查詢是一項重要的常規(guī)工作,只有理解和掌握相關知識,熟悉字符集的各項標準,理解大小端字節(jié)順序,理解文件系統(tǒng)存儲原理,確定正確的搜索和解析方案,才能從數(shù)據(jù)底層進行分析判斷,從而發(fā)現(xiàn)線索,解決相關問題。

        1 編碼基礎知識

        1.1 常見字符編碼

        ASCII碼即美國信息交換標準碼,是使用最廣泛的編碼之一,適用于所有的拉丁文字字母。ASCII碼可以表示128個字符,其中包括數(shù)字0-9、大小寫英文字母、標點符號、運算符和控制碼等。

        我國于1980年制定了國家標準GB2312-80《信息交換用漢字編碼字符集·基本集》。GB2312收錄了絕大部分常用漢字,得到了最廣泛的支持,但是它并不包含人名、古漢語等方面出現(xiàn)的罕用字。

        GBK是雙字節(jié)表示的漢字內(nèi)碼擴展規(guī)范,它的收錄范圍包括GB2312中的全部符號、BIG5中的全部漢字、與ISO 10646相對應的國家標準GB13000中的其它CJK漢字等。

        GB18030可以看成GBK的超集,它的收錄范圍擴展到國內(nèi)少數(shù)民族的文字、繁體漢字以及日韓漢字,編碼空間龐大。從ASCII、GB2312、GBK到GB18030,這些編碼方法是向下兼容的。

        Unicode是國際組織制定的字符編碼方案,能夠使計算機實現(xiàn)跨語言、跨平臺的文本轉(zhuǎn)換及處理。UTF-8是在互聯(lián)網(wǎng)上使用最廣泛的一種Unicode實現(xiàn)方式,它由Unicode編碼變形而來。Unicode對應UTF-8編碼方式如表1所示。

        1.2 郵件編碼

        早期的一些郵件傳輸協(xié)議不允許在郵件消息中使用ASCII碼字符集以外的字符。MIME(Multipurpose Internet Mail Extensions)擴展了電子郵件標準,使其能夠支持非ASCII字符文本、非文本格式的附件等多種格式的郵件消息。Base64與QP(Quoted-Printable)是兩種基本的MIME內(nèi)容傳輸編碼。

        Base64的原理是將一組連續(xù)的字節(jié)數(shù)據(jù)按6個bit位進行分組,每組數(shù)據(jù)用一個ASCII字符來表示。具體實現(xiàn)時使用64個ASCII字符來對應這64個數(shù)值,這64個ASCII字符為:

        ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/,這樣將二進制數(shù)據(jù)轉(zhuǎn)換成可打印的ASCII字符。

        QP編碼的原理與Base64不同,它對ASCII字符不進行轉(zhuǎn)換,只對非ASCII字符的數(shù)據(jù)進行編碼轉(zhuǎn)換,每個非ASCII字符的字節(jié)數(shù)據(jù),都被轉(zhuǎn)換成一個“=”號后跟這個字節(jié)的十六進制數(shù)據(jù)。

        1.3 字節(jié)順序

        字節(jié)順序是指內(nèi)存中字節(jié)的排列,操作系統(tǒng)并不負責指定字節(jié)順序,字節(jié)順序是基于CPU技術的[3]。通常有小端、大端兩種字節(jié)順序。在小端字節(jié)序中,高字節(jié)數(shù)據(jù)存放在內(nèi)存高地址處,低字節(jié)數(shù)據(jù)存放在內(nèi)存低地址處,而大端字節(jié)序正好相反。例如編碼“6C49”,對應的大端存儲順序為“6C49”,而小端存儲順序則是“496C”,大端和我們從左到右的習慣是一致的,小端則不同。在取證分析中要搞清楚數(shù)據(jù)是以什么樣的字節(jié)順序存儲的,讀取時要按照相應的字節(jié)順序讀取,這樣才能保證解析出來的數(shù)據(jù)準確無誤。

        2 文件名關鍵字搜索

        文件名關鍵字搜索是介質(zhì)取證中非常重要的一部分內(nèi)容,對于系統(tǒng)中不能正常顯示或打開的文件,以及徹底刪除的文件,在存儲介質(zhì)的底層數(shù)據(jù)中利用字符編碼知識及文件系統(tǒng)存儲原理查找文件名的存儲管理項目,從而找到文件的存儲位置,在沒有被新的數(shù)據(jù)覆蓋之前可以提取文件內(nèi)容。

        2.1 FAT32文件系統(tǒng)文件名搜索

        FAT32文件系統(tǒng)中,每個文件或目錄都分配有一個大小為32字節(jié)的短文件名目錄項,即文件目錄表FDT,用以描述文件或目錄的屬性。短文件名目錄項具體的記錄方式如圖1,它記錄著文件的文件名、擴展名、起始存儲單元、文件的屬性、文件的大小、創(chuàng)建時間等信息。

        短文件名目錄項的偏移0-7字節(jié)記錄文件的主文件名,8-A字節(jié)記錄文件的擴展名,取GBK碼值。主文件名與擴展名之間的“.”不予記錄,主文件名不足8個字符、擴展名不足3個字符均以空白字符20H填充。文件刪除后,短文件名目錄項0偏移處的值變?yōu)镋5H。

        當文件名超過8個字符,系統(tǒng)取前6個加上“~1”形成短文件名,擴展名不變,同時在短文件名目錄項的前方創(chuàng)建相對應的長文件名目錄項。長文件名目錄項采用Unicode編碼記錄完整的文件名。一個長文件名目錄項能記錄13個Unicode字符,若超過13個,系統(tǒng)會在此目錄項的前方再增加一個兩行的長文件名目錄項,如果還不夠則繼續(xù)增加,直到能夠存儲下文件的完整文件名為止。多個長文件名目錄項代表同一個文件,它們之間就會存在一個校驗和,通過這個校驗和,可以將其與對應的短文件名目錄項關聯(lián)起來[4]。長文件名記錄格式如圖2所示。

        2.1.1 短文件名關鍵字搜索方法

        根據(jù)短文件名目錄項存儲原理,短文件名在存儲時采用的是GBK編碼,如果文件名中含有英文字符,不論用戶設置的是大寫還是小寫,在短文件名目錄項中存儲的都是大寫,搜索時應先將短文件名中的英文字母轉(zhuǎn)化為大寫,再獲取短文件名的GBK編碼,文件已刪除則將第一個字節(jié)改為E5。例如硬盤上原來存儲有某公司的財務報表,對應名稱為“恒勝科技公司第一季度財務報表.xlsx”,已被刪除,可以采用短文件名搜索,短文件名存儲取前三個漢字,后面加上“~1”,同時英文字符轉(zhuǎn)化為大寫,即為“恒勝科~1.XLS”,刪除后文件目錄項首字節(jié)變?yōu)镋5H,因此在搜索時應將搜索條件設為“E5E3CAA4BFC67E31584C53”。根據(jù)此搜索條件找到已刪除文件的目錄項,同時結(jié)合文件分配表即可找到文件的存儲簇鏈,在此位置如果沒有寫入新的數(shù)據(jù),則可以提取被刪文件的內(nèi)容。

        2.1.2 長文件名關鍵字搜索方法

        根據(jù)長文件名目錄項的記錄規(guī)則,1個長文件名目錄項存儲13個文件名字符,并采用Unicode編碼[5]。需注意在長文件名目錄項的兩行數(shù)據(jù)中記錄的文件字符位置不完全連在一起。在搜索過程中,可以根據(jù)規(guī)則來構建長文件名目錄項。

        若有某公司四個季度的財務報表,名稱分別為“恒勝科技公司第一季度財務報表.xlsx、恒勝科技公司第二季度財務報表.xlsx、恒勝科技公司第三季度財務報表.xlsx、恒勝科技公司第四季度財務報表.xlsx”,四個文件已被刪除。欲搜索“恒勝科技公司第三季度財務報表.xlsx”,可采用如下策略進行長文件名搜索,首先獲取文件名的Unicode編碼“5260DC80D 17980626C51F8532C7B094E635BA65E228DA152A56268882E0078006C0073007800”,接著構建它的長文件名項目,將文件名的第1-5、6-11、12-13個字符的編碼復制到對應位置,文件若已刪除,第0字節(jié)改為E5,其余地方填充3F,最后搜索的十六進制數(shù)值為“E55260DC80D17980626C513F3F3FF8532C7B094E635BA65E228D3F3FA152A562”,3F在搜索時作為通配符出現(xiàn)。找到長文件名目錄之后,緊挨著的下方是短文件名目錄項,真正有價值的是短文件名目錄項中文件存儲的起始位置,同理,結(jié)合文件分配表可以提取文件數(shù)據(jù)內(nèi)容。

        以上搜索時需要注意的是,如果在不同目錄下存在同名文件,則要首先搜索父目錄的文件名,找到對應存儲簇號,再轉(zhuǎn)到相應的簇,在此簇中搜索已刪除的文件名。理解短文件名、長文件名所采用的編碼及存儲原理后,可以根據(jù)情況靈活設置搜索條件,找到所需要的數(shù)據(jù)。

        2.2 NTFS文件系統(tǒng)文件名搜索

        NTFS分區(qū)中設置了一個文件管理機構,即主控文件表MFT,所有的文件相關的信息都保存在MFT中。NTFS文件系統(tǒng)視每個文件為一個文件屬性的集合,文件名、文件大小、文件的父目錄、文件時間標記等都是文件的屬性。MFT是一個與文件相對應的文件屬性數(shù)據(jù)庫,它記錄了除文件數(shù)據(jù)信息以外的屬性,甚至當文件內(nèi)容很短時,其內(nèi)容直接在MFT的數(shù)據(jù)屬性中存放[6]。

        在NTFS文件系統(tǒng)定義的主要文件屬性中,30H屬性用于存儲文件名,80H屬性存儲文件數(shù)據(jù)相關信息。30H屬性結(jié)構如圖3所示。通過搜索文件名找到30H屬性位置,緊挨著下方可以找到80H屬性中的文件數(shù)據(jù)或數(shù)據(jù)存儲索引。

        例如搜索已經(jīng)刪除的文件“恒勝科技公司第三季度財務報表.xlsx”,可以先定位到$MFT的位置,再查找文件名對應的Unicode編碼“5260DC80D 17980626C51F8532C7B094E635BA65E228DA152A56268882E0078006C0073007800”,定位到要找的文件記錄位置,再通過其80H屬性找到數(shù)據(jù)運行,最后確定文件存儲的簇號索引。在搜尋一個文件記錄項的時候,除了判斷是否是合法的文件記錄項外,還要判斷搜尋的文件所處的文件夾位置是否正確??梢韵扔浵滤褜の募母改夸浢?,然后搜尋到父目錄的文件記錄項,記下MFT編號,再搜尋文件的MFT記錄項,查看30H屬性中父目錄的編號是否和記下的一致,如果一致則說明找到的文件正確。

        3 文件內(nèi)容搜索

        文件內(nèi)容搜索是存儲介質(zhì)目標區(qū)域取證的一項常規(guī)工作,很多時候我們需要搜索存儲介質(zhì)中底層的文件內(nèi)容,根據(jù)常用的編碼特點和相關知識可以構造一個查詢字典,以提高查詢的成功率。例如,我們需要查詢一個硬盤的文件內(nèi)容中是否存在關鍵字“望江西路559號”,可采用如下方法進行搜索:

        使用“望江西路559號”GBK編碼的16進制值:CDFBBDADCEF7C2B7353539BAC5;

        使用“望江西路559號”Unicode編碼的16進制值:671B6C5F897F8DEF00350035003953F7;

        使用“望江西路559號”UTF-8編碼的16進制值:E69C9BE6B19FE8A5BFE8B7AF353539E58FB7。

        數(shù)字和英文字符如果采用的是全角字符,則要采用以下編碼:

        使用“望江西路559號”GBK編碼的16進制值:CDFBBDADCEF7C2B7A3B5A3B5A3B9BAC5;

        使用“望江西路559號”Unicode編碼的16進制值:671B6C5F897F8DEFFF15FF15FF1953F7;

        使用“望江西路559號”UTF-8編碼的16進制值:E69C9BE6B19FE8A5BFE8B7AFEFBC95EFBC95EFBC99E58FB7。

        具體搜索過程中,字符編碼應靈活設置,同時考慮多種因素,如各種編碼特點、全半角字符、大小端字節(jié)序、空格等。

        4 郵件內(nèi)容搜索

        在Internet電子郵件標準MIME中,主要有兩種編碼方式:Base64與QP編碼。例如,我們需要查詢郵件中是否存在關鍵字“望江西路559號”,可將編碼分成常見的這兩類來查詢。

        4.1 Base64編碼

        Base64編碼原理是將3個8位字節(jié)的數(shù)據(jù)轉(zhuǎn)化為4個6位字節(jié)的數(shù)據(jù),如果8位字節(jié)數(shù)據(jù)的字節(jié)個數(shù)不能被3整除,在最后添加幾個為0的bit位來湊成6個bit位;如果編碼后文本的字符個數(shù)不是4的整數(shù)倍,則需在最后填充“=”字符來湊成4的倍數(shù)。

        將關鍵字“望江西路559號”轉(zhuǎn)換為GBK編碼,CDFBBDADCEF7C2B7353539BAC5,根據(jù)此GBK編碼我們可以生成三個特征編碼。若從開始部分到此關鍵字的字節(jié)數(shù)剛好為3的整數(shù)倍,將它轉(zhuǎn)換為編碼zfu9rc73wrc1NTm6xQ==,因為不知道關鍵字后面的字符,最后的Q有可能會參與下一個字節(jié)的編碼,所以我們?nèi)サ簟癚==”,最后采用的第一個特征編碼為:zfu9rc73wrc1NTm6x;若從開始部分到此關鍵字的字節(jié)數(shù)除以3余數(shù)為1時,“望”與前面的字符構成一組三字節(jié)并進行編碼,直接取“江西路559號”對應的Base64編碼va3O98K3NTU5usU=,同理取第二個特征編碼va3O98K3NTU5us;若從開始部分到此關鍵字的字節(jié)數(shù)除以3余數(shù)為2時,“望”的高位字節(jié)與前面的字符構成一組三字節(jié)并進行編碼,則使用第三個特征編碼+72tzvfCtzU1ObrF。

        4.2 QP編碼

        QP編碼原理相對簡單,對ASCII字符不進行轉(zhuǎn)換,非ASCII字符的字節(jié)數(shù)據(jù)轉(zhuǎn)換成“=”號后跟這個字節(jié)的十六進制數(shù)據(jù)。根據(jù)它的編碼原理,關鍵字“望江西路559號”使用GBK編碼轉(zhuǎn)換成QP編碼,為“=CD=FB=BD=AD=CE=F7=C2=B7559=BA=C5”,使用UTF-8編碼轉(zhuǎn)換成QP編碼,則是“=E6=9C=9B=E6=B1=9F=E8=A5=BF=E8=B7=AF559=E5=8F=B7”。

        5 結(jié)束語

        基于不同編碼方式的關鍵字搜索查詢是電子數(shù)據(jù)取證中底層數(shù)據(jù)分析的重要部分,不同的編碼方式、不同的存儲原理對應不同的搜索方法。本文在常見編碼特點和文件存儲原理的基礎上,對文件名搜索、文件內(nèi)容搜索、郵件內(nèi)容搜索進行了分析總結(jié),本文不可能分析所有編碼,而是為相應的搜索方法提供了思路。當有新的編碼方式,必須深入研究編碼方式和對應的存儲原理,找到對應的搜索方法,才能夠提高查詢的準確度和成功率。

        參考文獻(References):

        [1] 劉金波,郝萬里,麥永浩.電子數(shù)據(jù)取證的復雜度研究[J].計算機科學,2016.(B12):127-129

        [2] 金波,楊濤,吳松洋等. 電子數(shù)據(jù)取證與鑒定發(fā)展概述[J]. 中國司法鑒定,2016.1:62-74

        [3] 劉浩陽.字節(jié)順序在計算機取證中的應用[J].警察技術,2012.2:43-45

        [4] 劉偉.數(shù)據(jù)恢復技術深度揭秘(第二版)[M].北京:電子工業(yè)出版社,2016.

        [5] 黃步根,趙兵.關鍵詞搜索漏判研究[J].信息網(wǎng)絡安全,2013.4:70-71

        [6] 高洪濤,李孟林,趙璇元.基于NTFS文件系統(tǒng)的數(shù)據(jù)恢復編程技術[J].信息安全與技術,2015.6:33-36

        天天摸天天做天天爽天天舒服| 国语精品一区二区三区| 蜜臀av一区二区| 麻豆国产成人AV网| 国产精品毛片一区二区三区| 欧美性生交活xxxxxdddd| 国产精品久久毛片av大全日韩| 思思99热| 一区二区三区高清视频在线| 久久不见久久见免费视频6| 国产真实伦在线观看| 国产成人精品曰本亚洲| 日韩精品人妻一区二区三区蜜桃臀| 国产情侣一区二区| 丰满多毛的大隂户视频| 一区二区视频观看在线| 亚洲一区二区三区精品久久av | av色综合久久天堂av色综合在| 成人免费毛片内射美女-百度 | 久久精品国产熟女亚洲| 中文字幕在线观看亚洲日韩| 免费中文熟妇在线影片| 日韩午夜三级在线视频| 日本一区二区三区爆乳| 最近中文字幕视频高清| 在线a人片免费观看高清| 亚洲乱码一区二区av高潮偷拍的| 欧美人做人爱a全程免费| 911国产精品| 一区二区三区日本在线| 99re6在线视频精品免费| 日本乱人伦在线观看| 麻豆国产成人AV网| 亚洲中文字幕久久精品色老板| 色噜噜狠狠狠综合曰曰曰| 亚洲A∨无码国产精品久久网| 日韩日本国产一区二区| 手机看黄av免费网址| 久久国产精品无码一区二区三区| 日本中文字幕一区二区视频| 亚洲精品粉嫩美女一区|