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



  • ۱۶
  • مرداد

جلسه ۴۰ : آسیب پذیری های رایج وردپرس

  • دسته‌بندی‌ها :
جلسه ۴۰ : آسیب پذیری های رایج وردپرس

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

        مقدمه

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

        انواع آسیب پذیری های رایج وردپرس

        البته این آسیب پذیری ها فقط مختص به وردپرس نیستند و تمام سایت ها توسط این آسیب پذیری ها تهدید می‌شوند.

        SQL Injection

        SQL Injection یا تزریق sql، زمانی اتفاق می‌افتد که داده های وارد شده به طور صحیح Sanitize (پاکسازی) نشوند و اجازه دهند هر دستور SQL در داده های ورودی، به طور بالقوه اجرا شوند.

        اولین قانون برای مقابله با sql injection این است که اگر تابعی در API وردپرس وجود دارد، از آن استفاده کنید. (توابع مربوط به کار با دیتابیس)

        اما گاهی اوقات نیاز به کوئری های پیچیده تری هست که API وردپرس از ان پشتیبانی نمی کند.
        در این موارد همیشه از توابع wpdb$ استفاده کنید. این توابع برای محافظت از دیتابیس شما در برابر sql injection طراحی شده اند.

        برای جلوگیری از حملات تزریق sql، تمام کوئری های sql باید قبل از اجرا SQL-Escaping شوند.
        بهترین تابع برای استفاده از SQL-Escaping، تابع ()wpdb->prepare$ است.

        مثال : 

        Cross Site Scripting (XSS)

        حملات XSS زمانی اتفاق می‌افتند که کد های جاوا اسکریپت به یک صفحه وب تزریق شوند.
        با Escape کردن خروجی و حذف داده های ناخواسته، از این آسیب پذیری جلوگیری کنید.
        از آن جایی که وظیفه اصلی یک قالب نمایش و استخراج محتوا است، یک قالب باید محتوای پویا را با استفاده از توابع مناسب، Escape کند.

        یک مثال از توابع Escaping در کد زیر نشان داده شده است. این تابع URL پروفایل یک کاربر را Escape می‌کند.

        مثال : 

        Cross-site Request Forgery (CSRF)

        CSRF (بخوانید سی‌سِرف)، به حملاتی گفته می‌شود که در آن هکر با فریب کاربر، آن را مجاب به انجام یک عمل ناخواسته در یک برنامه وب می‌کند که هویت کاربر در آن برنامه تأیید شده است.
        بدین ترتیب هکر از هویت کاربر سوء استفاده کرده و عمل خویش را با موفقیت انجام می‌دهد.

        برای مثال هکر یک ایمیل حاوی یک لینک به کاربر مورد نظر می‌فرستد که با کلیک روی این لینک اکانت یک کاربر حذف می‌شود. و از آن جایی که هویت کاربر قربانی تأیید شده است، این درخواست با موفقیت انجام می‌شود.

        همانطور که در جلسه معرفی Nonce ها در وردپرس گفتیم، برای جلوگیری از وقوع این نوع حملات از nonce ها استفاده می‌کنیم.

        مثال : 

         

         

        جلسه معرفی انواع آسیب پذیری های رایج وردپرس نیز به پایان رسید.

        در جلسه بعد به آموزش تنظیمات حریم خصوصی قالب وردپرس خواهیم پرداخت.

        QR:  جلسه ۴۰ : آسیب پذیری های رایج وردپرس
        به اشتراک بگذارید