محققان امنیت سایبری یک بدافزار پیچیده اسکیمر کارت اعتباری را شناسایی کردهاند که سایتهای تجارت الکترونیک وردپرس را هدف قرار میدهد و از روشی منحصر به فرد برای فرار از شناسایی استفاده میکند. اسکیمرها نوعی بدافزار هستند که اطلاعات حساس کاربران مانند دادههای کارت اعتباری، اطلاعات لاگین یا دیگر دادههای شخصی را جمعآوری میکنند. این اسکیمرها در بستر وردپرس معمولاً به دنبال تزریق کدهای مخرب به فایلها یا پایگاه دادههای سایت هستند.
این اسکیمر تازه شناسایی شده، کد جاوا اسکریپت مخرب را مستقیماً به پایگاه داده مرتبط با سیستم مدیریت محتوا (CMS) وردپرس، به ویژه در جدول wp_options، تزریق میکند. این رویکرد نوآورانه به آن اجازه میدهد تا به صورت مخفیانه عمل کند و ناشناس باقی بماند.
این بدافزار اسکیمر به طور خاص در صفحات پرداخت فعال میشود و با ربودن فیلدهای پرداخت موجود و یا تزریق فرم کارت اعتباری جعلی، دادههای پرداخت کاربران را میرباید.
اسکیمر به منظور انجام این کار، کد جاوا اسکریپت مخرب را از طریق پنل مدیریت وردپرس (ابزارکهای wp-admin) در یک ویجت بلوک HTML تزریق میکند. کد جاوا اسکریپت با بررسی اینکه آیا صفحه فعلی یک صفحه پرداخت است یا خیر، کار میکند و اطمینان حاصل میکند که فقط پس از وارد کردن جزئیات پرداخت توسط بازدیدکننده سایت، وارد عمل شود.
اسکیمر در این مرحله به صورت پویا یک صفحه پرداخت جعلی ایجاد میکند که پردازشگرهای پرداخت قانونی را شبیه ساز ی میکند (مانند Stripe). این فرم برای دریافت شماره کارت اعتباری، تاریخ انقضا، شماره CVV و اطلاعات صورتحساب طراحی شده است. اسکریپت مخرب همچنین میتواند دادههای وارد شده بر روی صفحههای پرداخت قانونی را در زمان واقعی ضبط کند تا سازگاری را به حداکثر برساند.
دادههای ربوده شده سپس توسط Base64 کدگذاری میشوند و با رمزگذاری AES-CBC ترکیب میگردند و به یک سرور تحت کنترل مهاجم (‘valhafather[.]xyz’ یا ‘fqbe23[.]xyz’) ارسال خواهند میشوند.
async function _0x233872(_0x521845, _0x5e6977, _0xd6a8ef) {
try {
var _0x5180cb = Uint8Array.from(atob(_0x521845), (_0x47cd28) =>
_0x47cd28.charCodeAt(0)
),
_0x25deba = Uint8Array.from(atob(_0x5e6977), (_0x45785d) =>
_0x45785d.charCodeAt(0)
),
_0x152dd3 = await crypto.subtle.importKey(
'raw',
_0x5180cb,
'AES-CBC',
false,
['encrypt']
),
_0x3f060d = await crypto.subtle.encrypt(
{
name: 'AES-CBC',
iv: _0x25deba,
},
_0x152dd3,
new TextEncoder().encode(_0xd6a8ef)
)
const _0x4d0c53 = btoa(
String.fromCharCode.apply(null, new Uint8Array(_0x3f060d))
)
return _0x4d0c53
} catch (_0x2dc142) {
throw _0x2dc142
}
}
}
ماهیت پنهان این اسکیمر خطرات قابل توجهی را برای سایت های تجارت الکترونیکی در حال اجرا بر روی وردپرس ایجاد می کند. کد مخرب با پنهان کردن خود در پایگاه داده، میتواند برای مدتهای طولانی شناسایی نشود و به مهاجمان این امکان را میدهد تا اطلاعات پرداخت حساس را از مشتریان ناآگاه جمعآوری کنند.
اقدامات امنیتی توصیه شده
برای محافظت در برابر چنین تهدیداتی، صاحبان سایت وردپرس باید اقدامات امنیتی زیر را در نظر بگیرند:
- بهروزرسانیهای منظم: اطمینان حاصل کنید که هسته، قالبها و افزونههای وردپرس بهطور منظم بهروزرسانی میشوند تا آسیب پذیریهایی را که میتوانند توسط بدافزار مورد سوء استفاده قرار گیرند، کاهش دهند.
- ممیزیهای امنیتی: بازرسیهای دورهای پایگاه داده و فایل های وب سایت را برای شناسایی هرگونه تغییر غیرمجاز یا ورودیهای مشکوک انجام دهید.
- استفاده از فایروالها: فایروال برنامه کاربردی وب (WAF) را پیاده سازی کنید تا ترافیک مخربی را که در تلاش برای سوء استفاده از آسیب پذیریهای سایت شما هستند، شناسایی و مسدود کنند.
- نظارت بر فعالیت کاربر: حسابهای کاربری با سطح دسترسی admih را بررسی کنید و از وجود رمز عبور قوی و مکانیزم احراز هویت دو مرحلهای برای جلوگیری از دسترسی غیرمجاز اطمینان حاصل نمایید.
با اتخاذ این اقدامات، کاربران وردپرس میتوانند خطر قربانی شدن این نوع بدافزار را به میزان قابل توجهی کاهش دهند و از اطلاعات حساس مشتریان خود محافظت کنند.