امنيت

امنیت برنامه خود را تضمین کنید (قسمت اول )

تبلیغات
کانال تلگرام فتولیا
4 سوالی شهرداری

با هر نگاهی که بخواهید به یک برنامه تحت وب نگاه کنید متوجه خواهید شد امنیت مهمترین رکن اساسی خواهد بود . شاید امروز بعد از امنیت سرور ها مهمترین بحث امنیت پایگاه داده باشد . طراحان وب همواره در تلاش هستند تا بتوانند امنیت برنامه های خود را بالا برده تا جلوی حملات هکرها را بگیرند . همان طور که همه شما می دانید پایگاه داده مایکروسافت Sql Server معروف است که به عنوان امن ترین پایگاه داده در دنیای وب شهرت زیادی دارد . مایکروسافت از نسخه ۲۰۰۵ این پایگاه داده بهبود هایی را صورت داده که به Sql Server این امکان را می دهد تا از جدید ترین نسل های سخت افزاری با کارایی بالا بهره ببرد . البته چون در این مقاله موضوع اصلی بر سر قدرت و معرفی Sql Server نمی باشد فقط به نام بردن این امکانات تازه می پردازیم .
—- پشتیبانی سخت افزاری جدید
—- پشتیبانی ۶۴ بیتی طبیعی
—- پشتیبانی NUMA
—- پشتیبانی از Hyper-Thereading
—- یکپارچگی .Net Framework
—- پشتیبانی چند نمونه ای بهبود یافته
—- انواع داده جدید
—- تصویر گیری و قرینه کردن پایگاه داده
—- پشتیبانی HTTP طبیعی
—- DDL Triggers و Server Event
—- بهبود های فایل پایگاه داده
—- پارتیشن بندی داده
—- بهبود های ایندکس
—- عملیات ایندکس آنلاین
—- و صدها قابلیت فوق العاده

در اکثر برنامه های مبتنی بر وب حداقل از یک بانک اطلاعاتی برای ذخیره و بازیابی اطلاعات استفاده می شود . بانک های اطلاعاتی یا Data base ها قلب یک وب سایت تجاری یا بازرگانی می باشند . پس اگر بانک اطلاعاتی آنها هک شود یک ضرر مالی بزرگ در انتظار شان می باشد .

دیتابیس اکثر سایت ها حالا Microsoft Sql Server می باشد ( بیشتر سایت های Asp.Net) ولی یکی از اصلی ترین رقیبان این پایگاه داده Oracle هست که چند وقت پیش ادعای غیر قابل نفوذ بودن کرده بود و همین عامل باعث شد تا نفوذگران به مقابله با آن بپردازند و حفره های (BUG) زیادی در آن بیابند . آمار نشان می دهد در سال گذشته دیتابیس MSSql ( Microsoft Sql Server) هیچ باگ جدیدی نداشته در صورتی که Oracle با دهها باگ جدید روبرو شده . این در حالی می باشد که سرور های Oracle بسیار گران قیمت می باشد.

تزریق اطلاعات ناخواسته به دیتابیس .
یکی از راههای برای معروف برای دسترسی غیر مجاز و دریافت اطلاعات از دیتابیس تزریق کدهای مخرب می باشد که به نام Sql Injection معروف شده . در این روش هکر با پیدا کردن برنامه های غیر استاندارد و نا امن سعی می کند تا با وارد کردن کدهایی از جنس Sql به دیتابیس به آن آسیب وارد کند یا قسمتی از اطلاعات را هک کند . برای این کار نفوذگر باید در گام اول آسیب پذیری را تشخیص دهد . برای این کار نفوذگر باید خطاهایی را در برنامه به وجود بیاورد آنوقت باید تشخیص دهد آنها به Sql مربوط می باشند یا خیر .
در این روش هکر می تواند در اکثر مواقع دو نوع خطا تولید کند .
—- به وسیله Web Server در اثر یک مشکل در برنامه تولید می شود .
—- به وسیله کدهای Application تولید می شود .

با دانستن نوع خطاهایی که تولید می شود هکر می تواند به گام دوم نفوذ خود ادامه دهد . به این منظور آزمایش تکنیک های Sql Injection انجام می شود . از قبیل :

—- اضافه کردن کلمات کلیدی Sql یا Sql Keyword ها مثل : AND , OR , …
—- اضافه کردن Meta character ها مثل ; یا ‘

در آینده بیشتر در مورد امنیت در برنامه های وب توضیح خواهم داد .

9 Comments

  1. ببینید کلمه اپن سورس یه مفهوم کلیه،اصلا یه حرکته،یه جامعه رو میسازه، قابل مقایسه نیست با برنامه های سورس بسته!

    امنیت قطعی نیست!! اینو تو ذهنت داشته باش،درسته سورس یه برنامه اپن سورس در دسترسه،ولی دال بر بی امنیتی اون نمیشه،به هیچ وجه!

    کدهاس دنیای اپن سورس سریع تر،بی خطاتر،بهینه تر و صدالبته امن تر هستن،شاید این منطق استثناهایی داشته باشه ولی فقط یه استثناست و بس!

    اکثرا حرکتهای دنیای مجازی و حرکتهای اساسی با همین پروژه های اپن سورس کلید خورده،قدرت رو با اپن سورس میشه لمس کرد توام با آزادی.

    1. Goback جان می دونی مشکل تو از کجاست ؟!

      از اونجایی ناشی می شه که خودت رو برای نوشتن یه برنامه تو دردسر نداختی بلکه همیشه آماده مصرف کردی اگه روزی ۱۶ ساعت به مدت یک ماه مداوم روی یه برنامه کار کنی و بعد رایگان منتشرش کنی اونوقت می فهمی من چی می گم برادر من الان حدود ۶ ساله برنامه نویسی کار می کنم هم Application و هم وب ولی خیلی کم پیش اومده برنامه ای رو رایگان منتشر کنم ( یکی دو بار )

      1. بله دوست من،شما برنامه نویس وب اپلیکشن هستید،درست!

        طعم آماده خوری رو مایکروسافت و امثالهم به کاربرانشون خوب چشوندن!

        اگر من از جامعه اپن سورس حمایت میکنم،مبنی بر این نیست که کدهامو کپی میکنم یا مشکلی دارم که دم از جامعه سورس باز میزنم،مبنی بر این نیست که کد نمینویسم،تو حرف خودتون جواب خودتون هست،به نظرتون چرا این همه کدآماده تو دنیای اپن سورس زیاد هستش؟چون فقط نسشتن کپی پیست کردن و کاستومایز؟؟

        این زیادی اسکریپت و سورس فری خودش دلیل هست بر قدرت این جامعه و تعداد کدنویس هاش! کدنویسهایی که مصرف کننده نیستند،آماده خوری نمیکنن،محیطهایی مثل دات نت دم دستشون نیست که آماده گی رو بچشن! خودشون مینویسن و به اشتراک میذارن.

        نگاه من تعصبی نیست،شماهم تعصبی نگاه نکنید،به نظرتون چرا شما باید همچین حرفی رو بزنید:"اگر یک بار این اپن سورس رو ولش کنی و به دنیای مایکروسافت وارد بشی دیگه ولش نمی کنی"

        وقتی شما میخواین یه اینپوت بذارین از منوی کناری اینزرتش میکنین بدون کدنویسی!،و یا برای یه راتباط با دیتابیس با چندتا کلیک کارتون راه میفته،اونوقت میاین از نوشتن برنامه سخن میگین؟؟

        مقایسه محصولات مایکروسافتی که مقابل جامعه اپن سورسه خیلی کار جالبی نیست!

        به هرحال درکتون میکنم،۶سال کدنویسی با محصولات مایکروسافت! علت خوبیه برای نظراتتون.

        1. دوست من فقط با مایکروسافت کار نمی کنم برای application از دلفی استفاده می کنم . در ضمن برنامه نویس دات نت حوصله طراحی یه منو رو نداره چون باید کدهای زیادی بنویسه در دات نت هم کد نویسی خیلی رایجه وقتی می شه وقت رو برای یه منو حروم نکرد چرا باید ساعت ها معطل شد ؟ مایکروسافت برنامه نویس هاشو تنبل نکرده پیش به جلو می بره شما اگه بری دنبالش می بینی مایکروسافت چه تکنولوژی هایی داره می سازه که تو PHP خیلی هنوز مونده شما بزرگترین سایتی که می شناسی با PHP کار شده رو نام ببر ؟ من چند تا از برنامه های دات نت رو می گم :

          گوگل

          یاهو

          سایت فایرفاکس

          فکر کنم (bing)

          کلوپ

          میهن بلاگ

          بلاگفا

          تبیان

          فیس بوک

          یوتیوب

          MSN

          Microsoft

          بلاگر

          و…

          که همه در رتبه های اول هستن حتی در php هم ۹۰ در صد برنامه نویس ها اپن سورس کار نمی کنن

          1. شما اگه این لینک رو بخونید منظورم رو می گیرید در واقع اپن سورس شاید مشکل نداشته باشه ولی نمی شه بهش زیاد اطمینان کرد حالا هر کس نظر خودشو داره خیلی هم سر این موضوع بحث می شه هیچ کس هم طرف مقابل رو قبول نداره شما اپن کار کن ما Close

            http://barnamenevis.org/showthread.php?90797-%D8%

  2. عزیز دل برادر اپن سورس اصلا خوب قبول ولی باور کن در اپن سورس نمی شه امنیت رو حفظ کرد حتی در محصولات مایکروسافت درضمن شما اگر یک بار این اپن سورس رو ولش کنی و به دنیای مایکروسافت وارد بشی دیگه ولش نمی کنی

  3. بازتاب: امنیت برنامه خود را تضمین کنید (قسمت اول ) | پرتال جامع و خودکار اسکریپت 24

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

آخرین مقالات فتولیا در ایمیل شما

در خبرنامه ما عضو شوید و آخرین مطالب و مقالات آموزشی را اول شما دریافت کنید