- Python數字取證
- Python數字取證 - 首頁
- 介紹
- Python入門
- 工件報告
- 移動裝置取證
- 調查嵌入式元資料
- 網路取證-I
- 網路取證-II
- 使用電子郵件進行調查
- Windows中重要的工件-I
- Windows中重要的工件-II
- Windows中重要的工件-III
- 基於日誌的工件調查
- Python數字取證資源
- 快速指南
- Python數字取證 - 資源
- Python數字取證 - 討論
工件報告
既然您已經熟悉了在本地系統上安裝和執行Python命令,那麼讓我們詳細瞭解取證的概念。本章將解釋在處理Python數字取證中的工件時涉及的各種概念。
報告建立的必要性
數字取證過程包括報告作為第三階段。這是數字取證過程中最重要的部分之一。由於以下原因,建立報告是必要的:
它是數字取證檢查人員概述調查過程及其發現的文件。
其他檢查人員可以參考一份好的數字取證報告,透過給定的相同儲存庫獲得相同的結果。
這是一份技術和科學文件,包含在數字證據的1和0中發現的事實。
報告建立的一般指南
報告的編寫是為了向讀者提供資訊,並且必須以堅實的基礎開始。如果在沒有一些一般指南或標準的情況下準備報告,調查人員可能會難以有效地呈現他們的發現。以下是一些在建立數字取證報告時必須遵循的一般指南:
摘要 - 報告必須包含資訊的簡要摘要,以便讀者能夠確定報告的目的。
使用的工具 - 我們必須提到用於執行數字取證過程的工具,包括它們的用途。
儲存庫 - 假設,我們調查了某人的電腦,然後是證據的摘要和相關材料(如電子郵件、內部搜尋歷史等)的分析,那麼它們必須包含在報告中,以便清楚地呈現案件。
對律師的建議 - 報告必須包含對律師的建議,以便根據報告中的發現繼續或停止調查。
建立不同型別的報告
在上一節中,我們瞭解了報告在數字取證中的重要性以及建立報告的指南。下面討論了在Python中建立不同型別報告的一些格式:
CSV報告
CSV電子表格報告是最常見的報告輸出格式之一。您可以使用以下所示的Python程式碼建立CSV以建立已處理資料的報告:
首先,匯入用於寫入電子表格的有用庫:
from __future__ import print_function import csv import os import sys
現在,呼叫以下方法:
Write_csv(TEST_DATA_LIST, ["Name", "Age", "City", "Job description"], os.getcwd())
我們使用以下全域性變數來表示示例資料型別:
TEST_DATA_LIST = [["Ram", 32, Bhopal, Manager], ["Raman", 42, Indore, Engg.], ["Mohan", 25, Chandigarh, HR], ["Parkash", 45, Delhi, IT]]
接下來,讓我們定義方法以進行進一步的操作。我們以“w”模式開啟檔案,並將newline關鍵字引數設定為空字串。
def Write_csv(data, header, output_directory, name = None):
if name is None:
name = "report1.csv"
print("[+] Writing {} to {}".format(name, output_directory))
with open(os.path.join(output_directory, name), "w", newline = "") as \ csvfile:
writer = csv.writer(csvfile)
writer.writerow(header)
writer.writerow(data)
如果執行上述指令碼,您將在report1.csv檔案中獲得以下儲存的詳細資訊。
| 姓名 | 年齡 | 城市 | 職位 |
|---|---|---|---|
| 拉姆 | 32 | 博帕爾 | 經理 |
| 拉曼 | 42 | 因多爾 | 工程師 |
| 莫漢 | 25 | 昌迪加爾 | 人力資源 |
| 帕卡什 | 45 | 德里 | IT |
Excel報告
另一種常見的報告輸出格式是Excel(.xlsx)電子表格報告。我們可以使用Excel建立表格並繪製圖形。我們可以使用以下所示的Python程式碼以Excel格式建立已處理資料的報告:
首先,匯入XlsxWriter模組以建立電子表格:
import xlsxwriter
現在,建立一個工作簿物件。為此,我們需要使用Workbook()建構函式。
workbook = xlsxwriter.Workbook('report2.xlsx')
現在,使用add_worksheet()模組建立一個新的工作表。
worksheet = workbook.add_worksheet()
接下來,將以下資料寫入工作表:
report2 = (['Ram', 32, ‘Bhopal’],['Mohan',25, ‘Chandigarh’] ,['Parkash',45, ‘Delhi’]) row = 0 col = 0
您可以遍歷此資料並按如下方式寫入:
for item, cost in (a): worksheet.write(row, col, item) worksheet.write(row, col+1, cost) row + = 1
現在,讓我們使用close()方法關閉此Excel檔案。
workbook.close()
上述指令碼將建立一個名為report2.xlsx的Excel檔案,其中包含以下資料:
| 拉姆 | 32 | 博帕爾 |
| 莫漢 | 25 | 昌迪加爾 |
| 帕卡什 | 45 | 德里 |
調查採集媒體
對於調查人員來說,擁有詳細的調查筆記以準確回憶發現或將所有調查片段整合在一起非常重要。螢幕截圖對於跟蹤特定調查所採取的步驟非常有用。藉助以下Python程式碼,我們可以擷取螢幕截圖並將其儲存到硬碟上以備將來使用。
首先,使用以下命令安裝名為pyscreenshot的Python模組:
Pip install pyscreenshot
現在,匯入必要的模組,如下所示:
import pyscreenshot as ImageGrab
使用以下程式碼行獲取螢幕截圖:
image = ImageGrab.grab()
使用以下程式碼行將螢幕截圖儲存到給定位置:
image.save('d:/image123.png')
現在,如果您想將螢幕截圖作為圖形彈出,可以使用以下Python程式碼:
import numpy as np import matplotlib.pyplot as plt import pyscreenshot as ImageGrab imageg = ImageGrab.grab() plt.imshow(image, cmap='gray', interpolation='bilinear') plt.show()