-
30/08/2016
-
319
-
448 bài viết
Chia sẻ kinh nghiệm làm Forensic basic cho người mới chơi CTF
Mình xin viết một bài viết cơ bản về forensic chia sẻ cho những bạn mới chơi CTF có cái nhìn tổng quan về Forensic nói chung và có hướng đi phù hợp hơn trong quá trình chơi CTF.
1 Xác định đúng phần mở rộng
Theo mình việc đầu tiên là phải xác định đúng ban tổ chức cho mình cái gì ? Từ đó mới biết được mình cần phải làm gì ?
Sử dụng lệnh file + tên file ta sẽ biết được thông tin từ header của file cung cấp.
Tuy nhiên, đã là cuộc thi thì phải có bẫy nên để chắc ăn các bạn nên mở file dưới dạng Hex xem header (thường là 4 bytes đầu) và so sánh với trang Signature file để biết được phần header là chính xác hay chưa
2. Giải nén file
Sau khi đã xác định được phần mở rộng thì thường sẽ rơi vào 2 trường hợp là file gốc (pcap, pcapng, jpg, png, img,….) hoặc file bị nén dưới các dạng (tar, gz, zip, 7z, bz2 …..) thì bạn phải tìm cách giải nén trên môi trường linux, windows, macos
3. Thu thập thông tin về file
Tiếp theo cần thu thập thông tin về file cần phân tích như exiftool, strings, hex,..... Bạn phải thu thập thông tin để xem file có những thông tin nào đặc biệt hay không
Các dạng Forensic thường gặp
1 Image (ổ đĩa)
Sau khi xác định được file được cho là ổ đĩa phải tiến hành mount ổ đĩa trên linux để tiến hành phân tích với câu lệnh
hoặc dùng Autopsy, FTK Image để khôi phục tập tin trong ổ đĩa
Writeup: các bạn tham khảo tại đây
Ngoài ra còn có các tool khác để trích xuất dữ liệu được ẩn trong file khác như như foremost, extundelete, binwalk, scalpel.....trên Linux.
2 Network Forensic
Liên quan đến việc theo dõi, giám sát, phân tích lưu lượng mạng máy tính nhằm phục vụ cho việc thu thập thông tin, sự kiện liên quan, tìm kiếm chứng cứ pháp lý, mục đích là phát hiện sự bất thường, các dấu hiệu xâm nhập trên môi trường mạng. Thường dùng các tool như wireshark, network miner, xplico đẻ phân tích nhanh các gói tin
Writeup: có thể tham khảo thêm tại đây và blog của mình
Và có 2 dạng là USB Keyboard , USB Device (vẽ hình bằng mouse) khá là kinh điển.
3 Memory Forensic
Volatility phân tích bộ nhớ RAM của hệ thống sau đó tiến hành phân tích làm rõ các hành vi đã xảy ra trên hệ thống. Cụ thể hơn, đó là cố gắng sử dụng kiến trúc quản lý bộ nhớ trong máy tính để ánh xạ, trích xuất các tập tin đang thực thi và đang lưu tạm trong bộ nhớ.
Link tham khảo
Các lệnh cơ bản sử dụng
Writeup tham khảo 2 bài vòng loại matesctf của Tinduong khá là hay kết hợp một chút RE bài 1 và bài 2
1 Xác định đúng phần mở rộng
Theo mình việc đầu tiên là phải xác định đúng ban tổ chức cho mình cái gì ? Từ đó mới biết được mình cần phải làm gì ?
Sử dụng lệnh file + tên file ta sẽ biết được thông tin từ header của file cung cấp.
Tuy nhiên, đã là cuộc thi thì phải có bẫy nên để chắc ăn các bạn nên mở file dưới dạng Hex xem header (thường là 4 bytes đầu) và so sánh với trang Signature file để biết được phần header là chính xác hay chưa
2. Giải nén file
Sau khi đã xác định được phần mở rộng thì thường sẽ rơi vào 2 trường hợp là file gốc (pcap, pcapng, jpg, png, img,….) hoặc file bị nén dưới các dạng (tar, gz, zip, 7z, bz2 …..) thì bạn phải tìm cách giải nén trên môi trường linux, windows, macos
HTML:
tar -xvf file.tar
HTML:
tar -zxvf file.tar.gz
HTML:
tar -xjvf file.tar.bz2
HTML:
bzip2 -d filename.bz2
HTML:
unzip file.zip
3. Thu thập thông tin về file
Tiếp theo cần thu thập thông tin về file cần phân tích như exiftool, strings, hex,..... Bạn phải thu thập thông tin để xem file có những thông tin nào đặc biệt hay không
Ví dụ trong hình này là mục Artist : có nội dung chứa một đoạn base64
Các dạng Forensic thường gặp
1 Image (ổ đĩa)
Sau khi xác định được file được cho là ổ đĩa phải tiến hành mount ổ đĩa trên linux để tiến hành phân tích với câu lệnh
HTML:
mount filename.img -t vfat -o loop,ro,noexec /mnt
hoặc dùng Autopsy, FTK Image để khôi phục tập tin trong ổ đĩa
Writeup: các bạn tham khảo tại đây
Ngoài ra còn có các tool khác để trích xuất dữ liệu được ẩn trong file khác như như foremost, extundelete, binwalk, scalpel.....trên Linux.
2 Network Forensic
Liên quan đến việc theo dõi, giám sát, phân tích lưu lượng mạng máy tính nhằm phục vụ cho việc thu thập thông tin, sự kiện liên quan, tìm kiếm chứng cứ pháp lý, mục đích là phát hiện sự bất thường, các dấu hiệu xâm nhập trên môi trường mạng. Thường dùng các tool như wireshark, network miner, xplico đẻ phân tích nhanh các gói tin
Writeup: có thể tham khảo thêm tại đây và blog của mình
Và có 2 dạng là USB Keyboard , USB Device (vẽ hình bằng mouse) khá là kinh điển.
3 Memory Forensic
Volatility phân tích bộ nhớ RAM của hệ thống sau đó tiến hành phân tích làm rõ các hành vi đã xảy ra trên hệ thống. Cụ thể hơn, đó là cố gắng sử dụng kiến trúc quản lý bộ nhớ trong máy tính để ánh xạ, trích xuất các tập tin đang thực thi và đang lưu tạm trong bộ nhớ.
Link tham khảo
Các lệnh cơ bản sử dụng
Writeup tham khảo 2 bài vòng loại matesctf của Tinduong khá là hay kết hợp một chút RE bài 1 và bài 2
Chỉnh sửa lần cuối: