TGViewer
| AmirHossein | | AmirHossein | @amirhdeveloper · 610 subscribers
Post #92 109
#security #bug
دسته بندی Cross-Site Attacks

باگ Cross-Site Scripting (XSS) یک نوع باگ امنیتی است که در برنامه‌های وب رخ می‌دهد. در XSS، حمله‌کننده با درج کدهای مخرب یا اسکریپت‌ها در صفحات وب، می‌تواند اجرای این کدها را بر روی مرورگر کاربران دیگر فراهم کند. این کار می‌تواند منجر به دزدیدن کوکی‌ها، اطلاعات حساب کاربری و حتی اجرای دستورات مخرب بر روی دستگاه کاربران شود.

مثال:

فرض کنید یک وب‌سایت دارای صفحه‌ای است که کاربران می‌توانند نظرات خود را ارسال کنند و این نظرات در صفحه نمایش داده می‌شوند. صفحه HTML به صورت زیر است:

<body>
<h1>Comments</h1>
<div id="comments">
<?php
$comment = $_POST['comment'];
echo $comment;
?>
</div>
<form action="" method="post">
<textarea name="comment"></textarea>
<br>
<input type="submit" value="Submit">
</form>
</body>

حمله‌کننده می‌تواند کد XSS را در فیلد نظرات وارد کند. به عنوان مثال:

<script>
alert('You have been hacked!');
</script>

وقتی کاربر دیگری صفحه را باز می‌کند و این نظر را مشاهده می‌کند، اسکریپت ناامن اجرا می‌شود و یک پیغام هشدار نمایش داده می‌شود.

روش های جلوگیری:

1- برنامه‌نویسان باید ورودی‌ها را با دقت فیلترسازی و تقویت کنند. این کار شامل حذف و یا اسکیپ کردن کدهای خطرناک است.

2- همواره برای نمایش مقادیر متغیرها در صفحات HTML از نقل‌قول دوگانه استفاده کنید.

3- استفاده از کتابخانه ها مانند HTML Purifier که یک کتاب‌خانه PHP است که از HTML ناامن و ویژگی‌های خطرناک جلوگیری می‌کند و امنیت نمایش محتوا را تضمین می‌کند.می توانید برای زبان های دیگر جست و جو کنید و با ما به اشتراک بگزارید.

4- اعتبارسنجی دقیق اجازه‌ها و محدودیت‌هایی را برای منابع اجرایی (scripts, stylesheets و غیره) در صفحات HTML مشخص می‌کند.

5- اجازه دسترسی به کوکی‌ها را به دامنه‌های مشخص محدود کنید تا از کلاهبرداری کوکی جلوگیری شود.

6- برای کوکی‌هایی که توسط جاوااسکریپت به دسترسی نیاز ندارند، از HTTP Only Flag استفاده کنید. همچنین برای کوکی‌هایی که باید از طریق ارتباط امن انتقال یابند، از Secure Flag استفاده کنید.

.
  • 👍 1
  • 🔥 1
More from @amirhdeveloper
  1. Sep 30, 2026پکیج LaraGram Sentinel منتشر شد؛ یک پنل مانیتورینگ که هیچ چیزی از زیر دستش در نمی‌ره! تمام…
  2. Sep 23, 2026از امروز با کاهش شدید حاکرها مواجه میشیم
  3. Sep 19, 2026🔴 سوال سوم دو Region دارید: US-East و EU-West. کاربران در هر دو Region هستند. سیستم باید…
  4. Sep 19, 2026🟠 سوال دوم فرض کنید Service A به Service B درخواست می‌زند. B به‌دلیل overload، latency با…
  5. Sep 19, 2026🟢 سوال اول فرض کنید یک سرویس backend داریم که به PostgreSQL وصل می‌شود. تعداد requestها ن…
  6. Sep 19, 2026خیلی وقته پست‌های کانال فقط درمورد LaraGram بوده، وقتشه یکم جالب‌ترش کنیم اگر ممبرها هنوز…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →