بنابراین من یک برنامه وب را به صورت دستی قلم می زنم. پس از ارسال برخی از داده ها، آن را در درخواست POST
ارسال می کند که حاوی داده ها در یک شی JSON است. بنابراین در حالی که fuzzing آن را انجام دادم، برای کنترل نادرست رمزگذاری تست کردم. مطمئنا هنگام ارسال یک کاراکتر Unicode در قالب u2030
یک پاسخ از سرور دریافت می کنید که از داده های دروغین شکایت می کند.
با این حال، هنگامی که به من می گوید که من آن را به جای شخصیت فرستادم در مورد ‰
که چیزی است u2030
این شی JSON با سه کاراکتر جداگانه برای شخصیت یونیکد وارد شده است:
{"success": false، "errorcode" : 1،
"errormessage": "بخش" init "یا عمل" ȃ0 "نامعتبر است"}
ȃ0 'نامعتبر است
بخشی که بخشی از علاقه است. من کنجکاو هستم که آیا این ممکن است یک خطر بالقوه امنیتی را در قالب یک سرریز بافر نشان دهد، زیرا یکی از 3 بایت که شامل یک کاراکتر Unicode است، می تواند به عنوان یک بایت صفر تفسیر شود و پس از آن داده های بیشتری پس از آن بازنویسی شود حافظه.
هر گونه اطلاعات، مشاوره و غیره عالی خواهد بود. ممنون
EDIT: فقط برای من اتفاق افتاد که Burp، که من برای گرفتن پاسخ استفاده می کنم، ممکن است نادرست از کاراکتر Unicode در زمانی که سرور با آن پاسخ می دهد نمایش دهد. آیا این یک اشکال شناخته شده است؟