این صفحه یک ترجمه است. نسخهٔ انگلیسی متن معتبر است. خواندن نسخهٔ انگلیسی

llm-abuse · agent-harness · deepseek-harness · api-key-abuse · mcp · fofa · bug-bounty-automation · model-endpoint

سوءاستفاده از DeepSeek Harness: یک عامل خودگردان میزبان گرداننده‌اش را افشا می‌کند

این یک گرداننده است که با نشانه‌رفتن عامل کدنویسی متن‌باز DeepSeek Harness به سمت یک نقطه‌پایانی مدل سازگار با OpenAI که در معرض اینترنت قرار دارد، استنتاج را سرقت می‌کند؛ حلقه ابزار خودتأییدکننده آن عامل سپس فراخوانی‌های ابزار آن نقطه‌پایانی را روی ایستگاه کاری ویندوزی خودِ گرداننده اجرا کرد و خروجی را بازپس فرستاد.

نوشتهٔ Davis Zheng·

TLP:CLEAR. مجاز برای انتشار عمومی. ثبت‌شده توسط شبکه حسگر هانی‌پات Kinryū Labs. شاخص‌های زیر بی‌اثرسازی شده‌اند.

پیگیری گزارش پیشین ما DeepSeek Harness در برابر یک درگاه LLM سرقت‌شده: فراخوانی‌های ابزار روی فراخواننده اجرا می‌شوند.

خلاصه مدیریتی

  • 492,150کاراکتر در یک پرامپت ارسالی
  • 86خروجی فرمان متمایز از میزبان فراخواننده
  • 11نوبت عامل در پنج دقیقه
  • 3میزبان با همان بستر عامل

سه نشانی در چین و هنگ‌کنگ میان 20 تا 23 سپتامبر 2026 یک نقطه‌پایانی مدل سازگار با OpenAI در معرض اینترنت را به کار گرفتند و برای این کار از عامل کدنویسی متن‌باز DeepSeek Harness با عامل کاربری deepseek-harness/0.1.5-rc.2 استفاده کردند. دو نشانی هنگ‌کنگ یک کلید API مشترک دارند؛ نشانی سوم تنها عامل کاربری عمومی را با آن‌ها مشترک است. در 23 سپتامبر یک نشست یازده‌نوبتی از 182.91.103[.]32 فراخوانی‌های ابزار آن نقطه‌پایانی را روی ایستگاه کاری ویندوزی خودش اجرا کرد و خروجی را بازپس فرستاد.

بستر عامل فراخوانی‌های ابزار را به‌طور خودکار تأیید می‌کرد، بنابراین نقطه‌پایانی فایل‌ها و فهرست‌های دایرکتوری را از ایستگاه کاری گرداننده خواند. فایل config.toml بازگردانده‌شده مقدار permission_mode = "always-approve" را همراه با yolo = false تنظیم می‌کند، پس هر فراخوانی ابزاری که نقطه‌پایانی دوردست صادر کرد بدون تأیید انسانی اجرا شد. وقتی بستری در آن حالت به نقطه‌پایانی‌ای اشاره می‌کند که گرداننده کنترلی بر آن ندارد، آن نقطه‌پایانی فرمان‌هایی صادر می‌کند که روی میزبان کلاینت اجرا می‌شوند.

اگر یک نقطه‌پایانی مدل سازگار با OpenAI اجرا می‌کنید، توکن‌های bearer را روی /v1/chat/completions راستی‌آزمایی کنید و برای هر کلیدی که در فهرست کلیدهای صادرشده شما نیست هشدار تولید کنید. اگر یک بستر عامل اجرا می‌کنید، تأیید خودکار را از هر نقطه‌پایانی مدلی که کنترلش نمی‌کنید دور نگه دارید.

قضاوت‌های کلیدی

  • یک گرداننده عامل متن‌باز DeepSeek Harness را به سمت یک نقطه‌پایانی سازگار با OpenAI در معرض اینترنت نشانه رفت و کلاینت او فراخوانی‌های ابزار آن نقطه‌پایانی را روی ماشین خودش اجرا کرد و خروجی را بازگرداند. در سه نشست از 182.91.103[.]32، 279 ارسال نتیجه ابزار وجود دارد که 86 مورد از آن‌ها در میان 92 شناسه متمایز فراخوانی ابزار متمایزند و بدنه‌شان فهرست اشیاء PowerShell و محتوای فایل‌هایی است که ریشه در C:\Users\cheng دارند. همین رفتار با حجم کمتر از 203.175.15[.]28 و 103.85.74[.]25 نیز دیده می‌شود، به‌ترتیب با هفت و پنج ارسال نتیجه. اطمینان بالا.
  • فایل config.toml بازگردانده‌شده مقدار permission_mode = "always-approve" را همراه با yolo = false تنظیم می‌کند، پس بستر هر فراخوانی ابزار را بدون تأیید انسانی اجرا کرد؛ همین تأیید خودکار بود که ایستگاه کاری گرداننده را به هدف گردآوری اطلاعات تبدیل کرد. یکی از فایل‌های بازگردانده‌شده config.toml خودِ گرداننده است که permission_mode = "always-approve" را همراه با yolo = false تنظیم می‌کند، بنابراین هر فراخوانی ابزاری که نقطه‌پایانی دوردست صادر کرد بدون تأیید انسانی اجرا شد. اطمینان بالا.
  • به احتمال زیاد گرداننده یک شکارچی آسیب‌پذیری چینی‌زبان است که کار باگ‌بانتی و ممیزی کد منبع را خودکارسازی می‌کند. فایل AGENTS.md بازگردانده‌شده هویت عامل را پژوهشگر مجاز در حال شکار SRC به شیوه جعبه‌سیاه و ممیزی 0day به شیوه جعبه‌سفید اعلام می‌کند، پرسیدن اینکه آیا باید ادامه دهد را ممنوع می‌کند، و پیکربندی آن یک سرور MCP جست‌وجوی دارایی FOFA و یک MCP مرورگر Playwright را ثبت کرده است. اطمینان متوسط.
  • دو نشانی هنگ‌کنگ ماده اعتبارنامه‌ای مشترکی دارند و بر همین مبنا به هم پیوند داده شده‌اند؛ نشانی China Unicom تنها عامل کاربری عمومی بستر را با آن‌ها مشترک است، پس یکی‌بودن گرداننده اثبات نشده است. عامل کاربری این بستر در فعالیت 20 تا 23 سپتامبر 2026 دقیقاً از سه منبع در سه /24 دیده می‌شود. اطمینان پایین.
  • ما آن رشته‌های یک‌بارمصرف را به این معنا می‌خوانیم که گرداننده پیش از سپردن کل بستر به نقطه‌پایانی، آزمود که آیا اصلاً احراز هویتی اعمال می‌شود یا نه؛ توالی مشاهده‌شده عبارت است از سه رشته و سپس نشست طولانی. پیش از نشست طولانی، همان نشانی کلیدهای یک‌بارمصرف 141414، 41414141 و sk-14141242… را ارسال کرد و در یک نشست پیشین رشته sk-1234 را به‌جای فیلد کلید در فیلد مدل قرار داد. سپس به یک نشست عاملِ پنج‌دقیقه‌ایِ یازده‌نوبتی رفت. اطمینان متوسط.

خط زمانی

  • 2026-09-20 12:22 UTC203.175.15[.]28 مدل‌ها را با python-requests/2.28.1 برمی‌شمارد، در حالی که پیشاپیش با کلید API مشترک احراز هویت شده است؛ کلید پیش از این درخواست صادر شده بود
  • 2026-09-20 12:34 UTC103.85.74[.]25، در همان سازمان میزبانی هنگ‌کنگ، همان کلید را ارائه می‌کند
  • 2026-09-21 11:26 UTCنخستین ظهور عامل کاربری deepseek-harness/0.1.5-rc.2 در مجموعه نشانی‌ها
  • 2026-09-23 17:40 UTC182.91.103[.]32 دو پرامپت کوتاه چینی برای سنجش زنده‌بودن، زیر کلاینتی متفاوت و با کلیدی یک‌بارمصرف می‌فرستد
  • 2026-09-23 18:05 UTCنخستین نشست DeepSeek Harness از 182.91.103[.]32؛ کلاینت شروع به بازگرداندن نتایج ابزارِ اجراشده به‌صورت محلی می‌کند
  • 2026-09-23 18:23 UTCنشست یازده‌نوبتی آغاز می‌شود، نخستین پرامپت آن 44,402 کاراکتر
  • 2026-09-23 18:23 UTCکلاینت فهرست PowerShell از فضای کاری خودش را بازپس می‌فرستد
  • 2026-09-23 18:24 UTCکلاینت متن کامل فایل قواعد عملیاتی خود و اندکی بعد پیکربندی بستر خود را بازپس می‌فرستد
  • 2026-09-23 18:27 UTCنوبت 10 فیلد مدل را از glm-5.2 به deepseek-chat تغییر می‌دهد و در نوبت 11 بازمی‌گرداند
  • 2026-09-23 18:28 UTCیازدهمین و آخرین نوبت نشست؛ در فعالیت ثبت‌شده هیچ تماس دیگری از این نشانی نیست

نشست، به ترتیب

12:22:32  GET /v1/models User-Agent: python-requests/2.28.1 Authorization: Bearer sk-0af475b8…
17:40:10  [user] 图片背景是什么颜色
18:05:08  [system] You are an AI agent powered by DeepSeek Harness. You are a coding agent powered by the glm-5.2 model.
18:23:39  FullName Length Mode C:\Users\cheng\Desktop\clown-src-6k-skill\bin d----- C:\Users\cheng\Desktop\clown-src-6k-skill\mcp-servers d----- C:\Users\cheng\Desktop\clown-src-6k-skill\AGENTS.md 5517 ------ C:\Users\cheng\Desktop\clown-src-6k-skill\config.toml 1044 ------ C:\Users\cheng\Desktop\clown-src-6k-skill\给朋友的提示词.txt 4370 ------
18:24:21  C:\Users\cheng\.dsh --- Name ---- dsh-purge node_modules plugins profiles sessions staging storages .anonymous-user-id .credentials.yaml .env catalog-cache.json desktop-config.json desktop.log prompt-inject.md settings.yaml
18:24:59  [path]C:\Users\cheng\Desktop\clown-src-6k-skill\AGENTS.md[/path] 1: # 全局 Agent 规则(永久) 3: - **语言**:始终中文回复 4: - **身份**:授权安全研究员 = **黑盒 SRC 挖洞** + **白盒 0day 审计** 5: - **思路**:理解业务/代码意图,找认知盲区;不空扫、不误报、不堆低危 48: - 一种子剩余挖完才换种 ≠ 任务结束;**禁止问「要不要继续」**
18:25:57  [path]C:\Users\cheng\Desktop\clown-src-6k-skill\config.toml[/path] [ui] permission_mode = "always-approve" yolo = false [mcp_servers.playwright] args = ['C:\Users\USER\.grok\bin\playwright-dual-slot.mjs'] [mcp_servers.fofa] command = 'C:\Users\USER\.local\bin\uv.exe' args = ["run", "--directory", 'C:\Users\USER\.grok\mcp-servers\fofa_MCP', "python", "fofa.py"] [models] default = "grok-4.6" default_reasoning_effort = "xhigh"

کلید ارائه‌شده از هنگ‌کنگ

این‌ها همان دو نشانی‌اند که گزارش پیشین ما در 20 و 21 سپتامبر دنبال کرد: 203.175.15[.]28 نخستین بار کلید API مشترک را در ساعت 12:22:32 UTC روز 20 سپتامبر ارائه کرد و 103.85.74[.]25 دوازده دقیقه بعد آن را ارائه داد. آنچه تازه است نشانی سوم است، در ادامه.

نشست‌ها از 182.91.103[.]32

در 23 سپتامبر نشانی سوم، 182.91.103[.]32 روی CHINA UNICOM China169 Backbone، از راه می‌رسد. نخست دو پرامپت کوتاه چینی برای سنجش زنده‌بودن زیر کلاینتی متفاوت می‌فرستد که یکی از آن‌ها 图片背景是什么颜色 است، سپس میان 2026-09-23T18:05:00Z و 2026-09-23T18:28:00Z سه نشست بستر باز می‌کند. کلیدهایی که ارائه می‌کند رشته‌های یک‌بارمصرف‌اند: 141414، 41414141 و sk-14141242…، به‌علاوه sk-1234 که در نشستی پیشین در فیلد مدل تایپ شده بود. ما آن رشته‌ها را به این معنا می‌خوانیم که گرداننده پیش از سپردن کل بستر به نقطه‌پایانی، آزمود که آیا اصلاً احراز هویتی اعمال می‌شود یا نه. ترتیب ثبت‌شده نخست سه رشته یک‌بارمصرف و سپس نشست طولانی است.

نخستین نشست از آن سه با پرامپت سیستمی خودِ بستر آغاز می‌شود: [system] You are an AI agent powered by DeepSeek Harness. You are a coding agent powered by the glm-5.2 model. آخرین نشست یازده نوبت از 2026-09-23T18:23:10.2Z تا 2026-09-23T18:28:08.8Z اجرا شد، با فاصله‌های میان‌نوبتی از 0.2 ثانیه تا 90 ثانیه. در طول آن نوبت‌ها زمینه از 44,402 به 492,150 کاراکتر رشد کرد و فیلد مدل در نوبت 10 به deepseek-chat تغییر کرد و در نوبت 11 بازگشت.

جدول 1: اجرای فرمان محلی روی نشانی China Unicom متمرکز است ارسال‌های نتیجه ابزار از سوی هر کلاینت، در فعالیتی که 20 تا 23 سپتامبر 2026 را دربر می‌گیرد. شمارش متمایز، ارسال‌هایی را که بستر هنگام بازفرستادن تاریخچه گفت‌وگو در هر نوبت تکرار می‌کند حذف می‌کند، پس 86 شمار اجراهای محلی واقعی روی ایستگاه کاری پشت 182.91.103[.]32 است و 279 حجم ارسال.

نشانیسازماننخستین مشاهدهاعتبارنامه ارائه‌شدهارسال‌های نتیجه ابزار
203.175.15[.]28میزبانی هنگ‌کنگ2026-09-20T12:22:32Zکلید API مشترک7 ارسال در مجموع
103.85.74[.]25میزبانی هنگ‌کنگ، همان سازمان 203.175.15[.]2812 دقیقه پس از نخستین تماسهمان کلید API مشترک5 ارسال در مجموع
182.91.103[.]32CHINA UNICOM China169 Backbone، AS48372026-09-23، نشست‌های بستر از 18:05Z141414، 41414141، sk-14141242…279 در مجموع، 86 متمایز، 92 شناسه فراخوانی

نتایج، همان ایستگاه کاری خودِ گرداننده است

یک فهرست Get-ChildItem از دایرکتوری کاری به‌طور کامل بازگشت:

FullName Length Mode C:\Users\cheng\Desktop\clown-src-6k-skill\bin d----- C:\Users\cheng\Desktop\clown-src-6k-skill\mcp-servers d----- C:\Users\cheng\Desktop\clown-src-6k-skill\AGENTS.md 5517 ------ C:\Users\cheng\Desktop\clown-src-6k-skill\config.toml 1044 ------ C:\Users\cheng\Desktop\clown-src-6k-skill\给朋友的提示词.txt 4370 ------

کلاینت همچنین فهرستی از دایرکتوری خانگی خودِ بستر را بازگرداند:

C:\Users\cheng\.dsh --- Name ---- dsh-purge node_modules plugins profiles sessions staging storages .anonymous-user-id .credentials.yaml .env catalog-cache.json desktop-config.json desktop.log prompt-inject.md settings.yaml

فایل‌های کامل هم بازگشتند. AGENTS.md قواعد عملیاتی عامل را تعیین می‌کند: زبان عامل را چینی و هویت او را پژوهشگر امنیتی مجاز در حال شکار باگ‌بانتی به شیوه جعبه‌سیاه به‌همراه ممیزی 0day به شیوه جعبه‌سفید تثبیت می‌کند و عامل را از پرسیدن اینکه آیا باید ادامه دهد بازمی‌دارد.

[path]C:\Users\cheng\Desktop\clown-src-6k-skill\AGENTS.md[/path] 1: # 全局 Agent 规则(永久) 3: - **语言**:始终中文回复 4: - **身份**:授权安全研究员 = **黑盒 SRC 挖洞** + **白盒 0day 审计** 5: - **思路**:理解业务/代码意图,找认知盲区;不空扫、不误报、不堆低危 48: - 一种子剩余挖完才换种 ≠ 任务结束;**禁止问「要不要继续」**

config.toml یک سرور MCP جست‌وجوی دارایی FOFA را که از طریق uv اجرا می‌شود و یک MCP مرورگر Playwright را ثبت می‌کند و پیش‌فرض آن grok-4.6 با تلاش استدلالی xhigh است. بسته قواعدی که بارگذاری می‌کند به ~/.grok/rules/ ارجاع می‌دهد در حالی که فایل‌های زنده زیر C:\Users\cheng\.dsh\ قرار دارند، و این نشست‌ها glm-5.2 و deepseek-chat را اعلام می‌کنند، پس این بسته همگام با تغییر دسترسی میان بسترها و مدل‌ها منتقل شده است. ما گرداننده را یک شکارچی آسیب‌پذیری چینی‌زبان می‌خوانیم که کار باگ‌بانتی و ممیزی کد منبع را خودکارسازی می‌کند، و این توصیف را با اطمینان متوسط نگه می‌داریم.

شگردکاری

گرداننده اعتبارسنجی کلید و برشماری مدل را زیر یک ابزار و نشست‌های بستر را زیر ابزاری دیگر اجرا می‌کند. اولی زیر python-requests/2.28.1 اجرا می‌شود و دومی زیر یک بستر منتشرشده واقعی، به‌همراه یک نسخه دسکتاپ قدیمی‌تر، DeepSeek-Harness-Desktop/0.1.3-max، که آن هم حضور دارد. ما این تفکیک را عادت کسی می‌خوانیم که این کار را به‌طور مکرر انجام می‌دهد. به زبان ATT&CK این همان T1588.002، Obtain Capabilities: Tool، برای بستر است، در کنار T1078، Valid Accounts، برای اعتبارنامه ارائه‌شده به نقطه‌پایانی.

دو نشانی هنگ‌کنگ پیش از رسیدن زمینه‌های نیم‌مگابایتی از نشانی China Unicom مشخص کردند که نقطه‌پایانی به چه چیزهایی دسترسی دارد، و ما با اطمینان پایین معتقدیم که این سه نشانی متعلق به یک گرداننده‌اند. کلید در 20 سپتامبر از 203.175.15[.]28 اعتبارسنجی شد، کاتالوگ دوازده‌مدلی در نشستی جداگانه از 103.85.74[.]25 پیمایش شد، ترافیک با عامل کاربری بستر از این مجموعه نشانی‌ها از 21 سپتامبر دیده می‌شود و نشست‌های کامل بستر در 23 سپتامبر از 182.91.103[.]32 فرود آمدند. نمی‌توانیم بگوییم گرداننده میان 20 تا 23 سپتامبر با این دسترسی چه کرده است.

کلیدها بر حسب نشانی تفکیک می‌شوند. کلید صادرشده sk-0af475b8… تنها در نشست‌های 20 سپتامبر هنگ‌کنگ دیده می‌شود، و از 182.91.103[.]32 تنها رشته‌های یک‌بارمصرف 141414، 41414141 و sk-14141242… دیده می‌شوند، از جمله در نشست یازده‌نوبتی که فرمان‌هایی را روی ایستگاه کاری اجرا کرد. اینکه آیا یک گرداننده پشت هر دو مجموعه نشانی است، به دلیل گفته‌شده در بالا با اطمینان پایین نگه داشته می‌شود.

بسته قواعد در AGENTS.md برای حجم بدون نظارت ساخته شده است. در کنار ممنوعیت پرسیدن اینکه آیا باید ادامه داد، قواعد بازگردانده‌شده هیچ سقفی برای اندازه صف بذر نمی‌گذارند و کشف دارایی را از FOFA پیش می‌برند، T1596، Search Open Technical Databases. آن قواعد شکار باگ‌بانتی حجمی را توصیف می‌کنند که همچون یک خط لوله بدون نظارت اجرا می‌شود. ما این خط لوله را دلیل تمایل گرداننده به استنتاجی می‌خوانیم که بهایش را نمی‌پردازد.

بستر هر فراخوانی ابزار از نقطه‌پایانی‌ای را که گرداننده کنترلش نمی‌کرد به‌طور خودکار تأیید کرد، پس آن نقطه‌پایانی کشف اطلاعات سامانه، T1082، را علیه میزبان خودِ گرداننده اجرا کرد. بسته قواعد میان بسترها و نام‌های مدل جابه‌جا می‌شود، پس مسدودکردن یک عامل کاربری یا یک رشته مدل این گرداننده را به‌طور پایدار متوقف نخواهد کرد.

چگونه آن را آزمودیم

می‌توانیم دو قرائت رقیب را رد کنیم. فاصله‌های میان‌نوبتی از 0.2 ثانیه تا 90 ثانیه و فیلد مدلی که در نوبت 10 به deepseek-chat تغییر کرد و در نوبت 11 بازگشت، آن چیزی نیست که یک اسکریپت بازپخش ثابت تولید می‌کند، و یک پیمایش خوش‌خیم اینترنتی یا فروشنده اسکنر محتوای دایرکتوری دسکتاپ خودش و دایرکتوری خانگی بسترش را بازپس نمی‌فرستد. کلید API مشترک دو میزبان هنگ‌کنگ را به یکدیگر گره می‌زند، اما عامل کاربری بستر نرم‌افزاری همگانی است که در دسترس هر کسی قرار دارد، پس تعلق 182.91.103[.]32 به همان گرداننده اثبات نشده است، و نمی‌دانیم چرا نشست یازده‌نوبتی آخرین ترافیک از آن نشانی بود. اینکه آیا گرداننده باور دارد دامنه‌ای از مجوز این نقطه‌پایانی را پوشش می‌دهد آزموده نشده است؛ بسته قواعد وضعیت پژوهشگر مجاز را به مدل خودش اظهار می‌کند که یک ترفند مهندسی پرامپت است.

توضیحآزموننتیجهحکم
یک اسکریپت بازپخش ثابت به‌جای یک حلقه عامل زندهبرچسب‌های زمانی نوبت‌به‌نوبت، اندازه پرامپت‌ها و فیلدهای مدل برای نشست یازده‌نوبتی، به‌علاوه شمارش شناسه‌های متمایز فراخوانی ابزاریازده نوبت از 18:23:10.2Z تا 18:28:08.8Z با فاصله‌های 0.2 ثانیه تا 90 ثانیه؛ زمینه از 44,402 به 492,150 کاراکتر رشد کرد؛ فیلد مدل در نوبت 10 به deepseek-chat و در نوبت 11 بازگشت؛ 92 شناسه متمایز فراخوانی ابزار 86 نتیجه متمایز تولید کردرد شد
یک پیمایش خوش‌خیم سراسر اینترنت یا فروشنده اسکنری با عامل کاربری غیرمعمولاعتبار بیرونی برای منبع، در برابر محتوایی که کلاینت بازگرداندVirusTotal برای 182.91.103[.]32 عدد 0 مخرب از 91 موتور را نشان می‌دهد؛ کلاینت بسته قواعد باگ‌بانتی خودش، پیکربندی MCP مربوط به FOFA و فهرست دایرکتوری خانگی‌اش را بازگرداند که هیچ خزنده پیمایشی چنین چیزی حمل نمی‌کندرد شد
ابزار همگانی مشترک با کاربران مستقل پرشمار، پس نشانی‌ها بی‌ارتباط‌اندشمارش منابع متمایزی که عامل کاربری بستر را ارائه می‌کنند و منابعی که هر یک از دو کلید را ارائه می‌کنندعامل کاربری در فعالیت 20 تا 23 سپتامبر 2026 از 3 منبع در 3 /24 در 2 سازمان دیده می‌شود، اما همان کلید API دقیقاً میان دو میزبان هنگ‌کنگ در یک سازمان مشترک است، و کلید 41414141 منحصر به 182.91.103[.]32 استبی‌نتیجه
گرداننده کار را رها کرد چون نقطه‌پایانی برایش از کار افتادترتیب رویدادها در طول نشست یازده‌نوبتی و پس از آخرین نوبت آننشست یازده‌نوبتی تا 18:28:08.8Z ادامه دارد و نشانی پس از 18:28 هیچ درخواست دیگری نفرستاد؛ چرایی آن از شواهد دانسته نیستبی‌نتیجه
یک آزمون نفوذ مجاز که گرداننده باور دارد دامنه‌اش این نقطه‌پایانی را پوشش می‌دهداینکه آیا هیچ نشانگر مجوز، رشته تماس یا ارجاع دامنه‌ای همراه ترافیک هستهیچ نشانی تماس، ارجاع دامنه یا سرایند مجوز در هیچ رویدادی از آن نشانی دیده نمی‌شود؛ بسته قواعد زمینه‌ای از پژوهشگر مجاز را به مدل خودش اظهار می‌کند و به آن دستور می‌دهد اثبات مجوز نخواهد، که یک ترفند مهندسی پرامپت است، نه شاهدی بر یک دامنهآزموده نشد

به زبان اعداد

ارقام از شواهد و از جست‌وجوهای غنی‌سازی محاسبه شده‌اند.

شاخص‌های نفوذ

3 شاخص شبکه‌ای زیر بی‌اثرسازی شده‌اند؛ مسیرها همان‌گونه که مشاهده شده‌اند آورده می‌شوند.

شبکه

شاخصزمینه
182.91.103[.]32نشست‌های عامل DeepSeek Harness؛ 279 ارسال نتیجه ابزار از میزبان خودش
203.175.15[.]28همان عامل کاربری بستر به‌علاوه اعتبارسنجی کلید با python-requests؛ کلید سرقت‌شده را مشترک دارد
103.85.74[.]25همان عامل کاربری بستر و همان کلید سرقت‌شده؛ دوازده نام مدل را برشمرد

مصنوعات میزبان

شاخصزمینه
sk-0af475b8…کلید API بازاستفاده‌شده توسط دو نشانی از سه نشانی؛ پیش از نخستین تماس ثبت‌شده به دست آمده بود
deepseek-harness/0.1.5-rc.2 (+https://github.com/deepseek-ai/deepseek-harness)عامل کاربری کلاینت، 3 منبع میان 20 تا 23 سپتامبر 2026؛ نسخه پیشین DeepSeek-Harness-Desktop/0.1.3-max از همان مجموعه
C:\Users\[user]\.dsh\rules\*.mdمصنوع ایستگاه کاری گرداننده؛ در خروجی ابزار بازگردانده‌شده به‌صورت C:\Users\cheng.dsh\rules\researcher-blackbox-whitebox.md و playwright-browser-mcp.md مشاهده شد
C:\Users\[user]\Desktop\clown-src-6k-skill\درخت مهارت بسته‌بندی‌شده شکار باگ گرداننده، فهرست‌شده در خروجی PowerShell بازگردانده‌شده
chengنام حساب ویندوز روی ایستگاه کاری گرداننده، افشاشده در هر مسیر بازگردانده‌شده
41414141کلید یک‌بارمصرف به‌کاررفته برای نشست یازده‌نوبتی بستر؛ در فعالیت ثبت‌شده منحصر به 182.91.103[.]32

شناسایی

Sigma

بستر عامل که یک نقطه‌پایانی تکمیل مدل تأییدنشده را فرا می‌خواند (نامزد).

title: Agent harness calling an unapproved model completions endpoint
status: experimental
description: Detects an AI coding-agent harness sending chat completions to a model endpoint outside the approved host list. Requires proxy logging of the request URI and user agent; request bodies are usually not logged, so this rule keys on client identity and destination only.
logsource:
  category: proxy
detection:
  selection:
    cs-uri-stem|endswith: '/v1/chat/completions'
    cs-user-agent|contains:
      - 'deepseek-harness/'
      - 'DeepSeek-Harness-Desktop/'
  filter_approved:
    cs-host:
      - 'api.deepseek.com'
      - 'api.openai.com'
      - 'api.anthropic.com'
  condition: selection and not filter_approved
falsepositives:
  - Developers legitimately using a self-hosted or third-party model endpoint absent from the approved host list
  - Internal evaluation harnesses pointed at staging endpoints
level: high

منطق شناسایی

  • کلید bearer ناشناخته پذیرفته‌شده روی یک نقطه‌پایانی سازگار با OpenAI (شبکه، نامزد). روی هر نقطه‌پایانی سازگار با OpenAI که از اینترنت در دسترس است، کلید bearer ارائه‌شده را به ازای هر درخواست ثبت کنید و هنگامی که کلیدی خارج از فهرست کلیدهای صادرشده پاسخی غیر از 401 دریافت می‌کند، یا هنگامی که یک کلید در بازه یک ساعت از بیش از یک سامانه خودگردان ارائه می‌شود، هشدار بدهید. در این فعالیت، همان کلید از دو میزبان در یک سازمان میزبانی دیده شد، و سه کلید آشکارا یک‌بارمصرف (141414، 41414141، sk-14141242…) پشت‌سرهم برای آزمودن اینکه آیا اصلاً احراز هویتی اعمال می‌شود به کار رفتند.
  • بستر عامل پیکربندی‌شده برای تأیید خودکار فراخوانی‌های ابزار در برابر یک نقطه‌پایانی بیرونی (میزبان، نامزد). روی نقاط پایانی توسعه‌دهندگان و پژوهشگران، فایل‌های پیکربندی بستر عامل را که یک حالت مجوز خودتأییدکننده را با یک base URL خارج از میزبان‌های مدل تأییدشده سازمان ترکیب می‌کنند نشانه‌گذاری کنید. مشخصاً: هر TOML یا YAML زیر یک دایرکتوری پروفایل کاربری که permission_mode = “always-approve” (یا تنظیم معادل yolo یا auto-approve) را در کنار یک api base سفارشی دارد. چنین کلاینتی هر فراخوانی ابزاری را که نقطه‌پایانی دوردست صادر کند بدون هیچ انسانی در حلقه اجرا خواهد کرد.
  • خروجی فایل‌سیستم محلی ارسال‌شده در نتایج ابزار تکمیل گفت‌وگو (رفتاری، نامزد). روی یک نقطه‌پایانی مدل که خودتان اداره می‌کنید، هنگامی هشدار بدهید که یک درخواست ورودی تکمیل گفت‌وگو پیام‌هایی با نقش tool حمل می‌کند که محتوایشان با الگوهای مصنوع میزبان مطابقت دارد: مسیرهای مطلق ویندوز (^[A-Z]:\Users\)، سرایندهای جدول PowerShell مانند ‘FullName … Length Mode’، یا فهرست‌های دایرکتوری حاوی .env یا .credentials. ترافیک مشروع دستیار کدنویسی هم محتوای فایل دارد، پس به ازای هر مستأجر تنظیم کنید؛ سیگنال در اینجا این است که کلاینت ارسال‌کننده برای فهرست کلیدها ناشناخته است.

اصلاح

  • هر نقطه‌پایانی سازگار با OpenAI که از اینترنت در دسترس است را پشت احراز هویتی قرار دهید که واقعاً راستی‌آزمایی می‌شود: کلیدهای bearer ناشناخته را با 401 رد کنید به‌جای اینکه به آن‌ها سرویس بدهید، و هر کلید صادرشده را با یک مالک و یک تاریخ انقضا ثبت کنید.
  • رابط‌های مدیریتی روی نقاط پایانی مدل را از نظر صدور کلید بدون احراز هویت ممیزی کنید و هر کلیدی را که نمی‌توان به مالکی شناخته‌شده گره زد باطل کنید. در این فعالیت، کلید در حال استفاده پیشاپیش در نخستین درخواست ثبت‌شده (2026-09-20T12:22:32Z) معتبر بود و چگونگی به‌دست‌آمدن آن مستند نیست.
  • بسترهای عامل را طوری تنظیم کنید که وقتی نقطه‌پایانی مدل در فهرست میزبان‌های تأییدشده نیست، برای اجرای ابزار تأیید بخواهند؛ permission_mode = “always-approve” به‌همراه یک base URL سفارشی را روی هر ماشینی که اعتبارنامه نگه می‌دارد ترکیبی ممنوع تلقی کنید.
  • برای خروج ترافیک از ایستگاه‌های کاری توسعه‌دهندگان به /v1/chat/completions روی میزبان‌های خارج از فهرست تأییدشده ارائه‌دهندگان مدل هشدار بدهید، با کلید عامل‌های کاربری بسترهای عامل.
  • پاسخ‌های مدل را ورودی نامعتمد به لایه ابزار تلقی کنید: نقطه‌پایانی‌ای که کنترلش نمی‌کنید می‌تواند فراخوانی ابزار صادر کند، و بستری که آن‌ها را اجرا می‌کند دسترسی خواندن به ایستگاه کاری را به آن می‌دهد.

نگاشت MITRE ATT&CK

تاکتیکتکنیکمشاهده‌شده
گریز از دفاعT1078 Valid Accountsدو نشانی با همان کلید API احراز هویت کردند، کلیدی که در نخستین درخواست ثبت‌شده پیشاپیش در اختیار گرداننده بود
توسعه منابعT1588.002 Obtain Capabilities: Toolگرداننده عامل عمومی DeepSeek Harness، یک سرور MCP مرورگر Playwright و یک سرور MCP جست‌وجوی دارایی FOFA را اجرا می‌کند که همگی در config.toml بازگردانده‌شده ثبت شده‌اند
شناسایی اولیهT1596 Search Open Technical Databasesconfig.toml یک سرور MCP مربوط به FOFA را با سه مجموعه جایگاه اعتبارنامه ثبت می‌کند، و بسته قواعد یک گردش‌کار صف بذر را توصیف می‌کند که از نتایج FOFA پیش رانده می‌شود
کشفT1082 System Information Discoveryجهت وارونه: کلاینت خودِ گرداننده به دستور نقطه‌پایانی نامعتمد، برشماری دایرکتوری و فایل را به‌صورت محلی اجرا کرد و 86 خروجی متمایز را بازپس فرستاد

منابع

روش‌شناسی و یادداشت‌های تحلیلگر

شواهد به درخواست‌ها و پاسخ‌های مبادله‌شده با یک نقطه‌پایانی مدل سازگار با OpenAI که از اینترنت در دسترس است محدود می‌شود و فعالیت 20 تا 23 سپتامبر 2026 را دربر می‌گیرد؛ آنچه گرداننده دور از آن نقطه‌پایانی انجام داده دانسته نیست. کلید API در نخستین درخواست ثبت‌شده پیشاپیش در دست گرداننده بود، پس تصرف مدیریتی که آن را پدید آورد پیش از هر چیز قابل‌مشاهده در اینجا رخ داده و سازوکار آن مستند نیست. جزئیات ایستگاه کاری تنها همان چیزی است که کلاینت گرداننده انتخاب کرد بازگرداند؛ هیچ میزبانی بررسی نشد و چیزی فراتر از آنچه به نقطه‌پایانی ارسال شد گردآوری نشد. هیچ ارائه‌دهنده‌ای برای هیچ‌یک از سه نشانی شناسایی ثبت نکرده و هیچ‌یک از آن‌ها به‌عنوان اسکنر طبقه‌بندی نشده است، پس هیچ چیز در این یافته بیرون از ترافیک توصیف‌شده در اینجا تأیید نمی‌شود.

هنوز باز است:

  • اینکه کلید API مشترک چه زمانی و با کدام درخواست نخستین بار به دست آمد.
  • اینکه این نسخه از بستر هم‌اکنون به کدام نقاط پایانی مدلِ در معرض دیگر نشانه رفته است.
  • اینکه گرداننده میان اعتبارسنجی کلید در 20 سپتامبر و نشست‌های بستر از 182.91.103[.]32 در 23 سپتامبر با آن دسترسی چه کرد، با توجه به اینکه ترافیک با عامل کاربری بستر از این مجموعه نشانی‌ها از 21 سپتامبر دیده می‌شود.

پرسش یا اصلاح: contact@kinryu.sh.

How to cite
Kinryū Labs (2026). سوءاستفاده از DeepSeek Harness: یک عامل خودگردان میزبان گرداننده‌اش را افشا می‌کند. https://kinryu.sh/fa/reports/deepseek-harness-llm-gateway-abuse/