THỬ NGHIỆM CRACK PASSWORD VỚI OLLYDBG
3.2.2 Lựa chon giải pháp và công cụ
Đối với từng chương trình trên ta sẽ có những giải pháp khác nhau để bẻ khóa từng chương trình:
Yêu cầu 1:
• Tìm ra đúng số Reg code cho User
• Sử dụng công cụ crack : Ollydbg Yêu cầu 2:
• Loại bỏ được hộp thoại Purchase bằng cách vô hiệu hóa những dòng lệnh đó bằng NOP (No Operation).
• Sử dụng công cụ crack :Ollydbg
Ở đây chúng ta có thể sử dụng nhiều chương trình khác nhau để bẻ khóa hai chương trình này. Trong hai yêu cầu trên mọi người đều thấy rằng công cụ bẻ khóa đều là Ollydbg tại vì sử dụng nó rất tiện lợi và có những điểm mạnh của riêng của nó.
3.2.3 Thực hiện
3.2.3.1 Yêu cầu 1
Đầu tiên ta nhập thông tin bất kỳ vào Username và Reg Code và chúng ta sẽ kiểm tra thử nó có hợp lệ hay không.Ở đây em nhập hai thông tin trên là User=nqk13t,Reg code=123456789.Nhấn Check it để kiểm tra :
Hình 3.2 Thông tin không hợp lệ
Như chúng ta đã thấy thì với thông tin trên thì nó sẽ thông báo là không đúng .Chọn OK để kết thúc chương trình.
Việc tiếp theo là ta sẽ bẻ khóa nó làm sao khi nhập với User trên với Reg code do chương trình sinh ra sẽ hợp lệ.
Bắt đầu Open nó với Ollydbg ta được như hình dưới:
Đầu tiên ta kích chuột phải lên màn hình ở cửa số đầu tiên và ta sẽ tìm kiếm với tất cả các mô đun được gọi.Chọn Search for >>All intermodular calls:
Hình 3.4 Các mô đun khi được gọi
Lúc này ta chọn Destination để cho việc tìm hàm nhập thông tin vào cho dễ .Hàm đó là User32.GetDigItemTextA và ta đặt breakpoint tại đây và nhấn F9 để chạy.
Trong quá trình F9 để gọi hàm User32.GetDigItemTextA thì bảng thông báo nhập thông tin của chương trình Crackme đã xuất hiện.Ta nhập với User và Regcode ban đầu và Checkit nó.Thì đoạn code về hàm này đã xuất hiện
Hình 3.6 Reg code đã xuất hiện
Ta thấy chuỗi String 2 đã xuất hiện đó chính là Reg code của chương trình với User ban đầu.
Cuối cùng ta sẽ sao lưu chuỗi String này vào một file text để kiểm tra xem đoạn code này có hợp lệ không.Bây giờ chúng ta tắt Ollydbg và khới động Crackme.
Hình 3.8 Kiểm tra Regcode có hợp lệ không
Chúng ta hãy copy chuỗi vừa rồi và paste nó vào Reg code của chương trình và nhấn Checkit để xem kết quả.
Như hình 3.9 thì ta thấy User name và Reg mà ta đã nhập vào đã hợp lệ với dòng thông báo Yes, that’s the right code.
Hình 3.9 Reg code hợp lệ
3.2.3.2 Yêu cầu 2
Đầu tiên ta sẽ khởi động thông báo để xem một số thông tin của chương trìnhvà lúc này ta sẽ thấy thông báo Purchase của Winrar đã xuất hiện.
Hình 3.10 Giao diện khới động của Winrar
Bây giờ ta sẽ tìm cách để loại bỏ thông báo khó chịu này .Khới động Ollydbg và Open Winrar bằng Ollydbg
Hình 3.11 Mở Winrar bằng Ollydbg
Ở phiên bản các phiên bản trước thì crack chúng ta sẽ dựa vào thông báo Purchase để tìm chuỗi Reminder xuất hiện ở đâu.Nhưng đối với phiên bản Winrar 3.93 thì nó đã không còn nữa và ta sẽ crack nó băng một cách khác.Lúc này ta nhấn F9 để chạy chương trình.
Hình 3.12 Chương trình chạy sau khi F9
Ta thấy chương trình Winrar sẽ khới động và thông báo về Purchase cũng xuất hiện .Khi này ta không cần quan tâm đến thông báo này.Quay lại màn hình chính của Ollydbg và tạm dừng chương trình.Nhấn tổ hợp phím Alt + F9 để debug chương trình và ta cũng có thể làm như trong hình 3.13
Hình 3.13 Debug chương trình
Bây giờ ta quay trở lại thông báo của chương trình Winrar và thoát thông báo Purchase đi
Hình 3.14 Thông báo Purchase của Winrar
Lúc này đoạn code về Reminder cuả thông báo Purchase đã xuất hiện dưới hình 3.15
Hình 3.15 Đoạn code về Purchase
Nhìn kỹ đoạn code đã được bôi đen ta sẽ biết được đây chính là code của Purchase của chương trình Winrar.
Hình 3.16 NOP để bỏ qua hộp thoại thông báo
Để thông báo này không còn xuất hiện nữa thì ta sẽ xử lý đoạn code này bằng cách sửa thành NOP (No Operation).Vì sao ta sử dụng NOP ở đây vì nó sẽ bỏ qua đoạn code này và thông báo về Purchase sẽ không còn xuất hiện nữa.
Việc cuối cùng mà ta phải làm là sao lưu những gì mà ta đã thực hiện bằng cách chọn như trên hình 3.17
Hình 3.18 Thông báo copy all đoạn code trên
Bây giờ ta chỉ cần chọn Copy all để lưu đoạn code mà ta vừa chỉnh sửa lại.Và một hộp thoại thông báo nữa lại xuất hiện ta cứ chọn Yes để thông qua.
Hình 3.19 Đoạn code mà ta sao lưu đã xuất hiện
Chúng ta không cần quan tâm đến thông báo này và ta chỉ cần tắt nó đi và một hộp thoại thông báo sẽ xuất hiện hỏi chúng ta có cần ghi đè thông tin này lên tập tin gốc ta cứ chọn Ỷes để thực hiện.
Hình 3.20 Thông báo ghi đè tập tin của chương trình
Lúc này ta tắt Ollydbg đi vì bây giờ việc Crack coi như là hoàn thành .Và ta sẽ khởi động Winrar lên và xem đoạn thông báo về Purchase của chương trình có xuất hiện nữa hay không
Như hình 3.21 thì thông báo về Purchase của chương trình Winrar không còn xuất hiện nữa việc Crack đã hoàn thành.
3.2.4 Nhận xét
Đối với từng yêu cầu ta sẽ có những giải pháp và có những cách khác nhau và đối với từng phiên bản của chương trình thì cách Crack cũng khác nhau.Đa số là cách crack của phiên bản cũ của chương trình sẽ không áp dụng được đối với phiên bản mới của chương trình vì đó là sự cải tiến của nhà cung cấp phần mềm.
Yêu cầu 1: Độ phưc tạp thuộc mức độ Dễ nên việc Crack để lấy số Reg code là bình thường
Yêu cầu 2: Độ phức tạp thuộc mức độ Trung bình vì việc Crack của những phiên bản trước không áp dụng được đối với phiên bản này