Bu sayfa bir çeviridir. Esas alınan metin İngilizce sürümdür. İngilizcesini okuyun

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

Açıkta bırakılmış bir çıkarım uç noktası, sağlık kontrolünden geçirildi ve ardından başkasının arka ucu olarak kullanıldı

Bu rapor, kimlik doğrulaması bulunmayan OpenAI uyumlu bir çıkarım uç noktasının üçüncü bir tarafça uçtan uca devşirilmesini ele alıyor; taraf, modeli betikle yürütülen bir sonda bataryasıyla doğruladı ve ardından gerçek bir ajan uygulamasının kullanıcı trafiğini bu uç nokta üzerinden aktardı.

Yazan Davis Zheng·

TLP:CLEAR. Kamuya açık yayım için onaylanmıştır. Kinryū Labs bal küpü sensör ağı tarafından yakalanmıştır. Aşağıdaki göstergeler etkisizleştirilmiş biçimde verilmiştir.

Yönetici özeti

  • 280açık tek bir çıkarım uç noktasına gönderilen istem
  • 54 sailk sondadan son sağlık kontrolüne kadar
  • 7sunulan ajan aracı, kabuk yürütme dahil

13-20 Eylül 2026 tarihleri arasında bal küplerimizden biri, 43.155.205[.]31 adresindeki (Tencent Cloud, AS132203, coğrafi konum KR) tek bir istemcinin kimlik doğrulaması bulunmayan, OpenAI uyumlu bir uç noktaya 280 istem gönderdiğini kaydetti. 280 istemin tamamı tek bir istemci oturum tanımlayıcısını ve tek bir kullanıcı aracısını, Go-http-client/1.1, paylaşıyor ve /v1/chat/completions adresine gönderiliyor. Hiçbir istek API anahtarı taşımıyordu; dolayısıyla uç nokta, onu bulan herkes tarafından erişilebilir durumdaydı.

13-20 Eylül 2026 arasındaki faaliyeti inceledik ve göstergeleri üzerinden pivot yaptık. İtibar sorguları 89 VirusTotal motorundan 0’ında zararlı sonucu ve hiçbir itibar kaydı döndürmedi; ağ sahipliği sorguları Tencent Cloud, AS132203 sonucunu verdi.

İstemcinin açıkta bırakılmış uç noktayı bir sonda bataryasıyla doğruladığını, ardından onu gerçek bir uygulamanın istek yoluna bağlayarak bedava işlem gücü olarak kullandığını orta güvenle değerlendiriyoruz; bu, yayımlanmış LLMjacking yöntemleriyle örtüşmektedir.

Tablo 1, oturumun dört aşamasını ortaya koymaktadır.

Saatler UTC’dir.

Aşamaİlk görülmeİsteklerin içeriğiHacim ve tempo
Sağlık kontrolü2026-09-18T09:02:28Zgpt-3.5-turbo, gpt-4 ve llama-3.2-3b-instruct:q4_k_m modellerine karşı dokuz karakterlik hi istemleriSaniye altı aralıklarla
Parmak izi çıkarma2026-09-18T10:15ZBirebir token yankılama testleri, çıktı biçimi kısıtı altında aritmetik, daha ağır nesne üzerine kurulu bir tuzak soru, kelime sayısı talimatına uyum, bilgi kesim tarihi ve kendini tanımlama soruları, aynılarının Çince tekrarı40-54. turlar tek karakterlik bir Çince sondayı yaklaşık 0.5 sn aralıklarla yineliyor
Uygulama trafiği2026-09-18T13:54:33ZAjan sistem istemi, yedi girdili araç şeması, Çince kullanıcı turları, yapıştırılmış tedarikçi API anahtarlarıGövdeler, önceki aşamalardaki onlarca karakterden 25,297 karaktere yükseliyor
Yeniden sağlık kontrolü2026-09-19 ila 2026-09-20Yeniden hi20 Eylül’de 15:02:12.084Z ile 15:02:13.923Z arasında on dört özdeş istek

ATT&CK terimleriyle istemci uç noktayı taradı (T1595, Active Scanning, keşif amaçlı), ardından kamuya açık uç noktayı ilk erişim için kullandı (T1190, Exploit Public-Facing Application) ve T1552, Unsecured Credentials ile eşleşen kimlik bilgilerini yapıştırdı.

Temel değerlendirmeler

  • Bal küplerimizden birindeki kimlik doğrulaması bulunmayan, OpenAI uyumlu bir uç nokta doğrulandı ve ardından başkasının ajan uygulaması için arka uç işlem gücü olarak kullanıldı. Tek bir istemci adresi, 18-20 Eylül arasında tek bir oturum tanımlayıcısı altında 280 yakalanmış istem üretti. Orta güven.
  • Doğrulama ve sağlık kontrolü aşamaları betiklenmiştir, bir kişi tarafından yazılmamıştır. 20 Eylül'de 15:02:12.084Z ile 15:02:13.923Z arasında dokuz karakterlik on dört özdeş canlılık istemi geldi. Orta güven.
  • Üçüncü bir tarafa ait gerçek kullanıcı verileri uç noktadan geçti; bunlara altı üçüncü taraf API anahtarı ve kabuk yürütme sunan bir ajan araç şeması dahildir. 18 Eylül'de 14:07:16Z'de gelen tek bir istek, KEY=value biçiminde altı tedarikçi API anahtarı içeriyordu. Orta güven.
  • İstemci bilinen bir tarayıcı değildir ve sıradan kitlesel taramadan farklı davranmaktadır. VirusTotal, 43.155.205[.]31 için 89 motordan 0'ında zararlı sonucu ve hiçbir itibar kaydı döndürüyor; hiçbir tarayıcı itibar sağlayıcısında da kaydı bulunmuyordu. Orta güven.
  • Faaliyet örüntüsü, araştırma amaçlı ölçümden ziyade açıkta bırakılmış çıkarım uç noktalarının yayımlanmış LLMjacking yöntemiyle devşirilmesiyle tutarlıdır. Tedarikçi ve CSA raporlaması, selamlaşmalar ve basit olgusal sorular gibi düşük gürültülü zararsız sondaları tarif ediyor. Orta güven.

Zaman çizelgesi

  • 2026-09-13 18:00 UTCKanıtlarda 43.155.205[.]31 adresinden gelen ilk faaliyet.
  • 2026-09-18 09:02 UTCÇıkarım uç noktasının canlılık sondalaması üç model adı üzerinden başlıyor.
  • 2026-09-18 10:15 UTCYankı doğruluğu ve talimata uyum bataryası başlıyor; tokenlar her istekte yeniden üretiliyor.
  • 2026-09-18 12:54 UTCİki dilli parmak izi çıkarma dalgası, istekler arası yaklaşık 0.5 saniye.
  • 2026-09-18 13:54 UTCAjan uygulamasının sistem istemi ve kabuk yürütme dahil yedi araçlık şema uç noktaya gönderiliyor.
  • 2026-09-18 14:07 UTCAktarılan konuşmaya altı üçüncü taraf tedarikçi API anahtarı yapıştırılıyor.
  • 2026-09-20 15:02 UTCBetiklenmiş canlılık sondalaması yeniden başlıyor, iki saniyenin altında on dört istek.

Oturum, sırasıyla

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

Sonda bataryası

Bataryanın neyi sınadığını istemcinin kendi metni gösteriyor. Yankı testleri her istekte yeni bir rastgele token taşıyor, Reply with exactly this token, nothing else: TKOLGN2R, token üç ardışık istekte değişiyor ve bunlar uç noktanın girdisini sadakatle yeniden üretip üretmediğini sınıyor. What is 17*23? Answer with only the number, no explanation. cevaba bir biçim kısıtı koyuyor. What AI model are you? Answer in one short sentence, name the model and maker. ve What is your knowledge cutoff date? Answer with just the date. kimliğe yöneliyor, aynı sorular Çince olarak yeniden çalıştırılıyor. Bu bataryayı çalıştıran bir istemci, uç noktanın arkasında gerçek bir model olup olmadığını, bunun hangi model olduğunu ve kullanmaya değecek kadar iyi talimat izleyip izlemediğini öğreniyor.

Sağlık kontrolü istekleri saniye altı aralıklarla geliyor ve 40-54. turlar yaklaşık 0.5 sn’de bir yineleniyor; bu, bir kişinin bunları yazması için fazla kısa. Go-http-client/1.1 kullanıcı aracısını, bir tarayıcı ya da API konsolundaki bir insan yerine, bir uygulamanın trafiğini aktaran bir Go programı olarak okuyoruz. Bu çıkarımı düşük güvenle taşıyoruz ve bu, faaliyetin operatöre atfedilmesi açısından önem taşımaktadır. Uygulama trafiği aktığıktan sonra sondalama yeniden başladı; bunu, istemcinin uç noktanın hâlâ kullanıma açık olduğunu teyit etmesi olarak okuyoruz.

Ajan uygulamasının trafiği

Uygulama trafiği aşamasında istemci, Çince bir Android asistanına ait gerçek bir uygulamanın isteklerini aktardı. On istek aynı ajan sistem istemini taşıyordu; bu istem, cihaz üzerinde yalıtılmış bir Alpine Linux PRoot ortamı çalıştıran bir asistana aitti ve yedi girdili bir araç şeması içeriyordu: ilk sırada shell_execute, o ortamda /bin/sh -c aracılığıyla komut çalıştırdığı belirtilerek, ardından dosya okuma, dosya yazma, dosya düzenleme, tarayıcı denetimi ve iki kalıcı not aracı. Model çağrılarının arasına uygulamanın kendi iç işleyiş istekleri serpiştirilmiş durumda: arayüz dili zh-Hans olarak verilmiş hâlde JSON üretmesi gereken bir konuşma başlığı üreteci ve Çince kısa insan turları.

Aşamanın on üçüncü dakikasında, 14:07:16Z’de, bir istek KEY=value biçiminde altı canlı tedarikçi API anahtarı taşıyordu: iki arama API’si, bir ajan mesajlaşma API’si, bir araştırma API’si ve iki model sağlayıcı anahtarı. Bunların yazan kişiye mi ait olduğunu yoksa daha önce çalınmış materyalin bedava bir uç noktaya karşı sınanması mı olduğunu yakalanan veriden ayırt edemiyoruz. Her iki durumda da uç noktanın sahibi kim ise ona ulaştılar.

Bir tarayıcı olasılığının elenmesi

Kanıtlar sıradan bir tarayıcıyla bağdaşmıyor. VirusTotal, 43.155.205[.]31 için 89 motordan 0’ında zararlı sonucu ve hiçbir itibar kaydı döndürüyor; hiçbir tarayıcı itibar sağlayıcısında da kaydı yoktu. Sıradan kitlesel tarama birçok sensöre tek seferlik sondalar gönderir, oysa bu istemci istem içeriğini uyarlayan tek ve uzun ömürlü bir oturum sürdürdü. Aynı kanıtlar bir araştırma ya da ölçüm tarayıcısı ihtimaline de karşı çıkıyor, çünkü araştırmacılar ölçtükleri uç noktadan canlı tedarikçi anahtarları ve gerçek kullanıcı konuşmaları geçirmezler.

Kanıtlar, adresin birçok alt kullanıcıyı aktaran paylaşımlı bir proxy havuzu mu yoksa tek bir kişinin tek bir cihaz için kendi aktarıcısı mı olduğunu netleştirmiyor. Go istemcisi, günlük betiklenmiş sağlık kontrolleri ve tek bir üst akış oturumunun yeniden kullanımı her iki okumaya da eşit ölçüde uyuyor.

İki taraflı açığa çıkma

Uç nokta sahibi, istemcinin tükettiği çıkarımın bedelini ödüyor; istemci ise kullanıcılarının istemlerini, kendi sistem istemini ve kimlik bilgilerini uç noktanın sahibi kim ise ona teslim ediyor ve yukarıdaki araç şeması bir Android cihazda kabuk yürütme, dosya yazma ve tarayıcı denetimi sunuyor. Düşmanca bir arka uç, kendi seçtiği araç çağrılarıyla yanıt verip bunların istemci tarafında yürütülmesini sağlayabilir.

İnternetten kimlik doğrulaması olmadan erişilebilen, kendi barındırdığınız bir çıkarım uç noktasının hâlihazırda sağlık kontrolünden geçirildiğini ve başkasının arka ucu olarak kullanıldığını varsayın, çünkü bu uç nokta için bu durum gördüğümüz ilk faaliyetten sonraki beş gün içinde gerçekleşti. Üzerinden geçmiş her istemi ifşa olmuş kabul edin; buna hiç duymadığınız uygulamaların sistem istemleri ve yapıştırılmış sırları da dahildir.

Tehlike göstergeleri

Aşağıdaki tek ağ göstergesi etkisizleştirilmiştir; yollar gözlemlendiği gibi verilmiştir.

Ağ

GöstergeBağlam
43.155.205[.]31kimlik doğrulaması bulunmayan bir çıkarım uç noktasını sağlık kontrolünden geçiren, parmak izini çıkaran ve ardından ona ajan uygulaması trafiği aktaran istemci

Ana bilgisayar artefaktları

GöstergeBağlam
Reply with exactly this token, nothing else: <8 alnum chars>bir uç noktayı doğrulamak için kullanılan yankı doğruluğu sondası; token her istekte yeniden üretiliyor (gözlemlenenler TKOLGN2R, TK3C9IAN, TKA63OEL, P2380OG9, P23WD39I, P2GBIOTB, ZQ7X)
Go-http-client/1.1 POST /v1/chat/completions with no Authorization headeryakalanan 280 istemin tamamında aktarıcı istemcinin istek imzası; kütüphane dizesi tek başına geneldir

Tespit

Sigma

Kendi barındırılan bir çıkarım uç noktasına karşı model parmak izi çıkarma istem bataryası (aday).

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

Tespit mantığı

  • Yönetim ağının dışından gelen, kimlik doğrulaması bulunmayan çıkarım isteği (ağ, aday). Kendi barındırdığınız bir çıkarım portunda /v1/chat/completions, /v1/completions, /api/generate veya /api/chat adresine giden, mühendislik aralıklarınızın dışındaki bir kaynaktan gelen VE Authorization ya da api-key başlığı taşımayan her HTTP POST için uyarı üretin. Tek bir kaynaktan iki saniye içinde beşten fazla böyle isteğin gelmesini, kullanıcı trafiği değil, üçüncü bir tarafça yürütülen otomatik üst akış sağlık kontrolü olarak değerlendirin.
  • Yalnızca kendi kullanıcılarınıza hizmet etmesi gereken bir uç noktaya gelen ajan sistem istemi (davranışsal, aday). İşlettiğiniz bir çıkarım ağ geçidinde, 10,000 karakterin üzerindeki ve girdileri arasında kabuk, exec, dosya yazma veya tarayıcı denetimi bulunan bir tools ya da functions dizisi içeren istek gövdelerini, istemci adresi kayıtlı uygulamalarınızdan biri değilse işaretleyin. Ya bilinmeyen bir taraf işlem gücünüzü otonom bir ajan için kullanıyordur ya da kendi ajanlarınızdan biri yanlış arka uca yönlendirilmiştir.

Giderme

  • Kendi barındırdığınız çıkarım sunucularını loopback’e veya özel bir arayüze bağlayın ve önlerine kimlik doğrulayan bir ters proxy koyun; yüksek numaralı bir port erişim denetimi değildir.
  • Her çıkarım rotasında API anahtarı veya mTLS zorunlu kılın ve Authorization başlığı olmayan istekleri model sunucusunda değil, proxy’de reddedin.
  • /v1/chat/completions adresine gelen kimlik doğrulamasız POST’lar ve tek bir kaynaktan gelen yinelenen özdeş minimal istemler için uyarı üretin; bir proxy havuzu devşirdiği bir üst akışı bu şekilde sağlık kontrolünden geçirir.
  • Çıkarım uç noktanız internetten kimlik doğrulaması olmadan erişilebilir durumdaysa, üzerinden geçmiş her istemi ve sistem istemini ifşa olmuş kabul edin ve bir konuşmada görünen tüm kimlik bilgilerini değiştirin.
  • Ajan çerçeveleri işleten ekipler için: model temel URL’sini kendi denetiminizdeki bir sağlayıcıya sabitleyin ve kabuk, dosya yazma veya tarayıcı araçlarına sahip bir ajanı hiçbir zaman bedava ya da bilinmeyen bir OpenAI uyumlu uç noktaya karşı yapılandırmayın.

MITRE ATT&CK eşlemesi

TaktikTeknikGözlemlenen
KeşifT1595 Active ScanningUç noktanın gerçek bir modele ve hangisine hizmet ettiğini sınamak için kullanılan betiklenmiş canlılık istemleri ve birebir token yankı bataryası.
İlk erişimT1190 Exploit Public-Facing Applicationİnternetten erişilebilen, kimlik doğrulaması bulunmayan bir çıkarım API’si, yetkisiz bir tarafça doğrudan bir hizmet olarak kullanıldı.
Kimlik bilgisi erişimiT1552 Unsecured CredentialsUç noktadan geçen bir konuşmaya altı üçüncü taraf tedarikçi API anahtarı yapıştırıldı ve bunlar uç noktayı işleten tarafa ifşa oldu.

Kaynaklar

Yöntem ve analist notları

Bu rapor, 13-20 Eylül 2026 dönemini kapsayan, sensör telemetrisinden okunan, kamuya açık tehdit istihbaratı beslemeleri ve zenginleştirme sorgularıyla karşılaştırılan 1 kaynak adrese ve 7 zaman damgalı gözleme dayanmaktadır.

Açık kalanlar:

  • 43.155.205[.]31 adresinin birçok alt kullanıcıya hizmet eden paylaşımlı bir proxy havuzu mu yoksa tek bir kişinin tek bir cihaz için aktarıcısı mı olduğu.
  • Yapıştırılan altı tedarikçi API anahtarının yazan kişiye mi ait olduğu yoksa daha önce çalınmış materyalin sınanması mı olduğu.
  • Uç noktanın nasıl keşfedildiği ve onu sayımlayan adresin, sonradan kullanan adresle aynı olup olmadığı.
  • Bu istemcinin faaliyetinin 13 Eylül’den önce nasıl göründüğü.
  • Aynı istemcinin açıkta bırakılmış başka çıkarım uç noktalarını kullanıp kullanmadığı.

Sorular veya düzeltmeler: [email protected].

How to cite
Kinryū Labs (2026). Açıkta bırakılmış bir çıkarım uç noktası, sağlık kontrolünden geçirildi ve ardından başkasının arka ucu olarak kullanıldı. https://kinryu.sh/tr/reports/exposed-inference-endpoint-health-checked/