در این Write up مربوط به آسیبپذیری منطقی، که توسط Tobydavenn تهیه شده است به معرفی یک آسیب پذیری در یک شرکت رسانه ای اروپایی بزرگ پرداخته می شود.
redacted.com میگوید، به یک بخش SSO از سایت میرسد. در این بخش وی قادر به ثبت نام یک حساب کاربری خواهد بود که امکان دسترسی به سایتهای دیگر شرکت را از طریق SSO فراهم میکند.
در هنگام تست Functionهای سایت، وی به یک Endpoint مربوط به بازیابی کلمه عبور برخورد میکند که UID خودش را نمایش میدهد که طول آن 32 کاراکتر میباشد:
در ابتدا حدس توکینهای دیگر در این بخش برای تست نفوذگر سخت به نظر میرسد ولی با این حال، 1000 توکن مشابه را Brute Force میکند. در این بخش وی با پیام 403 مواجه شده و مسدود میشود.
وی گزارش امنیتی که توسط تست نفوذگر دیگری نوشته شده بود را به خاطر میآورد که در آن گفته شده بود، از سخت بودن حدس UIDها نا امید نشوید و به دنبال مکانهایی بگردید که آنها افشا شده اند. به همین دلیل تست نفوذگر، بررسیها را ادامه میدهد و Endpointهای دیگر API را بررسی نموده ولی مورد خاصی از UIDها را پیدا نمیکند.
با توجه به عدم شناسایی مورد خاصی، سعی میکند تاغ این مشکل را به صورت Informative گزارش دهد. آن موقع بود که به یک ویژگی گروهی در سایت برخورد میکند. در این بخش، هنگام درخواست برای پیوستن به یک گروه، اضافه کردن یک .json به Endpoint، تمام UIDهای اعضای گروه را نمایش میداد.
در ادامه با اضافه نمودن این UIDها به Endpoint مربوط به changeEmail، تمام اطلاعات مربوط به حساب کاربری، حتی هش مربوط به کلمه عبور نیز نمایش داده میشد.
در این نقطه، تست نفوذگر، آسیبپذیری را گزارش میدهد ولی درخواست میکند تا تست را ادامه دهد.
در حال حاضر، وی نام کاربری و هش کلمه عبور را در اختیار دارد اما Crack نمودن آن زمان بر است. وی همچنین UID و ایمیلها را نیز در اختیار دارد.
تست نفوذگر در اینجا به خاطر میآورد که Endpoint ای در سایت وجود داشت که امکان تغییر اطلاعات پروفایل خودش با استفاده از UID و ایمیل را فراهم میکرد. تغییر UID و آدرس ایمیل به یک حساب معتبر در این بخش، به تست نفوذگر اجازه میدهد تا همه اطلاعات از جمله رمز عبور حساب کاربری قربانی را تغییر دهد.
منبع: