با سلام

در مقاله قبل  آموزش جلوگیری از حمله xss در asp.net رو آموزش دادم و آموختید که چگونه سایت خود را در مقابل حملات xss ایمیل کنید در مقاله قبل از آن نیز
5 اشتباه امنیتی خطرناک برنامه نویسان وب با asp.net رو بیان کردم و در آن آموختید که قبل از منتشر کردن سایت خود باید چه تنظیماتی را انجام دهید و مهم ترین اشتباهات امنیتی برنامه نویسان asp.net رو آموختید.

همانطور که می دانید امنیت سایت یکی از بزرگترین دغدغه های هر برنامه نویس وب است ، چه بسا بیش از 60 درصد زمان مصرف شده جهت طراحی یک وب سایت ، صرف برقراری امنیت آن می شود.

مسلما هیچ برنامه نویسی از روی قصد باگ (حفره امنیتی) روی سایت خود قرار نمی دهد ، بلکه اغلب برنامه نویسان از باگ های امنیتی سایت خود بی خبرند و با خیال راحت سایت خود را بر روی بستر اینترنت منتشر می نمایند.

جالب است بدانید که بسیاری از برنامه نویسان asp.net فرم های ثبت نام را فقط و فقط با کنترل های validator چک می نمایند و در سمت کد نویسی سرور ، اصلا اطلاعات دریافت شده از فرم را بررسی نمی نمایند ؟!

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

جالب است بدانید که بسیاری از برنامه نویسان asp.net هنوز با مفهوم لایه بندی نا آشنا هستند و هنوز که هنوزه کانکشن استرینگ خود را درون فایل web.config ذخیره می نمایند !
غافل از اینکه در صورتی که یک هکر سرور را بزند ، به راحتی می تواند اطلاعات دیتابیس شما را از داخل فایل web.config بخواند و دیتابیس شما را با خاک یکسان نماید.

ولی در بحث لایه بندی ، اطلاعات دیتابیس به همراه برخی توابع بصورت یک لایه (لایه data access) در می آیند و در زمان انتشار سایت ، بصورت یک فایل DLL کاملا بسته بر روی هاست منتظر می شوند.

حتی برخی از برنامه نویسان هنوز صفحات سایت های خود را کد نمی کنند و بصورت معمول بر روی سرور قرار می دهند ، به این دسته پیشنهاد می شود در زمینه روش های انتشار (publish) وب سایت های asp.net تحقیق نمایند.
در روش های جدید حتی کد های html صفحات هم DLL می شود ، بصورتی که خود برنامه نویس هم نمی تواند محتوای کد های html  و کد های نوشته شده در صفحات code behind  و .... را مشاهده نماید (کلا dll می شود و توی dll رو نمیشه دید!)

امنیت در asp.net - netnic.ir
امیدوارم که از این آموزش هم لذت برده باشید

تا آموزشی دگر بدرود

نت نیک . آی آر

نوشته شده در تاریخ سه شنبه 20 فروردین 1392    | توسط: ح.م    | طبقه بندی: آموزش امنیت در asp.net،     | نظرات()