คุณเคยต้องการที่จะเรียนรู้ว่าโปรแกรมป้องกันตัวเองจากการถูกคัดลอกได้อย่างไร? ด้วยเครื่องมือที่เหมาะสม คุณสามารถตรวจสอบการทำงานภายในของโปรแกรมและทดลองวิศวกรรมย้อนกลับได้ คุณจะต้องมีความเข้าใจอย่างแน่วแน่เกี่ยวกับการเขียนโปรแกรมแอสเซมบลีและรหัสฐานสิบหกเพื่อเริ่มต้นและแอพตัวแยกชิ้นส่วน เมื่อคุณคุ้นเคยกับโค้ดแล้ว คุณสามารถแก้ไข DLL ได้เพื่อไม่ให้โปรแกรมที่เกี่ยวข้องต้องลงทะเบียนหรือซื้อ
ขั้นตอน
ขั้นตอนที่ 1 เรียนรู้การเขียนโปรแกรม Assembly และการจัดการรหัสฐานสิบหก
หากคุณต้องการถอดรหัสซอฟต์แวร์ส่วนใหญ่ คุณจะต้องมีความเข้าใจในแอสเซมบลี ซึ่งเป็นภาษาโปรแกรมระดับต่ำ แอสเซมบลีมาจากภาษาเครื่อง และภาษาแอสเซมบลีแต่ละภาษามีความเฉพาะเจาะจงกับประเภทของคอมพิวเตอร์ที่คุณใช้ ภาษาแอสเซมบลีส่วนใหญ่แสดงผ่านเลขฐานสองและเลขฐานสิบหก
ขั้นตอนที่ 2 ติดตั้ง disassembler
ในการตรวจสอบและแก้ไข DLL คุณจะต้องใช้เครื่องมือต่างๆ รวมทั้งตัวแยกชิ้นส่วน IDA Pro เป็นตัวเลือกที่ยอดเยี่ยม เนื่องจากเป็นตัวแยกชิ้นส่วนและดีบักเกอร์ โชคดีที่มีเวอร์ชันฟรีจาก https://www.hex-rays.com/products/ida/support/download_freeware แม้ว่าจะมีฟังก์ชันที่จำกัดมากกว่ารุ่น Pro ก็ตาม คุณยังสามารถลองใช้ dotPeek ซึ่งเป็นดีคอมไพเลอร์ที่รองรับ DLL ซึ่งถอดรหัสรหัสแอสเซมบลี. NET เป็น C# อีกตัวเลือกหนึ่งคือ OllyDBG ซึ่งให้คุณเปิดไฟล์ DLL ได้ฟรี
ขั้นตอนที่ 3 เปิดแอปพลิเคชั่นที่คุณต้องการถอดรหัสในตัวแยกชิ้นส่วนของคุณ
กระบวนการจะแตกต่างกันเล็กน้อยขึ้นอยู่กับตัวถอดประกอบที่คุณใช้ นี่จะแสดงไฟล์ DLL ที่โปรแกรมกำลังโหลด ใช้ดีบักเกอร์เพื่อตรวจสอบว่าฟังก์ชันใดถูกเรียกจาก DLL
ขั้นตอนที่ 4 ค้นหาฟังก์ชันตัวนับ
หลายโปรแกรมใช้ตัวจับเวลาเพื่อป้องกันการคัดลอก และเมื่อหมดเวลา ผู้ใช้จะไม่สามารถเข้าถึงโปรแกรมได้อีกต่อไป เป้าหมายคือค้นหารหัสตัวนับนี้แล้วข้ามไป
หากโปรแกรมที่คุณกำลังแคร็กใช้รูปแบบการป้องกันอื่น คุณจะต้องมองหาสิ่งนั้นแทน
ขั้นตอนที่ 5. ตั้งจุดพักบนเคาน์เตอร์
เมื่อคุณแยกฟังก์ชันตัวนับออกแล้ว ให้ตั้งค่าตัวแยกชิ้นส่วนให้แตกเมื่อพบ ซึ่งจะช่วยให้คุณสามารถดูรหัสที่แน่นอนที่เกิดขึ้นเมื่อเรียกใช้ฟังก์ชันตัวนับ
ขั้นตอนที่ 6 เปลี่ยนรหัสตัวนับ
เมื่อคุณพบรหัสสำหรับฟังก์ชันตัวนับแล้ว คุณสามารถเปลี่ยนรหัสได้เพื่อไม่ให้ตัวนับมาถึงจุดที่ปิดคุณออกจากโปรแกรม ตัวอย่างเช่น คุณสามารถทำให้ตัวนับไม่สามารถนับได้ถึงขีดจำกัดการหยุด หรือคุณสามารถข้ามตัวนับโดยการกระโดดข้ามมัน'
ขั้นตอนที่ 7 คอมไพล์ซอฟต์แวร์ที่แตกใหม่ของคุณใหม่
หลังจากแยกส่วนและแก้ไข คุณจะต้องคอมไพล์โปรแกรมเวอร์ชันใหม่ เพื่อให้การเปลี่ยนแปลงของคุณเผยแพร่ไปยังไฟล์ DLL และการขึ้นต่อกันอื่นๆ
คำเตือน
- การละเมิดลิขสิทธิ์ซอฟต์แวร์เป็นสิ่งผิดกฎหมาย ดังนั้นคุณต้องยอมรับความเสี่ยงเอง
- การแคร็กซอฟต์แวร์ส่วนใหญ่เป็นสิ่งผิดกฎหมาย