دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۴
  • شهریور

جلسه ۱۸-۰۳ : آسیب پذیری های امنیتی رایج وبسایت ها – آموزش هک قانونمند

  • دسته‌بندی‌ها :
جلسه ۱۸-۰۳ : آسیب پذیری های امنیتی رایج وبسایت ها – آموزش هک قانونمند
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      درود بر شما عزیزان و کاربران سایت پی وی لرن. با آموزش رایگان هک قانونمند در خدمتتون هستیم.
      در بخش سوم مبحث ۱۰ آسیب پذیری امنیتی رایج وبسایت ها هستیم. در این قسمت به ادامه ی مبحث آسیب پذیری امنیتی رایج در وبسایت ها با معرفی آسیب پذیری Security Misconfiguration ، آسیب پذیری Insecure Cryptographic Storage و آسیب پذیری Failure to restrict URL Access و غیره می پردازیم.

      ۱۰ آسیب پذیری امنیتی رایج در وبسایت ها

      در ابتدا آسیب پذیری Security Misconfiguration که از جمله آسیب پذیری امنیتی رایج در وبسایت ها هستش رو معرفی خواهیم کرد.

      آسیب پذیری Security Misconfiguration (پیکربندی امنیتی اشتباه)

      Security Misconfiguration باید برای برنامه، چارچوب، سرور برنامه، سرور وب، سرور پایگاه داده و پلتفرم تعریف و اجرا شود. اگر این ها به درستی پیکربندی شده باشند، مهاجم می تواند دسترسی غیر مجاز به اطلاعات یا قابلیت های حساس داشته باشد.

      گاهی اوقات این نقص ها منجر به سازش کامل سیستم می شود. نگه داشتن نرم افزار به روز نیز برای امنیت خوب است.

      پیامدهای آسیب پذیری Security Misconfiguration

      با استفاده از این آسیب پذیری، مهاجم می تواند اطلاعات مربوط به نسخه های فن آوری و اطلاعات ورژن برنامه های سرور، اطلاعات پایگاه داده و اطلاعات مربوط به برنامه را برای چند حمله دیگر به دست آورد.

      اشیاء آسیب پذیر در آسیب پذیری Security Misconfiguration

      • نشانی اینترنتی
      • فیلدهای فرم
      • فیلدهای ورودی

      مثال

      1. کنسول مدیریت سرور به طور خودکار نصب شده و حذف نشده است. حساب های پیش فرض تغییر نکرده اند مهاجم می تواند با گذرواژه های پیش فرض وارد سیستم شود و می تواند دسترسی غیر مجاز را به دست آورد.
      2. لیست دایرکتوری در سرور شما غیر فعال نیست. مهاجم کشف می کند و می تواند به سادگی دایرکتوری ها را برای یافتن هر فایل فهرست کند.

      توصیه ها

      • یک معماری کاربردی قوی که امنیت خوبی بین کامپونت ها را فراهم می کند.
      • تغییر نام کاربری و کلمه عبور پیش فرض.
      • لیست دایرکتوری را غیرفعال کنید و بررسی کنترل دسترسی را انجام دهید.

      Insecure Cryptographic Storage (ذخیره سازی رمزنگاری ناامن)

      توضیحات

      Insecure Cryptographic Storage یک آسیب پذیری رایج است که وقتی اطلاعات حساس به صورت ایمن ذخیره نمی شود به وجود می آید.

      اعتبار کاربری، اطلاعات نمایه، جزئیات سلامتی، اطلاعات کارت اعتباری و غیره تحت اطلاعات حساس در یک وب سایت قرار می گیرند.

      این داده ها در پایگاه داده برنامه ذخیره می شوند. هنگامی که این داده ها با استفاده از رمزنگاری یا هش کردن نامناسب ذخیره می شوند، آسیب پذیر خواهد بود و به مهاجمان اجازه حمله خواهد داد.

      ( Hashing تبدیل کاراکترهای رشته به رشته های با طول ثابت یا یک کلید است. برای رمزگشایی رشته، الگوریتم مورد استفاده برای فرم کلید باید در دسترس باشد.)

      پیامد

      • با استفاده از این آسیب پذیری، یک مهاجم می تواند، داده های ضعیف محافظت شده را برای سرقت هویت، تقلب کارت اعتباری و سایر جرایم تغییر دهد یا سرقت نماید.

      اشیاء آسیب پذیر

      • Application database

      مثال ها

      در یکی از برنامه های بانکی، در رمز عبور پایگاه داده از unsalted hashes برای ذخیره ی رمزهای عبور تمام کاربران استفاده می شود. یک نقص تزریق SQL به مهاجم اجازه می دهد تا فایل رمز عبور را بازیابی کند. تمام هش های unsaldhed می توانند بدون هیچ زحمتی در کم ترین زمان brute force شوند، در حالی که کلمات عبور سالم هزاران سال طول می کشد.

      (Hashes unsalted – سالت یا salt یک داده تصادفی است که به داده اصلی اضافه می شود. Salt قبل از هش کردن به رمز عبور اضافه می شود. هدف از حمله ی  brute force کرک کردن و به دست آوردن رمز عبور سرور می باشد.)

      توصیه ها

      1. اطمینان از الگوریتم های استاندارد مناسب قوی. الگوریتم رمزنگاری خود را ایجاد نکنید. فقط از الگوریتم های عمومی تایید شده مانند AES، رمزنگاری کلید عمومی RSA و SHA-256 و غیره استفاده کنید.
      2. اطمینان از این که پشتیبان گیری خارج از رمزگذاری هستند، اما کلید ها به طور جداگانه مدیریت و پشتیبان گیری می شوند.

      Failure to restrict URL Access (عدم محدودیت دسترسی به URL)

      توضیحات

      برنامه های وب قبل از ارائه لینک ها و دکمه های محافظت شده، حقوق دسترسی URL را بررسی می کنند. برنامه ها نیاز به انجام چک های کنترل دسترسی مشابه را هر بار که به این صفحات دسترسی پیدا می کنیم، دارند.

      در اکثر برنامه ها، صفحات، مکان ها و منابع منحصر به فرد به کاربران ارائه نمی شود.

      با یک حدس هوشمند، مهاجم می تواند به صفحات دسترسی پیدا کند. مهاجم می تواند به صفحات حساس دسترسی پیدا کرده، توابع را فراخوانی کند و اطلاعات محرمانه را مشاهده کند.

      پیامد

      • با استفاده از این آسیب پذیری مهاجم می تواند به URL های غیر مجاز، بدون ورود به برنامه و اکسپلویت آسیب پذیری دست یابد. مهاجم می تواند به صفحات حساس دسترسی پیدا کند، توابع را فراخوانی کند و اطلاعات محرمانه را مشاهده کند.

      آبجکت های آسیب پذیر

      • URLs

      مثال ها

      • حمله کننده متوجه می شود که URL نشان دهنده نقش / user / getaccounts/” است. او آن را به صورت / admin / getaccounts/” تغییر می دهد.
      • مهاجم می تواند نقش را به URL اضافه کند.

      http://www.vulnerablsite.com را می توان به صورت http://www.vulnerablesite.com/admin تغییر داد.

      توصیه ها

      • پیگیری های کنترل دسترسی قوی را انجام دهید.
      • سیاست های تأیید هویت و مجوز باید بر اساس role باشد.
      • محدود کردن دسترسی به URL های ناخواسته

      Insufficient Transport Layer Protection

      توضیحات

      معاملات با تبادل اطلاعات بین کاربر (مشتری) و سرور (برنامه). برنامه های کاربردی اغلب اطلاعات حساس مانند جزئیات احراز هویت، اطلاعات کارت اعتباری و توکن های جلسه را بر روی یک شبکه ارسال می کنند.

      با استفاده از الگوریتم های ضعیف یا استفاده از گواهی های منقضی شده یا نامعتبر یا عدم استفاده از SSL با کاربران غیر قابل اعتماد می توانید ارتباط برقرار کنید که ممکن است یک برنامه وب را به خطر بیندازد یا اطلاعات حساس را سرقت کند.

      پیامدها

      • با استفاده از این آسیب پذیری امنیتی وب، مهاجم می تواند اعتبار کاربر قانونی را شنود کند و دسترسی به برنامه را به دست آورد.
      • می تواند اطلاعات کارت اعتباری را سرقت کند.

      اشیاء آسیب پذیر

      • داده های ارسال شده بر روی شبکه.

      توصیه ها

      • HTTP امن را فعال کنید و انتقال اعتبار را فقط از طریق HTTPS انجام دهید.
      • مطمئن شوید گواهی شما معتبر است و منقضی نشده است.

      مثال

      ۱٫ یک برنامه کاربردی که از SSL استفاده نمی کند، مهاجم به سادگی ترافیک شبکه را نظارت می کند و یک کوکی session هدف با مجوز رسمی را بررسی می کند. مهاجم می تواند این کوکی ها را سرقت کند و حمله “مردی میانی” را انجام دهد.

      Unvalidated Redirects and Forwards

      توضیحات

      برنامه وب با استفاده از چند روش می تواند کاربران را به صفحات دیگر برای یک هدف در نظر گرفته شده هدایت و ارسال کنند.

      اگر اعتبار مناسب در هنگام هدایت به صفحات دیگر وجود نداشته باشد، مهاجمان می توانند از این استفاده کنند و می توانند قربانیان را به سایت های فیشینگ یا تروجان هدایت کنند یا از دسترسی به جلو برای دسترسی به صفحات غیر مجاز استفاده کنند.

      پیامد

      • یک مهاجم می تواند یک URL برای کاربر ارسال کند که شامل یک URL پیوست شده همراه با URL کدهای مخرب است. یک کاربر فقط با دیدن قسمت اصلی URL مهاجم می تواند آن را مرور کند و ممکن است تبدیل به یک قربانی شود.

      مثال ها

      ۱٫http://www.vulnerablesite.com/login.aspx?redirectURL=ownsite.com

      تغییر داده شده به

      http://www.vulnerablesite.com/login.aspx?redirectURL=evilsite.com

      آسیب پذیری امنیتی رایج در وبسایت ها رو در این جا به پایان می رسونیم.

      کلام پایانی

      از جمله آسیب پذیری امنیتی رایج در وبسایت ها که در این قسمت بررسی نمودیم شامل آسیب پذیری Security Misconfiguration ، آسیب پذیری Unvalidated Redirects and Forwards و غیره بودند. امیدواریم از مبحث آسیب پذیری امنیتی رایج در وبسایت ها لذت برده باشین.

      QR:  جلسه ۱۸-۰۳ : آسیب پذیری های امنیتی رایج وبسایت ها – آموزش هک قانونمند
      به اشتراک بگذارید