کشف آسیب‌پذیری اجرای کد از راه دور در اسکریپت acme.sh

کشف آسیب‌پذیری اجرای کد از راه دور در اسکریپت acme.sh

تاریخ ایجاد

اسکریپت acme.sh یک ابزار قدرتمند و ساده پروتکل ACME است که به طور کامل به زبان Unix shell نوشته شده و با شل‌های bash، dash و sh سازگاری دارد. این اسکریپت به نصب، تمدید و لغو گواهینامه‌های SSL کمک می‌کند. این اسکریپت به دسترسی روت نیاز ندارد ولی اجرای آن به صورت روت گاهی اوقات ممکن است بهتر باشد. یک کاربر چندی پیش متوجه شد که وب‌سایت https://www1.hi.cn/en/ با استفاده از اسکریپت acme.sh اقدام به تزریق دستورات دلخواه در فرایند دریافت گواهینامه امنیتی می‌کند. این درحالی است که چنین چیزی یک آسیب‌پذیری محسوب می‌شود و این شرکت به جای گزارش دادن این آسیب‌پذیری تصمیم گرفته از آن به عنوان یک ویژگی استفاده کند!
در واقع HiCA خروجی دستورات curl را به bash پایپ می‌کند که با این کار اسکریپت acme.sh دستوراتی را از یک سرور راه دور اجرا می‌کند و این یک نقض RFC 8555 و عدم شفافیت محسوب می‌شود. البته تاکنون گزارشی مبنی بر اجرای کد مخرب توسط این اسکریپت منتشر نشده است. شناسه CVE-2023-38198 با شدت 9.8 به این آسیب‌پذیری اختصاص داده شده است. در صورتی که از اسکریپت acme در پروژه‌های خود استفاده می‌کند، توصیه می‌شود آخرین نسخه این اسکریپت را دریافت نمایید.

منابع: