Reverse engineering là gì ?Nói nôm na Reverse engineering là một quá trình phát hiện ra các công nghệ cơ bản của một thiết bị, đối tượng hay một hệ thống. Thông qua việc phân tích cấu trúc, chức năng và cách vận hành của chúng. Các đối tượng ở đây có thể bao gồm : thiết bị cơ học, thiết bị điện tử, chương trình phần mềm,... Mục đích của việc này là tạo ra những thiết bị, chương trình có tính năng như cái ban đầu nhưng không lấy bất cứ cái gì từ cái ban đầu.
Đối với phần mềm Reverse engineering có thể định nghĩa như sau :
Reverse engineering is the process of analyzing a subject system to
create representations of the system at a higher level of abstraction.
Tham khảo :
http://en.wikipedia.org/wiki/Reverse_engineeringCòn đối với hack thì Reverse engineering có nghĩa là dịch ngược.
Một trong các cái có thể thực hành kỹ năng này là Crackmes, Reversemes và Keygenmes. Những chương trình này được lập trình sử dụng những kỹ thuật bảo vệ tương tự như những ứng dụng thật, để bẻ khóa thử.Qua đó để kiểm tra mức độ bảo vệ của ứng và kỹ thuật được sử dụng. Đây là những bài thực hành đòi hỏi phải hiểu rõ công nghệ của ứng dụng sử dụng thì mới có thể vượt qua được. Thậm trí có những crackme khó hơn cả những phần mềm trong thực tế.
Tôi xin giới thiệu một số trang để bạn có thể thực hành, việc chơi Crackmes, Reversemes và Keygenmes đôi khi là để giải trí nhưng nó sẽ mang lại cho bạn những hiểu biết khá sâu và khá thú vị.
http://www.crackmes.de : trang này có số lượng crackme rất lớn và chia làm nhiều cấp độ
http://www.reteam.org/reversemes.htmlhttp://www.woodmann.com/IDArchive/ID-RIP/crackmes.htmhttp://lucifer48.anotherlight.com/tut-crkme.htmhttp://www.hackemate.com.ar/mirrors/karpoff/CrackMEs.htmTrang chứa công cụ, bài hướng dẫn, kỹ thuật lập trình, cập nhật các protector ...
http://www.tuts4you.comNgoài các trang trên còn có ở rất nhiều các trang khác nữa, tôi sẽ tiếp tục bổ xung.