В то время как веб-браузеры отправляют, помимо прочего, строку User-Agent
, есть ли у протокола Telnet аналогичный метод определения чего-либо о клиенте, подключающемся к нему? ОПЕРАЦИОННЫЕ СИСТЕМЫ? Конкретный клиент Telnet? И т.п.
1 ответ
Там нет User-Agent, но есть несколько вариантов протокола Telnet для отправки информации о клиенте:
TERMINAL TYPE
- показывает используемый тип терминала (например, xterm, urxvt, screen-256color ...) Вы не можете действительно избавиться от этого, не ломая вещи. То же самое касаетсяNAWS
который сообщает размер окна (столбцы × строки).OLD-ENVIRON
иNEW-ENVIRON
- могут выявить некоторые специфические переменные среды; некоторые клиенты также показывают свое полное доменное имя в фиктивной переменной $ DISPLAY. Отправка настроенного языкового стандарта системы ($ LANG, $ LC_ *) или часового пояса ($ TZ) также не редкость.XDISPLOC
- аналогично вышеописанному, некоторые клиенты отправляют ваше полное доменное имя в качестве местоположения дисплея X11.Если какие-либо функции аутентификации включены, они могут показать имя пользователя вашей ОС.
Наконец, весь набор распознанных опций варьируется в зависимости от реализации и может использоваться в качестве грубого отпечатка пальца в стиле Panopticlick.
frost$ echo $DISPLAY :0 frost$ telnet telnet> set options Will show option processing. telnet> open m-net.arbornet.org Trying 162.202.67.157... Connected to m-net.arbornet.org. Escape character is '^]'. SENT DO SUPPRESS GO AHEAD SENT WILL TERMINAL TYPE SENT WILL NAWS SENT WILL TSPEED SENT WILL LFLOW SENT WILL LINEMODE SENT WILL NEW-ENVIRON SENT DO STATUS SENT WILL XDISPLOC RCVD DO AUTHENTICATION SENT WONT AUTHENTICATION RCVD WILL SUPPRESS GO AHEAD RCVD DO TERMINAL TYPE RCVD DO NAWS SENT IAC SB NAWS 0 95 (95) 0 46 (46) RCVD DO TSPEED RCVD DO LFLOW RCVD DO LINEMODE SENT IAC SB LINEMODE SLC SYNCH NOSUPPORT 0; IP VARIABLE|FLUSHIN|FLUSHOUT 3; AO VARIABLE 15; AYT NOSUPPORT 0; ABORT VARIABLE|FLUSHIN|FLUSHOUT 28; EOF VARIABLE 4; SUSP VARIABLE|FLUSHIN 26; EC VARIABLE 127; EL VARIABLE 21; EW VARIABLE 23; RP VARIABLE 18; LNEXT VARIABLE 22; XON VARIABLE 17; XOFF VARIABLE 19; FORW1 NOSUPPORT 0; FORW2 NOSUPPORT 0; SENT DO SUPPRESS GO AHEAD RCVD DO NEW-ENVIRON RCVD WILL STATUS RCVD DO XDISPLOC RCVD WILL ENCRYPT SENT DONT ENCRYPT RCVD DO OLD-ENVIRON SENT WONT OLD-ENVIRON RCVD IAC SB TERMINAL-SPEED SEND SENT IAC SB TERMINAL-SPEED IS 38400,38400 RCVD IAC SB X-DISPLAY-LOCATION SEND SENT IAC SB X-DISPLAY-LOCATION IS "frost.nullroute.eu.org:0" RCVD IAC SB NEW-ENVIRON SEND SENT IAC SB NEW-ENVIRON IS VAR "DISPLAY" VALUE "frost.nullroute.eu.org:0" RCVD IAC SB TERMINAL-TYPE SEND SENT IAC SB TERMINAL-TYPE IS "XTERM-256COLOR" RCVD DO ECHO SENT WONT ECHO RCVD WILL ECHO SENT DO ECHO RCVD IAC SB TOGGLE-FLOW-CONTROL OFF RCVD IAC SB TOGGLE-FLOW-CONTROL RESTART-XON RCVD DONT LINEMODE SENT WONT LINEMODE RCVD IAC SB LINEMODE SLC IP VARIABLE|ACK|FLUSHIN|FLUSHOUT 3; AO VARIABLE|ACK 15; ABORT VARIABLE|ACK|FLUSHIN|FLUSHOUT 28; EOF VARIABLE|ACK 4; SUSP VARIABLE|ACK|FLUSHIN 26; EC VARIABLE|ACK 127; EL VARIABLE|ACK 21; EW VARIABLE|ACK 23; RP VARIABLE|ACK 18; LNEXT VARIABLE|ACK 22; XON VARIABLE|ACK 17; XOFF VARIABLE|ACK 19; FreeBSD/i386 (m-net.arbornet.org) (pts/5) login: