wownetortNikita Starichenko
+ سال توسعه دهنده پشته کامل
OWASP Top 10 یک سند آگاهی استاندارد برای توسعه دهندگان و امنیت برنامه های وب است. این یک اجماع گسترده درباره مهمترین خطرات امنیتی برای برنامه های وب است.
در این مقاله ، من می خواهم قسمت دوم آسیب پذیری های TOP 10 و نحوه محافظت در برابر آنها را با استفاده از .NET.
6. پیکربندی غلط امنیتی
پیکربندی نادرست امنیتی می تواند در هر سطح از برنامه های پشته ، از جمله سرویس های شبکه ، پلت فرم ، وب سرور ، سرور برنامه ، پایگاه داده ، چارچوب ها ، کد سفارشی و از پیش نصب شده رخ دهد ماشین های مجازی ، کانتینرها یا فضای ذخیره سازی. چنین نقصهایی معمولاً به برخی از دادهها یا قابلیتهای سیستم دسترسی غیرمجاز را به مهاجمان می دهد.
چه کاری باید انجام داد؟
app.UseHttpsRedirection ()؛
برای تأیید خودکار همه درخواست ها غیر از GET ، HEAD ، OPTIONS و TRACE مورد نیاز برای افزودن فیلتر اقدام جهانی با مشخصه AutoValidateAntiforgeryToken در داخل Startup.cs
{ options.Filters.Add ( new AutoValidateAntiforgeryTokenAttribute ())؛
})؛
اگر لازم است رمز را در GET ، HEAD ، OPTIONS یا TRACE نیز تأیید کنید – درخواست هایی که می توانید ویژگی ValidateAntiforgeryToken را به روش کنترل کننده (برای کنترل کننده های MVC) یا والد اضافه کنید class (برای صفحات Razor):
[ تأیید اعتبار ضد مصنوعی ]
public IActionResult DoSomethingDangerous()
[ تأیید اعتبار ضد مصنوعی ]
public class SafeModel : PageModel
درصورت امکان ” از فیلتر اقدام جهانی استفاده کنید ، ویژگی AutoValidateAntiforgeryToken را به کلاسهای کنترل کننده یا مدلهای صفحه تیغ خود اضافه کنید:
عمومی کلاس UserController
عمومی کلاس مدل SafeM : PageModel
7. CrossSS Site Scripting (XSS)
XSS دومین مسئله شایع در OWASP Top 10 است و تقریباً در دو سوم کل برنامه ها یافت می شود. تأثیر XSS برای منعکس شده و DOM XSS متوسط و برای XSS ذخیره شده شدید است ، با اجرای کد از راه دور در مرورگر قربانی ، مانند سرقت اطلاعات ، جلسات یا تحویل بدافزار به قربانی.
چه کاری باید انجام داد؟
8. برطرف کردن ناامنی از شیر زدایی
نمی توان تأثیر نقص رفع شیر زدایی را بیش از حد بیان کرد. این نقص ها می تواند منجر به حملات اجرای کد از راه دور ، یکی از جدی ترین حملات ممکن شود.
چه کاری باید انجام داد؟
9. استفاده از م withلفه های آسیب پذیر شناخته شده
شیوع این مسئله بسیار گسترده است. الگوهای توسعه م -لفه های سنگین می تواند منجر به این شود که تیم های توسعه دهنده حتی از درک م whichلفه هایی که در برنامه یا API خود استفاده می کنند ، نفهمند ، بسیار کمتر آنها را به روز نگه می دارد. در حالی که برخی از آسیب پذیری های شناخته شده تنها به اثرات جزئی منجر می شوند ، اما برخی از بزرگترین نقض های موجود تاکنون به بهره برداری از آسیب پذیری های شناخته شده در اجزا متکی بوده اند.
چه کاری باید انجام داد؟
10. ورود به سیستم و نظارت کافی
مهاجمان برای دستیابی به اهداف خود بدون شناسایی ، به عدم نظارت و پاسخ به موقع اعتماد می کنند. بیشتر حملات موفق با کاوش آسیب پذیری آغاز می شوند. اجازه ادامه این کاوشگرها می تواند احتمال بهره برداری موفقیت آمیز را تقریباً به 100٪ برساند.
چه کاری باید انجام داد؟
{ اگر (env.IsDevelopment ()) { _isDevelopment = درست است ؛ app.UseDeveloperExceptionPage ()؛ } // تمام خطاهای موجود در برنامه را وارد کنید app.UseExceptionHandler (errorApp => { errorApp.Run ( همگام سازی زمینه => { var errorFeature =text.Features.GET
}
از شما برای خواندن تشکر می کنم!
قسمت اول – https://hackernoon.com/owasp-top-10-net-protection-a-guide-part-1-w92r3wis
اطلاعات بیشتر در مورد OWAS P – https://owasp.org/www-project-top-ten/