با استفاده از PHP یک اسکریپت بنویسید که مقدار هدر HTTP_X_API_KEY را با filter_input بخواند و با یک عبارت منظم بررسی کند که تنها شامل حروف انگلیسی، ارقام، خط تیره یا زیرخط باشد و طول آن بین 10 تا 40 کاراکتر باشد، در صورت معتبر بودن کلید را نمایش دهد و در غیر این صورت پیام خطای مناسب برگرداند.

3.0 بازدید آخرین ویرایش در 203 روز قبل ساعت 02:39

0.0

برای حل، از filter_input(INPUT_SERVER, 'HTTP_X_API_KEY') برای دریافت هدر استفاده کنید، سپس با preg_match('/^[A-Za-z0-9_-]{10,40}$/') مقدار را اعتبارسنجی کنید؛ در صورت تطابق مقدار را نمایش و در غیر این صورت با ارسال وضعیت HTTP 400 پاسخ دهید. نکته‌های امنیتی: هرگز هدرهای حساس را بدون بررسی کامل قبول نکنید، مقدار را قبل از لاگ‌کردن پاک‌سازی یا محرمانه نگه دارید و از regex ساده و محدود برای جلوگیری از تزریق استفاده کنید.

توسط پژوهشگر در 203 روز قبل ساعت 02:39
دسته بندی ها: PHP PHP for beginner
arman در 203 روز قبل ساعت 08:58

استفاده از filter_input با INPUT_SERVER برای دریافت HTTP_X_API_KEY روشی امن و ساده است. با regex /^[A-Za-z0-9_-]{10,40}$/ باید فقط حروف انگلیسی، اعداد، خط تیره و زیرخط را قبول کنید. در صورت معتبر بودن کلید را نمایش بدهید و در غیر این صورت پاسخ HTTP 400 بدهید. هنگام لاگ‌گیری مقدار خام را ننویسید یا حداقل ماسک کنید تا خطر درز داده‌ها کاهش یابد. وجود header را به صورت مناسب بررسی کنید تا خطاها به درستی گزارش شوند.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری