Bạn đã bao giờ muốn tìm hiểu cách một chương trình tự bảo vệ khỏi bị sao chép chưa? Với các công cụ phù hợp, bạn có thể kiểm tra nội bộ của chương trình và xem cách thức hoạt động của tính năng bảo vệ chống sao chép. Sử dụng hợp ngữ, bạn có thể sửa đổi các chương trình này để chúng không cần phải đăng ký hoặc mua nữa.
Bươc chân
Bước 1. Học lập trình hợp ngữ
Để có thể bẻ khóa hầu hết các phần mềm, bạn cần hiểu rõ về assembly là một ngôn ngữ lập trình cấp thấp. Assemblies có nguồn gốc từ ngôn ngữ máy và mỗi hợp ngữ là cụ thể cho loại máy tính bạn đang sử dụng. Hầu hết các ngôn ngữ hợp ngữ được thể hiện bằng hệ nhị phân và hệ thập lục phân.
Bước 2. Cài đặt chương trình tháo gỡ
Để kiểm tra và sửa đổi các tệp DLL, bạn sẽ cần một số công cụ, bao gồm cả trình tháo gỡ. IDA Pro là một lựa chọn tốt vì nó vừa là trình tháo gỡ vừa là trình gỡ lỗi. Mặc dù chức năng của nó bị hạn chế hơn so với phiên bản Pro, nhưng may mắn thay, cũng có một phiên bản miễn phí có sẵn tại https://www.hex-rays.com/products/ida/support/download_freeware. Bạn cũng có thể thử sử dụng dotPeek, một trình dịch ngược hỗ trợ DLL giải nén mã lắp ráp. NET thành C #. Một tùy chọn khác là OllyDBG, cho phép bạn mở các tệp DLL miễn phí.
Bước 3. Mở ứng dụng bạn muốn bẻ khóa trong trình tháo gỡ
Quá trình này có thể thay đổi một chút, tùy thuộc vào trình tháo gỡ bạn đang sử dụng. Quá trình này sẽ cho bạn biết chương trình chứa các tệp DLL nào. Sử dụng trình gỡ lỗi để kiểm tra hàm nào đang được gọi bởi DLL.
Bước 4. Tìm chức năng bộ đếm
Nhiều chương trình sử dụng bộ đếm thời gian để chống sao chép. Khi bộ hẹn giờ hết hạn, người dùng không thể truy cập vào chương trình được nữa. Mục đích của bước này là tìm mã bộ đếm này, và sau đó bỏ qua nó.
Nếu chương trình bạn đang bẻ khóa sử dụng một số hình thức bảo vệ khác, bạn sẽ cần tìm hiểu xem nó là gì
Bước 5. Đặt điểm ngắt trên bộ đếm
Khi bạn có thể cô lập chức năng bộ đếm, hãy đặt SoftIce để ngắt khi gặp chức năng. Điều này cho phép bạn xem lại chính xác mã nào đang chạy khi hàm bộ đếm được gọi.
Bước 6. Thay đổi mã bộ đếm
Bây giờ bạn đã tìm thấy mã cho chức năng bộ đếm, bạn có thể sửa đổi mã để bộ đếm không bao giờ đạt đến điểm mà nó có thể ngăn bạn sử dụng chương trình. Ví dụ: bạn có thể làm cho bộ đếm không thể đếm đến giới hạn ngắt hoặc bạn có thể bỏ qua bộ đếm bằng cách nhảy qua nó.
Bước 7. Lắp ráp lại phần mềm bạn vừa bẻ khóa
Sau khi giải nén và chỉnh sửa, bạn phải tập hợp lại phiên bản mới của chương trình để những thay đổi bạn thực hiện áp dụng cho tệp DLL và các tệp liên quan khác trong chương trình.
Cảnh báo
- Vi phạm bản quyền phần mềm là bất hợp pháp ở hầu hết các quốc gia.
- Bẻ khóa hầu hết các phần mềm là bất hợp pháp.