Bir Telnet sunucusu, protokol üzerinden kullanılan istemciyi algılayabilir mi?


9

Web tarayıcıları, diğer şeylerin yanı sıra, User-Agentdize gönderirken, Telnet protokolü ona bağlanan istemci hakkında herhangi bir şey belirleme yöntemine benzer mi? İŞLETİM SİSTEMİ? Belirli Telnet istemcisi mi? Vb.

Yanıtlar:


14

User-Agent yoktur, ancak istemci bilgilerini göndermek için birkaç Telnet protokolü seçeneği vardır:

  • TERMINAL TYPE- kullanılan terminal tipini gösterir (örn. Xterm, urxvt, screen-256color ...) Bir şeyleri bozmadan bundan kurtulamazsınız. NAWSPencere boyutu (sütunlar × satırlar) rapor eden için de aynı şey geçerlidir .

  • OLD-ENVIRONve NEW-ENVIRON- bazı spesifik ortam değişkenlerini ortaya çıkarabilir; bazı istemciler de FQDN'lerini sahte $ DISPLAY değişkeninde gösterir. Yapılandırılmış sistem yerel ayarınızı ($ LANG, $ LC_ *) veya saat dilimini ($ TZ) göndermek de nadir değildir.

  • XDISPLOC - yukarıdakine benzer şekilde, bazı istemciler FQDN'nizi X11 görüntüleme konumu olarak gönderir.

  • Kimlik doğrulama özelliklerinden herhangi biri etkinleştirilirse, işletim sistemi kullanıcı adınızı gösterebilirler.

  • Son olarak, tanınan tüm seçenekler uygulamalar arasında değişir ve kaba bir Panopticlick tarzı parmak izi olarak kullanılabilir.

don $ echo $ DISPLAY
: 0

don $ telnet
telnet> seçenekleri ayarla
Seçenek işleme gösterecektir.
telnet> açık m-net.arbornet.org
162.202.67.157 çalışıyor ...
M-net.arbornet.org sitesine bağlandı.
Kaçış karakteri '^]'.
GÖNDERİLDİ
GÖNDERİLEN TERMİNAL TİPİ
GÖNDERİLECEK
GÖNDERİLECEK TSPEED
GÖNDERİLECEK
GÖNDERİLECEK LİNEMODA
GÖNDERİLEN YENİ-ÇEVRE
GÖNDERİLDİ DURUM
GÖNDERİLECEK XDISPLOC
RCVD DO DOĞRULAMA
GÖNDERİLMEYECEK DOĞRULAMA
RCVD YÜKSELMEYE BAŞLAYACAK
RCVD DO TERMİNAL TİPİ
RCVD NA
GÖNDERİLEN IAC SB NAWS 0 95 (95) 0 46 (46)
RCVD DO TSPEED
RCVD YAPIŞTIRMA
RCVD DO LİNEMODU
GÖNDERİLEN IAC SB LİNEMOD SLC SENKO NOSUPPORT 0; IP DEĞİŞKEN | FLUSHIN | FLUSHOUT 3; AO DEĞİŞKEN 15; AYT NOSUPPORT 0; ABORT DEĞİŞKEN | FLUSHIN | FLUSHOUT 28; EOF DEĞİŞKEN 4; SUSP DEĞİŞKEN | FLUSHIN 26; EC DEĞİŞKEN 127; EL DEĞİŞKEN 21; EW DEĞİŞKEN 23; RP DEĞİŞKEN 18; LNEXT DEĞİŞKEN 22; XON DEĞİŞKEN 17; XOFF DEĞİŞKEN 19; FORW1 NOSUPPORT 0; FORW2 NOSUPPORT 0;
GÖNDERİLDİ
RCVD YENİ ÇEVREYİ YAP
RCVD DURUM OLACAK
RCVD DO XDISPLOC
RCVD ŞİFRELEYECEK
GÖNDERİLEN DONT ŞİFRESİ
ALINDI DO ESKİ-ENVIRON 
alışkanlık ESKİ-Environ GÖNDERİLEN
RCVD IAC SB TERMİNAL HIZI GÖNDER
GÖNDERİLEN IAC SB TERMİNAL HIZI 38400,38400
RCVD IAC SB X-EKRAN-KONUM GÖNDER
GÖNDERİLEN IAC SB X-EKRAN-KONUM "frost.nullroute.eu.org:0"
RCVD IAC SB YENİ ÇEVRE GÖNDER 
GÖNDERİLEN IAC SB NEW-ENVIRON VAR "EKRAN" DEĞERİ "frost.nullroute.eu.org:0"
RCVD IAC SB TERMİNAL TİPİ GÖNDER
GÖNDERİLEN IAC SB TERMİNAL TİPİ "XTERM-256COLOR"
RCVD DO ECHO
GÖNDERİLMEYECEK ECHO
RCVD ECHO OLACAK
GÖNDERİLDİ
RCVD IAC SB TOGGLE-FLOW-CONTROL KAPALI
RCVD IAC SB TOGGLE-FLOW-CONTROL RESTART-XON
RCVD DONT LİNEMODU
GÖNDERİLMEYEN LİNEMOD
RCVD IAC SB LİNEMOD SLC IP DEĞİŞKEN | ACK | FLUSHIN | FLUSHOUT 3; AO DEĞİŞKEN | ACK 15; ABORT DEĞİŞKEN | ACK | FLUSHIN | FLUSHOUT 28; EOF DEĞİŞKEN | ACK 4; SUSP DEĞİŞKEN | ACK | FLUSHIN 26; EC DEĞİŞKEN | ACK 127; EL DEĞİŞKEN ACK 21; EW DEĞİŞKEN | ACK 23; RP DEĞİŞKEN | ACK 18; LNEXT DEĞİŞKEN | ACK 22; XON DEĞİŞKEN | ACK 17; XOFF DEĞİŞKEN | ACK 19;

FreeBSD / i386 (m-net.arbornet.org) (Puan / 5)

oturum aç: 

2
mükemmel cevap. man telnetListelenen tek hatayı okuduğumda : The source code is not comprehensible. Herkesin C dışında bir şeyde güncel bir müşteri yazıp yazmadığını merak ediyorum
Thufir

3
Çoğu sunucuda olduğu gibi protokolün kendisi de modası geçmiş olduğu için bu çok işe yaramazdı ... SSHv2 modern yedek. // ayrıca, diğerleri arasında "telnet" adı verilen birkaç farklı istemci olduğunu unutmayın - inetutils-telnet ve netkit-telnet.
user1686

1
Gerçi, ilgili bir not, SSH yapar bir kullanıcı aracısı dizesi var.
user1686

1
@grawity telnet, örneğin teşhis için hala birçok kullanım alanı görüyor. TLS'nin çoğalması (örneğin OpenSSL lehine -connect) sayesinde biraz daha az yaygınlaşıyor , ancak telnet olmayan bir sunucuya karşı çağrıldığında telnet'in verdiği gibi makul derecede çıplak kemikli metin bağlantısı için hala birçok geçerli kullanım var. Tabii ki, telnet sadece yazılım değil, bir protokol; biraz web tarayıcısı HTTP çağırmak gibi.
CVn

1
@ MichaelKjörling Ancak telnet komutu ağ iletişiminde hata ayıklamak için kullanıldığında, aslında telnet protokolünü konuşmuyor. Telnet istemcisi ile sadece hangi port numarasının bağlanacağını söyleyerek davranış değiştirmesine neden olduğunu test ettim.
kasperd
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.