یک محقق امنیتی مشکلات امنیتی در فرآیندها و API های شخص ثالث[۱] که توسط نمایندگان فروش گواهی Symantec برای ارائه و مدیریت گواهی‌های SSL شرکتSymantec  وجود داشت را فاش کرد.

Symantec

این عیب توسط Chris Byrne کشف شده است که مشاور امنیت اطلاعات و مربی Cloud Harmonics است. این عیب به یک مهاجم غیرمجاز اجازه می‌دهد تا گواهی‌های SSL اشخاص دیگر را شامل کلیدهای خصوصی و عمومی بازیابی کنند. همچنین این عیب اجازه می‌دهد تا گواهی‌های بازیابی شده را مجدداً صادر یا باطل کند.

حتی بدون صدور مجدد یا باطل کردن یک گواهی‌نامه، مهاجمان می‌توانند یک حمله man-in-the-middle را بر روی ارتباطات ایمن انجام دهند. این کار با استفاده از گواهی‌های SSL دزدیده‌شده و گول زدن کاربران در مورد باور کردن اینکه آن‌ها بر روی یک سایت قانونی قرار دارند انجام می‌شود و این در حالی است که ترافیک SSL آن‌ها به‌صورت مخفیانه دست‌کاری و قطع می‌شود.

در یک پست که در فیس‌بوک و توسط Byrne نوشته شده است[۲]، آمده است: “تمام ‌کاری که شما باید بکنید این است که بر روی یک لینک که توسط پست الکترونیک برای شما ارسال شده است کلیک کنید و سپس شما می‌توانید یک گواهی را بازیابی، باطل و صدور مجدد کنید.”

شرکت Symantec در مورد این عیب‌های API از سال ۲۰۱۵ باخبر بوده است.

Byrne گفته است که برای اولین بار این مشکل گواهی‌های Symantec را در سال ۲۰۱۵ کشف کرده است و قبول کرده است که آن را افشا نکند و این شرکت گفته است که نزدیک به ۲ سال طول می‌کشد تا این مشکل را برطرف کند.

Byrne می‌گوید: “شرکت Symantec متعهد شده بود تا تمامی گواهی‌نامه‌هایی که امکان داشت تحت تأثیر این عیب قرار گرفته باشند پیدا کرده و جایگزین کند. این عملیات قرار بود در ۶ ماهه ابتدایی و برای تمامی گواهی‌های شناسایی شده و در طی ۲ سال برای هر دوره گواهی انجام شود.

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

Byrne می‌گوید: “بر طبق تجربیات و فعالیت‌های گوگل در این زمینه، مشخص شده است که Symantec این مشکلات را همان‌طور که متعهد شده بود، برطرف نکرده است.”

اگرچه، Byrne قادر نیست اثبات کند که آسیب‌پذیری‌ای که او کشف کرده است دقیقا همانی است که مهندسان گوگل در هفته گذشته کشف کرده‌اند.

بر طبق گفته Byrne گواهی‌نامه‌ درخواست و تحویل داده‌شده توسط API Symantec برای فروشندگان شخص ثالث خودش، UIDهای بر پایه URI را بدون احراز هویت مناسب و یا حتی در بعضی موارد بدون هیچ‌گونه احراز هویتی قبول می‌کند.

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

این عملیات در نهایت به مهاجم بدذات اجازه می‌دهد تا به اطلاعات مربوط به دیگر مشتریان Symantec دسترسی داشته باشد، اهداف دارای ارزش بالا را شناسایی کند و حملات خودکار را علیه آن‌ها انجام دهد.

به دست آوردن کنترل کامل بر روی گواهی‌نامه‌های SSL دیگر کاربران

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

در حال حاضر، نه این محقق و نه شرکت Symantec نتوانستند مدرکی پیدا کنند که این سناریو را اثبات کند، اما احتمال آن نیز موجب شد تا Byrne  گزینه افشاسازی در ارتباط با این آسیب‌پذیری را مدنظر قرار دهد.

Byrne می‌گوید: “در این مرحله این امر بسیار بدیهی است که DNS یک سازمان به‌خصوص یا یک شخص که آن‌ها می‌خواهند مورد حمله قرار دهند به خطر می‌افتد. برای این کار، آن‌ها می‌توانند خود را به‌عنوان بانکِ شخص موردنظر، شرکت مربوط به کارت اعتباری، کارفرما و یا هرکس دیگری جا بزنند. شاید بدترین نوع در معرض خطر قرار گرفتن این باشد که یک وصله یا به‌روزرسانی را برای تمام سیستم‌های شرکت انجام دهند. در این مرحله هر سیستم در این شرکت می‌تواند به‌طور هم‌زمان با دیگر سیستم‌ها در معرض خطر قرار داشته باشد.”

بر طبق گفته این محقق،Symantec  از آن زمان بعضی از مشکلات را برطرف کرده است ولی نه همه آن‌ها را. شرکتSymantec  هنوز به افشاسازی Byrne پاسخی نداده است، اگرچه این شرکت اخیراً دو گزارش[۳و۴] منتشر کرده است که در آن‌ها گوگل را به داشتن ادعاهای اغراق‌آمیز و گمراه‌کننده علیه این شرکت در ماه گذشته متهم کرده است.

پاسخ Symantec به خبر منتشرشده

Symantec نسبت به آسیب‌پذیری‌های API موجود جواب داده و این بیانیه را صادر کرده است:

“ما ادعای Chris Byrne را بررسی کرده‌ایم و نتوانستیم این مشکل را مجدداً بازسازی کنیم. ما از اثبات ادعای مربوط به تحقیق انجام‌شده در سال ۲۰۱۵ و همچنین تحقیقات جدید انجام شده در این زمینه استقبال می‌کنیم. به‌علاوه، ما از سناریو‌های موجود در جهان واقعی نسبت به دیدنِ ضرر از این مشکل یا اثبات این مشکل آگاهی نداریم. به‌هرحال، ما می‌توانیم تأیید کنیم که هیچ کلید خصوصی‌ای افشا نشده است که البته این امر از لحاظ فنی نیز امکان‌پذیر نیست. ما از هر دیدگاهی برای کمک به بهبود بخشیدن امنیت جامعه استقبال می‌کنیم. هر کسی که می‌خواهد جزئیات بیشتری در این ارتباط با سناریوهای واقعی یا اثبات ادعای این آسیب‌پذیری را با ما اشتراک بگذارد، می‌تواند با ما تماس بگیرد.”

 

منابع

[۱] https://developers.websecurity.symantec.com/content/api/unauthhome.html

[۲] https://www.facebook.com/cbyrneiv/posts/10155129935452436

[۳] https://www.symantec.com/connect/blogs/symantec-backs-its-ca

[۴] https://www.symantec.com/connect/blogs/message-our-ca-customers

[۵] http://thehackernews.com/2017/03/symantec-ssl-certificates.html