#Type_Juggling for #CSRF_Protection Bypass
همونطور که میدونید در خصوص آسیب پذیری #CSRF یا درخواست جعلی مکانیزم های دفاعی وجود داره مانند #SameSite_Cookie و #Double_Submit_Cookie که قبلا راجبشون توضیحاتی داده شده،
https://t.me/Unk9vvN/880
نکته ای که در این پست میخوام بهش اشاره کنم اینه که با استفاده از آسیب پذیری #Type_Juggling میتوان مکانیزم های تولید توکن Nonce و در مجموع مکانیزم #Double_Submit_Cookie رو میتوان با ارسال مقادیر True دور زد، برای مثال در تصویر پست میبینید که هکر Condition آسیب پذیر رو که با استفاده از تابع ()strcmp که قراره دو هشی که یکی در سرور ذخیره هست رو با هشی که از پارامتر key-awesome دریافت میکنه رو مقایسه کنه که مشکل همینجاست که این مقایسه بصورت loose طراحی شده،
https://t.me/Unk9vvN/1049
و از اونجایی که میبایست جواب Condition بصورت Boolean باشه، هکر آمده و یک array به پارامتر key-awesome ارسال کرده و همین موضوع باعث شده مقدار hash$ برابر NULL قرار بگیره و همین موضوع خروجی تابع ()strcmp رو معادل NULL == 0 قرار بگیره و شرط برقرار و طبیعتا مکانیزم دور زده میشه...
@Unk9vvN
همونطور که میدونید در خصوص آسیب پذیری #CSRF یا درخواست جعلی مکانیزم های دفاعی وجود داره مانند #SameSite_Cookie و #Double_Submit_Cookie که قبلا راجبشون توضیحاتی داده شده،
https://t.me/Unk9vvN/880
نکته ای که در این پست میخوام بهش اشاره کنم اینه که با استفاده از آسیب پذیری #Type_Juggling میتوان مکانیزم های تولید توکن Nonce و در مجموع مکانیزم #Double_Submit_Cookie رو میتوان با ارسال مقادیر True دور زد، برای مثال در تصویر پست میبینید که هکر Condition آسیب پذیر رو که با استفاده از تابع ()strcmp که قراره دو هشی که یکی در سرور ذخیره هست رو با هشی که از پارامتر key-awesome دریافت میکنه رو مقایسه کنه که مشکل همینجاست که این مقایسه بصورت loose طراحی شده،
https://t.me/Unk9vvN/1049
و از اونجایی که میبایست جواب Condition بصورت Boolean باشه، هکر آمده و یک array به پارامتر key-awesome ارسال کرده و همین موضوع باعث شده مقدار hash$ برابر NULL قرار بگیره و همین موضوع خروجی تابع ()strcmp رو معادل NULL == 0 قرار بگیره و شرط برقرار و طبیعتا مکانیزم دور زده میشه...
@Unk9vvN
#XSS and #CSRF to #RCE for #WordPress
اگر از افزونه های جانبی سیستم مدیریت محتوای WordPress آسیب پذیری XSS کشف شد، چطور میشه آسیب پذیری رو به RCE یا اجرای کد از راه دور، تبدیل کرد؟
مهاجم بواسطه ایجاد درخواست جعلی از سمت کاربر (CSRF) اقدام به ارسال Request بر روی مرورگر ادمین میکند بواسطه آسیب پذیری XSS که وجود دارد، یعنی آسیب پذیری XSS موجب میشود یک Exploit به زبان جاوا اسکریپت SRC شود.
لذا مهاجم میتواند بواسطه
و از آن CSRF-Token برای زدن درخواست معتبر بعدی مبنی بر بار گزاری یک افزونه جعلی استفاده خواهد کرد و با Endpoint مربوط به
اما نحوه صحبت با Backdoor روش جالبی است، که موجب صحبت با Endpoint درب عقبی شده و بواسطه ارسال دستورات در پارامتر های POST است که در تابع
@Unk9vvN
اگر از افزونه های جانبی سیستم مدیریت محتوای WordPress آسیب پذیری XSS کشف شد، چطور میشه آسیب پذیری رو به RCE یا اجرای کد از راه دور، تبدیل کرد؟
مهاجم بواسطه ایجاد درخواست جعلی از سمت کاربر (CSRF) اقدام به ارسال Request بر روی مرورگر ادمین میکند بواسطه آسیب پذیری XSS که وجود دارد، یعنی آسیب پذیری XSS موجب میشود یک Exploit به زبان جاوا اسکریپت SRC شود.
لذا مهاجم میتواند بواسطه
XMLHttpRequest
شروع به درخواست با Cookie ادمین کند و بواسطه زدن اولین درخواست با روش GET، مقدار CSRF-Token که در وردپرس _wpnonce
نام دارد را دریافت کند.و از آن CSRF-Token برای زدن درخواست معتبر بعدی مبنی بر بار گزاری یک افزونه جعلی استفاده خواهد کرد و با Endpoint مربوط به
plugin-install.php
صحبت میکند، که نتیجه میشود بار گزاری یک افزونه Backdoor و در ادامه درخواست فعال سازی افزونه زده خواهد شد و تمام.اما نحوه صحبت با Backdoor روش جالبی است، که موجب صحبت با Endpoint درب عقبی شده و بواسطه ارسال دستورات در پارامتر های POST است که در تابع
()callback
پارس خواهد شد.@Unk9vvN