Event Handler XSS
تصویر تزئینی – Event Handler جدید

اخیراً هنگام بررسی Event Handlerهای مرورگر به oncontentvisibilityautostatechange برخوردم که هنوز در بسیاری از Cheat Sheetها و Payload Listها کمتر دیده می‌شود.

🧩 این Event چه زمانی اجرا می‌شود؟

این Event مربوط به ویژگی CSS زیر است:

content-visibility: auto;

وقتی مرورگر تصمیم می‌گیرد یک عنصر را برای بهبود Performance رندر کند یا از رندر خارج کند، وضعیت visibility آن عنصر تغییر می‌کند و Event اجرا می‌شود.

به زبان ساده:

در این حالت Event contentvisibilityautostatechange فراخوانی می‌شود.

نمونه:

<div
  style="content-visibility:auto"
  oncontentvisibilityautostatechange="alert(origin)">
  Test
</div>

چرا برای تست XSS جالب است؟

بسیاری از فیلترها فقط Eventهای معروف را مسدود می‌کنند:

اما Eventهای جدیدتر مرورگرها گاهی از قلم می‌افتند و ممکن است در برخی سناریوها بتوانند فیلترهای ضعیف یا Blacklist-Based را دور بزنند.

این به معنی وجود آسیب‌پذیری نیست؛ اما هنگام تست ورودی‌های HTML Injection و XSS ارزش بررسی دارد.

⚠️ نکته مهم

این Event در همه مرورگرها پشتیبانی نمی‌شود و برای اجرا شدن معمولاً نیاز است عنصر از content-visibility: auto استفاده کند و وضعیت visibility آن تغییر کند.