Glow Security پژوهشی با نام PixelLeak منتشر کرده و میگوید بیش از ۱۳ هزار تصویر و ضبط صفحه داخلی را در مخزنهای عمومی GitHub یافته که به توسعهدهندگان بیش از ۳۰۰ سازمان مرتبط بودهاند. به گفته Glow، این موارد در بیش از ۹۰۰ مخزن پخش شده بودند و بعضی از تصاویر شامل اطلاعات مشتریان، رابطهای مالی، محصولات منتشرنشده و جزئیات داخلی فرایند توسعه میشدند.
اهمیت این گزارش فقط در یک اشتباه ساده مثل بارگذاری فایل اشتباه در یک مخزن عمومی نیست. در چند موردی که Glow شرح میدهد، عاملهای برنامهنویسی هوش مصنوعی یا ابزارهای کمکی تلاش کردهاند تصویر لازم برای بازبینی کد را در دسترس قرار دهند و برای انجام این کار مسیری عمومی بیرون از مرز مخزن خصوصی سازمان ساختهاند. اینجا یک نقص کوچک در فرایند کاری به مسئله کنترل عامل تبدیل میشود: کار انجام میشود، اما روشی که عامل برای انجام آن انتخاب میکند میتواند فرض امنیتی اپراتور را نقض کند.
Glow چه چیزی را گزارش کرده است؟
Glow میگوید ۹۳ درصد مواردی که شناسایی کرده، زیر حساب شخصی کارکنان در GitHub میزبانی شدهاند و نه زیر سازمان رسمی شرکت. همچنین به گفته این شرکت، حدود یکسوم سازمانهای درگیر توسعهدهندگانی داشتهاند که از gitshot استفاده میکردند؛ ابزاری که برای در دسترس قرار دادن تصاویر در فرایندهای خط فرمان، آنها را در یک مخزن GitHub ذخیره میکند.
در یکی از موارد بزرگتر، به گفته Glow، راهحل موقتی برای اشتراک تصویر به یک مهارت قابلاستفاده مجدد برای عامل تبدیل شده و چند عامل برنامهنویسی از آن استفاده کردهاند. نتیجه، قرار گرفتن بیش از هزار تصویر و ضبط صفحه در یک مخزن عمومی بوده است. Glow میگوید از ۹ سپتامبر اطلاعرسانی به سازمانهای درگیر را آغاز کرده و گزارش عمومی را در ۲۹ سپتامبر منتشر کرده است.
این آمار باید بهعنوان یافتههای گزارششده توسط Glow خوانده شود، نه یک سرشماری مستقل و حسابرسیشده. Glow نام سازمانهای درگیر را عمومی نکرده و مجموعه کامل دادهای منتشر نشده که دیگران بتوانند شمار ۱۳ هزار تصویر و بیش از ۳۰۰ سازمان را بهطور مستقل بازتولید کنند. عمومی بودن فایلها نیز بهتنهایی ثابت نمیکند که پیش از اصلاح، شخص ثالث غیرمجازی آنها را دریافت کرده باشد.
یک جزئیات مهم درباره GitHub CLI
زمانبندی ماجرا نکته مهمی دارد. GitHub در اول سپتامبر ۲۰۲۶ و در نسخه 2.99.0 ابزار GitHub CLI گزینه تکرارپذیر --attach را برای افزودن تصویر و ویدئو به issue و pull request ارائه کرد. اعلام رسمی GitHub نیز صریحاً میگوید عاملهای برنامهنویسی که از این ابزار استفاده میکنند میتوانند از همین قابلیت بهره ببرند.
بنابراین دیگر دقیق نیست که علت را صرفاً «ناتوانی GitHub CLI در افزودن تصویر به pull request خصوصی» بدانیم. پیش از آنکه Glow در ۹ سپتامبر اطلاعرسانی به سازمانها را شروع کند، مسیر رسمی و امنتری در خط فرمان وجود داشت. موارد گزارششده میتوانند مربوط به نسخههای قدیمی ابزار، محیطهایی باشند که قابلیت تازه را نگرفته بودند، دستورالعملهای قدیمی عاملها یا ابزارهایی مانند gitshot که از قبل در فرایند توسعه جا افتاده بودند.
این تفاوت مهم است، چون راهحل هم تغییر میکند. بهروزرسانی ابزار میتواند یکی از انگیزههای ساخت راه میانبر را حذف کند، اما اگر مجوزها و دستورالعملها اجازه دهند، جلوی ساخت مسیر بیرونی دیگری توسط عامل را نمیگیرد.
مرز واقعی، محل نوشتن داده توسط عامل است
مهمترین نتیجه عملی این است که خصوصی بودن یک مخزن بهتنهایی مرز امنیتی کاملی برای کار عاملمحور نیست. عاملی که اجازه ساخت مخزن، ارسال داده به حساب شخصی، ایجاد gist عمومی یا استفاده از میزبان بیرونی را دارد، میتواند اطلاعاتی را که از محیط خصوصی خوانده به جایی خارج از آن منتقل کند، بدون اینکه تنظیمات مخزن اصلی تغییر کند.
پس برای تیم امنیتی پرسش فقط این نیست که «عامل به چه فایلهایی دسترسی خواندن دارد؟» پرسش دوم باید این باشد که «عامل میتواند آنچه خوانده را کجا بنویسد؟» کنترل خروج داده باید بهاندازه دسترسی ورودی جدی گرفته شود.
جزئیات gitshot نیز همین نکته را تقویت میکند. عمومی بودن مخزن پیشفرض این ابزار در مستندات آن ذکر شده بود؛ بنابراین صرف استفاده از آن ثابت نمیکند که یک عامل خودمختار برخلاف دستور صریح انسان تصمیم به افشای داده گرفته است. خطر بزرگتر این است که یک ابزار راحت یا راهحل موقت یکبار پذیرفته شود، بعد در قالب مهارت عامل ذخیره شود و از آن پس با سرعت ماشینی در کارهای متعدد تکرار شود.
کنترل اجرایی از هشدار در متن دستور مهمتر است
دستورهایی مانند «اطلاعات حساس را افشا نکن» مفیدند، اما برای چنین خطایی کافی نیستند. تنظیم امنتر باید برای ساخت مخزن عمومی، تغییر سطح دسترسی، ارسال به فضای شخصی، ایجاد gist عمومی یا بارگذاری فایل روی سرویس بیرونیِ تأییدنشده، تأیید صریح انسان یا سیاست اجرایی اجباری بخواهد.
سازمانها همچنین میتوانند حسابهای شخصی GitHub مرتبط با توسعهدهندگان شرکتی را حسابرسی کنند، مخزنهای کارکنان جداشده را بررسی کنند، فهرست مهارتها و ابزارهای کمکی عاملها را نگه دارند و ساخت مخزنهای عمومی تازه را برای نشانههای سازمانی یا فایلهای رسانهای غیرمنتظره پایش کنند. هرجا ممکن است، عامل باید از روش رسمی پیوست فایل در همان محیط همکاری خصوصی استفاده کند و نه یک کانال جانبی تازه.
PixelLeak در نهایت بیشتر از آنکه داستان «اشتباه عجیب هوش مصنوعی» باشد، نمونهای از نبود لایه سیاستی پیرامون عمل عاملهاست. الزام امنیتی اصلی این است که مرز داده حساس در زمان اجرا قابلاجرا باشد؛ بهگونهای که عامل فقط چون یک مسیر عمومی سریعتر به هدف نزدیکش میکند، نتواند آن مرز را دور بزند.
منابع
https://www.glow.io/blogs/how-ai-agents-exposed-developer-screenshots-from-leading-tech-companies
https://github.blog/changelog/2026-09-01-github-cli-media-in-issues-pull-requests-and-comments/
https://www.tomshardware.com/tech-industry/cyber-security/ai-agents-inadvertently-leak-13-000-internal-screenshots-from-organizations-list-of-companies-includes-fortune-500-and-a-frontier-ai-lab
https://thehackernews.com/2026/09/ai-coding-agents-exposed-13000-internal.html