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

llm-abuse · litellm · llm-gateway · agent-harness · deepseek · credential-abuse · tool-calling

Çalınmış Bir LLM Gateway'ine Yönelen DeepSeek Harness: Araç Çağrıları Çağıranın Makinesinde Çalışıyor

Bu, bir gün önce o gateway üzerinde üretilmiş bir sanal anahtarı yeniden kullanan iki adres tarafından bir honeypot LLM gateway'ine yöneltilen etmen tabanlı bir LLM istemcisidir: DeepSeek'in geliştirici ön sürüm etmen çerçevesi DeepSeek Harness.

Yazan Davis Zheng·

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

Devam yazısı: DeepSeek Harness Kötüye Kullanımı: Otonom Bir Etmen Operatörünün Ana Makinesini Açığa Çıkarıyor, 2026-09-27.

Yönetici özeti

  • 11çağıranların kendi ana makineleri tarafından geri gönderilen araç sonucu
  • 60etmen harness istemcisinden gelen gateway isteği
  • 2çalınmış gateway anahtarını paylaşan adres
  • 31.2 hilk canlılık sondasından son isteme kadar

21 Eylül 2026’da bir istemci, honeypot LLM gateway’lerimizden birine bir etmen harness’ı yöneltti ve araç sonuçlarını buraya geri gönderdi: üç adrese dağılmış on bir sonuç, beşi 103.85.74[.]25 adresinden, beşi 203.175.15[.]28 adresinden ve üç gün önce biri 188.239.18[.]109 adresinden. Bu, uç noktasının döndürdüğü araç çağrılarını çağıranın kendi ana makinesinde çalıştıran bir harness’ın biçimidir.

Bu iki Hong Kong adresi, bir gün önce gateway’imizde LiteLLM yönetim anahtarı yolu üzerinden, satıcı varsayılanı ana anahtar sk-1234 ile üretilmiş bir sanal anahtar olan sk-0af475b8… değerini yeniden kullandı. İkisi de AS152320 GOALNOW içinde yer alıyor ve bunlardan biri ayrıca sk-1234 anahtarının kendisini sundu. 21 Eylül’de, model bağdaştırıcıları yapılandırılabilir bir temel URL okuyan DeepSeek’in geliştirici ön sürüm etmen çerçevesinin kullanıcı aracısını, deepseek-harness/0.1.5-rc.2 değerini taşıyarak geri döndüler ve gateway’imizi bir model arka ucu olarak çalıştırdılar. Her iki günün tek bir operatöre atfedilmesini düşük güvenle değerlendiriyoruz, çünkü bu yalnızca her iki günde de aynı iki adresin görünmesine ve anahtarın yeniden kullanılmasına dayanıyor.

Klavye başında elle yürütülen bir çalışma olası değil: 20 Eylül 04:25:44 ile 21 Eylül 11:34:45 UTC arasındaki 78 olay 106 s’lik etkinlik içeriyor ve 1999 karakterlik bir istem 0.01 s içinde geldi; bu, bir daktilonun ulaşabileceği saniyede on karakterin çok ötesinde. Bunu, tempo kararı karışık olmakla birlikte, büyük olasılıkla başlangıç zamanları insan tarafından seçilmiş otomatik bir etmen döngüsü olarak okuyoruz.

Etmen turlarından önceki kontroller

10:49 ile 11:20 UTC arasında 103.85.74[.]25 adresi, herhangi bir etmen turundan önce gateway’imiz üzerinde üç tur kontrol yürüttü; bu, canlılık yolunu yeniden sondalayıp kullanılabilir modelleri 14 s içinde iki kez listelemesiyle başladı. 11:00 UTC’de üç farklı barındırılan model adına karşı birbirinin aynısı üç tek jetonluk sonda gönderdi: Reply with exactly: OK. 11:20 UTC’de kısa bir İngilizce yetenek bataryası yürüttü: ping, ardından Compute 17*23+19. Reply with ONLY the number., strawberry kelimesindeki harf sayısı sorusu, Reverse the string 'litellm'. ve Burkina Faso’nun başkenti; her biri yalnızca çıplak bir yanıt istiyordu. Ters çevirme testi için litellm seçilmesi, çağıranın hangi ürünle konuştuğunu bildiğini gösteriyor.

11:26 UTC’den itibaren kullanıcı aracısı değişiyor ve istemler soru olmaktan çıkıyor. Turlar beceri iskeletine ilişkin sistem hatırlatmaları taşıyor; 11:34 UTC’deki bir istek [system-reminder] A skill is a reusable set of task-specific… ile başlıyor.

Operatör iki dilde çalışıyor ve istemciyle birlikte dil değiştiriyor. 20 Eylül doğrulaması python-requests/2.28.1 üzerinden Basitleştirilmiş Çince yürütüldü: 1+2+3等于几?只回答数字, ardından 中国的首都是哪座城市?只回答城市名, ardından 用Python读取文件data.txt并打印内容,给出完整代码; 21 Eylül harness bataryası ise İngilizce.

Geri gönderilen araç sonuçları

Bu türden bir harness, uç noktasının döndürdüğü araç çağrılarını operatörün kendi makinesinde çalıştırır. Operatör bir çıkarım uç noktası çaldı ve ardından onu, uç noktanın araç çağrılarını yerel olarak çalıştıran bir çerçeveye bağladı; dolayısıyla düşman bir uç nokta, böyle bir etmenin ne çalıştıracağını denetler. Harness’ın kimin adına çalıştığı ve her çağrının çağıranın ana makinesinde ne yaptığı bilinmiyor; harness’ın araç onayları kapalı halde mi yoksa her çağrıyı onaylayan bir operatörle mi çalıştığı da bilinmiyor.

Üçüncü adresi, aynı gateway’i bir yer tutucu anahtarla sömürdüğü için daha önceki koşularda zaten kayda almıştık ve bu adres AS152320 ikilisinden farklı bir ağda yer alıyor. Aynı istemci tarafı araç yürütme davranışı dolayısıyla bu havuzun dışında da görülüyor; bu nedenle onu tek bir aktörün imzası olarak değil, bir sınıf olarak avlıyoruz.

Test aşaması ve kullanım aşaması

Operatörün araç setinin bir test aşaması ve bir kullanım aşaması var ve yalnızca kullanım aşaması bir etmene ihtiyaç duyuyor. Aynı iki adres 20 Eylül’de betikli HTTP istemcisini ve sabit Çince bataryayı, 21 Eylül’de ise beceri iskeleti taşıyan bir etmen çerçevesini kullandı. Bu değişiklik, uç noktayı doğrulanmakta olan bir şeyden, çalışan bir araç zincirine bağlanmış bir şeye taşıdı.

Ucuz kontroller, herhangi bir etmen turundan önce geldi.

Tüketim havuzu

Tek bir otonom sistemin iki /24’ünde yer alan iki adres çıkarımı tüketti ve her iki günde de dakikalar içinde dönüşümlü çalıştı. 103.85.74[.]25 adresini çevreleyen /24, 15 ile 22 Eylül 2026 arasında başka etkin kaynak barındırmıyor; 220 olayın tamamı o tek adresten geliyor. İki önek arasındaki dönüşümlü kullanımı kasıtlı bir bölüşme olarak okuyoruz.

Gateway’imizde sunulan anahtarlar

Bir çağıran, sk-1234 anahtarının yanı sıra gövdesi base64 kodlu bir PKCS#8 özel anahtar öneki olan bir taşıyıcı jeton sundu: sk-MIIJQQIB…. API anahtarı olarak sunulan bir özel anahtar, kimlik bilgilerinin tür denetimi yapılmaksızın toplanmış bir listeden yeniden oynatıldığıyla tutarlıdır; bu da hedef başına dikkatli anahtar yönetimi yerine yukarı akışta toplu hasat yapıldığını düşündürür. O anahtarın hangi sisteme ait olduğu ve nereden alındığı çözülmemiştir.

Harness istekleri, operatörün bedelini ödemediği bir anahtar üzerinden çıkarım tüketti; bu, kaynak gaspıdır (T1496). Anahtarın kendisi çalınmış bir uygulama erişim jetonuydu (T1528) ve bir adres satıcı varsayılanı ana anahtarın kendisini sundu; bu da varsayılan hesaplar kapsamına girer (T1078.001).

Test ettiğimiz rakip okumalar

Tablo: aynı iki kaynak her iki işareti de sundu, üçüncü bir kaynak ise bunlardan hiçbirini sunmadı 15 ile 22 Eylül 2026 arasında, üretilen anahtar değeri ve harness kullanıcı aracısı üzerinden kohort pivotları. İki satır farklı şeyleri sayıyor: anahtarın sunulmaları ve kullanıcı aracısını taşıyan istekler.

İşaretOlayPencereKaynak/24Kuruluş
sk-0af475b8… sunuldu5716 dakika, 20 Eylül221 (AS152320)
deepseek-harness/0.1.5-rc.26011 dakika, 21 Eylül221 (AS152320)

Bu pivotu, harness oturumlarının anahtarı üreten operatöre mi yoksa aşağı akıştaki bir alıcıya mı ait olduğunu belirlemek için yürüttük ve bu soruyu çözmüyor. Üretilen anahtarın sunulmalarından türetilen bir kaynak kümesi, anahtarı üreten isteği içeremez. Aynı kaynak kümeleri, yeniden satılmış bir anahtarı tüketen üçüncü taraf bir harness kullanıcısını dışlar, ancak sk-0af475b8… değerini kimin ürettiği konusunda hiçbir şey söylemez; bu nedenle okumayı sonuçsuz olarak kaydediyoruz.

İki rakip okuma daha açık kalıyor. Yukarıdaki oturum aritmetiğine göre klavye başında bir insan olası değil: o 31.2 saat içinde 29 patlama, patlama içi ortanca boşluk 3.2 s ve ölçülebilir 38 boşluğun 26’sı saniyede on karakterin izin verdiğinden daha hızlı. Ancak tempo kararı karışık olduğu için bunu sonuçsuz sayıyoruz. Kanıtlarda oturumun bir hatayla sona erdiğini gösteren hiçbir şey yok; 103.85.74[.]25 adresinden gelen son istek 11:34:45 UTC’deydi.

Kullanıcı aracısının bir taklit olup olmadığı da sonuçsuz. Adını verdiği proje gerçek ve model bağdaştırıcıları yapılandırılabilir bir temel URL alıyor; gözlenen turlar beceri iskeleti taşıyor ve araç sonuçlarını konuşma içinde geri gönderiyor, bu da bir eklenti harness’ıyla uyumlu; ayrıca 15 ile 22 Eylül 2026 arasında bu dizeyi yalnızca iki kaynak sundu.

Havuzun harness’ı başka yerlere yöneltip yöneltmediği

Aynı havuzun harness’ı başka çalınmış çıkarım uç noktalarına yöneltip yöneltmediğini ya da bu adreslerin 15 Eylül’den önce ne yaptığını bilmiyoruz.

Ne yapmalı

Bu gidiş dönüş iki gruptan değişiklik istiyor: etmen harness’ları çalıştıranlar ve LiteLLM gateway’leri çalıştıranlar. Bir etmen harness’ı çalıştırıyorsanız, temel URL’sini denetiminizdeki model uç noktalarına sabitleyin ve araç yürütmesi için insan onayı zorunlu kılın, çünkü düşman veya çalınmış bir uç noktanın döndürdüğü bir araç çağrısı sizin makinenizde yürütülür. Aynı maruziyet, kendisinin inşa etmediği ucuz bir OpenAI uyumlu röleye harness yönelten her geliştirici için geçerlidir. LiteLLM çalıştırıyorsanız, sk-1234 anahtarını döndürün ve bir sanal anahtar, onu üreten ağdan farklı bir ağdan sunulduğunda uyarı üretin.

Temel değerlendirmeler

  • 20 Eylül'de üretilen sanal anahtarı yeniden kullanan iki adres, 21 Eylül'de deepseek-harness istemcisini çalıştıran aynı iki adrestir ve bunlardan biri gateway'de ayrıca sk-1234 anahtarını da sunmuştur. Üretilen sanal anahtar sk-0af475b8…, 15 ile 22 Eylül 2026 arasında tam olarak iki kaynaktan sunuldu: her ikisi de AS152320 GOALNOW (Hong Kong) içinde bulunan 203.175.15[.]28 ve 103.85.74[.]25 adresleri; aynı iki adres, 21 Eylül'deki on bir dakikalık bir pencere içinde deepseek-harness kullanıcı aracısını taşıyan tek iki adrestir. Orta düzeyde güven.
  • İstemci, kendi ana makinesinden gelen araç sonuçlarını uç noktaya geri gönderdi. Çağıranın kendi ana makinesinden on bir araç sonucu geri geldi: beşi 103.85.74[.]25 adresinden, beşi 203.175.15[.]28 adresinden ve biri 188.239.18[.]109 adresinden; her biri harness tarafından konuşma içinde bir araç sonucu olarak işaretlenmişti. Orta düzeyde güven.
  • Oturum büyük olasılıkla otomatik bir etmen döngüsüdür. Tempo kararı karışık: 103.85.74[.]25 adresinden 31.2 saatte 78 olay ve yalnızca 106 saniyelik etkinlik, ölçülebilir 38 boşluğun 26'sı saniyede on karakterin izin verdiğinden daha hızlı ve 1999 karakterlik bir istem 0.01 s içinde iletildi. Düşük güven.
  • Operatör, bir işi bir uç noktaya emanet etmeden önce çalınmış uç noktanın gerçek bir model olup olmadığını test ediyor. 21 Eylül'deki herhangi bir etmen turundan önce istemci birbirinin aynısı üç 'Reply with exactly: OK' sondası gönderdi, ardından İngilizce bir aritmetik, harf sayımı, dize ters çevirme ve coğrafya bataryası uyguladı; hepsi tek jetonluk yanıt istiyordu ve ancak bundan sonra beceri iskeleti taşıyan turları açtı. Orta düzeyde güven.

Zaman çizelgesi

  • 2026-09-20 04:25 UTC103.85.74[.]25 adresi gateway canlılık yolunu sondalıyor
  • 2026-09-20 12:22 UTC203.175.15[.]28 adresi, üretilen sanal anahtar sk-0af475b8… değerini /v1/chat/completions üzerinde sunuyor
  • 2026-09-20 12:34 UTC103.85.74[.]25 adresi aynı anahtarı sunuyor ve python-requests/2.28.1 üzerinden üç Basitleştirilmiş Çince doğrulama istemi yürütüyor
  • 2026-09-21 10:49 UTC103.85.74[.]25 adresi geri dönüyor, canlılığı yeniden denetliyor ve on dört saniye içinde modelleri iki kez listeliyor
  • 2026-09-21 11:00 UTCÜç barındırılan model adına karşı birbirinin aynısı üç 'Reply with exactly: OK' sondası
  • 2026-09-21 11:20 UTCİngilizce yetenek bataryası: aritmetik, harf sayımı, 'litellm' dizesinin ters çevrilmesi, coğrafya
  • 2026-09-21 11:26 UTCİstemci deepseek-harness/0.1.5-rc.2 sürümüne geçiyor; etmen turları başlıyor
  • 2026-09-21 11:34 UTCBir istek etmen beceri iskeleti taşıyor
  • 2026-09-21 11:37 UTC203.175.15[.]28 adresinden gelen son harness isteği; üç adrese dağılmış on bir araç sonucu geri gönderilmişti

Oturum, sırasıyla

12:34:13  1+2+3等于几?只回答数字
12:34:43  中国的首都是哪座城市?只回答城市名
12:34:56  用Python读取文件data.txt并打印内容,给出完整代码
11:00:31  Reply with exactly: OK
11:20:35  ping
11:20:42  Compute 17*23+19. Reply with ONLY the number.
11:20:48  How many times does the letter 'r' appear in the word 'strawberry'? Reply with ONLY the number.
11:20:52  Reverse the string 'litellm'. Reply with ONLY the reversed result.
11:20:55  What is the capital of Burkina Faso? Reply with ONLY the city name.
11:26:26  deepseek-harness/0.1.5-rc.2 (+https://github.com/deepseek-ai/deepseek-harness)
11:34:45  [system-reminder] A skill is a reusable set of task-specific…

Çalışma yöntemi

BoyutGözlemlediğimizSavunmacıya söylediği
Araç setiAynı iki adres 20 Eylül’de sabit bir Çince istem bataryasıyla python-requests/2.28.1 kullandı, 21 Eylül’de ise beceri iskeleti taşıyan bir etmen çerçevesi kullandı.Uç nokta, doğrulanmakta olan bir şeyden çalışan bir araç zincirine bağlanmış bir şeye yükseltildi; operatörün araç setinin bir test aşaması ve bir kullanım aşaması var ve yalnızca ikincisi bir etmene ihtiyaç duyuyor.
SıralamaCanlılık sondası, on dört saniye içinde iki kez model listeleme, üç model adına karşı birbirinin aynısı üç tek jetonluk sonda, ardından kısa bir yetenek bataryası, ardından etmen turları.Ucuz kontroller herhangi bir etmen turundan önce geliyor: istemci, bir etmeni uç noktaya emanet etmeden önce doğrulamaya harcama yapıyor.
Operasyonel güvenlikAraç çağrılarını yerel olarak yürüten bir etmen harness’ı, operatörün günler önce çaldığı bir uç noktaya yöneltildi ve kendi ana makinesinden gelen araç sonuçlarını o uç noktaya geri gönderdi.Operatör ele geçirilmiş altyapıyı güvenilir sayıyor; bu riski tersine çeviriyor: çalınmış uç noktayı kim denetliyorsa etmeni çalıştıran makineye uzanabilir.
AltyapıAS152320’nin iki farklı /24’ünde yer alan iki adres her iki günde de dakikalar içinde dönüşümlü çalışıyor ve farklı bir ağdaki üçüncü bir adres üç gün önce aynı türden araç sonucu göndermiş.Tüketim havuzu küçük ve önekler arasında kasıtlı olarak bölünmüş; istemci tarafı araç yürütme davranışı ise bu operatöre özgü değil, bu nedenle tek bir aktörün imzası olarak değil bir sınıf olarak avlanmalı.
HatalarGövdesi base64 kodlu bir PKCS#8 özel anahtar öneki olan bir taşıyıcı jeton, satıcı varsayılanı anahtarla birlikte gateway’de sunuldu.Kimlik bilgileri, tür denetimi yapılmaksızın toplanmış bir listeden yeniden oynatılıyor; bu da hedef başına dikkatli anahtar yönetimi yerine yukarı akışta toplu hasat yapıldığını düşündürüyor.

Bunu nasıl test ettik

AçıklamaTestSonuçKarar
Harness oturumları, aşağı akıştaki bir alıcı değil, anahtarı üreten aynı operatöre aitÜretilen anahtar değeri ve harness kullanıcı aracısı üzerinden kohort pivotları; kaynak kümeleri, otonom sistemler ve zaman pencereleri karşılaştırılıyorFarklı şeyleri sayan iki ayrı kohort. Anahtar kohortu: 20 Eylül’de 16 dakika boyunca sk-0af475b8… sunan 57 olay; 2 /24 içinde 2 kaynak, 1 kuruluş (AS152320). Kullanıcı aracısı kohortu: 21 Eylül’de 11 dakika boyunca deepseek-harness/0.1.5-rc.2 taşıyan 60 olay; aynı 2 kaynaktan. 15 ile 22 Eylül 2026 arasında üçüncü bir kaynak bu işaretlerden hiçbirini sunmadı. Üretilen anahtarın sunulmalarından türetilen bir kaynak kümesi anahtarı üreten isteği içeremez, bu nedenle aynı kaynak kümeleri yeniden satılmış bir anahtarı tüketen üçüncü taraf bir harness kullanıcısını dışlar ama sk-0af475b8… değerini kimin ürettiği konusunda hiçbir şey söylemez.Sonuçsuz
Bu oturumları klavye başında bir insan yürütüyordu103.85.74[.]25 adresi üzerinde oturum tempo aritmetiğiKarışık karar: 31.2 saatte 78 olay ve 106 saniyelik etkinlik, patlama içi ortanca boşluk 3229 ms, ölçülebilir 38 boşluğun 26’sı saniyede on karakterin izin verdiğinden daha hızlı ve 1999 karakterlik bir istem 0.01 s içinde iletildiSonuçsuz
deepseek-harness kullanıcı aracısı, meşru bir geliştirici aracı gibi görünmek için seçilmiş bir taklitAtıfta bulunulan projenin var olduğunu ve gözlenen davranışın belgelenmiş tasarımıyla örtüştüğünü denetle, ayrıca bu dizeyi kaç kaynağın sunduğuna bakProje gerçek ve model bağdaştırıcıları yapılandırılabilir bir temel URL alıyor; gözlenen turlar beceri iskeleti taşıyor ve araç sonuçlarını konuşma içinde geri gönderiyor, bu da bir HTTP tarayıcısından çok bir eklenti harness’ıyla örtüşüyor; 15 ile 22 Eylül 2026 arasında bu dizeyi yalnızca 2 kaynak sunduSonuçsuz
Oturum, uç nokta arıza verdiği veya zaman aşımına uğradığı için sona erdiOturumun sonunda bir hata veya boşluk ara103.85.74[.]25 adresinden gelen oturum 11:34:45 UTC’ye kadar sürüyor ve kanıtlarda bir hatayla sona erdiğini gösteren hiçbir şey yok; yokluk kanıt değildirSonuçsuz

Sayılarla

Sensör telemetrisinden ve zenginleştirmeden otomatik olarak ölçüldü, tahmin edilmedi.

  • Tempo. 29 patlama boyunca 31.2 h içinde 78 komut: 106 s etkin, 31.1 h boşta. Bir patlama içindeki ortanca boşluk 3229 ms (49 boşluk üzerinden en az 0 ms, en çok 4924 ms). Karar karışık: oturum ne betikli testi ne de etkileşimli testi karşılıyor, bu nedenle birine zorlanmak yerine olduğu gibi raporlanıyor.
  • Araç kohortu (ja4h). ge11nn060000_7f7bfeb0a491_000000000000_000000000000: 1 gün boyunca 2 barındırma sağlayıcısında, 2 /24 içinde 2 kaynak: paylaşılan araç seti, yaygın olarak konuşlandırılmış.
  • Araç kohortu (ja4h). po11nn080000_3d0e84a9a84f_000000000000_000000000000: 4 gün boyunca 3 barındırma sağlayıcısında, 4 /24 içinde 4 kaynak: paylaşılan araç seti, yaygın olarak konuşlandırılmış.
  • Altyapı. Bu /24, 1 etkin kaynak barındırıyor: paylaşılan bir havuza dair iz yok.
  • VirusTotal ilişkileri. Adres, HK’de GOALNOW NETWORK TECHNOLOGY CO., LIMITED ile birlikte yer alıyor. 1/89 motor adresin kendisini kötücül veya şüpheli olarak niteliyor. Adres, döndürülen kayıtlarda 1 ana makine adına çözümlenmiş; bunların en yenisi 2019-03-27 tarihli xxhcj[.]cn kaydıdır.

İhlal göstergeleri

Aşağıdaki 3 ağ göstergesi etkisizleştirilmiştir; yollar gözlendiği gibi verilmiştir; ASN satırı olduğu gibi bırakılmıştır.

Ağ

GöstergeBağlam
103.85.74[.]25AS152320 GOALNOW (Hong Kong); üretilen anahtarı sundu ve deepseek-harness istemcisini çalıştırdı
203.175.15[.]28AS152320 GOALNOW (Hong Kong); aynı havuzun ikinci adresi, aynı anahtar ve aynı harness kullanıcı aracısı
188.239.18[.]10918 Eylül’de farklı bir anahtar soy zinciriyle aynı türden araç sonucu gönderen ayrı adres
AS152320GOALNOW NETWORK TECHNOLOGY CO. (Hong Kong); her iki tüketim adresi de burada yer alıyor

Ana makine artefaktları

GöstergeBağlam
sk-0af475b8…sensör gateway’inde LiteLLM yönetim anahtarı yolu üzerinden üretilen ve her iki AS152320 adresi tarafından yeniden kullanılan sanal anahtar
deepseek-harness/0.1.5-rc.2 (+https://github.com/deepseek-ai/deepseek-harness)gateway’i süren etmen çerçevesinin kullanıcı aracısı; 15 ile 22 Eylül 2026 arasında 2 kaynak, ikisi de AS152320 içinde
sk-MIIJQQIB…gateway’de sunulan ve gövdesi base64 kodlu bir PKCS#8 özel anahtar öneki olan taşıyıcı jeton, hasat edilmiş bir kimlik bilgisi listesinin yeniden oynatılmasıyla tutarlı

Tespit

Sigma

İzin listesinde olmayan bir LLM uç noktasına yönelen etmen harness kullanıcı aracısı (aday).

title: Agent harness user agent toward a non-allowlisted LLM endpoint
status: experimental
logsource:
  category: proxy
detection:
  selection_ua:
    c-useragent|contains:
      - 'deepseek-harness/'
  selection_path:
    cs-uri-stem|contains:
      - '/v1/chat/completions'
      - '/v1/models'
  filter_allowlisted:
    cs-host|contains:
      - 'api.deepseek.com'
      - 'api.openai.com'
  condition: selection_ua and selection_path and not filter_allowlisted
falsepositives:
  - Developers legitimately evaluating self-hosted or third-party model endpoints
  - Internal model gateways not present in the allowlist
level: medium

Tespit mantığı

  • LiteLLM sanal anahtarının, onu üreten ağdan farklı bir ağdan sunulması (ağ, aday). POST /key/generate (ya da herhangi bir yönetim anahtarı üretme yolu) ile döndürülen anahtar değerinin /v1/chat/completions üzerindeki sonraki sunulmalarını ilişkilendirin. Üretim kaynağı adresiyle tüketim kaynağı adresi farklı otonom sistemlerde olduğunda ya da tüketen adres, gateway’e karşı önceden geçmişi bulunmayan bir ağdan üretim sonrası bir saat içinde ortaya çıktığında uyarı üretin. Bu, gateway’in her istekle birlikte anahtar kimliğini veya anahtarın bir özetini günlüklemesini gerektirir.
  • Bir çıkarım uç noktasına karşı model doğruluğu bataryası (davranışsal, aday). İnternete açık bir çıkarım uç noktasında, esaslı herhangi bir istekten önce bir dakikanın altında birkaç tek jetonluk yanıt istemi, birbirinin aynısı ‘Reply with exactly: X’ sondaları, küçük aritmetik, bir kelimede harf sayımı, dize ters çevirme ve tek kelimelik coğrafya soruları gönderen bir oturumu işaretleyin. Bu, uç noktanın gerçek bir model olduğunu denetleyen bir çağırandır ve üretim gateway’inde normal kullanıcı trafiği değildir.
  • Sabitlenmemiş bir temel URL’den araç çağrıları yürüten etmen harness’ı (ana makine, aday). Geliştirici ve derleme ana makinelerinde, bir etmen harness süreci (deepseek-harness, dsh veya eşdeğeri) onaylı izin listesinin dışına işaret eden bir model temel URL ortam değişkeniyle başlatıldığında ve bu süreç, o temel URL’ye giden bir HTTPS isteğinin ardından saniyeler içinde kabuk veya dosya okuma araçları doğurduğunda uyarı üretin.

Giderme

  • Satıcı varsayılanı sk-1234 olan veya ona benzeyen her LiteLLM ana anahtarını döndürün ve o anahtar etkinken üretilmiş sanal anahtarları iptal edin.
  • LiteLLM yönetim yollarını (/key/generate, /key/list, /config/yaml, /user/list) bir iç ağa veya kimlik doğrulamalı bir yönetim düzlemine kısıtlayın, asla /v1/chat/completions ile aynı dinleyiciye bırakmayın.
  • Etmen harness temel URL’lerini denetiminizdeki uç noktalardan oluşan bir izin listesine sabitleyin ve varsayılan profillere güvenmek yerine araç yürütmesi için onay zorunlu kılın.
  • Her çıkarım isteğiyle birlikte anahtar tanımlayıcısını ve kaynak ağı günlükleyin, böylece üreticinin ağı dışındaki bir ağdan kullanılan bir anahtar saptanabilir olsun.
  • Model yanıtlarını güvenilmez girdi olarak ele alın: bir uç noktadan gelen araç çağrısı, o uç noktayı denetleyen kişiden gelen bir talimattır.

MITRE ATT&CK eşlemesi

TaktikTeknikGözlem
Savunmadan kaçınmaT1078.001 Valid Accounts: Default AccountsSatıcı varsayılanı LiteLLM ana anahtarı sk-1234, daha sonra üretilen sanal anahtarı kullanan aynı adres tarafından gateway’de sunuldu.
Kimlik bilgisi erişimiT1528 Steal Application Access TokenYönetim yolu üzerinden üretilen sanal anahtar sk-0af475b8…, aynı otonom sistemdeki iki adresten yeniden kullanıldı.
EtkiT1496 Resource Hijacking21 Eylül’de on bir dakika boyunca etmen harness kullanıcı aracısını taşıyan altmış gateway isteği, operatörün bedelini ödemediği bir anahtar üzerinden çıkarım tüketti.
YürütmeT1059 Command and Scripting InterpreterÇağıran ana makine, araç sonuçlarını üç adrese dağılmış biçimde on bir kez uç noktaya geri gönderdi; bu, uç noktasının araç çağrılarını yerel olarak çalıştıran bir harness’ın örüntüsüdür.

Kaynaklar

Yöntem ve analist notları

Gözlem, 18 ile 21 Eylül 2026 arasında gateway’lerimizden birine yönelen üç adresten oluşuyor. İstemler gönderildiği gibi alıntılanmış, uzun olanlar kısaltılmıştır; harness’ın kimin adına çalıştığı ve her çağrının çağıranın ana makinesinde ne yaptığı bilinmiyor. 20 Eylül’deki anahtar üretimiyle bağlantı, herhangi bir dış doğrulamaya değil, anahtar değerine ilişkin kendi kayıtlarımıza dayanıyor.

Hâlâ açık olanlar:

  • Harness’ın kimin adına çalıştığı.
  • Harness’ın araç onayları kapalı halde mi yoksa her çağrıyı onaylayan bir operatörle mi çalıştığı.
  • base64 kodlu PKCS#8 taşıyıcı jetonunun hangi sisteme ait olduğu ve nereden hasat edildiği.

Sorular veya düzeltmeler: [email protected].

How to cite
Kinryū Labs (2026). Çalınmış Bir LLM Gateway'ine Yönelen DeepSeek Harness: Araç Çağrıları Çağıranın Makinesinde Çalışıyor. https://kinryu.sh/tr/reports/deepseek-harness-stolen-gateway-tool-calls/