USB Forensic (Part 1)
Ở phần này chúng ta sẽ đi tìm hiểu một phần nữa trong Window Forensic liên quan tới thiết bị ngoại vi và cụ thể là USB device. Trong thời đại Internet ngày nay thì các sự cố an toàn thông tin liên quan tới các USB device có lẽ không chiếm phần lớn các vụ việc nhưng đâu đó vẫn là một mối nguy và vì vậy đối với người điều tra cũng cần phải có những kiến thức để chuẩn bị đối phó với những sự cố có thể xảy ra.
Với thiết bị USB có thể chia làm ba class chính được sử dụng trên hệ điều hành Window, đó là MSC, PTP và MTP. Trong đó mình sẽ tập chung vào MSC (Mass Storage Class) vì nó rất phổ biến hiện nay và cũng là loại mà đa phần các sự cố có liên quan tới USB device, hơn nữa dựa vào thiết bị MSC nên có thể cung cấp khá nhiều thông tin cho người điều tra.
Đối với người điều tra những thông tin cần thiết có thể kể đến như Serial Number của thiết bị, thời gian thiết bị kết nối với máy tính lần đầu tiên, lần gần nhất và cả user nào đã sử dụng thiết bị đó trên máy tính nữa,…
Trước khi đi vào điều tra một thứ gì đó, mình sẽ trình bày một số đặc điểm của 3 loại của USB device đó là MSC, PTP, MTP.
1. MSC
Ví dụ về các thiết bị dạng này là ổ đĩa rời hay những chiếc USB của bạn và nó cũng là phần chính mà mình sẽ trình bày trong bài này. Chẳng hạn như với ổ cứng ngoài với drive letter “E:” như hình dưới:
Mass Storage Class – MSC là một giao thức truyền tải giữa máy tính và thiết bị USB, cho phép mounting vùng lưu trữ của thiết bị và truy cập trực tiếp vào các vùng dữ liệu này để đọc, ghi vì vậy bạn có thể dễ dàng xem được cấu trúc hệ thống tệp bên trong. Microsoft Windows đã hỗ trợ MSC kể từ Windows 2000 (https://en.wikipedia.org/wiki/USB_mass_storage_device_class).
Với Windows 10 trở nên hiện này thì với các thiết bị như ổ cứng hay USB sẽ được thấy trong Windows Explorer dưới nhãn Devices and drives, nhưng với một số bản Windows cũ hơn như Windows 7 hay XP bạn có thể sẽ thấy với nhãn Devices with Removable Storage.
2. PTP
PTP (Picture Transfer Protocol) là cũng là một giao thức được phát triển bởi International Imaging Industry Association cho phép truyền hình ảnh từ máy ảnh kỹ thuật số sang máy tính và các thiết bị ngoại vi khác mà không cần thêm device drivers. Giao thức này chỉ truyền hình ảnh, video và metadata liên quan đến chúng nhưng không hỗ trợ để chuyển các loại tệp khác như tài liệu.
Và một đặc điểm nữa là PTP chỉ cho phép truyền một chiều, chỉ có thể tải và sao chép tập tin từ thiết bị sang máy tính và không cho phép tải/sao chép tập tin vào thiết bị đó. Một vấn đề quan trọng nữa nữa là sẽ không thể thấy cấu trúc filesystem cơ bản cho các thiết bị này. ( bạn có thể đọc thêm tại đây https://en.wikipedia.org/wiki/Picture_Transfer_Protocol)
Với Windows XP, Microsoft triển khai PTP trên Windows thông qua Windows Image Acquisition. Khi một thiết bị USB được gắn vào máy tính và được phân loại là PTP, thiết bị này xuất hiện trong Windows Explorer dưới phần Scanners and Cameras.
Đối mới windows 7 trở lên, Windows Portable Devices (WPD) cho phép máy tính giao tiếp với các thiết bị lưu trữ và media. WPD cung cấp một cách linh hoạt, mạnh mẽ để máy tính giao tiếp với máy nghe nhạc, thiết bị lưu trữ, điện thoại di động, máy ảnh và nhiều loại thiết bị được kết nối khác. Hệ thống này thay thế cả Windows Media Device Manager và Windows Image Acquisition.
Các ứng dụng được xây dựng trên WPD có thể explore thiết bị, gửi và nhận nội dung, thậm chí điều khiển thiết bị, chẳng hạn như chụp ảnh hoặc gửi tin nhắn văn bản. Hệ thống được thiết kế linh hoạt để có thể explore nhiều loại thiết bị và có thể mở rộng để các driver developers có thể tùy chỉnh properties và command cho các thiết bị.
3. MTP
Media Transfer Protocol – MTP là một cải tiến so với PTP ở chỗ nó hỗ trợ nhiều loại tệp khác nhau, nó không chỉ giới hạn ở các tệp media. Với MTP thì bất kỳ loại tệp nào cũng có thể được chuyển đến và từ các thiết bị hỗ trợ MTP trong khi PTP chỉ cho phép tải xuống từ thiết bị.
Với MTP, quyền truy cập đọc và ghi vào các phân vùng có thể được chia sẻ giữa máy tính và thiết bị. Việc kết nối thiết bị diễn ra ở mức logic, vì vậy bạn cũng sẽ không thể nhìn thấy cấu trúc hệ thống tệp bên dưới.
Trong Windows, các loại thiết bị này được xử lý bởi Windows Portable Devices (WPD) và nó hiện trong explorer dưới nhãn Portable Devices. (Giao thức này thường được sử dụng trên các thiết bị điện thoại di động hệ điều hành Android từ bản androi 4.0 trở đi). Các thiết bị kết nối bằng giao thức này cũng cần quan tâm trong điều tra số.
4. Điều gì xảy ra khi mở tập tin trên USB device
Mỗi giao thức có sự khác biệt và khi mở một file trên thiết bị đó, điều gì sẽ xảy ra. Mình sẽ bắt đầu với các thiết bị sử dụng giao thức MSC. Các dấu hiệu tạo ra trong quá trình mở file cũng tùy vào từng phần mềm được sử dụng để mở chúng chẳng hạn như word, excel hay paint, …
Thử mở một số tệp trên thiết bị MSC, ví dụ như mình có một USB chứa những tập tin và được gắn vào máy tính với Driver letter “F” như hình dưới:
Các file này nằm trong một folder “Test folder”. Mở trực tiếp các tệp trong thư mục Test Folder và xem điều gì sẽ xảy ra. Sau đó vào thư mục C:\Users\[Username]\AppData\Roaming \Microsoft\Windows\Recent bạn sẽ thấy những tệp LNK khá thú vị như hình dưới:
Lý giải cho điều này, khi bạn mở các tệp trong thiết bị USB MSC, các tệp LNK của các tệp và thư mục chứa các tệp đã được mở đó sẽ được tạo ra và lưu tại C:\Users\[Username]\AppData\Roaming\Microsoft\Windows\Recent, bạn cũng có thể thấy thư mục này vẫn còn lưu khá nhiều những tệp LNK tới các tệp mình đã mở trước đó. Và khi bạn xóa tệp gốc thì những tệp LNK này vẫn tồn tại trong thư mục Recent này, về góc nhìn của người điều tra thì đây có thể là một vị trí hữu ích để kiểm tra xem những tệp tin nào đã vừa được mở trên thiết bị của nạn nhân.
Riêng đối với các tệp tài liệu Microsoft Office khi được mở tử thiết bị cũng có sẽ tạo một tệp LNK cho các tệp đã mở và các tệp LNK nằm tại C:\Users\[Username]\\AppData\Roaming\Microsoft \Office\Recent:
Ngoài ra còn có một vị trí nữa cũng cho chúng ta thông tin liên quan, đó là trong thư mục C:\Users\[Username]\AppData\Roaming\Microsoft \Windows\Recent\AutomaticDestinations, thư mục này khác với trong thư mục Recent kia, tại đây sẽ xuất hiệt các tập tin JumpList. (Đây là một thư mục ẩn, bạn có thể truy cập thư mục này bằng cách nhập chính xác tên thư mục của nó, mình cũng có một phần trình bày ngắn về JumpList ở phần trước đó bạn có thể tham khảo tại đây ).
Đới với thiết bị MTP có khác một chút, khi mở tệp trên thiết bị dạng này sẽ tạo ra 2 tệp LNK của mỗi tệp (đối với Office), một tập tin LNK trỏ tới tập tin .doc, một tập tin LNK trở tới thư mục chứa tập tin .doc đó. Một điểm nữa là một số tệp LNK không trỏ trở lại thiết bị nguồn mà thay vào đó là thư mục trung gian, đó là WPDNSE (đối với windows 7-8), thư mục này chứa các bản sao hoàn chỉnh của hầu hết các tệp đã được mở, nhưng các bản sao này chỉ là tạm thời.
Kết thúc phần này, mình đã trình bày một số đặc điểm của một số class của thiết bị USB và khi mở tập tin documents trong thiết bị đó điều gì sẽ xảy ra, và ở phần này mình tập chung vào MCS. Phần sau mình sẽ tiếp tục phân tích về các hiện vật, bằng chứng khác để khai thác nhiều thông tin hơn liên quan đến các thiết bị USB đó.
Xin chào các bạn!
RE_Team