•۲
اولین Web Server دنیا هم روی یـک
کامـپـیـوتر Next در دفتر خود برنرز لی
اجرا میشد...
حتی روی دستگاه یک برچسب دستنویس
زده بودن:📜⚠️
«این دستگاه یک سرور است. خاموشش نکنید!»
و اولین وبسایت دنیا هم درباره خود Web بود
آدرسش:
info.cern.ch
اما قسمت جالب داستان برای ما از اینجا شروع میشه👇
برای اینکه مرورگر تو بتونه با یک
وب-سرور صحبت کـنـه، بایـد یک
زبان مشترکی داشته باشن.🤝
این زبان شد HTTP.
•
•۳🛑
⭕️ در اصل HTTP یک مدل ساده داره:
✋ --- تو درخواست میفرستی ---» سرور جواب میده 🎗
Request » Server » Response
مثلاً وقتی وارد یک سایت میشی، مرورگر
ممکنه چیزی شبیه این بفرسته:
GET / HTTP/1.1
یعنی:
«سلام سرور، من صفحه اصلی رو میخوام.»
و سرور جواب میده:
HTTP/1.1 200 OK
یعنی:
«درخواستت درست بود، این هم چیزی که خواستی.»
پایه بخش بزرگی از دنیای وب همین ارتباط
رفت و برگشتیه✅
•
•
بحث های امنیتیش بمـونه برای فردا +
تمرینی که باید انجام بدین و بفرستین🫀
منتظر نظراتتون تو ناشناس هستم :)
•
•۱
🔴 حالا زبان وب از دید امنیتی: 👇
اگر تمام ارتباط بین مرورگر و برنامه از
طریق درخواست و جواب انجام میشه...
پس یه متخصص امنیت باید بتونه اینها
رو متوجه بشه و پشت صحنه رو تحـلـیل
کنه؛🤫
•
•۲
GET /profile?id=123
سؤال) اگر id رو تغییر بدیم چی میشه؟🤔
اینجا HTTP بـرای متخصص
امنیت تبدیل به ابزار میشه🏴☠
•
•
تمرین روز اول
اگر تا حالا با DevTools کار نکردی اهمیتی نداره
برای اولینبار تستش کن😉 مرورگر وقتی
یک سایت رو باز میکنیم، پشت صحنه چه
حرفهایی با سرور میزنه؟
مرحله اول: باز کردن DevTools
مرورگر Chrome یا Edge رو باز کن.
یک سایت ساده باز کن؛ مثلاً سایت
خودت یا یک سایت آزمایـشـی، حالا
یکی از این کارها رو انجام بده:
روش اول: روی صفحه راستکلیـک کن و
گزینه Inspect رو بزن.
روش دوم: اگر ویندوز داری، کلیدهای زیر
رو بزن:
F12
اگر لپتاپت F12 رو با کلیدهای Function
استفاده میکنه، ممکنه لازم باشه:
Fn + F12
اگر از مک استفاده میکنی:
Command + Option + I
یک پنجره کنار یا پایین مرورگر باز میشه.
این همون DevTools هست✍
•
.
DevTools:
مجموعه ابزارهایی که به ما اجازه میده
بفهمیم مرورگر دقیقاً با صفحـه وب چه
کارهایی انجام میده✅
مرحله دوم: پیدا کردن Network
بالای DevTools چند گزینه میبینی.
معمولاً گزینههایی مثل:
Elements Console Sources Network
روی Network کلیک کن.
ممکنه صفحه تقریباً خالی باشه✋
مرحلـه ســوم: Request | درخواسـتها
رو ببین
حالا یک بار صفحه رو Refresh | رفرش
کن.
برای این کار میتونی:
Ctrl + R
یا
F5
رو بزنی.
اگر همه چیز درست انجام شده باشه،
اگهان تـعـداد زیــادی ردیف Network
ظاهر میشه.
•
•
اینها Requestهایی هستن که مرورگر
برای دریافت قسمتهای مختلف صفحه
ارسال کرده📩
چیزهایی مثل این میبینی:
document
css
js
png
svg
font
مرحله چهارم: اولین Request | درخواست
رو انتخاب کن
رو یکی از ردیفها رو کلیک کن... ✅
حالا سمت راست یا پایین صفحه اطلاعات
بیشتری نمایش داده میشه.
دنبال قسمتهایی مثل این بگرد:
Headers
Payload
Preview
Response
فعلاً فقط Headers رو باز کن.
مرحله پنجم: Request | درخواست رو بخون
داخل Headers دنبال قسمت Request URL بگرد.
این آدرس جاییه که مرورگر درخواست رو به اون ارسال کرده.
بعد دنبال Request Method بگرد.
ممکنه نوشته باشه:
GET
یعنی مرورگر از سرور چیزی درخواست کرده.
بعد Status Code رو پیدا کن.
مثلاً:
200
یعنی درخواست با موفقیت پاسخ گرفته.
ممکنه کدهای دیگهای هم ببینی:
404
یعنی چیزی که درخواست شده پیدا نشده.
403
یعنی سرور درخواست رو نپذیرفته.
500
یعنی سمت سرور مشکلی اتفاق افتاده.
اینا همون شماره هاییه که میبینی رو سایت
•
•
مرحله ششم: یک Request واقعی رو تصور کن
مثلا مرورگر این درخواست رو فرستاده:
GET /profile HTTP/1.1
سرور هم ممکنه جواب بده:
HTTP/1.1 200 OK
یعنی:
«درخواستت دریافت شد و من تونستم پاسخ بدم.»
این رفتوبرگشت ساده، یکی از پایهایترین
چیزهایی هست که باید در Web Security
یاد بگیری.
مرحله هفتم: یک چیز جالب پیدا کن
حالا داخل Network دنبال Request
هایی بگرد که وقتی روی اونها کلیک
میکنی، اطلاعات بیشتری در Headers
یا Response میبینی.
یا یک URL که داخلش یک پارامتر وجود داره:
?id=123
یا:
?page=2
امروز قرار نیست چیزی رو دستکاری کنیم☺️
امروز باید با درخواستها آشنا بشی و درک
کنی :)
•