سلام
در این تاپیک میخوام چند قضیه رو براتون روشن کنم:
۱-رمزنگاری کد های پی اچ پی توسط یون کیوب و سورس گاردین و چه رمزنگاری های دیگه،کد شمارو در واقع کامپایل میکنن به کد باینری.
۲-زیاد دلتون خوش دیکد و دیکامپایل یون کیوب و سورس گاردین و . . . نباشه.
در این تاپیک کامل براتون قضیه رو توضیح دادم.
سایت net.dezender همونطور از *** از *** موتور *** در کامپایلر پی اچ پیه.خود کلمش اسمه یک پروژه چینیه که در بک اند سایت easytoyou هم استفاده میشه.
*** کدهای پی اچ پی رو کامپایل میکنه و بعدشم اجرا میکنه.
کار یون کیوب و سورس گاردین هم همینه،فقط کد شمارو کامپایل میکنن که باز توسط لودر فقط اجرا میشن.
حالا زیر و بم دیکدشون چیه؟
صبر داشته باشید براتون توضیح میدم.
بعد از اینکه کد کامپایل شد به کد باینری برای اینکه دوباره قابل فهم بشه و یا به اصطلاح سود بردن برای این سایت ها دیکد بشه،میان کدهای باینری رو دوباره تبدیل به کدپی اچ پی میکنن؛با مثال زبر کاملش میکنم:
فرض کنید حرف a کدش در باینری ۱ هست.برای اینکه دوباره تبدیل به حرف a بشه باید جای ۱ رو با a عوض کرد.اگر این مثال رو درک کرده باشید متوجه میشید من چیمیگم.
کار این دو سایت هم همینه.
حالا این پروژه *** چی هست؟
چینی ها در سال ۲۰۰۰ برای اینکه کار مثال بالایی که من براتون زدم رو انجام بدن اومدن موتور *** رو نوشتن.
که حالا به دلایلی به بیرون درز کرد و روسی هام یک کپی ازش گرفتن و ارتقاش دادن تا الان که در سایت easytoyou توسط شخصی با لقب DoreamonPT در حال ارائه است.
حالا سر و کله dezender یا decodez یا همون *** از کجا پیدا میشه؟
الان میگم،اونم این فایل *** گیرش میاد و از همون موقع تا الان اون رو توسعه داده و در حال دیکده.
مثلا من کد زیر رونوشتم:
if (true) return;
echo 0;//comment
بعد از کامپایل یا به اصطلاح انکد تبدیل به کد باینری میشه،برای اینکه دیکدش کنن،بعد دیکد خروجی زیر رو خواهد داشت:
if (true){
return;
}
echo 0;
کد شما رو مشابه سازی کامل یا نصفه میکنن،همیشه هم خود اصل کد نمیشه.
برای انجام همچین عملیاتی نیاز به ۱۰۰۰۰ خط کدنویسی هست که کد باینری رو تبدیل به کد پی اچ پی کنه!طرز رمزنگاری و . . . مثل انکد دیکد base64 نیست.
این تاپیک رو از سیر تا پیاز نوشتم الکی دنبال دیکد و . . . نباشید،هم الکی هزینه پرداخت نکنید و هم دیکد خود اصل کد نمیشه،شاید مشابهش بشه ولی جای کد کامل رو نمیگیره.
دیکدر خود من هم طراحیش حدود ۳ ماه زمانبرد،تازه هنوزم جای کار و بهینه سازی داره.
درباره دیکدر خودم و وارد شدن به عرصه دیکد php:
دنبال دیکامپایلر یا دیکدر میگشتم،دیکدری پیدا کردم که شاید همه بشناسنش،easytoyou.eu ioncube 8 decoder.چند هفته زمان گذاشتم تا بررسی کردمش،الگوریتمی رو شبیه سازی کردم برای دیکد،بعد از چند روزی مطالعه تحقیق،رد پای همون موتور دیکدر چینی رو پیدا کردم.تحقیق من از اینجا کلیک خورد،تقریبا از بهمن ماه ۱۴۰۱،تا اواخر فروردین روش وقت گذاشتم تا به یک حد مطلوبی رسید و آرشیوش کردم.بیلد نهایی ام گرفتم و درست مثل دیکدری که نام بردم باندلش کردم و در یک فلشی که با دنیای اینترنت در ارتباط نباشه.علتش چون هم خود سورس کد دیکدره دردسره و هم خود کامپایل شدش،در هر صورت خطرناکه!چون پخش یا منتشر بشه خرابی و دردسر زیادی از خودش به جا میذاره!
اگر میخواید کدتون ایمن بمونه،بهتره اول به روش های مختلف انکد کنید مثل eval base64 که معروفه و هم میتونین کد گمراه کننده هم اضافه کنید و در لایه بعدی کد رو obsufcate و سپس کامپایلش کنید یا همون انکد،این باعث میشه درصد بازگردانی یا دیکدش کمتر بشه!
خود من این روش رو برای آزمایش امتحان کردم،اومدم یک فایل رو ۲۰ بار با eval base64 انکد کردم و بعدش بخشی که گمراه کننده اضافه کردم و سپس obsufcate اش کردم،که حجم فایل ۴۶ کیلوبایت بود و بعد انکد حجمش دبه ۱۵۰ مگ رسید.اجراش نیاز به مموری بیشتری داشت.این روش صرفا یک روش آزمایشیه!
حالا شاید کامپایل کد جالب باشه ولی وقتی کدای پی اچ پی کامپایل میشن در واقع malware محسوب میشن،نگهداری مستقیم باینریش به سیستم آسیب میزنه.
هر چیزی که انکد یا کامپایل میشه،دیکد یا دیکامپایل هم میشه!
اما اگر مبخواید کدتون ایمن بمونه،یا اینکه باید خودتون فایل یه جوری میزبانی کنید یا اینکه انکد کنید بذارید دیکد بشه.
خلاصه پایان حرف،شما هم خودتون را جای برنامه نویس بذارید،ساعت ها عمر و انرژیش رو برای کدنویسی و طراحی یه پروژه میذاره یه عده میان زحمتش رو تو چند ثانیه به باد میدن،که این خودش نه شرعیت داره نه کار قانونیه.
هر چی انکدر و . . . طراحی نکنن،چون وقتی طرز کار کامپایلرش معلومه همونقدرم دیکد میشه.
کل حرف من همین بود،یه سری جاهاییشم با *** جایگزین کردم که حق کسی ضایع نشه.
امیدوارم مناسب بوده باشه.
این آخرین تاپیک در این مورد بود.
اگر سوال یا ابهامی بود در همین تاپیک بپرسید.