Archive for the ‘CRACKING BẰNG PHƯƠNG PHÁP DÙNG POINT-H’ Category


Đây là một tutor của anh Moonbaby viết vào quãng năm 2005.

I – Giới thiệu

1. Tổng Quát :

  • Phương pháp này được Ricardo Narvaja giới thiệu vào 22.Dec.2002  . Phương pháp này được sử dụng cho hệ thống OllyDbg – WindowsXP để xác định một điểm đặc biệt mà ta sẽ gọi là điểm H ( Point-H) có cách thức làm việc tương tự như hàm API Hmemcpy trong Windows98 . Quá trình này sẽ giúp ta xác định địa chỉ lưu trữ Name hay Serial khi thực thi một BreakPoint tại Point-H .
  • Đối với những ai đã từng sử dụng SoftIce trong thời kỳ đầu, chắc hẳn sẽ hiểu rõ tầm quan trọng của hàm API Hmemcpy .
  • Khác với phương pháp STACK, phương pháp này không giúp ta xác định đoạn code mã hoá chính mã chỉ giúp ta xác định đoạn code xử lý chuỗi nhập .

2. Những điểm cần lưu ý :

– Point-H khác nhau trên từng máy tính, và tồn tại trong thư viện USER32.DLL . Tuy nhiên, một khi bạn đã tìm được Point-H trên máy tính của mình thì bạn có thể áp dụng cho bất kỳ loại ngôn ngữ nào mà chương trình sử dụng ( Visual C++, Visual Basic , Borland Delphi, MASM32 / TASM32 … ) .

– Phương pháp này dựa trên hàm API TranslateMessage nên trước khi bạn có ý định sử dụng phương pháp này nên tìm hiểu xem chương trình có sử dụng hàm này hay không ( các chương trình viết bằng Visual Basic có thể không sử dụng hàm này ) . Trên cơ bản mà nói, phương pháp này có ưu thế hơn cho các chương trình được viết bằng Visual C hay MASM32 / TASM32 hơn là các chương trình được viết bằng Visual Basic , Borland Delphi .

– Cũng như phương pháp STACK đã được đề cập trước đây, đây không phải là một phương pháp tối ưu cho mọi trường hợp, bạn chỉ nên xem đây là một trong những sự lựa chọn mà thôi .

– Phương pháp này thực sự có hiệu quả khi và chỉ khi sau khi bạn nhập các thông số Name và/hoặc Serial và nhấn nút đăng ký mà không xuất hiện bất cứ thông báo hay sự kiện nào .

– Trong nhiều trường hợp, phương pháp này sẽ cho ngay Serial tương ứng với Name nhập trong khi đó việc tìm kiếm đoạn code mã hoá lại là chuyện vô cùng phức tạp .

– Một điểm đặc biệt cần lưu ý, phương pháp này không trực tiếp giúp ta xác định đoạn code mã hoá chính của chương trình mà chỉ xác định đoạn code khi chuỗi nhập vào bắt đầu được xử lý . Từ đó, dựa vào khả năng và kinh nghiệm của bản thân, ta xác định đâu là đoạn code mã hoá cần quan tâm .

– Đồng thời, do đặc điểm của phương pháp chỉ thực hiện được khi chương trình thực hiện quá trình xử lý chuỗi nên nếu trong trường hợp chuỗi nhập vào được yêu cầu thoả mãn một vài điều kiện trước khi tiến hành quá trình xử lý thì phương pháp này hoàn toàn không thể áp dụng . Ví dụ chương trình yêu cầu chiều dài chuỗi phải là 16 ký tự, nhưng bạn chỉ nhập 10 hay không đúng 16 ký tự thì chương trình sẽ thoát ra mà không tiến hành quá trình xử lý- vì thế phương pháp Point-H có thể không giúp bạn xác định được đoạn code xử lý chuỗi .

Download toàn bộ bài viết tại đây: http://www11.zippyshare.com/v/7264624/file.html

Regards,
m4n0w4r