نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
سلام
دیدم چند نکته را لازم هست که یادآوری کنم:
1- کی گفته ما ایرانی ها کرک می کنیم؟
کرک ها رو روس ها معمولا انجام میدند و ما ایرانی ها از اونها استفاده می کنیم.
2- هر برنامه ای راحت کرک بشه به این دلیل بوده که راحت هم نوشته شده.
3- امنیت لینوکس و ویندوز و VS ربطی به امنیت برنامه هایی که ما تحت NET. می نویسیم نداره. لطفا برخی دوستان به بحث حاشیه ندند.
4- لطفا به خاتمه ی بحث نظر ندید. اگه کسی از این بحث خوشش نمیاد می تونه تو این بحث شرکت نکنه.
5- بد نیست روند جهانی گرایش به زبان های برنامه نویسی را ببینید و خودتون نظر بدید که کدوم برنامه رشد کاربرانش زیاد شده و کدوم کم. (قابل توجه اونایی که میگند C# امنیت نداره برید سراغ نرم افزارهای دیگه)
6- ANSI,Win7,Vista و خیلی نرم افزارهای شاخ دیگه هم کرک شدند که به زبان های Native بودند.
7- C# خیلی خوانا هست. پس کد مهندسی معکوس شده ی اون هم باید قاعدتا خوانا باشه.
8- شما برید اسکریپت Obfuscade شده ی JavaScript را یک نگاه بندازید. بعد خودتون قضاوت کنید کد Obfuscade آیا قابل خوندن هست یا نه. آدم کد خودش رو هم به زور می خونه چه برسه به کدی که Obfuscade شده باشه. به خصوص زمانی که Function ها Highly Overload میشند. برای همین کد ما برای کرکر ها به یک آشغال کد تبدیل میشه.
هم میشه کد ++C را باز کرد هم C# را با این تفاوت که کد باز شده ی C# یکم سطحش بالاتره. ولی برای یک برنامه ی بزرگ به این راحتی ها هم که گفته میشه قابل فهم نیست.
9- برخی برنامه نویس ها خودشون سوتی میدند که کدشون راحت هک میشه.
چند تا نکته به نظر من میاد که کمک زیادی به حفظ برنامه ی ما میده:
- در برنامه هیچ وقت string های حیاتی را دم دست قرار ندید. برخی رشته ها را میشه ROT13 کرد یا با روش های دیگه کد کرد. دزد تو خونه ی هر کسی میره اول کجا رو می گرده؟ پولت رو اونجا قرار نده.
- در برنامه ی خود زمان را چک کنید. تا ببینید برنامه در حال اجرای عادی هست یا در حال دیباگ شدن. این کار حداقل یکم کرک کردن را سختتر می کنه.
- از کد های یتیم معلق در برنامه برای رد گم کردن استفاده کنید. لازم نیست که همه ی کد ها کار مفید انجام بدند.
البته این ها روش هایی هست که من (که رشته م کامپیوتر نیست و تفننی برنامه نویسی می کنم) پیشنهاد می کنم. مسلما یک برنامه نویس حرفه یی راه های بهتری هم سراغ داره.
10- چرا کسی در این مورد که "یکی از امنیتهای C# به این صورته که نفوذ از خارج محیط اون به داده هاش غیر ممکنه" حرفی نمی زنه؟
11- با کد IL حال نکردی برو نسخه ی کرک شده ی مبدل های IL به Native را دانلود کن برنامه را Native بکن تا خیالت راحت بشه. به هر حال برنامه یا باید IL باشه یا Native نمی شه که همه ی مزیت هر دو را با هم داشته باشه.
نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
دو جمله هم من بگم؟!
1- امنیت مطلق نیست و نسبی است. شما دارید فکر میکنید که مطلقه. یا امنیت هست یا نیست!
خب، باید بگم که اصلا اینطوری نیست! به دلیل منطق رایانه، شما هیچوقت نمیتونید امنیت 100% رو تضمین کنید.
کد کامپایل شده هر زبان برنامه نویسی رو میشه به سورس تبدیل کرد.
همونطور که میدونید برنامه های ما (بعد از گذشت چند لایه) تبدیل به 0 و 1 هایی میشه که زبان cpu است. حالا ما اگه شروع کنیم و این مراحل رو به عقب برگردیم، به همون سورس کد اصلی میرسیم (با کمی تغییر در نام متغیرها و ...)
این قضیه درست مثل اینه که یک ایرانی به فارسی حرف بزنه، بعد مترجم به عربی تبدیلش کنه، یکی دیگه به انگلیسی، یکی به فرانسوی و یکی دیگه به هندی.
بعد دوباره از هندی ترجمه کنن به فرانسوی و انگلیسی و عربی و فارسی.
بنابراین نمیشه گفت که هیچ زبان برنامه نویسی با امنیت نیست!
2- امنیت باید در ذات و ذهن برنامه نویس باشه، نه در زبان برنامه نویسی!
مثلا شما سورس بیش از 99% برنامه های PHP رو در اختیار دارید. حالا اگه میتونید، همین انجمن برنامه نویس رو که به زبان php نوشته شده رو هک کنید و پسورد پایگاه داده ی این انجمن رو که در یک فایل php ذخیره شده و به صورت plain text است رو بدست بیارید.
نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
اما کلا من ترجیح می دم سورس برنامه ام لو بره به جای اینکه کلی زحمت بکشم تا با یک زبان native مثل C++ کار کنم.
تازه اگر کمی با پروتکتور ها روی برنامه کار بشه هیچ اشکالی پیش نمی یاد.
تازه مگر کپی رایت هست که بخواین برنامتون رو به روسیه صادر کنید و نگران کرک شدن اون هستید.:قهقهه:
نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
اول از همه شما باید معنی امنیت رو بدونی .
دوم اگه شما از سی شارپ دلسرد شدی پس باید کلاً تمام زبان های دانت نت رو بزاری کنار چون سی شارپ هم جزئی از دات نت محسوب میشه مثل VB یا C++ و ...
سوم اگه اینقدر که شما میگی دات نت ضعیفه مایکروسافت توابع هوشمند سیستم عامل هاشو با سی شارپ طراحی نمی کرد.
* این پست توسط Amir Oveisi ویرایش شده است *
نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
دوست عزیز آخرین پست این تاپیک مال یک ساله پیشه
لطفا" یک مقدار به تاریخ تاپیک ها و پست ها دقت کنید
نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
نقل قول:
نوشته شده توسط
wolf_majid
دوست عزیز آخرین پست این تاپیک مال یک ساله پیشه
لطفا" یک مقدار به تاریخ تاپیک ها و پست ها دقت کنید
این نشان می دهد که واقعا مطالب این انجمن طوری هست که بقیه با دقت همه پست ها را می خوانند و احتمالا دنبال مطلبی بودند ایشان که از طریق جستجوگرها به اینجا هدایت شدند
نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
واااااااای سرم سوت کشید.
چیزی که از خوندن 9 صفحه فهمیدم این بود که:
حالا کو تا ما برنامه نویس شیم !!! از برنامه نویس شدن نا امید شدیم !!!!
نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
نقل قول:
نوشته شده توسط
saied7468
بستگی به شرکت و برنامش داره .
مثلا یکی از برنامه هایی که تیم من نوشت اگر مشتری رو ببینیم زیاد وضع مالیش خوب نیست و معمولا هم کامیونیتی سرویس هستند و تخفیف شیرین بدهیم فقط هزینه نصب برنامه رو نیم میلیون دلار ازشون میگیریم. با سی شارپ هم نوشتیمش. حالا آخه فکر میکنی برنامه ای که نیم میلیون دلار فقط هزینه نصبش هست رو مگه اصلا میشه روی سیدی کپی کرد داد به کسی که حالا طرف هم بخواد بزنه سورسش رو دربیاره؟
کلیه دیتاهای کلیه مشتری ها رو روی دیتاسنترهای خودمون هوست میکنیم. اینجور برنامه های تحت ویندوزی رو هم روی Citrix بهشون تحویل میدهیم. امنیت خود به خود تضمین شده.
بنابراین برای شرکت ها واقعا این سوالاتی مثل کرک کردن سورس و اینکه یک اینستالر بنویسم که با یک دکمه همه چیز رو نصب کنه و ... اصلا مطرح نیست. چیزی که مطرح هست معماری صحیح برنامه هست . پرفورمنس و کارایی و حرفه ای بودن برنامه هست. Enterprise Level Dude
امیدوارم جواب سوالت رو در سطح Enterprise داده باشم . راستش سطح کمترش رو اصلا خبر ندارم مردم چکار میکنند. نمیدونم.
نقل قول: چرا با وجود امنیت کم دات نت ازش در برنامه های تجاری استفاده می شه !!
نقل قول:
اگه فایل اجرایی اون برنامه ای رو که شما واسه شهر داری نوشین رو یکی از کارمندان شهرداری بهش نفوذ کنه و رمز عبور پایگاه داده های شما فاش بشه و...
البته منم می دونم که خیلی راه برای جلوگیری از این اتفاق وجود داره ولی فرض محال که محال نیست ، اگه فرضا" رمز عبور پایگاه داده ها فاش بشه اون برنامه هیچ ارزشی نخواهد داشت
منظورتون فایل اجرایی یک برنامهء دسکتاپ هست؟ یا منظورتون فایل برنامه های ASP.NET است؟