04-05-2020, 07:09 AM
معضم الحمايات التي تستخدم vm حيت تقوم ب تعمل translation لل opcode ب bytecode خاص ب ال vm و يقومن ب وضع كتير
من Junk code حول vm Interpreter لكي لا تستطيع فهم الية العمل الخاصة بهاده الأخيرة
على كل الطريقة سهلة سوف نستخدم McSema لي هوا عبارة عن lifter
لي هوا يحول opcode لل LLVM bitcode وايضا LLVM bitcode لل opcode
فكرة ك اتي عندك برنامج محمي ب أي حماية سواء كانت vmprotect او enigma او themida او winlicense او ...
تقوم ب استخدام lifter لتحويل opcode ل bitcode وبعدين تطبق optimization عشان هوا optimization عكس junk code يعني رح يشيله
بعدين تقوم ب تحويله ل opcode من جديد
وهيك حصلت على clean من junk code و fake branching و ...
يجدر اشارة للناس التي تبحت عن طرق ل تغلب على vm protection القاء نضرة على Trion هادا اخير تستطيع استعماله لل تغلب على vm protection
رابط اداة
من Junk code حول vm Interpreter لكي لا تستطيع فهم الية العمل الخاصة بهاده الأخيرة
على كل الطريقة سهلة سوف نستخدم McSema لي هوا عبارة عن lifter
لي هوا يحول opcode لل LLVM bitcode وايضا LLVM bitcode لل opcode
فكرة ك اتي عندك برنامج محمي ب أي حماية سواء كانت vmprotect او enigma او themida او winlicense او ...
تقوم ب استخدام lifter لتحويل opcode ل bitcode وبعدين تطبق optimization عشان هوا optimization عكس junk code يعني رح يشيله
بعدين تقوم ب تحويله ل opcode من جديد
وهيك حصلت على clean من junk code و fake branching و ...
يجدر اشارة للناس التي تبحت عن طرق ل تغلب على vm protection القاء نضرة على Trion هادا اخير تستطيع استعماله لل تغلب على vm protection
رابط اداة
https://github.com/lifting-bits/mcsema