Giới thiệu ollydebug
Olly và IDA là hai công cụ không thể thiếu trong phân tích mã độc. Olly dùng để phân tích động. IDA dùng để phân tích tĩnh. Hai công cụ này kết hợp và bổ trợ cho nhau giúp cho quá trình phân tích virus nhanh hơn.
Các bản hãy tưởng tượng. Chúng ta phân tích virus là đang đi trong mê cung vậy. IDA sẽ như một bản đồ để chỉ hướng cho bạn đi tới đích, còn olly là quá trình và con đường bạn đang đi vậy.
Bài viết này mình giới thiệu cơ bản nhất về olly phục vụ các bạn newbie.
Tổng quan: Olly gồm 5 cửa sổ chính
1. CPU
Đây là của sổ chứa các thông tin quan trọng như: mã lệnh asembly, địa chỉ của mã lệnh,opcode...Đa số chúng ta thường tập chung vào của sổ này nhiều nhất.
2. Register
Của sổ chứa giá trị của các thanh ghi và cờ nhảy... Từ của sổ này chúng ta có thể theo dõi được giá trị trả về của một hàm từ thành ghi EAX, các thay đổi của phép tính toán...
3. Cửa sổ thứ 3
Của sổ chứa các giá trị thực thế của câu lệnh đang trỏ tới ở của sổ thứ nhất. Sau khi thực thi lệnh sẽ hiển thị ở của sổ thứ 2.
4. Memory
Đây là của sổ chứa toàn bộ vùng memmory của chương trình. Từ của sổ này chúng ta có thể quan sát được các thay đổi giá trị trên memory...
5. Stack
Của sổ chứa các tham số của các hàm được push vào. Từ của sổ này ta có thể xem được giá trị truyền vào của một hàm. Điều này là rất hữu ích.
Một số phím cơ bản hay dùng
- F7: Thực thi từng lệnh assembly
- F8: Thực thi một hàm.
- F9: Thực thi toàn bộ chương trình
- Ctrl + F9: Thực thi hết một hàm(dừng lại ở lệnh return)
- F2: Đặt breakpoint
- Ctrl + B: Xem toàn bộ cách breakpoint mềm
- Ctrl + M: Xem của sổ memory
Các bản hãy tưởng tượng. Chúng ta phân tích virus là đang đi trong mê cung vậy. IDA sẽ như một bản đồ để chỉ hướng cho bạn đi tới đích, còn olly là quá trình và con đường bạn đang đi vậy.
Bài viết này mình giới thiệu cơ bản nhất về olly phục vụ các bạn newbie.
Tổng quan: Olly gồm 5 cửa sổ chính
1. CPU
Đây là của sổ chứa các thông tin quan trọng như: mã lệnh asembly, địa chỉ của mã lệnh,opcode...Đa số chúng ta thường tập chung vào của sổ này nhiều nhất.
2. Register
Của sổ chứa giá trị của các thanh ghi và cờ nhảy... Từ của sổ này chúng ta có thể theo dõi được giá trị trả về của một hàm từ thành ghi EAX, các thay đổi của phép tính toán...
3. Cửa sổ thứ 3
Của sổ chứa các giá trị thực thế của câu lệnh đang trỏ tới ở của sổ thứ nhất. Sau khi thực thi lệnh sẽ hiển thị ở của sổ thứ 2.
4. Memory
Đây là của sổ chứa toàn bộ vùng memmory của chương trình. Từ của sổ này chúng ta có thể quan sát được các thay đổi giá trị trên memory...
5. Stack
Của sổ chứa các tham số của các hàm được push vào. Từ của sổ này ta có thể xem được giá trị truyền vào của một hàm. Điều này là rất hữu ích.
Một số phím cơ bản hay dùng
- F7: Thực thi từng lệnh assembly
- F8: Thực thi một hàm.
- F9: Thực thi toàn bộ chương trình
- Ctrl + F9: Thực thi hết một hàm(dừng lại ở lệnh return)
- F2: Đặt breakpoint
- Ctrl + B: Xem toàn bộ cách breakpoint mềm
- Ctrl + M: Xem của sổ memory
Chỉnh sửa lần cuối bởi người điều hành: