Ở bài viết trước, tôi đã giới thiệu cách dump RAM ra thành tập tin .raw file và phân tích bằng Volatility để lấy mật khẩu của toàn bộ user trong Windows.

Bài 1: https://minhthuongeh.wordpress.com/2018/08/05/memory-dump-analysis-with-volatility-1/

Bài 3: https://minhthuongeh.wordpress.com/2018/08/05/memory-dump-analysis-with-volatility-3/

Ở bài viết tiếp theo này, tôi sẽ hướng dẫn cách đọc nội dung một text document do người dùng soạn thảo sử dụng notepad.

Đầu tiên, tôi dùng Windows 7 mở chương trình notepad và viết vào đó nội dung bất kỳ. Sau đó, tôi dump RAM ra thành tập tin .raw file.

Ở máy Kali Linux, tôi dùng Volatility để phân tích imageinfo của nó trước.

Screenshot from 2018-08-04 20-06-38.png

Sau khi đã biết được profile của tập tin dump RAM này, tôi sẽ liệt kê chi tiết về một tiến trình – mà cụ thể ở đây là notepad – kèm với kết hợp câu lệnh grep để lọc ra process tôi muốn tìm.

Screenshot from 2018-08-04 23-43-35.png

Sau khi tìm được kết quả như ý muốn, ta ghi nhớ lại số PID của tiến trình notepad trong tập tin dump RAM này. Sau đó, ta sẽ dump riêng process này ra để xem nội dung.

Screenshot from 2018-08-04 23-47-08.png

Cuối cùng, tôi dùng lệnh strings kết hợp thuộc tính “-e l” để tìm nội dung cần lấy trong process notepad này, kết hợp thêm câu lệnh grep.

Screenshot from 2018-08-05 00-11-28.png

Thuộc tính “-e l” được sử dụng kèm thêm ở đây bởi vì notepad lưu trữ nội dung text ở dạng 16-bit little-endian.

-e –encoding={s,S,b,l,B,L} Select character size and endianness:

 s = 7-bit, S = 8-bit, {b,l} = 16-bit, {B,L} = 32-bit

Và cuối cùng, ta đã lấy được nội dung cần xem đối với process notepad.exe trong file RAM dump được rồi.