Pipelock: فایروال متنباز برای عاملهای هوش مصنوعی
خلاصهٔ کاملتر
عاملهای کدنویسی مبتنی بر هوش مصنوعی روزبهروز قدرتمندتر میشن، ولی این قدرت یه ریسک جدی هم داره: اونها معمولاً به شل دسترسی دارن، کلیدهای API توی متغیرهای محیطیشون ذخیره شده و میتونن بدون هیچ محدودیتی به اینترنت وصل بشن. یعنی اگه یه ابزار یا دستور مخرب بتونه کنترل عامل رو بگیره، همه چیز لو میره.
Pipelock یه پروژهی متنباز هست که توسط Joshua Waldrep در قالب پروژهی PipeLab ساخته شده. این ابزار یه لایهی اجرایی بین عامل و شبکه قرار میده تا تمام ترافیک خروجی رو قبل از رسیدن به اینترنت بررسی کنه. آخرین نسخهاش (2.3.0) با قابلیت redaction درخواستها بدون از دست دادن کلاس داده و اسکن پاسخهای SSE عرضه شده.
معماری Pipelock روی یه اصل مهم بنا شده: جداسازی مسئولیتها. عامل، کلیدها و اسرار رو نگه میداره ولی دسترسی مستقیم به شبکه نداره. پراکسی، دسترسی به شبکه داره ولی هیچ اسراری نمیدونه. تمام ترافیک بین این دو از یه مرز اسکن رد میشه. Waldrep این ساختار رو به TLS در وب تشبیه میکنه؛ جایی که اجزای تأییدکننده و اجزای تأییدشونده از هم جدا هستن.
یکی از مهمترین نکاتی که Waldrep اشاره میکنه اینه که اکثر ابزارهای امنیتی موجود برای عاملها، به همکاری خود عامل نیاز دارن؛ یعنی SDK، دکوراتور یا middlewareای هستن که عامل باید صداشون بزنه. اما اگه عامل مورد حمله قرار بگیره یا دستکاری بشه، میتونه همین کنترلها رو دور بزنه. Pipelock اصلاً درون عامل نیست؛ بیرون از اون و سر مرز خروجی میشینه.
موتور اسکن Pipelock یه پایپلاین ۱۱ مرحلهای داره که شامل اینها میشه: بررسی scheme، شناسایی تزریق CRLF، جلوگیری از path traversal، بلاکلیست دامنهها، جلوگیری از نشت داده (DLP)، آنالیز آنتروپی مسیر و زیردامنه، محافظت در برابر SSRF، محدودیت نرخ، بررسی طول URL و بودجهی داده به ازای هر دامنه. لایهی DLP هم ۴۸ الگوی اعتبارنامه رو پوشش میده از جمله کلیدهای API، توکنها، شماره حسابهای بانکی و کلیدهای خصوصی رمزارز.
سیستم به شکل هوشمندی با روشهای فرار از شناسایی هم کنار میآد. کدگذاریهایی مثل base64، hex، URL encoding و یونیکد رو تشخیص میده و decode میکنه. اسکن پاسخهای دریافتی هم ۲۵ الگوی تزریق رو با شش پاس نرمالسازی برای کاراکترهای صفر-عرض، homoglyphها و leetspeak چک میکنه. نکتهی مهم اینه که سیستم «fail closed» هست؛ یعنی در صورت خطا یا تایماوت، بهجای اجازه دادن، بلاک میکنه.
پوشش این ابزار فقط HTTP ساده نیست. تانلهای CONNECT، فریمهای WebSocket در هر دو جهت، پروتکل MCP و پیامهای Google Agent-to-Agent هم اسکن میشن. خروجیهای آدیت به شکل لاگ زنجیرهای hash-chained با امضاهای اختیاری Ed25519 ارائه میشه. نقشهبرداری از چارچوبهای امنیتی شناختهشده مثل OWASP MCP Top 10، MITRE ATT&CK، EU AI Act و NIST 800-53 هم پشتیبانی میشه و خروجی SARIF v2.1.0 با GitHub Code Scanning یکپارچه میشه.
Pipelock به عنوان یه باینری Go حدوداً ۲۰ مگابایتی با ۲۲ وابستگی ارائه میشه و تحت لایسنس Apache 2.0 هست. Waldrep میگه هدف بلندمدت اینه که فرمت signed evidence receipt به یه زیرساخت عمومی برای تأیید هویت عاملها تبدیل بشه تا بقیهی فروشندگان و پروژههای متنباز هم بتونن ازش استفاده کنن.
نکات کلیدی:
- Pipelock یه پراکسی امنیتی متنباز هست که بین عاملهای هوش مصنوعی و شبکه قرار میگیره
- برخلاف SDKها و middlewareها، به همکاری عامل نیاز نداره و بیرون از اون کار میکنه
- پایپلاین ۱۱ مرحلهای شامل DLP، SSRF، آنتروپی، rate limiting و موارد دیگهست
- ۴۸ الگوی اعتبارنامه رو شناسایی میکنه و روشهای فرار از شناسایی مثل base64 و یونیکد رو هم میشناسه
- سیستم fail closed هست؛ در صورت عدم اطمینان، بلاک میکنه نه اجازه میده
- با پروتکلهای WebSocket، MCP، SSE و Google Agent-to-Agent سازگاره
- رایگان و متنباز با لایسنس Apache 2.0 روی GitHub در دسترسه




