محققان امنیتی در Jetpack دو آسیب پذیری جدی را در افزونه All In One SEO کشف کردند. این آسیبپذیریها میتوانند به هکرها اجازه دسترسی به نامهای کاربری و رمزهای عبور و همچنین اجرای اکسپلویتهای اجرای کد از راه دور را بدهند.
آسیب پذیری ها برای موفقیت به یکدیگر وابسته هستند. اولین مورد، حمله افزایش امتیاز نامیده می شود، که به کاربر با سطح پایین امتیاز دسترسی به وب سایت (مانند یک مشترک) اجازه می دهد تا سطح امتیاز خود را به یکی با امتیازات دسترسی بیشتر (مانند یک مدیر وب سایت) افزایش دهد.
محققان امنیتی در Jetpack این آسیبپذیری را شدید توصیف میکنند و در مورد عواقب زیر هشدار میدهند:
تبلیغات
ادامه مطلب زیر
در صورت سوء استفاده، آسیبپذیری SQL Injection میتواند به مهاجمان اجازه دسترسی به اطلاعات ممتاز از پایگاه داده سایت آسیبدیده (به عنوان مثال، نامهای کاربری و رمزهای عبور هششده) را بدهد.»
افزایش امتیازات تأیید شده
یکی از این اکسپلویت ها یک آسیب پذیری Authenticated Privilege Escalation است که از API REST WordPress سوء استفاده می کند و به مهاجم اجازه می دهد به نام های کاربری و رمز عبور دسترسی داشته باشد.
REST API راهی برای توسعه دهندگان افزونه است تا با نصب وردپرس به شیوه ای ایمن تعامل داشته باشند تا قابلیت هایی را فعال کنند که امنیت را به خطر نیندازند.
این آسیب پذیری از نقاط پایانی WordPress REST API (URL هایی که پست ها را نشان می دهند و غیره) سوء استفاده می کند. حمله به API REST به طور فزاینده ای یک نقطه ضعف در امنیت وردپرس است.
تبلیغات
ادامه مطلب زیر
اما این تقصیر وردپرس نیست زیرا REST API با در نظر گرفتن امنیت طراحی شده است.
اگر انگشتان باید اشاره داشته باشند، خطا به طور کامل مربوط به پلاگین ها است.
در افزونه All In One SEO، مشکل در بررسیهای امنیتی بود که بررسی میکردند آیا کاربری که به یک نقطه پایانی API دسترسی دارد، دارای اعتبارنامههای امتیاز مناسب است یا خیر.
به گفته جت پک:
«بررسیهای امتیاز اعمال شده توسط All In One SEO برای ایمنسازی نقاط پایانی REST API حاوی یک اشکال بسیار ظریف بود که میتوانست به کاربرانی که حسابهای دارای امتیاز پایین (مانند مشترکین) دسترسی دارند به هر نقطه پایانی که افزونه ثبت میکند، دسترسی داشته باشد.
…از آنجایی که وردپرس مسیرهای REST API را به عنوان رشتههای حساس به حروف بزرگ در نظر نمیگیرد، تغییر یک کاراکتر به حروف بزرگ به طور کامل روال بررسی امتیازات را دور میزند.
هوم… درسته؟
تزریق SQL تأیید شده
دومین اکسپلویت یک تزریق SQL تایید شده است. این متکی بر این است که یک مهاجم ابتدا اعتبار کاربری داشته باشد، حتی یکی به اندازه یک مشترک وب سایت.
تزریق SQL بهره برداری از یک ورودی با یک سری کد یا کاراکترهای غیرمنتظره است که سپس اکسپلویت را فعال می کند، مانند ارائه دسترسی.
سایت غیر انتفاعی Open Web Application Security Project (OWASP) یک SQL Injection را به صورت زیر تعریف می کند:
- یک داده ناخواسته از یک منبع نامعتبر وارد برنامه می شود.
- داده ها برای ساخت پویا یک پرس و جوی SQL استفاده می شود.
Jetpack اشاره میکند که آسیبپذیری افزایش امتیاز به مهاجم اجازه میدهد تا حمله Authenticated SQL Injection را نصب کند.
تبلیغات
ادامه مطلب زیر
“در حالی که این نقطه پایانی قرار نبود برای کاربرانی که دارای حسابهای دارای امتیاز پایین هستند قابل دسترسی باشد، بردار حمله افزایش امتیاز فوقالذکر این امکان را برای آنها فراهم کرد که از این آسیبپذیری سوء استفاده کنند.”
به روز رسانی پلاگین SEO توصیه می شود
این آسیب پذیری نسخه های 4.0.0 تا 4.1.5.2 را تحت تأثیر قرار می دهد. آخرین نسخه در حال حاضر، 4.1.5.3 امن ترین نسخه برای به روز رسانی است. محققان امنیتی در Jetpack به روز رسانی به آخرین نسخه را توصیه می کنند.
استناد
گزارش آسیبپذیری Jetpack را بخوانید:
رفع آسیب پذیری های شدید در افزونه All In One SEO نسخه 4.1.5.3
تزریق SQL چیست را بخوانید
تزریق SQL