امنیت سایت و توکن دزدی: پیاده سازی سیستم لاگین و ذخیره امن توکن در ریاکت
Вставка
- Опубліковано 6 сер 2024
- توکن دزدی یا token theft روشیه که هکر میاد توکن کاربر و بعد از اینکه کاربر وارد سیستم شد و لاگین کرد میدزده و هرکاری که میخواد با اون توکن میکنه!
تو این ویدیو ما بررسی میکنیم که چه طوری با XSS هکر میتونی یه تیکه اسکریپت به سیستم ما اضافه کنه، بعد میایم یه راه حلی ارائه میدیم که اگر ۱درصد یه روزی تونستن به سیستم ما دسترسی و یه اسکریپت اضافه کنن به سیستم توکن و ندزدن و به اون دسترسی نداشته باشن
تو این ویدیو یاد میگیریم که با استفاده از HTTP-Only کوکی جلوی این مدل اتک رو بگیریم و سرعت یه لایه امنیتی برای جلوگیری از توکن دزدی بزاریم
داخل ویدیو به چندتا مسئله دیگه اشاره میکنم که لینک ویدیو های مربوط به اون قسمتارو اینجا براتون میزارم
ویدیو مربوط به دیپلوی کردن بک و فرانت اند کنار هم:
• هزینه سرور و هاست و کم...
ویدیو مربوط به CORS و Origin:
• خطای CORS چیه و چه طور...
00:00 - مقدمه
0:35 - حمله XSS چیه و چه طوری کار میکنه!
2:09 - حمله Supply Chain Attack!
3:13 - راه حل منطقی و اصولی برای جلوگیری از این مدل اتک
4:25 - کوکی ها تو مرورگر چه طوری کار میکنند
5:15 - کوکی httpOnly چیه و چیکار میکنه!
6:25 - بکاند امن و درست باید چه جوری پیاده شده باشه
8:21 - پیاده سازی سیستم signin و ذخیره توکن به صورت httpOnly
9:22 - کد بکاند برای ذخیره کوکی httpOnly
11:13 - کوکی خودش ارسال میشه به بکاند
11-47 - ذخیره فلگ برای چک کردن وضعیت لاگین
12:22 - پیاده سازی Protected Route
14:08 - تشخیص لاگین بودن کاربر بدون فلگ
14:45 - جمع بندی و پایان
Website: react.ir
Twitter: / react_ir
Instagerm: / react_ir
Telegram: t.me/react_ir
Personal Twitter: / nima_arf
Personal Instagram: / nima_arf
Personal Github: github.com/nimaa77 - Наука та технологія
فوق العاده بود , حتما از این دست ویدیو های کاربردی وتخصصی بازم بسازید ممنون 😍
خیلی مفید بود
💥
خسته نباشید ، مثل همیشه عالی و مفید بود 👏🙏❤️
خواهش میکنم، امیدوارم به کار بیاد و کمکتون کرده باشه
مرسی خسته نباشی
خواهش میکنم، سلامت باشید
dadash awli bod khudaie kheili fane bayanet awliye
عشق عشق چاکریم ❤️😍
عالی بود آقا نیما همینطوری ادامه بده
😍🔥 فکر نمیکردم اینقدر طرفدار پیدا کنه این ویدیو
مثل همیشه عالی بود نیما جان 🎉🎉🎉🎉
😍😍🔥🫡
عالی🔥👌🏼
❤️
عالی بوئ نیما جان
چاکریم 😍🔥
nice
Thanks
عالی بود🔥
مثل همیشه عالی و کاربردی🔥🔥
ایول، خوشحالم که مفید بوده
عالی 🎉
😍❤️ ایول که خوب و خوشتون اومد
ندید میگم مثل همیشه عالی ❤
عشق عشق 🔥❤️
🔥 🔥 🔥
😍❤️ ایول که خوب و خوشتون اومد
خیلی خوب بود ویدیو. فقط توی اینترو صدای موزیک خیلی بالا بود. میتونی sidechain بزنی که وقتی داری صحبت میکنی صدای موزیک بیاد پایین.
حتما درستش میکنم تو ویدیوهای بعدی
بسیار عالی نیما جان
اگه یه دوره پروژه محور هم بسازید که دیگه خیلی مدیون میشیم 😂❤🎉
ایول 😍
دوره پروژه محور نکست یا ریاکت؟
@@nima_arf اگه امکانش هست next 😍🌹
💥💥
🔥🔥🔥
favorite apple user of us !!
😂😂😂 چیکار کنم دیگه
لامصب خوبه
راهکار دومی که دادید بهتر بود به نظرم چون مدیریت کردنش خیلی راحت تر و دقیقتره
راهکار برای اینکه بدونیم کاربر لاگین هستش یا نه؟
اره منم خودم اونو بیشتر از فلگ گذاشتن دوست دارم
عالی
فقط نیما جان اگه کدهاتو رو روی گیتهاب هم بزاری بهتر میشه
بله حتما فردا انجامش میدم
Thank you Nima for your practical and super educative tutorial videos. I really appreciate your efforts.
may I ask you giving me the link of that community you said? "which you said that you talk with others and they talk about complicated solutions for simple things like this...".
سلام
خوشحالم که از ویدیو خوشت اومده
۳ تا گروه تو تلگرام هستند که من اونجا ارتباط دارم با بچه ها، اگر امکانش هست داخل تلگرام به من یه پیام بده که لینکشونو بفرستم با از کانال تلگرام خودم ادرس اون گروه هارو بردار
@nima_arf
@react_ir
Hata mishe ba encryption to local storage zakhire kard ya hata ba interceptor handle kard 👌👌
سلام
اگر تو مرورگر توکن و encrypt کنید، کلیدی که باهاش رمزنگاری و انجام داد تو کدای پروژه شما هستش و با یه نگاه کردن ساده به کدای js میتونن کلید رمز نگاری و پیدا کنن
درسته که در نگاه اول همینطوری توکن و بردارن به دردشون نمیخوره ولی خب یه کوچولو کنجکاوی کنن راحت میتونن دورش بزنن
🔥🔥
arc 😱
زیباست
هرچی فیچر داره رو edge داره کپی میکنه 😂
محتوا عالی
فقط گین میکروفون رو یکم کم کن
صدات میکوبه
صدای فن داره میاره
نفس هم میکشی میاد
اینارو نباید بگیری و صداش خودش شفاف تر میشه
صدای میکروفون و کارت صدا کم بود (مناسب بود)
من تو نرم افزار زیادی، زیادش کردم
بعد که اپلود کردم متوجه شدم چه خراب کاری کردم
ولی خب اینکه چه طوری میشه صدای نفس کشیدن و ردیف کرد و نمیدونم، حالا این دفعه صدای کارت صدارو کم میکنم، یه کمپرسور میزارم بعدش زیادش میکنم
ببینن چی میشع
در مورد اینکه برای مدیریت کاربر سمت کلایت اومدید از localstorage استفاده کردید نمیشه از کوکی استفاده کرد ؟ و اینکه مثلا authjs اینو چطوری هندل میکنه که هم سمت کلایته هم سمت سرور ؟
چرا میشه، اونجا به جای دخیره flag تو localStorage اون فلگ رو داخل کوکی ست کنید
اگر از next auth استفاده میکنید اون خودش کوکی و به صورت httpOnly ذخیره میکنه و شما از session بهش دسترسی دارید
بعد این سشن رو کلاینت و سرور در اخیتار شما هستش، خودتون میاید
SessionProvider و رندر میکنید و session و بهش پاس میدید (یا وقتی useSession و صدا میکنید رو کلاینت، میاد یه fetch میزنه به یه اندپوینتی تو سایت خودتون و اطلاعات یوزر و میگیره - که خب اینجا کوکی میره رو سرور و ...)
سلام
نمیشه درباره طراحی لاگین و رجیستر امن با Express بسازی برامون؟
سلام
همین مثال این ویدیو با اکسپرس بود، اگر میخواید میتونم بزارمش تو گیت هاب و لینکشو ارسال کنم
ممنون میشم بزارید
آقا اون
credentials include
رو متوجه نشدم
حقیقتش اون لازم نیست
بدون اون هم درست کار میکنه
من بعد از ضبط ویدیو متوجه شدم
ولی اگر خواستی دربارهش بدونی اینجارو بخون
developer.mozilla.org/en-US/docs/Web/API/Request/credentials
همه چیز واسه دوره گذاشتن مهیاست ، چرا اقدام نمیکنی یزید؟
اخه وقت نمیکنم
الان دارم هفتهای یدونه ویدیو میزارم پوستم کنده شده 😂
بعد دوره چی بزارم؟