امنیت یکی از بخشهای کلیدی هر نرم افزار است که باید از اولین مراحل پروسه تولید در نظر گرفته شود . در واقع شما باید یک معماری ایمن برای تولید نرم افزار خود انتخاب کنید . با این حال داشتن یک معماری ایمن تنها شرط لازم است و به هیچ وجه کافی نیست .
هنگام کدنویسی لازم است که رهنمونهای ذیل رو در خاطر داشته باشید :
1- هیچگاه به ورودیهای کاربر اعتماد نکنید
هر کاربر رو یک دشمن در نظر بگیرید تا اینکه خلاف آن به شما ثابت شود . بنابراین همیشه ورودیهای کاربر را اعتبار سنجی کنید . کدتون رو طوری بنویسید که تنها دادههای معتبر رو بپذیرد و لاغیر . در ASP.NET علاوه بر کنترلهای Validtion که به صورت Client-Side عمل میکنند ، به صورت Server-Side نیز دادههای ورودی کاربر را Validate کنید ، چون همیشه این امکان هست که در مرورگر کاربر Java-Script غیر فعال کرده باشد و Client-Side Validation عمل نکند .
2-هیچگاه از الحاق یا اتصال رشتهها برای ایجاد یک کوئری SQL استفاده نکنید
در واقع انجام دادن اینکار مساوی است با باز گزاشتن راه برای حملات SQL Injection . همیشه از دستورات مبتنی بر پارامتر استفاده کنید مثل Stored Procedureها . هرچند که همه Stored Procedureها در برابر حملات SQL Injection مقاوم نیست . LINQ 2 SQL به خودی خود تا حد بسیار زیادی در برابر SQL Injection مقاوم ست .
3-هیچگاه دادههای وارد شده توسط کاربر را قبل از اینکه اعتبار سنجی کنید یا encode کنید به صورت مستقیم در صفحه وب به نمایش نگزارید .
کاربر میتواند کدهای جاوااسکریپتی مخرب را از طربق فرمهای ورودی به وب سایت شما وارد کند و این باعث آسیب پذیری وب سایت شما از طریق حملات XSS یا Cross Site Scripting شود . بنابراین همیشه از متد HttpUtility.HtmlEncode() استفاده کنید .
4-هیچگاه دادههای حیاتی و مهم را در Hidden fieldها ذخیره نکنید
Hidden fieldها براحتی قابل خواندن و تغیر هستند ، کاربر میتواند براحتی با دیدن Source صفحه شما مقدار Hidden fieldها را بخواند ، آن را تغیر دهید و در فایل ذخیره کند . در این حالت فرد نفوذگر کافی است که فرم ذخیره شده را به سرور ارسال کند . پلاگین یا Add-onهای هستند که اینکار رو بسیار ساده میکند ، به سادگی ایمیل زدن .
5-هیچگاه دادههای حیاتی و مهم را در ViewState ذخیره نکنید
ViewState نیز یک مدل دیگر از Hidden field است که مایکروسافت اختصاصا در ASP.NET Web formها استفاده کرده است . مایکروسافت View state رو با ASP.NET عرضه کرد برای اینکه برنامه نویسی وب رو شبیه به برنامه نویسی ویندوز کند و با اینکار خیل عظیمی از برنامه نویسان ویندوز از ASP.NET Web formها استفاده کردند . اگر چه ViewState را نمیتوان به راحتی تغیر داد ولی به راحتی میشود آن را خواند.
6- هنگامی که از ASP.NET Form Authentication استفاده میکنید SSL را فعال کنید .
SSL برای مخفی کردن دادهها مهمی مثل کلمه عبور ، شماره کارت اعتباری و … بسیار مهم است . در واقع با ایمن کردن کانال ارتباطی مرورگر و وب سرور ، احتمال نفوذ و شنود دادهها توسط نفوذگر را بسیار کم میکنید . نکته جالب اینجاست که SSL در ISS ست میشود و با برنامه نویسی شما هیچ تداخلی نخواهد داشت . تنها در ابتدای آدرسها یک s به انتهای http اضافه میشود
7-از کوکی هایتان محافظت کنید .
همیشه از Authentication Cookie هایتان در زمان استفاده از Form Authentication محافظت کنید و زمانی Time-out را تا جایی که امکان دارد کوتاه ست کنید . و تنها تا اندازه ای طولانی باشد که لازم باشد و نه بیشتر .
8-از SSL استفاده کنید .
به طور کلی اگر برنامه کاربری وب شما دادههای مهمی را پردازش میکند . کل وبسایت رو با SSL ایمن کنید.
منبع : م.دیندار
اگر به دنبال انتخاب معلم خصوصی حرفه ای یا دوره های آموزشی در آموزشگاه های معتبر هستید؛ با ثبت اطلاعات خود در فرم درخواست معلم خصوصی یا رزرو آموزشگاه می توانید هر چه سریعتر به کمک بلدیاب کلاس خصوصی یا گروهی مناسب خود را بیابید. (مشاهده فرم درخواست)
اگر برای برگزاری کلاس های خصوصی, نیمه خصوصی یا گروهی خود نیاز به فضای آموزشی دارید، سایت بلدیاب امکانی برای شما فراهم کرده تا بتوانید با توجه به شرایط تدریس تان، اقدام به اجاره فضای آموزشی مناسب خود نمایید. (مشاهده مکان های آموزشی)
سایت بلدیاب با معرفی و تبلیغ دوره های آموزشی مدرسین خصوصی و آموزشگاهای کل کشور فضایی را فراهم نموده تا کاربرانی که نیاز به دوره های آموزشی مختلف دارند با یک جست و جوی ساده در بلدیاب بتوانند مدرس یا آموزشگاه مناسب خود را بیابند و اطلاعات تماس آنها را مشاهده کنند. (درخواست دوره های آموزشی)
مدرسین خصوصی و آموزشگاه داران محترم می توانند برای تبلیغ دوره های آموزشی خود و جذب شاگرد برای کلاس های خصوصی و گروهی ، در هر زمینه ای (درسی، فنی، هنری، ورزشی، مالی ، حسابداری، کسب و کار و ... ) در سایت بلدیاب ثبت نام کنند و از خدمات آن استفاده نمایند. (ثبت نام و همکاری)
اگر مدرس خصوصی هستید یا آموزشگاه دارید بهتر است قبل از ثبت دوره های آموزشی خود از راهنمای بلدیاب استفاده کنید تا در معرفی دوره های خود و جذب شاگرد یا هنرجو موفق تر عمل کنید. (مشاهده راهنمای بلدیاب)
" اگر به دنبال دورههای آموزشی در هر زمینه ای به صورت خصوصی یا نیمه خصوصی هستید، یا میخواهید از دورههای برگزار شده توسط آموزشگاههای استان خود باخبر شوید، در وب سایت بلدیاب میتوانید اساتید و آموزشگاههای که دوره شما را برگزار میکنند را پیدا کنید، در صورت نیاز با آنها تماس بگیرید و به صورت حضوری با آنها کلاس برگزار کنید. "
شما هم می توانید نظر خود را درباره سایت بلدیاب ثبت کنید.