کدام بار را می توان برای استفاده از XSS بدون استفاده از تگ های HTML <> استفاده کرد. این برچسب ها فیلتر شده اند (sanitized) و در خروجی کد گذاری می شوند.
appsec – آیا یک خطای 401 از اطلاعات نشتی API باز می شود؟
من یک API برای یک برنامه کاربردی که در حال کار است را توسعه می دهم و یک سوال جالب مطرح می کنم:
یک نقطه پایانی API را اینگونه تصور کنید:
GET / customers / 123456
که یک شی تک مشتری را باز می کند. در حال حاضر، در سازمان ما، مشتریان می توانند به سازمان های فروش تعلق داشته باشند. هر کاربر API با یک سازمان مرتبط است و می خواهم دسترسی کاربر به مشتریان مرتبط با سازمان خود را محدود کنم.
بنابراین، با توجه به یک کاربر متعلق به سازمان ABC و مشتری 123456 که متعلق به سازمان است XYZ ، چه API باید به من نشان دهد، زمانی که این کاربر تلاش می کند تا آن مشتری را دریافت کند؟
-
404 Not Found– اگر یک کاربر یک مشتری غیر موجود را جستجو کند، آن را404باز می گرداند، زیرا هیچ منبع در آن URL پیدا نشد. -
401 غیر مجاز– اگر پرس و جو از یک منبع که شما دسترسی ندارید، باید پاسخ "غیر مجاز" دریافت کنید.
به نظر می رسد که اگر API برای اطلاعات غیرقابل دسترسی، API 401 غیر مجاز یا مشتری های موجود از سایر سازمان ها را پیدا کند و 404 یافت نشد برای مشتری های غیر موجود باشد. به عنوان مثال، یک کاربر از سازمان ABC می تواند API را پرس و جو کند و تعیین کند که کدام شناسه های کاربر وجود دارد و چه کسی نمی باشد.
یادداشت های اضافی:
-
شناسه های مشتری به صورت پیوسته تولید می شوند و هیچ نوع شکاف وجود ندارد، بنابراین نوع اطلاعاتی که می تواند نشت باشد:
- کدام مشتری کد بعدی خواهد بود؟
- چگونه تعداد مشتریان در یک دوره زمانی ایجاد شد؟
-
سازمان های فروش معمولا به مناطق جغرافیایی خاص محدود می شوند و معمولا در رقابت مستقیم نیستند. اما بعضی از سرزمینها همپوشانی دارند و قوانینی وجود دارد که به "شکار" کردن مشتریان یکدیگر کمک کند. بنابراین، همه چیز در همه، یک محیط رقابتی محکم است که ما واقعا نمی خواهیم سازمان های فروش را در مورد مشتریان یکدیگر بدانیم.
Fuzzing با Owasp-Zap
من انجام تست های وب را انجام می دهم و عمدتا تزریق ها را به رشته ها و غیره انجام می دهم. به جای این که به صورت دستی در هر فیلد فرم انجام دهید، چگونه می توانم این را به صورت اتوماتیک در برابر تمام فیلدهای فرم در یک صفحه انجام دهم؟ من شنیدم که این کار را می توان در OWASP-zap انجام داد اما نمیتواند چگونگی انجام آن را بفهمد. آیا کسی می تواند این را برای من روشن کند؟
