Slack یک باگ امنیتی بحرانی برطرف نمود که امکان تحت کنترل درآوردن اکانت‌های دیگران را از طریق سرقت کوکی نشست قربانی و دسترسی به اطلاعات مشتریان Slack ایجاد می‌کند. این باگ امنیتی که توسط هکروان (HackerOne) در برگزار شده بود، گزارش گردید.

Slack یک باگ امنیتی بحرانی Slackb.com را در کمتر از ۲۴ ساعت برطرف نمود که امکان تحت کنترل درآوردن اکانت‌های دیگران را از طریق سرقت کوکی نشست قربانی و دسترسی به اطلاعات مشتریان Slack ایجاد می‌کند. این باگ امنیتی در برنامه باگ بانتی Slack که توسط هکروان (HackerOne) در ۱۴ نوامبر برگزار شده بود، گزارش گردید.

یک باگ می تواند منجربه افشای اطلاعات بزرگ شود

ایوان کاستودیو (Evan Custodio)، محقق امنیت وب و متخصص باگ بانتی، با ارایه این باگ به هکروان مبلغ ۶۵۰۰ دلار به عنوان باگ باتنی جایزه دریافت نمود. این محقق بعد از هدف قرارا دادن چندین درخواست HTTP متوجه این باگ شد و با استفاده از نرم‌افزاری که خود توسعه داده است بر روی تارگت Slack آن را اکسپلویت کرد.

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

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

با استفاده از باگ محقق آسیب پذیری HTTP Request Smuggling را در خصوص تارگت Slack اکسپلویت نمود و سپس به درخواست‌های دیگر کاربران را از طریق اجرای حمله CL.TE دسترسی یافت. این حمله قربانی را به سمت سایت دلخواه از طریق open-redirect هدایت می‌کند که قربانی را به سمت کلاینت با کوکی دامین Slack می‌برد. در اینجا محقق توانست اثبات کند می‌تواند کنترل کامل نشست هر کاربر را در Slack بدست آورد. زمانی که کوکی یک بار دزدیده شد، حمله کننده با وارد کردن کوکی‌ها به مرورگر می‌تواند کنترل کامل حساب کاربری را در اختیار بگیرد و تمام اطلاعات حساب را جمع آوری و تمام ردپای خود را از این کار پاک کند.

HTTP Request Smuggling در شرایط پارس نمودن نادرست درخواستهای HTTP میان دو دستگاه اتفاق میفتد مثلا میان فایروال و پروکسی کشینگ وب، زیرا برخی از این تجهیزات بصورت متفاوت درخواست HTTP را تفسیر می‌کنند. در زمانیکه در مسیر انتقال درخواست HTTP چند تجهیز از این نوع باشند، هر کدام این درخواست‌ها را متفاوت بررسی می کنند. در نتیجه درخواست HTTP به تجهیز دوم Smuggle یا قاچاق شده بدون اینکه تجهیز اول متوجه شود.

CL.TE بدین معناست که هنگامی که یک پکت با دو سرایند یا هدر دریافت می‌شود، تجهیز اول هدر را بر اساس طول Content Lenght بررسی کرده و تجهیز دوم آن را بر اساس RFC2616 و بدون در نظر گرفتن طول CL و پردازش Transfer Encoding درخواست کامپایل می نماید.

Slack همچنین باگ دیگری را در کمتر از ۵ ساعت رفع نمود که به حمله کننده اجازه سرقت احرازهویت حساب کاربری را می‌داد که کنترل حساب و پیغام‌ها در اختیار حمله کننده قرار می‌گرفت. این نقص توسط فرانس روزن (Frans Rosén) سه سال پیش در سال ۲۰۱۷ گزارش شد و مبلغ ۳۰۰۰ دلار به عنوان جایزه باگ بانتی دریافت کرد.

منابع:

https://www.bleepingcomputer.com/news/security/slack-bug-allowed-automating-account-takeover-attacks