آسیبپذیری CVE-2026-129092 یک نقص طراحی در پیادهسازی آزمایشی (PoC) پروتکل Attested TLS است که به مهاجمان اجازه میدهد پس از تأیید هویت اولیه، محیط کاری (Workload) را بدون شناسایی تغییر دهند. این نقص از نوع Time-of-Check Time-of-Use (TOCTOU) یا همان CWE-367 است و در نسخههای attested-tls-poc تا کامیت 731ca82 مشاهده شده است.
تحلیل فنی و ریشه مشکل
در این پیادهسازی، فرآیند ارزیابی شواهد (Evidence Appraisal) تنها یک بار و در جریان دستدادن (Handshake) پروتکل TLS انجام میشود. پس از تکمیل این مرحله، اتصال برقرار شده و طرف مقابل (Peer) به طور ضمنی به محیط کاری اعتماد میکند. مشکل اصلی این است که هیچ مکانیزمی برای بازبینی پس از دستدادن (Post-handshake Re-attestation) وجود ندارد.
این وضعیت باعث ایجاد یک پنجره زمانی برای مهاجم میشود تا پس از اینکه اعتماد اولیه برقرار شد، تغییراتی در موارد زیر ایجاد کند:
- کد اجرایی محیط کاری (Workload Code)
- دادهها و پیکربندیهای سیستم
- دستگاههای متصل مانند پردازندههای گرافیکی (GPUs)
در این حالت، طرف مقابل همچنان بر اساس شواهد قدیمی و منقضی شده (Stale Evidence) به اتصال اعتماد میکند، در حالی که وضعیت واقعی سیستم تغییر کرده است.
بررسی بردار حمله و پیچیدگی
با وجود امتیاز 7.0 (High) در CVSS 4.0، اولویت عملیاتی این آسیبپذیری پایین ارزیابی میشود. دلایل این موضوع عبارتند از:
- دسترسی محلی (AV:L): حمله تنها از طریق دسترسی محلی به نقطه انتهایی (Endpoint) امکانپذیر است.
- سطح دسترسی بالا (PR:H): مهاجم باید از قبل دارای امتیازات مدیریتی یا دسترسیهای بالا برای تغییر کد و پیکربندی باشد.
- پیچیدگی بالا (AC:H): حمله نیازمند زمانبندی دقیق پس از تکمیل Handshake است.
- محدودیت محیطی: این نقص در یک پروژه آزمایشی (PoC) یافت شده و نه در یک محصول تجاری گسترده.
راهکارهای اصلاحی و کاهش ریسک
از آنجایی که پَچ رسمی برای این پیادهسازی PoC منتشر نشده است، برای جلوگیری از وقوع چنین نقصهایی در سیستمهای عملیاتی، توصیههای زیر ارائه میشود:
- پیادهسازی بازبینی دورهای: سیستم نباید تنها به ارزیابی اولیه در زمان Handshake اکتفا کند. باید مکانیزمهای بازبینی دورهای یا بازبینیهای تحریکشده توسط تغییر وضعیت (Event-driven Re-attestation) اضافه شود.
- قطع اتصال در صورت عدم تطابق: در صورتی که شواهد جدید با اندازهگیریهای اولیه مطابقت نداشته باشند، نشست (Session) باید فوراً خاتمه یابد.
- کنترل دسترسیهای محلی: محدود کردن دسترسیهای Root و Administrative برای جلوگیری از بازنویسی کد یا تغییر پیکربندی توسط کاربران داخلی.