ollydbg hay đơn giản là olly là một công cụ sửa lỗi rất phổ biến. Nhờ giao diện trực quan và dễ sử dụng, olly phù hợp với mọi tầng lớp người dùng
Chức năng chính. Bạn đang xem: ollydbg là gì
Giao diện:
Cửa sổ ollydbg được chia thành 5 cửa sổ con:
1: Cửa sổ tháo gỡ: các đoạn mã chương trình dưới dạng mã hợp ngữ và nhận xét về các dòng mã này.
Bạn đang xem: ollydbg là gì
Xem: ollydbg là gì
2: Cửa sổ thanh ghi: các thanh ghi và giá trị của chúng.
3: Cửa sổ nhắc: Thông tin bổ sung cho một dòng mã. Thông tin này rất hữu ích trong quá trình gỡ lỗi.
4: Cửa sổ kết xuất: Cho phép người dùng xem và chỉnh sửa giá trị của chương trình đang được gỡ lỗi trong bộ nhớ.
5: Cửa sổ ngăn xếp: thông tin về ngăn xếp chương trình.
Ngoài 5 cửa sổ trên, olly còn một số cửa sổ khác. Lưu ý rằng có các chức năng trên thanh menu:
-Nhấp vào nút l để xem cửa sổ dữ liệu nhật ký của olly. Chứa thông tin về các mô-đun, thư viện nhập và plugin được tải cùng với chương trình khi nó được tải vào olly.
– Nhấp vào nút e để xem cửa sổ Mô-đun Thực thi, danh sách các tệp thực thi được chương trình sử dụng.
– Nhấp vào nút m và bạn sẽ thấy cửa sổ bản đồ bộ nhớ có thông tin về bộ nhớ được chương trình của chúng ta sử dụng.
-Nhấp vào nút t là cửa sổ luồng, liệt kê các luồng của chương trình.
-Nhấp vào nút w là cửa sổ
Nút
–h là cửa sổ xử lý.
– Các nút / là các bản vá, một cửa sổ chứa thông tin về các lệnh mà chúng ta đã sửa đổi trong chương trình.
-Nút b là cửa sổ điểm ngắt, hiển thị các điểm ngắt mà chúng ta đặt trong chương trình.
Xem thêm: Danh sách các thể loại Nhạc dân gian là gì? Một album dân ca nhẹ nhàng, nồng nàn
– Nút r – Tham chiếu Chứa thông tin về kết quả của chức năng tìm kiếm trong olly.
Các hàm không thể thiếu là các hàm dùng để gỡ lỗi:
– Đặt điểm ngắt: f2
– Chạy: f9
– Nhập: f7
– Bỏ qua: f8
– Khởi động lại: ctrl + f2
Điểm ngắt có nhiều loại và ollydbg hỗ trợ tất cả các loại đó. Theo mặc định, ollydbg sử dụng các điểm ngắt mềm, nhưng bạn vẫn có thể đặt các điểm ngắt cứng nếu muốn. Ngoài ra, bạn có thể đặt điểm ngắt có điều kiện hoặc điểm ngắt trong bộ nhớ.
Điểm ngắt mềm
Các điểm dừng mềm rất hữu ích khi gỡ lỗi các hàm giải mã chuỗi. Chúng tôi có thể phát hiện hành vi của mã độc hại bằng các chuỗi mà nó sử dụng, vì vậy những người viết phần mềm độc hại thường làm hỏng chúng bằng các chức năng mã hóa/giải mã chuỗi. Mã độc phải gọi hàm giải mã chuỗi trước khi sử dụng từng chuỗi.
Điểm dừng có điều kiện
Điểm dừng có điều kiện là điểm dừng mềm chỉ dừng thực thi khi đáp ứng một số điều kiện nhất định. ollydbg cho phép thiết lập các điểm dừng có điều kiện bằng cách sử dụng các biểu thức; mỗi khi chương trình thực thi đến một điểm ngắt mềm, biểu thức sẽ được đánh giá và nếu kết quả của biểu thức khác 0 (khác không), chương trình sẽ dừng thực thi.
Các điểm ngắt có điều kiện đặc biệt hữu ích khi bạn muốn chương trình của mình chỉ dừng thực thi khi các đối số cụ thể được chuyển đến các hàm api thường được gọi.
Điểm dừng cứng
ollydbg cũng cho phép thiết lập các điểm dừng cứng thông qua một số thanh ghi cụ thể.
Ưu điểm của điểm dừng cứng là chúng không can thiệp vào mã, ngăn xếp hoặc bất kỳ tài nguyên nào khác của chương trình đang được gỡ lỗi. Chúng cũng không làm chậm quá trình thực thi chương trình. Tuy nhiên, chúng tôi chỉ có thể thiết lập tối đa 4 điểm ngắt cứng tại một thời điểm.
Để đặt điểm ngắt cứng tại một lệnh, nhấp chuột phải vào lệnh và chọn Điểm ngắt>; Phần cứng, Thực thi.
Theo mặc định, ollydbg sẽ sử dụng các điểm dừng mềm. Bạn có thể thay đổi mặc định này trong các tùy chọn gỡ lỗi. Ngoài ra, hãy sử dụng các điểm dừng cứng
Hữu ích để bỏ qua một số kỹ thuật chống gỡ lỗi, vì các điểm dừng mềm dễ dàng được phát hiện bằng các kỹ thuật này.
Điểm ngắt bộ nhớ
ollydbg hỗ trợ thiết lập các điểm ngắt cứng hoặc mềm trên một phần bộ nhớ để dừng thực thi khi chương trình truy cập vào bộ nhớ đó. Các kiểu truy cập phổ biến có thể là đọc, ghi, thực thi…
Để đặt điểm ngắt bộ nhớ, hãy chọn một vùng bộ nhớ hoặc một phần trong bản đồ bộ nhớ trong cửa sổ kết xuất bộ nhớ, nhấp chuột phải và chọn Điểm ngắt>;Bộ nhớ, khi được truy cập. Mỗi lần chỉ có thể đặt một điểm ngắt bộ nhớ và điểm ngắt bộ nhớ trước đó sẽ bị xóa khi đặt điểm ngắt bộ nhớ mới.
2. Các plugin trong ollydbg
Hủy trả lời
Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *
Nhận xét
Tên*
Email*
Trang web
Lưu tên, email và trang web của tôi trong trình duyệt này cho lần sau khi tôi đăng bình luận.
{{#message}}{{{message}}}{{/message}}{{^message}} không gửi được. Máy chủ đã phản hồi bằng {{status_text}} (mã {{status_code}}). Vui lòng liên hệ với nhà phát triển của trình xử lý biểu mẫu này để cải thiện thông báo này. Tìm hiểu thêm{{/message}}
{{#message}}{{{message}}}{{/message}}{{^message}} Có vẻ như bạn đã gửi thành công. Ngay cả khi máy chủ phản hồi bình thường, việc gửi có thể vẫn chưa được xử lý. Vui lòng liên hệ với nhà phát triển của trình xử lý biểu mẫu này để cải thiện thông báo này. Tìm hiểu thêm{{/message}}