آسیب پذیری Account Takeover در لینک بازیابی رمز عبور

در این Write up مربوط به آسیب‌پذیری منطقی، که توسط Hemant Patidar تهیه شده است به معرفی یک آسیب پذیری در بخش Reset Password یک سامانه پرداخته می شود.

تست نفوذگر هنگام انجام Reset Password حساب خود، متوجه می شود که لینک بازنشانی رمز عبور ارسال شده به ایمیل وی، حاوی یک توکن پنج رقمی می باشد.

در این فرآیند، تست نفوذگر به این نتیجه می رسد که در هنگام تنظیم مجدد رمز عبور دو کاربر مختلف (به عنوان مثال حساب A و B) به صورت متوالی، سرور یک نشانه برای هر دو کاربر به صورت متوالی اختصاص می دهد.

بدین ترتیب اگر حساب کاربری A متعلق به یک نفوذگر بوده و سپس وی عدد موجود در توکن را تغییر داده و یکی به آن اضافه نماید، امکان تغییر کلمه عبور حساب کاربری B را خواهد داشت. در نهایت این موضوع منجر به Account Takeover خواهد شد.

به عنوان مثال:

اگر حساب کاربری A لینک زیر را دریافت نماید؛

dashboard.example.com/password-reset/form?token=28604

حساب کاربری B همان لینک را با عدد 28605 دریافت خواهد نمود.

تست نفوذ گر پس از کمی تحقیق، متوجه می شود که هیچ صفحه ورود جداگانه ای برای کاربری مدیر در این سامانه وجود ندارد. این بدان معنی است که احتمالا مدیر سامانه نیز از صفحه ورود یکسانی با کاربران دیگر استفاده می نماید. بنابراین به منظور Takeover نمودن حساب وی، ابتدا می بایست ایمیل مدیر سامانه را شناسایی شده و سپس اقدام به انجام فرآیند Reset Password صورت گیرد.

لازم به ذکر است که ایمیل مربوط به مدیر سامانه در قسمت “about-us” وجود داشته و تست نفوذگر از با مراجعه به این صفحه، ایمیل وی را به دست می آورد.

مراحل انجام فرآیند Takeover حساب مدیر

تست نفوذگر ابتدا صفحه ورود سامانه را در دو تب مختلف از مرورگر باز می کند.

سپس برای هر تب اقدام به انجام فرآیند Reset Password می نماید. (حساب کاربری A متعلق به تست نفوذگر و حساب کاربری B که متعلق به مدیر سامانه است.)

در ادامه به عنوان مثال اگر لینک Reset Password حساب کاربری A مشابه لینک زیر باشد؛

dashboard.example.com/password-reset/form?token=12345

عدد مربوط به توکن را به یک عدد بالاتر یعنی 12346 تغییر دهید. (با توجه به اینکه توکن های اختصاص داده شده به صورت متوالی تنظیم می گردد، در صورتی که توکن شما 12345 باشد، توکن حساب مدیر برابر 12346 می باشد)

با استفاده از لینک نهایی به دست آمده شما می توانید رمزعبور مدیر سامانه را تغییر دهید بدین صورت شما توانسته اید تا فرآیند Account Takeover را با موفقیت انجام دهید.

تست نفوذگر این آسیب پذیری را گزارش نموده و مبلغ 200 دلار بابت آن پاداش دریافت می نماید.

منبع:

infosecwriteups.com/account-takeover-user-admin-via-password-reset-322b8020ea6

درباره نویسنده: احسان نیک آور

ممکن است دوست داشته باشید