Skip to content

ONHEXGROUP

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

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

معرفی حمله ی جدید TIKTAG

On خرداد 29, 1403خرداد 30, 1403
seyyid
Share
زمان مطالعه: 6 دقیقه

یک حمله ی جدید از نوع Speculative Execution و بنام TIKTAG کشف شده که تگهای Memory Tagging Extension (MTE) در ARM رو با احتمال موفقیت بیش از 95 درصد و در عرض 4 ثانیه افشاء میکنه.

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

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

 

ویژگی Memory Tagging Extension (MTE) :

MTE یک ویژگی امنیتی است که در معماری ARMv8.5-A معرفی شد. هدفش شناسایی و جلوگیری از آسیب‌ پذیریهای حافظه، بویژه Use-after-free هستش.

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

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

مزایای MTE :

  • افزایش امنیت حافظه: MTE با جلوگیری از حملات Use-after-free و سایر آسیب‌ پذیریهای حافظه، بطور قابل‌ توجهی امنیت حافظه رو افزایش میده.
  • کاهش تأثیر حملات: MTE حتی وقتی که یک آسیب‌ پذیری حافظه وجود داشته باشه، میتونه تأثیر اونرو کاهش بده. مثلا، MTE میتونه از نشت داده‌ های حساس در اثر یک حمله Use-after-free جلوگیری کنه.
  • سازگاری با سیستمهای موجود: MTE طوری طراحی شده که با سیستمهای موجود سازگار باشه و نیاز به تغییرات عمده در نرم‌افزار یا سخت‌افزار نداره.

معایب MTE:

  • کاهش عملکرد: MTE میتونه تا حدی بر عملکرد سیستم تأثیر بذاره، چون پردازنده باید تگهای حافظه رو بررسی کنه. با این حال، این تأثیر روی عملکرد معمولاً ناچیزه.
  • عدم محافظت در برابر همه حملات: MTE در برابر همه انواع حملات حافظه مانند حملات نشت حافظه محافظت نمیکنه.

MTE بطور پیش فرض در اکثر پردازنده‌ های ARM جدید فعاله. با این حال، ممکنه لازم باشه برای فعال کردن اون در برخی سیستمها مراحلی رو طی کنید. برای اطلاعات بیشتر در مورد نحوه استفاده از MTE در سیستمتون،باید به مستندات سازنده رجوع کنید.

 

معرفی Speculative Execution Attack :

پردازنده‌ های مدرن برای افزایش کارایی از تکنیکی به نام اجرای پیش‌فرض (Speculative Execution) استفاده میکنن. در این روش، پردازنده دستورات رو قبل از اینکه مشخص بشه آیا این دستورات باید اجرا بشن یا نه، پیش‌ بینی و اجرا میکنه. این کار میتونه بطور قابل‌ توجهی سرعت پردازش رو افزایش بده. مثلا فرض کنید با یک دستور IF-ELSE روبرو هستیم، پردازنده در حالت معمول اول IF رو بررسی میکنه اگه شرط درست نبود میره سراغ ELSE. اما در تکنیک Speculative Execution، پردازنده قبلا از بررسی، یک مسیری رو حدس میزنه و اجرا میکنه. نکته ای که وجود داره اگه مسیر حدس زده شده درست نباشه، پردازنده برمیگرده و دوباره مسیر درست رو انتخاب و اجرا میکنه.

Speculative Execution Attack نوعی حمله هستش که از قابلیت پردازنده برای اجرای دستورات قبل از تأیید اونا سوء استفاده میکنه. در این نوع حمله، مهاجم میتونه دستورات مخربی رو به پردازنده تزریق کنه و حتی اگه این دستورات بعداً لغو بشن، میتونه به داده‌ های حساس دسترسی پیدا کنه یا اونارو تغییر بده.

چند نوع مختلف از این حملات قبلا کشف شده، از جمله:

  • حمله Meltdown: این حمله از یک آسیب‌ پذیری در پردازنده‌های Intel برای نشت اطلاعات از حافظه استفاده میکنه.
  • حمله Spectre: این حمله از یک آسیب‌ پذیری در پردازنده‌های Intel، AMD و ARM برای نشت اطلاعات از حافظه استفاده میکنه.
  • حمله Foreshadow: این حمله از یک آسیب‌ پذیری در پردازنده‌های Intel برای نشت اطلاعات از حافظه استفاده میکنه.
  • حمله ZombieLoad: این حمله از یک آسیب‌پذیری در پردازنده‌های Intel برای نشت اطلاعات از حافظه استفاده میکنه.

حمله ی Speculative Execution میتونه تأثیرات جدی روی امنیت سیستمها داشته باشه و معمولا در موارد زیر استفاده میشه:

  • سرقت داده‌های حساس (مانند پسوردها، اطلاعات مالی و اطلاعات شخصی)
  • افزایش سطح دسترسی
  • اجرای کد دلخواه

 

 

حمله ی TIKTAG :

در این حمله محققا کشف کردن که با استفاده دو gadget (کد) با عنوان TIKTAG-v1 و TIKTAG-v2 میتونن از Speculative Execution سوء استفاده کنن و تگ های حافظه ی MTE رو با نرخ موفقیت بالا و در زمان کوتاهی، بدست بیارن.

 

دیاگرام حمله ی TIKTAG و نشت تگها

 

نشت این تگها مستقیما داده های حساس مانند پسورد و … رو افشاء نمیکنه اما ویژگی های امنیتی ارائه شده توسط MTE رو از بین میبره و سیستم رو در برابر حملات خرابی حافظه دیگه محافظت نمیکنه.

TIKTAG-v1 از کاهش حدس در Branch Prediction و Data Prefetching برای نشت تگهای MTE سوء استفاده میکنه.

 

کد TIKTAG-v1

 

Branch Prediction و Data Prefetching تکنیکهای بهینه سازی برای افزایش سرعت پردازنده های مدرن هستن:

  • Branch Prediction : در این تکنیک، پردازنده قبل از اینکه بطور قطعی مشخص بشه کدوم مسیر باید اجرا بشه، مسیر رو حدس میزنه و شروع به اجرای دستورات اون مسیر میکنه. این کار میتونه سرعت پردازش رو افزایش بده، چون پردازنده از قبل روی دستوراتی که احتمالاً مورد نیاز هستن، کار کرده.
  • Data Prefetching: در این تکنیک پردازنده سعی میکنه از قبل، داده‌ هایی که در آینده مورد نیاز خواهند بود رو، از حافظه به cache منتقل کنه. این کار میتونه سرعت پردازش رو افزایش بده، چون داده‌ ها در cache به سرعت در دسترس خواهند بود.

کاهش حدس به وضعیتی اشاره داره که در اون حدسهای پردازنده در مورد اینکه کدوم مسیر باید اجرا بشه یا چه داده‌ هایی مورد نیاز هستن، اشتباه میشه. در این صورت، پردازنده باید کارهایی رو که قبلاً انجام داده رو لغو کنه و دوباره از ابتدا شروع کنه.

محققان کشف کردن که این gadget در حمله علیه کرنل لینوکس مؤثره، بویژه علیه توابعی که شامل Speculative Memory Accesse هستن. Speculative Memory Accesse نوعی دسترسیه که پردازنده، قبل از اینکه مشخص بشه آیا این دسترسی به حافظه لازم داره یا نه، به حافظه دسترسی پیدا میکنه. البته برای اینکه بشه این حمله رو بصورت عملی پیاده سازی کرد، برخی از اشاره گرهای کرنل رو باید دستکاری کنیم.

مهاجم از System Callها برای فعال کردن مسیر Speculative Execution و بعدش بررسی وضعیت cache برای استنتاج تگهای حافظه استفاده میکنه.

TIKTAG-v2 از رفتار Store-To-Load Forwarding در Speculative Execution سوء استفاده میکنه. این رفتار شامل ذخیره‌سازی یک مقدار در یک آدرس حافظه و لوود همون مقدار بلافاصله از همون آدرس میشه.

 

کد TIKTAG-v2

 

اگه تگها با هم مطابقت داشته باشن، مقدار ارساله میشه و بارگذاری با موفقیت انجام میگیره که این موضوع روی وضعیت cache تأثیر میذاره. اما اگه تگها مطابقت نداشته باشن، ارسال مسدود شده و وضعیت cache تغییری نمیکنه.

بنابراین، با بررسی وضعیت cache بعد از Speculative Execution، میشه نتیجه‌ ی بررسی تگ‌هارو استنتاج کرد.

محققان نشون دادن که میشه از گجتهای TIKTAG-v2 روی کروم، بویژه موتور جاوا اسکریپت V8، برای اکسپلویت آسیبپذیریهای خرابی حافظه در پروسس renderer استفاده کرد.

 

 

اقدامات کاهشی:

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

در حالی که شرکت ARM جدیت این آسیب پذیری رو به رسمیت شناخته و چند ماه پیش بیاینیه ای منتشر کرده، اما این آسیب پذیری رو به منزله نقض عملکرد MTE نمیدونه.

تیم امنیتی کروم این آسیب پذیری رو تایید کرده اما تصمیمی برای رفعش نگرفته، چون سندباکس V8 برای تضمین محرمانگی داده‌های حافظه و تگهای MTE طراحی نشده. این کار روی یک مولفه ی دیگه هستش. همچنین مرورگر کروم در حال حاضر بطور پیش‌فرض از محافظتهای مبتنی بر MTE پشتیبانی نمیکنه که این موضوع باعث کاهش اولویت برای رفع فوری این آسیب‌پذیری میشه.

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

خود محققا در مقاله اشون یسری اقدامات کاهشی رو بیان کردن از جمله:

  • طراحی سخت‌افزار رو طوری تغییر بدیم تا از تغییر وضعیتهای cache بر اساس نتایج بررسی تگها توسط Speculative Execution جلوگیری کنه.
  • برای جلوگیری از اجرای عملیات حیاتی حافظه توسط Speculative Execution از دستوراتی مانند sb یا isb استفاده کنیم.
  • با افزودن دستورالعملهای اضافی میتونیم فاصله زمانی بین دستورالعملهای شاخه و دسترسی به حافظه رو افزایش بدیم. با افزایش این زمان، پردازنده فرصت بیشتری برای تکمیل پیش‌ بینیهای خودش در مورد اینکه کدوم مسیر باید اجرا بشه و چه داده‌ هایی مورد نیاز هستن، خواهد داشت.
  • با تقویت مکانیزمهای سندباکس، میتونیم مسیرهای Speculative Memory Access رو بطور کامل در مناطق امن حافظه محدود کنیم.

 

منبع

 

 

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

Facebook
Twitter
Pinterest
LinkedIn
In آسیب پذیری امنیتی اخبار توسعه اکسپلویت مقالاتIn amd , arm , intel , Meltdown , Memory Tagging Extension , Spectre , speculative execution , Speculative Execution Attack , TIKTAG , کروم , لینوکس

راهبری نوشته

بررسی هفتگی آسیب پذیری های منتشر شده در ZDI – (از 19 تا 25 خرداد)
معرفی پلتفرم باگ بانتی 0din

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

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

دسته‌ها

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

پست های مرتبط

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

ماینر ساده سابق، جاسوس افزار پیچیده امروز

  • آسیب پذیری امنیتی
  • اخبار
seyyid
On بهمن 7, 1401فروردین 28, 1402

آسیب پذیری CVE-2023-24068 و CVE-2023-24069 در نسخه دسکتاپ Signal

  • اخبار
  • باگ بانتی
seyyid
On مرداد 21, 1402مهر 25, 1402

مایکروسافت و 13.8 میلیون دلار بانتی

  • آسیب پذیری امنیتی
  • آنالیز بدافزار
  • اخبار
  • بازیگران تهدید
  • مقالات
seyyid
On اردیبهشت 18, 1403اردیبهشت 18, 1403

استفاده از بروزرسانی آنتی ویروس برای استقرار بدافزار

درباره ما

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

تگ ها

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