#اخبار #خبر
آسیب پذیری در Okta یا در کتابخوانه های bcrypt زبان های برنامه نویسی ⁉️
📌 به تازگی بعد از ارائه بروزرسانی جدید از سمت تیم okta یک آسیب پذیری توسط تیم داخلی شرکت okta شناسایی شده که به نفوذگر امکان دور زدن احراز هویت Okta AD/LDAP را میداد که کافی بود حساب با نام کاربری بالای 52 کارکتر باشد ⚠️
📌 درواقع اشتباه در پیاده سازی روند hash کردن داده های username و password بوده که تیم okta از کتابخوانه bcrypt node js استفاده میکرد که این الگوریتم محدودیت در ورودی (input) که میگیرد دارد و فقط ۷۲ کارکتر را قبول میکند و در سمت برنامه نویسی تیم okta برای ذخیره کردن داده یوزر در دیتابیس ۳ مقدار زیر را concat میکردند و به عنوان ورودی به تابع bcrypt داده میشد :
که اگر یوزرنیم مقدارش بیش از ۵۲ کارکتر یا ۵۲ کارکتر میشد خروجی تابع bcrypt همیشه یکی میشد چرا که این تابع در node js فقط تا ۷۲ کارکتر مقدار ورودی را میخواند ‼️
و نفوذگر فقط با دادن یوزرنیم و پسورد اشتباه وارد حساب قربانی میشد ❗️
📌 اما نکته مهم این است که بعضی از کتابخوانه های مربوط به bcrypt در دیگر زبان ها مثل زبان Golang اگر مقدار ورودی بیش از ۷۲ کارکتر باشد یک اروری میدهند و برنامه نویس را مطلع میکنند و جلوی این مشکل گرفته میشود
🌐 www.VipSecurity.zone
📣 @Vip_Security
آسیب پذیری در Okta یا در کتابخوانه های bcrypt زبان های برنامه نویسی ⁉️
📌 به تازگی بعد از ارائه بروزرسانی جدید از سمت تیم okta یک آسیب پذیری توسط تیم داخلی شرکت okta شناسایی شده که به نفوذگر امکان دور زدن احراز هویت Okta AD/LDAP را میداد که کافی بود حساب با نام کاربری بالای 52 کارکتر باشد ⚠️
📌 درواقع اشتباه در پیاده سازی روند hash کردن داده های username و password بوده که تیم okta از کتابخوانه bcrypt node js استفاده میکرد که این الگوریتم محدودیت در ورودی (input) که میگیرد دارد و فقط ۷۲ کارکتر را قبول میکند و در سمت برنامه نویسی تیم okta برای ذخیره کردن داده یوزر در دیتابیس ۳ مقدار زیر را concat میکردند و به عنوان ورودی به تابع bcrypt داده میشد :
Bcrypt(user uuid + username + password)
که اگر یوزرنیم مقدارش بیش از ۵۲ کارکتر یا ۵۲ کارکتر میشد خروجی تابع bcrypt همیشه یکی میشد چرا که این تابع در node js فقط تا ۷۲ کارکتر مقدار ورودی را میخواند ‼️
و نفوذگر فقط با دادن یوزرنیم و پسورد اشتباه وارد حساب قربانی میشد ❗️
📌 اما نکته مهم این است که بعضی از کتابخوانه های مربوط به bcrypt در دیگر زبان ها مثل زبان Golang اگر مقدار ورودی بیش از ۷۲ کارکتر باشد یک اروری میدهند و برنامه نویس را مطلع میکنند و جلوی این مشکل گرفته میشود
🌐 www.VipSecurity.zone
📣 @Vip_Security