PDA

View Full Version : امنیت یک روش....



Navid Asadi
شنبه 12 دی 1388, 22:38 عصر
سلام دوستان...
من یه برنامه نوشتم...
رو قفلش موندم...
راهنماییم میکنید که بهترین روش چیه؟
خودم رو این دارم فکر میکنم که برنامه بیاد سریال هارد یا CPUرو بگیره بعد بر اساس اون یه کد به کاربر بده بعد کاربر اون رو برای ما sms کنه ما هم کد فعال سازی رو براش بفرستیم...
میزان امنیت این روش چقدره؟

Nima NT
یک شنبه 13 دی 1388, 00:29 صبح
ميزان امنيت قفل رو تا پياده سازي نكنيد نميشه در موردش نظر داد.
علاوه بر اين در چه زباني قرار هست قفل رو بنويسيد ؟

bahman_akbarzadeh
یک شنبه 13 دی 1388, 00:35 صبح
منم از همين روش استفاده ميكنم و به نظرم كه هيچ مشكلي توش نباشه.
البته يه سري نكات رو رعايت كنين بهتره :


كد قفل سمت كاربر و كد فعال سازي، Hash شده باشه.
كد چك كردن قفل رو فقط يك جا ننويسين.
محدوديت رو روي تعداد ثبت سند بزارين، نه زمان. چون تو محدوديت زماني، باگ زياد پيدا ميشه.
در نهايت بعد از ساخت فايل اجرايي، اونو Obfuscate كنين و بعدش Pack كنين.

بعد از انجام اين كارها، ديگه نرم افزارتون ارزش كرك كردن رو نداره. :چشمک:

دنیای دلفی
یک شنبه 13 دی 1388, 07:10 صبح
تاپيكهاي اصلي بخش امنيت را مطالعه كنيد براي شروع به نكات مثبتي اشاره شده است .

zoncpp
یک شنبه 13 دی 1388, 08:45 صبح
البته این نکته را توجه داشته باشید که کد شما وابسته به سریال هارد و cpu و حتی دیگر قطعات (همه) باشد. چون اگر مثلا اگر فقط سریال هارد رو چک کنید، ممکن هست به موارد تکراری برخورد کنید.

در مورد پروتکت کردن نهایی فایل exe هم ، همونطور که bahman_akbarzadeh گفت، من هم تاکید می کنم. حتما توجه کنید.
موفق باشی

bahman_akbarzadeh
یک شنبه 13 دی 1388, 10:30 صبح
البته این نکته را توجه داشته باشید که کد شما وابسته به سریال هارد و cpu و حتی دیگر قطعات (همه) باشد. چون اگر مثلا اگر فقط سریال هارد رو چک کنید، ممکن هست به موارد تکراری برخورد کنید.


این نکته رو فراموش کردم بگم که اصلا" قفل رو وابسته به تمامی قطعات نکنید.
چون سیستم به روز میشه و قطعات عوض میشن و دوباره به کد نیاز هست.
فقط از سریال هارد یا سی پی یو استفاده کنین.

در ضمن، این سریال ها همیشه یونیک هستند و کارخانه های سازنده، تعداد سریال مورد نیاز خودشون رو از یک شرکت که کارش همینه میگیرن که تداخلی ایجاد نشه.
مثل ایران نیست که دوتا پی کی کنار هم و هم رنگ هم و هم مدل هم و هم پلاک هم پیدا بشه !!

bahman_akbarzadeh
یک شنبه 13 دی 1388, 10:39 صبح
تازه سویچ هاسون هم، در همدیگرو باز کنه :تشویق:

CYCLOPS
یک شنبه 13 دی 1388, 11:05 صبح
این نکته رو فراموش کردم بگم که اصلا" قفل رو وابسته به تمامی قطعات نکنید.
چون سیستم به روز میشه و قطعات عوض میشن و دوباره به کد نیاز هست.
فقط از سریال هارد یا سی پی یو استفاده کنین.
!!

دقیقا خوب نکته ای هست کلا به نظرم تولید کد امنیتی با استفاده از سریال بیش از 1 قطعه خوب نیست چون کنترلش از دست آدم خارج میشه
از این بلا ها سر خیلی ها اومده که مشتری بابت هر تغییری تو سخت افزارش تماس میگرفته و سریال میخواسته تازه اینطوری نمیشه متوجه شد واقعا سخت افزار رو تغییر داده یا داره کلا برای یه سیستم دیگه درخواست سریال میکنه (یه خرید برای استفاده تو چند سیستم)
به نظر من بهترین مورد همون سریال CPU به صورت تنها هست چون اگر CPU عوض بشه در واقع سیستم کلا عوض شده و طرف باید یه سریال جدید خریداری کنه . . .

Navid Asadi
یک شنبه 13 دی 1388, 13:57 عصر
از چیزایی که گفتی اینا رو نفهمیدم بابا ما تازه کاریم...


كد قفل سمت كاربر و كد فعال سازي، Hash شده باشه.
كد چك كردن قفل رو فقط يك جا ننويسين.(منظورت چیه؟)
در نهايت بعد از ساخت فايل اجرايي، اونو Obfuscate كنين و بعدش Pack كنين.

bahman_akbarzadeh
یک شنبه 13 دی 1388, 15:03 عصر
موقع مقایسه کد ها، باید هر دورو هش کنین و با هم مقایسه کنین، که کرکر با جستجو کردن تو مموری، نتونه مکان مقایسه شدن این 2 تارو پیدا کنه.
میتونین خیلی راحت، از هشینگ آبجکت ها هم استفاده کنین که یک عدد اینتجر بر میگردونه.



EveryThing.GetHashCode();


کد چک کردن قفل رو چند جا بنویسین و ترجیها به یک تابع خاص ارجا ندین. برای اینکه اگر کرکر یک جا رو پیدا کرد، جاهای دیگه گمراهش کنه.
اگر با دات نت کد مینویسین، حتما بعد از ساخت فایل اجرایی، اونو Obfuscate (درهم سازی) کنین که با ریسورسر ها، کدتون به صورت کامل برنگرده.
میتونین از نرم افزار های Obfuscator استفاده کنین که همشون هم پولی هستن و کرک ندارن. فقط یه رایگان خیلی خوب، بعد چند سال پیدا کردم به اسم EzaFuscator که میتونین دانلود کنین.
بعد از در هم سازی، ترجیها با نرم افزاری مثل mpress ، فایل اجرایی حاصل رو پک کنین که هم حجمش کمتر بشه و هم کرک سخت تر بشه.

CYCLOPS
یک شنبه 13 دی 1388, 16:07 عصر
میتونین از نرم افزار های Obfuscator استفاده کنین که همشون هم پولی هستن و کرک ندارن. فقط یه رایگان خیلی خوب، بعد چند سال پیدا کردم به اسم EzaFuscator که میتونین دانلود کنین.



دوست عزیز من چیزی به این اسم پیدا نکردم میشه لینکش رو بذارید ؟

CYCLOPS
یک شنبه 13 دی 1388, 19:51 عصر
بعد از در هم سازی، ترجیها با نرم افزاری مثل mpress ، فایل اجرایی حاصل رو پک کنین که هم حجمش کمتر بشه و هم کرک سخت تر بشه.

mpress خیلی جالب بود توصیه میکنم دوستان هم سر بزنند :
http://www.matcode.com/mpress.htm

من دانلود کردم یه فایل 89 کیلو بایتی هست
البته هنوز تستش نکردم ولی پکر با این حجم و پورتابل باید چیز جالبی باشه !!!

اینم راهنمای استفادش برای دوستان :
(باید با Command Line ازش استفاده کنید)




Usage:
mpress [-options] <file name> [-options]

Options:
-i ignore compression result
-q be quiet
-b create backup file
-x do not manage exceptions (64 bit PE32+)
-S do not patch strong name signature (.NET)
-u do not remove unsupported architectures (mac os x - ub)
-h more help
-m force to use LZMAT
-s search the best LZMA parameters (very slow, better result)
-L short license

Navid Asadi
یک شنبه 13 دی 1388, 20:10 عصر
دست همگی درد نکنه...
اگه بازم نکته ای یا پیشنهادی دارین به من کمک کنین ممنون میشم...

bahman_akbarzadeh
یک شنبه 13 دی 1388, 20:20 عصر
Eazfuscator.Net رو جستجو كنيد.
برنامه خيلي ساده ايه.
يه پنجرا باز ميشه كه اگه فايل اجرايي رو روش درگ كنين، خودش كارشو انجام ميده.
mpress هم همين طوره. لازم نيست از خط فرمانش استفاده كنين. فقط فايل اجراييتون رو روي فايل اصليش، درگ كنين و حجمشو ببينين كه چقدر كم ميشه.
البته كم شدن حجم، روي سرعت لود شدن تاثير داره و كمترش ميكنه.
چون يك پردازش ديگه براي از فشرده سازي در آوردنش لازمه.
در ضمن، تو يكي از همين تاپيك ها، يك نفر نكته جالبي رو گفت و اون اين بود كه بجاي فايل اجرايي موجود در Debug ، از فايل اجرايي داخل Releas ، براي ساخت ستاپ استفاده كنين. تو سرعت لود خيلي تاثير داره.

موفق باشين.

CYCLOPS
یک شنبه 13 دی 1388, 20:39 عصر
خیلی ممنون دوست عزیز
خوبیه این Eazfuscator.Net اینه که علاوه بر رایگان بودن از دات نت CE هم ساپورت میکنه برای همین تو تاپیک
"معرفی مکانیزم های امنیتی برای برنامه های ویندوز موبایل (http://barnamenevis.org/forum/showthread.php?t=196346)" هم معرفی اش کردم
بازم از این ابزار ها بود خوبه اگر معرفی بشه
http://www.foss.kharkov.ua/g1/projects/eazfuscator/dotnet/Default.aspx



mpress هم همين طوره. لازم نيست از خط فرمانش استفاده كنين. فقط فايل اجراييتون رو روي فايل اصليش، درگ كنين و حجمشو ببينين كه چقدر كم ميشه.


من با Drag & Drop به نتیجه ای نرسیدم
یه فایل اجرایی دات نت رو تست کردم و جواب نداد با استفاده خط فرمان هم این خطا رو داد :


PE32/.NET (x86) 8.77kB - MPRESS: Compression increases file size,
use '-i' option to ignore compression result.


تا از سوییچ -i استفاده کردم و درست شد
جالبه که حجم فایلم زیاد شد :متعجب:
فایل اصلی 7.5 کیلو بایت بود بعد از پک شد 8.5 :متفکر:

Nima NT
یک شنبه 13 دی 1388, 22:07 عصر
توصيه من اين هست كه از Mpress و ابزاهاي مشابه اون اصلا" استفاده نكنيد ، در كمتر از 2 ثانيه فايل آنپك ميشه ،‌بريد سراغ برنامه هايي مثل dotNET Reactor يا Smart Assembly.

bahman_akbarzadeh
یک شنبه 13 دی 1388, 22:21 عصر
توصيه من اين هست كه از Mpress و ابزاهاي مشابه اون اصلا" استفاده نكنيد ، در كمتر از 2 ثانيه فايل آنپك ميشه ،‌بريد سراغ برنامه هايي مثل dotNET Reactor يا Smart Assembly.

اينها نرم افزار هاي Obfuscator هستن.
پك كردن، مرحله بعد از Obfuscate كردن هستش، و اين دو نرم افزاري كه گفتين، رايگان نيستن و كرك ندارن.
در ضمن، براي mpress 2.2 ، هنوز Unpacker نيومده. پس فعلا نگران نباشيد.
توصيه ميكنم به سمت Obfuscator هاي پولي نرين. چون ممكنه مثل SmartAssembly بعد 60 روز، نرم افزار رو از كار بندازه.

Nima NT
یک شنبه 13 دی 1388, 22:24 عصر
پك كردن، مرحله بعد از Obfuscate كردن هستش، و اين دو نرم افزاري كه گفتين، رايگان نيستن و كرك ندارن.
درسته رايگان نيستن ولي كرك دارن.

در ضمن، براي mpress 2.2 ، هنوز Unpacker نيومده. پس فعلا نگران نباشيد.
حتما" لزومي نداره با استفاده از نرم افزار خاصي آنپكش كرد ، ميشه دستي هم اينكار رو انجام داد ، دستي اون حدود 2 ثانيه طول ميكشه ، حالا با نرم افزار آنپكر شايدم كمتر.

توصيه ميكنم به سمت Obfuscator هاي پولي نرين. چون ممكنه مثل SmartAssembly بعد 60 روز، نرم افزار رو از كار بندازه.
در مورد برنامه اي كه گفتيد بله ، چندين بار ديدم كه برخي دوستان به اين مشكل برخورد كردن ولي در مورد نرم افزارهايي مشابه در صورتي كه درست كرك شده باشن كمتر همچين مواردي مشاهده شده.

MIDOSE
دوشنبه 14 دی 1388, 18:53 عصر
امنیت یک روش....
عنوان تایپیک بیانگر محتوای ان هست؛اولین سوال یک تایپیک موضوع بحث است و...

سایر بحث ها را از طریق pm در چت روم ها و سایر روش های موجود مطرح کنید.

پ.ن:از انجایی که بارها این مسئله را متذکر شده ام + جزئی از قوانین است؛ تایپیک پاک سازی شد.

موفق باشید.