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.