راکت
حل شده

باگ xss و sql

3 پاسخ

با سلام خدمت تمامی اساتید محترم
در php چ کاری رو انجام بدم که این دو باگ بسته بشه
چ ارایه یا هرچیز دیگه ای باید به ورودی هام اضافه کنم؟
ممنون میشم راهنمایی کنید
این کار رو انجام میدم از فارسی پشتیبانی نمیکنه متاسفانه:/

$url = filter_var($names, FILTER_SANITIZE_ENCODED, FILTER_FLAG_STRIP_HIGH);
echo $url;
ثبت پرسش جدید

پاسخ‌ها

3
Alimotreb
Alimotreb
@Alimotreb

تخصص: کانفیگ سرور و برنامه نویس

بهترین پاسخ

سلام
@hosseinshaker78

یک عملیاتی هست تحت عنوان ولیدیشن یا اعتبار سنجی داده

شما روی پروژه اگر سایت هست ، هم سمت کاربر باید این کار رو انجام بدید
هم سمت بک اند تون که هر دیتاییی مجاز به انجام عملیات منطقی نباشه.

برای XSS ولیدیشن های جاوا اسکریپتی هست که میتونید استفاده کنید ک به فرض اگر فیلدی ، ایپوتی چیزی دارید و قرار ایمیل بگیره فقط و فقط ایمیل بگیره ، چیز دیگری نگیره!! نمونه کداش هست و سرچ کنید

و اما sql injection
اگر از پکیج های دیتابیس برای عملیات crud استفاده میکنید تا حدودی این عملیات بر طرف شده ، اما اگر توی پروژتون با PHP خالی دارید مینویسید
یه نمونه کد براتون میزارم استفاده کنید

$safe_data = strip_tags($safe_data);
    $safe_data = htmlentities($safe_data, ENT_COMPAT, 'UTF-8');
    $safe_data = stripslashes($safe_data);
    $safe_data = htmlspecialchars($safe_data);
    $safe_data = str_replace("\\","",$safe_data);
    $safe_data = str_replace("%","",$safe_data);
    $safe_data = str_replace("$","",$safe_data);
    $safe_data = str_replace("#","",$safe_data);
    $safe_data = str_replace("^","",$safe_data);
    $safe_data = str_replace("~","",$safe_data);
    $safe_data = str_replace("etc","",$safe_data);
    $safe_data = str_replace("passwd","",$safe_data);
    $safe_data = str_replace("<script>","",$safe_data);
    $safe_data = str_replace("<div>","",$safe_data);
    $safe_data = str_replace("while","w h i l e",$safe_data);

هر چیز اضافی باشه تو دیتا های ورودی رو میتونید با این عملیات فیلتر کنید
خواستید برای خودتون هم میتونید کاستوم سازی های بیشتری رو انجام بدید
و بعد دیتای فیلتر شده رو ببرید داخل دیتابیس.

موفق باشید

hosseinshaker
hosseinshaker
@hosseinshaker78

متشکرم دوست عزیز
فقط ی سوال
ی سریع تابع هست ک کوتیشن رو پاک میکنه اون اسمش چیه؟

Alimotreb
Alimotreb
@Alimotreb

تخصص: کانفیگ سرور و برنامه نویس

سلام
@hosseinshaker78
از 2 تابع میتونید استفاده کنید

str_replace("'", "", $string);

trim($str, "\"\'");

موفق باشید

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام