دوستان یک سوالی دارم در مورد امنیت در فریم ورک لاراول
1- در نظر بگیرید ما یک فرم داریم و از کاربر یکسری اطلاعات می گیریم و در دیتابیس ذخیره می کنیم ایا به صورت پیشرفض روش ذخیره سازی صحیح هستش : از نظر امنیتی مشکلی نداره :
$wallet_my = \DB::table('wallets')->insert([
'user_id'=> $user_id,
'coin'=>'BTC',
'network'=>'btc',
'wallet_address'=> $request->get('btc'),
'key1' => '0',
'balance' => 0,
'status' => 1,
]);
ای روش برای دریافت اطلاعات از ورودی و ذخیره در دیتابیس از نظر ایمنی مشکلی نداره یعنی امکان تزریق تغییر در موجودی و ... وجود نداره و ایمن هستش ؟
بیش از اندازه باید محتاط باشم فقط 5 هزار دلار وبسرویس هزینه شده برای صرافی و نمی خوام خصوصا ارز دیجیتال هستش بره و بر نگرده هک بشه.برای همین هر چیزی به نظرتون در مورد امنیت تو لاراول مهم هستش ممنون میشم بگید.
سلام
شما کد فورم رو ننوشتید. اگر به صورت پیشفرض لاراول ورودی ها رو به سمت سرور بفرستید و در دیتا بیس ذخیره کنید هیچ مشکل امنیتی پیش نمیاد.
@hunt.coders1989
سلام لاراول از همه ی باگ های sql injection محافظت می کنه و نمی گذارید دیتای مخرب وارد دیتابیس شود.
اگر از editor ها مانند ckeditor استفاده می کنید باید حواس شما باشد تا از ورود تگ هایی مانند script جلو گیری کنید.
اگر هم api ندارید cors را روی لاراول فعال کنید.
این مقاله هم می تواند به شما کمک کند.
@hunt.coders1989
کد فرم که شامل اینپوت میشه .
1- برای اعتبار سنجی اپلود فایل من پسوند فایل رو می ریزیم تو متغییر بعد با استفاده از یه شرط می گم اگه پسوند توی متغییر با چیزی که من می خوام یکی بود اپلود کن نبود برگرد برو دیگه پیش من نیا که ازت خشم نمیاد ::دی
if($request->file('passport')->getClientOriginalExtension() == 'jpg' | $request->file('passport')->getClientOriginalExtension() == 'png')
{
کد بالا رو عزیز ببینید مثلا پاسپورت رو از کاربر می خواهیم عکس اسکنش رو بفرسته من اینطور اعتبار پسوند رو می سنجم به نظر شما دوستان مشکلی نداره این روش ؟
و اینکه ذخیره سازی اطلاعات در دیتابیس کلا به روش بالا از در پست اول گفتم اوکی هستش و مشکلی نیست ؟
اگه نیست که دیگه بقیه کارها سمت بک اند صورت می گیره یعنی کاربر موجودیش چک میشه اگه موجودی داشت از کیف پول بیت کوین به اندازه موجودیش منتقل میشه یعنی کاربر وقتی میزنه مثلا 1 بیت کوین ابتدا چک میشه ایا تو کیف اینقدر داره اگه داره انتقال انجام میشه نداره خطا میده.
و ....
البته کد بالا رو مثلی گفتم والا اینقدر طولانی نیست فایل رو کلا می ریزم تو متغییر دیگه چندبار یه کد رو تکرار نمی کنم
ببینید دوست عزیز برای چک کردن فرمت های ورودی باید از validator در لاراول استفاده کنید. مستندات validatorعنوان لینک مورد نظر
مشکلی از بابت استفاده از ولیدتور برای اعتبار سنجی ها نیست با روش های مختلفی ولیدتور رو انجام میدم اما در کل سوالم این بود این روش که مثلا گفتم برای تصاویر مشکل امنیتی نداره ؟ والا خود ولیدتور هم میشه ایمیج رو زد خودش بقیه رو انجام بده اما هدفم نوشتن توسط خودم هستش .
ببینید اونی که شما خودتون می نویسید هر چقدر هم که خوب بنویسید باز هم ممکنه باگ داشته باشه. به ویژه باگ امنیتی. مواردی که داخل laravel کعرفی میشن یه تیم کار کشته چند سالی هست که دارن روش کار می کنن و خیلی امن تره.
@hunt.coders1989
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟