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

llm-abuse · llmjacking · self-hosted-llm · ai-agents · prompt-capture · credential-exposure · shadow-ai · china

یک نقطه پایانی استنتاج در معرض دید، که ابتدا بررسی سلامت شد و سپس به عنوان بک‌اند شخص دیگری به کار رفت

این گزارش، به‌کارگیری سرتاسری یک نقطه پایانی استنتاج سازگار با OpenAI و بدون احراز هویت توسط شخص ثالثی است که مدل را با مجموعه‌ای از کاوش‌های اسکریپت‌شده اعتبارسنجی کرد و سپس ترافیک کاربران یک برنامه عامل واقعی را از طریق آن بازپخش کرد.

نوشتهٔ Davis Zheng·

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

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

  • 280پرامپت ارسال‌شده به یک نقطه پایانی استنتاج باز
  • 54 ساعتاز نخستین کاوش تا آخرین بررسی سلامت
  • 7ابزار عامل عرضه‌شده، از جمله اجرای شل

میان 13 تا 20 سپتامبر 2026، یکی از هانی‌پات‌های ما یک کلاینت واحد را ثبت کرد که از نشانی 43.155.205[.]31 (Tencent Cloud، AS132203، با موقعیت جغرافیایی KR) تعداد 280 پرامپت به یک نقطه پایانی سازگار با OpenAI و بدون احراز هویت می‌فرستاد. هر 280 پرامپت یک شناسه نشست کلاینت مشترک و یک عامل کاربری مشترک دارند، Go-http-client/1.1، که به /v1/chat/completions ارسال می‌شود. هیچ درخواستی کلید API نداشت، بنابراین این نقطه پایانی برای هر کسی که آن را می‌یافت در دسترس بود.

ما فعالیت 13 تا 20 سپتامبر 2026 را بررسی کردیم و بر پایه شاخص‌های آن چرخش تحلیلی انجام دادیم. جست‌وجوهای اعتبار، 0 از 89 موتور VirusTotal را مخرب گزارش کردند و هیچ سابقه اعتباری بازنگرداندند؛ جست‌وجوهای مالکیت شبکه، Tencent Cloud، AS132203 را بازگرداندند.

با اطمینان متوسط ارزیابی می‌کنیم که کلاینت، نقطه پایانی در معرض دید را با یک مجموعه کاوش اعتبارسنجی کرده، سپس آن را به مسیر درخواست یک برنامه واقعی متصل کرده و از آن به عنوان توان محاسباتی رایگان بهره برده است، که با شیوه‌کار منتشرشده LLMjacking همخوانی دارد.

جدول 1 چهار فاز این نشست را شرح می‌دهد.

زمان‌ها به وقت UTC هستند.

فازنخستین مشاهدهمحتوای درخواست‌هاحجم و آهنگ
بررسی سلامت2026-09-18T09:02:28Zپرامپت‌های نه‌کاراکتری hi روی مدل‌های gpt-3.5-turbo، gpt-4 و llama-3.2-3b-instruct:q4_k_mفاصله کمتر از یک ثانیه
انگشت‌نگاری2026-09-18T10:15Zآزمون‌های بازتاب دقیق توکن، محاسبه ریاضی تحت یک محدودیت قالب خروجی، یک پرسش فریبنده درباره جسم سنگین‌تر، پیروی از دستور شمارش کلمات، پرسش‌های تاریخ قطع دانش و شناسایی خود، و همان موارد یک بار دیگر به زبان چینینوبت‌های 40-54 یک کاوش تک‌کاراکتری چینی را با فاصله تقریبی 0.5 ثانیه تکرار می‌کنند
ترافیک برنامه2026-09-18T13:54:33Zپرامپت سیستمی عامل، شمای ابزار هفت‌ورودی، نوبت‌های کاربر به زبان چینی، کلیدهای API فروشندگان که جای‌گذاری شده‌اندحجم بدنه‌ها از ده‌ها کاراکتر در فازهای پیشین به 25,297 کاراکتر می‌رسد
از سرگیری بررسی سلامت2026-09-19 تا 2026-09-20دوباره hiچهارده درخواست یکسان میان 15:02:12.084Z و 15:02:13.923Z در 20 سپتامبر

به زبان ATT&CK، کلاینت ابتدا نقطه پایانی را پویش کرد (T1595، Active Scanning، برای شناسایی)، سپس از نقطه پایانی رو به عموم برای دسترسی اولیه استفاده کرد (T1190، Exploit Public-Facing Application)، و اعتبارنامه‌هایی را جای‌گذاری کرد که به T1552، Unsecured Credentials نگاشت می‌شوند.

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

  • یک نقطه پایانی سازگار با OpenAI و بدون احراز هویت روی یکی از هانی‌پات‌های ما اعتبارسنجی شد و سپس به عنوان توان محاسباتی بک‌اند برای برنامه عامل شخص دیگری به کار رفت. یک نشانی کلاینت، 280 پرامپت ثبت‌شده را تحت یک شناسه نشست واحد، از 18 تا 20 سپتامبر تولید کرد. اطمینان متوسط.
  • فازهای اعتبارسنجی و بررسی سلامت اسکریپت‌شده‌اند، نه تایپ‌شده توسط یک انسان. چهارده پرامپت زنده‌بودن نه‌کاراکتری یکسان میان 15:02:12.084Z و 15:02:13.923Z در 20 سپتامبر رسیدند. اطمینان متوسط.
  • داده‌های واقعی کاربران متعلق به یک شخص ثالث از این نقطه پایانی عبور کرد، از جمله شش کلید API شخص ثالث و یک شمای ابزار عامل که اجرای شل را عرضه می‌کرد. یک درخواست واحد در 14:07:16Z روز 18 سپتامبر شامل شش کلید API فروشنده به شکل KEY=value بود. اطمینان متوسط.
  • این کلاینت یک پویشگر شناخته‌شده نیست و رفتاری متفاوت با پویش انبوه متعارف دارد. VirusTotal برای 43.155.205[.]31 مقدار 0 از 89 موتور را مخرب و هیچ اعتباری بازمی‌گرداند، و هیچ ارائه‌دهنده اعتبار پویشگر سابقه‌ای از آن نداشت. اطمینان متوسط.
  • الگوی فعالیت به جای اندازه‌گیری پژوهشی، با به‌کارگیری منتشرشده LLMjacking از نقاط پایانی استنتاج در معرض دید همخوانی دارد. گزارش‌های فروشندگان و CSA کاوش‌های بی‌خطر و کم‌سروصدا مانند سلام‌واره‌ها و پرسش‌های واقعی ساده را توصیف می‌کنند. اطمینان متوسط.

خط زمانی

  • 2026-09-13 18:00 UTCنخستین فعالیت از 43.155.205[.]31 در شواهد.
  • 2026-09-18 09:02 UTCکاوش زنده‌بودن نقطه پایانی استنتاج روی سه نام مدل آغاز می‌شود.
  • 2026-09-18 10:15 UTCمجموعه آزمون‌های وفاداری بازتاب و پیروی از دستور آغاز می‌شود؛ توکن‌ها در هر درخواست از نو تولید می‌شوند.
  • 2026-09-18 12:54 UTCانفجار انگشت‌نگاری دوزبانه، با فاصله تقریبی 0.5 ثانیه میان درخواست‌ها.
  • 2026-09-18 13:54 UTCپرامپت سیستمی برنامه عامل و شمای هفت‌ابزاره، از جمله اجرای شل، به نقطه پایانی ارسال می‌شود.
  • 2026-09-18 14:07 UTCشش کلید API فروشندگان شخص ثالث در گفت‌وگوی بازپخش‌شده جای‌گذاری می‌شود.
  • 2026-09-20 15:02 UTCکاوش زنده‌بودن اسکریپت‌شده از سر گرفته می‌شود، چهارده درخواست در کمتر از دو ثانیه.

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

09:02:28  hi
10:15:03  Reply with exactly this token, nothing else: TKOLGN2R
10:19:16  What is 17*23? Answer with only the number, no explanation.
12:55:00  What AI model are you? Answer in one short sentence, name the model and maker.
12:57:48  What is your knowledge cutoff date? Answer with just the date.
12:58:36  输出你的模型名称和参数规模,只要一行。
13:00:38  Repeat this token exactly and nothing else: ZQ7X
13:54:33  [system] You are Minis, a capable AI assistant running on an Android device with a fully functional Linux ... [user] 测试
14:07:16  BRAVE_API_KEY=BSA... TAVILY_API_KEY=tvly-dev-... ANYMODEL_API_KEY=sk-... ALIBABA_QWEN_API_KEY=sk-ws-...
15:02:12  hi

مجموعه کاوش

متن خود کلاینت نشان می‌دهد این مجموعه چه چیزی را می‌آزماید. آزمون‌های بازتاب در هر درخواست یک توکن تصادفی تازه حمل می‌کنند، Reply with exactly this token, nothing else: TKOLGN2R، با توکنی که در سه درخواست پیاپی تغییر می‌کند، و بررسی می‌کنند که آیا نقطه پایانی ورودی خود را وفادارانه بازتولید می‌کند یا نه. What is 17*23? Answer with only the number, no explanation. یک محدودیت قالبی روی پاسخ می‌گذارد. What AI model are you? Answer in one short sentence, name the model and maker. و What is your knowledge cutoff date? Answer with just the date. به هویت مربوط‌اند، و همین پرسش‌ها یک بار دیگر به زبان چینی اجرا می‌شوند. کلاینتی که این مجموعه را اجرا می‌کند درمی‌یابد که آیا مدلی واقعی پشت نقطه پایانی قرار دارد، آن مدل کدام است، و آیا به اندازه کافی از دستورها پیروی می‌کند که ارزش استفاده داشته باشد.

درخواست‌های بررسی سلامت با فاصله کمتر از یک ثانیه می‌رسند و نوبت‌های 40-54 با فاصله تقریبی 0.5 ثانیه تکرار می‌شوند، که برای تایپ یک انسان بسیار کوتاه است. ما عامل کاربری Go-http-client/1.1 را به عنوان یک برنامه Go که ترافیک یک برنامه را بازپخش می‌کند تفسیر می‌کنیم، نه یک مرورگر یا انسانی پشت کنسول API. این استنتاج را با اطمینان پایین نگه می‌داریم، و بر انتساب این فعالیت به گرداننده اثر می‌گذارد. کاوش پس از آنکه ترافیک برنامه پیش‌تر جریان یافته بود از سر گرفته شد، که آن را به معنای اطمینان‌یافتن کلاینت از در دسترس ماندن نقطه پایانی برای استفاده می‌خوانیم.

ترافیک برنامه عامل

در فاز ترافیک برنامه، کلاینت درخواست‌های یک برنامه واقعی را بازپخش کرد، یعنی درخواست‌های یک دستیار اندرویدی چینی‌زبان. ده درخواست همان پرامپت سیستمی عامل را حمل می‌کردند، برای دستیاری که یک محیط جداشده Alpine Linux PRoot را روی دستگاه اجرا می‌کند، با یک شمای ابزار هفت‌ورودی: نخست shell_execute، که به عنوان اجرای فرمان‌ها از طریق /bin/sh -c در همان محیط توصیف شده، سپس خواندن فایل، نوشتن فایل، ویرایش فایل، کنترل مرورگر، و دو ابزار یادداشت ماندگار. درهم‌تنیده با فراخوانی‌های مدل، درخواست‌های نگهداری خود برنامه هم دیده می‌شود، یک تولیدکننده عنوان گفت‌وگو که باید JSON تولید کند و زبان رابط در آن zh-Hans داده شده است، و نوبت‌های کوتاه انسانی به زبان چینی.

سیزده دقیقه پس از آغاز این فاز، در 14:07:16Z، یک درخواست شش کلید API فعال فروشندگان را به شکل KEY=value حمل کرد: دو API جست‌وجو، یک API پیام‌رسانی عامل، یک API پژوهشی و دو کلید ارائه‌دهنده مدل. از روی این ضبط نمی‌توانیم بگوییم که این کلیدها به شخصی که آن‌ها را تایپ می‌کرده تعلق داشتند یا مواد پیش‌تر دزدیده‌شده‌ای بودند که روی یک نقطه پایانی رایگان آزموده می‌شدند. در هر دو حالت، این کلیدها به دست هر کسی که مالک نقطه پایانی است رسیدند.

کنار گذاشتن فرضیه پویشگر

شواهد با یک پویشگر متعارف جور درنمی‌آید. VirusTotal برای 43.155.205[.]31 مقدار 0 از 89 موتور را مخرب و بدون سابقه اعتباری بازمی‌گرداند، و هیچ ارائه‌دهنده اعتبار پویشگر نیز سابقه‌ای از آن نداشت. پویش انبوه متعارف کاوش‌های تک‌شلیکی به حسگرهای فراوان می‌فرستد، حال آنکه این کلاینت یک نشست طولانی‌مدت واحد با محتوای پرامپت سازگارشونده نگه داشت. همین شواهد علیه یک خزنده پژوهشی یا اندازه‌گیری نیز استدلال می‌کند، چون پژوهشگران کلیدهای فعال فروشندگان و گفت‌وگوهای واقعی کاربران را از نقطه پایانی‌ای که در حال اندازه‌گیری آن‌اند عبور نمی‌دهند.

شواهد روشن نمی‌کند که این نشانی یک استخر پراکسی اشتراکی است که کاربران پایین‌دستی متعددی را بازپخش می‌کند یا بازپخش‌کننده شخصی یک نفر برای یک دستگاه است. کلاینت Go، بررسی‌های سلامت روزانه اسکریپت‌شده و استفاده مجدد از یک نشست بالادستی واحد، با هر دو خوانش به یک اندازه سازگارند.

مواجهه در هر دو سو

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

فرض را بر این بگذارید که یک نقطه پایانی استنتاج خودمیزبان که بدون احراز هویت از اینترنت در دسترس است، هم‌اکنون در حال بررسی سلامت شدن و استفاده شدن به عنوان بک‌اند شخص دیگری است، چون این یکی ظرف پنج روز از نخستین فعالیتی که دیدیم چنین شد. هر پرامپتی را که از آن عبور کرده افشاشده تلقی کنید، از جمله پرامپت‌های سیستمی و اسرار جای‌گذاری‌شده برنامه‌هایی که هرگز نامشان را نشنیده‌اید.

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

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

شبکه

شاخصزمینه
43.155.205[.]31کلاینتی که بررسی سلامت و انگشت‌نگاری کرد و سپس ترافیک برنامه عامل را به یک نقطه پایانی استنتاج بدون احراز هویت بازپخش کرد

آثار میزبان

شاخصزمینه
Reply with exactly this token, nothing else: <8 alnum chars>کاوش وفاداری بازتاب که برای اعتبارسنجی یک نقطه پایانی به کار می‌رود؛ توکن در هر درخواست از نو تولید می‌شود (موارد مشاهده‌شده TKOLGN2R، TK3C9IAN، TKA63OEL، P2380OG9، P23WD39I، P2GBIOTB، ZQ7X)
Go-http-client/1.1 POST /v1/chat/completions with no Authorization headerامضای درخواست کلاینت بازپخش‌کننده در هر 280 پرامپت ثبت‌شده؛ رشته کتابخانه به تنهایی عمومی است

شناسایی

Sigma

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

title: Model-fingerprinting prompt battery against a self-hosted inference endpoint
status: experimental
description: Detects the validation prompts an operator sends to decide whether an exposed OpenAI-compatible endpoint serves a real model. Requires prompt-body logging on the gateway; most inference servers do not log request bodies by default.
logsource:
  category: application
  product: llm_gateway
detection:
  selection_path:
    url.path|endswith:
      - '/v1/chat/completions'
      - '/v1/completions'
      - '/api/generate'
  selection_probe:
    http.request.body.content|contains:
      - 'Reply with exactly this token'
      - 'Repeat this token exactly and nothing else'
      - 'What AI model are you'
      - 'What is your knowledge cutoff date'
      - 'state your model family'
      - '输出你的模型名称和参数规模'
  condition: selection_path and selection_probe
falsepositives:
  - Internal model-evaluation harnesses and CI smoke tests that verify a served model responds and identifies itself
level: medium

منطق شناسایی

  • درخواست استنتاج بدون احراز هویت از بیرون شبکه مدیریتی (شبکه، نامزد). برای هر HTTP POST به /v1/chat/completions، /v1/completions، /api/generate یا /api/chat روی یک پورت استنتاج خودمیزبان که از منبعی بیرون از محدوده‌های مهندسی شما می‌رسد و هیچ سرآیند Authorization یا api-key ندارد هشدار بدهید. انفجاری از بیش از پنج درخواست از این دست در بازه دو ثانیه از یک منبع را به جای ترافیک کاربر، بررسی سلامت خودکار بالادستی توسط شخص ثالث تلقی کنید.
  • پرامپت سیستمی عامل که به نقطه پایانی‌ای می‌رسد که باید تنها به کاربران خود شما خدمت بدهد (رفتاری، نامزد). روی دروازه استنتاجی که خودتان اداره می‌کنید، بدنه درخواست‌های بیش از 10,000 کاراکتر را که آرایه tools یا functions دارند و ورودی‌های آن شامل shell، exec، نوشتن فایل یا کنترل مرورگر است و نشانی کلاینت جزو برنامه‌های ثبت‌شده شما نیست، علامت‌گذاری کنید. یا طرفی ناشناس از توان محاسباتی شما برای یک عامل خودگردان استفاده می‌کند، یا یکی از عامل‌های خودتان به بک‌اند نادرست هدایت شده است.

اقدامات اصلاحی

  • سرورهای استنتاج خودمیزبان را به loopback یا یک رابط خصوصی مقید کنید و یک پراکسی معکوس احرازکننده هویت پیش از آن‌ها قرار دهید؛ یک پورت با شماره بالا کنترل دسترسی نیست.
  • روی هر مسیر استنتاج یک کلید API یا mTLS الزامی کنید و درخواست‌های بدون سرآیند Authorization را در پراکسی رد کنید، نه در سرور مدل.
  • برای POSTهای بدون احراز هویت به /v1/chat/completions و برای پرامپت‌های کمینه یکسان و تکراری از یک منبع هشدار بگذارید، چون استخر پراکسی به همین شکل سلامت یک بالادستی را که به کار گرفته بررسی می‌کند.
  • اگر نقطه پایانی استنتاج شما بدون احراز هویت از اینترنت در دسترس بوده است، هر پرامپت و پرامپت سیستمی را که از آن عبور کرده افشاشده تلقی کنید و هر اعتبارنامه‌ای را که در گفت‌وگویی ظاهر شده بچرخانید.
  • برای تیم‌هایی که چارچوب‌های عامل اجرا می‌کنند: نشانی پایه مدل را به ارائه‌دهنده‌ای که خودتان کنترل می‌کنید سنجاق کنید، و هرگز عاملی را که ابزارهای شل، نوشتن فایل یا مرورگر دارد روی یک نقطه پایانی سازگار با OpenAI رایگان یا ناشناس پیکربندی نکنید.

نگاشت MITRE ATT&CK

تاکتیکتکنیکمشاهده‌شده
شناساییT1595 Active Scanningپرامپت‌های اسکریپت‌شده زنده‌بودن و یک مجموعه بازتاب دقیق توکن که برای آزمودن اینکه نقطه پایانی مدلی واقعی ارائه می‌دهد و کدام مدل است به کار رفت.
دسترسی اولیهT1190 Exploit Public-Facing Applicationیک API استنتاج در دسترس از اینترنت و بدون احراز هویت، مستقیماً به عنوان یک سرویس توسط طرفی غیرمجاز استفاده شد.
دسترسی به اعتبارنامهT1552 Unsecured Credentialsشش کلید API فروشندگان شخص ثالث در گفت‌وگویی جای‌گذاری شد که از نقطه پایانی عبور کرد و آن‌ها را در معرض دید گرداننده آن قرار داد.

منابع

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

این گزارش بر 1 نشانی مبدأ و 7 مشاهده زمان‌دار استوار است، که از تله‌متری حسگرها خوانده و در برابر خوراک‌های عمومی اطلاعات تهدید و جست‌وجوهای غنی‌سازی راستی‌آزمایی شده و بازه 13 تا 20 سپتامبر 2026 را پوشش می‌دهد.

هنوز باز است:

  • اینکه 43.155.205[.]31 یک استخر پراکسی اشتراکی است که به کاربران پایین‌دستی متعدد خدمت می‌دهد یا بازپخش‌کننده شخصی یک نفر برای یک دستگاه واحد.
  • اینکه شش کلید API جای‌گذاری‌شده فروشندگان به شخصی که آن‌ها را تایپ می‌کرده تعلق داشتند یا مواد پیش‌تر دزدیده‌شده‌ای بودند که در حال آزمایش بودند.
  • اینکه نقطه پایانی چگونه کشف شد، و اینکه آیا نشانی‌ای که آن را برشمرده همان نشانی‌ای است که بعداً از آن استفاده کرده است.
  • اینکه فعالیت این کلاینت پیش از 13 سپتامبر چگونه بوده است.
  • اینکه آیا همین کلاینت از نقاط پایانی استنتاج در معرض دید دیگری نیز استفاده می‌کند.

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

How to cite
Kinryū Labs (2026). یک نقطه پایانی استنتاج در معرض دید، که ابتدا بررسی سلامت شد و سپس به عنوان بک‌اند شخص دیگری به کار رفت. https://kinryu.sh/fa/reports/exposed-inference-endpoint-health-checked/