telehack.com ============ .. raw:: html .. raw:: html

telehack.com:23

Telnet Fingerprint ------------------ :ref:`5edc5f8ed7a88697... ` *This fingerprint is unique to this server.* **Options offered by server**: ``ECHO``, ``SGA`` **Options requested from client**: ``BINARY``, ``NAWS``, ``NEW_ENVIRON``, ``TTYPE`` **Data source**: `5edc5f8ed7a88697/e76258a76f003d08.json `_ The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata. .. code-block:: json { "server-probe": { "fingerprint": "5edc5f8ed7a88697", "fingerprint-data": { "offered-options": [ "ECHO", "SGA" ], "probed-protocol": "server", "refused-options": [ "AUTHENTICATION", "BINARY", "BM", "CHARSET", "COM_PORT", "DET", "ENCRYPT", "EOR", "FORWARD_X", "KERMIT", "NAMS", "NAOCRD", "NAOFFD", "NAOHTD", "NAOHTS", "NAOL", "NAOLFD", "NAOP", "NAOVTD", "NAOVTS", "PRAGMA_HEARTBEAT", "PRAGMA_LOGON", "RCP", "RCTE", "RSP", "SEND_URL", "SSPI_LOGON", "STATUS", "SUPDUP", "SUPDUPOUTPUT", "SUPPRESS_LOCAL_ECHO", "TLS", "TN3270E", "TTYLOC", "VT3270REGIME", "X3PAD", "XAUTH" ], "requested-options": [ "BINARY", "NAWS", "NEW_ENVIRON", "TTYPE" ] }, "session_data": { "banner_after_return": "lable after login. Type HELP for a detailed command list.\r\nType NEWUSER to create an account. Press control-C to interrupt any command.\r\n.", "banner_before_return": "\r\nConnected to TELEHACK port 64\r\n\r\nIt is 11:38 pm on Saturday, February 7, 2026 in Mountain View, California, USA.\r\nThere are 139 local users. There are 26648 hosts on the network.\r\n\r\nMay the command line live forever.\r\n\r\nCommand, one of the following:\r\n 2048 ? a2 ac advent aquarium\r\n basic bf c8 cal calc callsign\r\n cat clear clock date delta diff\r\n dir echo exit factor figlet finger\r\n fnord geoip gif head help ipaddr\r\n joke liff login mac md5 more\r\n netstat newuser notes ping pong primes\r\n rain rockets roll rot13 salvo starwars\r\n sudoku tail today traceroute typespeed uptime\r\n users uumap uupath uuplot weather zork\r\n\r\nMore commands avai", "encoding": "ascii", "option_states": { "environ_requested": [ { "name": "*", "type": "VAR" }, { "name": "*", "type": "USERVAR" } ], "server_offered": { "ECHO": true, "SGA": true }, "server_requested": { "0x24": false, "BINARY": true, "NAWS": true, "NEW_ENVIRON": true, "TTYPE": true } }, "timing": { "probe": 0.508439302444458, "total": 1.0109121799468994 } } }, "sessions": [ { "connected": "2026-02-08T07:38:25.531547+00:00", "host": "telehack.com", "ip": "64.13.139.230", "port": 23 } ] } Connection Log -------------- Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server. .. code-block:: text DEBUG client.py:770 Fingerprint client: host=telehack.com port=23 INFO client_base.py:174 Connected to DEBUG stream_writer.py:697 recv IAC WILL SGA DEBUG stream_writer.py:713 WILL SGA unsolicited DEBUG stream_writer.py:1869 handle_will(SGA) DEBUG stream_writer.py:3036 pending_option[DO + SGA] = True DEBUG stream_writer.py:938 send IAC DO SGA DEBUG stream_writer.py:3036 remote_option[SGA] = True DEBUG stream_writer.py:3036 pending_option[DO + SGA] = False DEBUG stream_writer.py:697 recv IAC WILL ECHO DEBUG stream_writer.py:713 WILL ECHO unsolicited DEBUG stream_writer.py:1869 handle_will(ECHO) DEBUG stream_writer.py:3036 pending_option[DO + ECHO] = True DEBUG stream_writer.py:938 send IAC DO ECHO DEBUG stream_writer.py:3036 remote_option[ECHO] = True DEBUG stream_writer.py:3036 pending_option[DO + ECHO] = False DEBUG stream_writer.py:697 recv IAC DO TTYPE DEBUG stream_writer.py:1739 handle_do(TTYPE) DEBUG stream_writer.py:3036 pending_option[WILL + TTYPE] = True DEBUG stream_writer.py:938 send IAC WILL TTYPE DEBUG stream_writer.py:3036 pending_option[SB + TTYPE] = True DEBUG stream_writer.py:3036 local_option[TTYPE] = True DEBUG stream_writer.py:3036 pending_option[WILL + TTYPE] = False DEBUG stream_writer.py:697 recv IAC DO NAWS DEBUG stream_writer.py:1739 handle_do(NAWS) DEBUG stream_writer.py:3036 pending_option[WILL + NAWS] = True DEBUG stream_writer.py:938 send IAC WILL NAWS DEBUG stream_writer.py:2306 send IAC SB NAWS (rows=25, cols=80) IAC SE DEBUG stream_writer.py:3036 local_option[NAWS] = True DEBUG stream_writer.py:3036 pending_option[WILL + NAWS] = False DEBUG stream_writer.py:697 recv IAC DO b'$' DEBUG stream_writer.py:1739 handle_do(b'$') DEBUG stream_writer.py:1817 DO b'$' not supported. DEBUG stream_writer.py:3036 local_option[b'$'] = False DEBUG stream_writer.py:938 send IAC WONT b'$' DEBUG stream_writer.py:697 recv IAC DO NEW_ENVIRON DEBUG stream_writer.py:1739 handle_do(NEW_ENVIRON) DEBUG stream_writer.py:3036 pending_option[WILL + NEW_ENVIRON] = True DEBUG stream_writer.py:938 send IAC WILL NEW_ENVIRON DEBUG stream_writer.py:3036 pending_option[SB + NEW_ENVIRON] = True DEBUG stream_writer.py:3036 local_option[NEW_ENVIRON] = True DEBUG stream_writer.py:3036 pending_option[WILL + NEW_ENVIRON] = False DEBUG stream_writer.py:697 recv IAC DO BINARY DEBUG stream_writer.py:1739 handle_do(BINARY) DEBUG stream_writer.py:3036 pending_option[WILL + BINARY] = True DEBUG stream_writer.py:938 send IAC WILL BINARY DEBUG stream_writer.py:3036 local_option[BINARY] = True DEBUG stream_writer.py:3036 pending_option[WILL + BINARY] = False DEBUG stream_writer.py:689 begin sub-negotiation SB TTYPE DEBUG stream_writer.py:676 sub-negotiation cmd TTYPE SE completion byte DEBUG stream_writer.py:3036 pending_option[SB + TTYPE] = False DEBUG stream_writer.py:2203 recv TTYPE SEND: b'' DEBUG stream_writer.py:2214 send IAC SB TTYPE IS b'xterm-256color' IAC SE DEBUG stream_writer.py:689 begin sub-negotiation SB NEW_ENVIRON DEBUG stream_writer.py:676 sub-negotiation cmd NEW_ENVIRON SE completion byte DEBUG stream_writer.py:3036 pending_option[SB + NEW_ENVIRON] = False DEBUG stream_writer.py:2249 recv NEW_ENVIRON SEND (all) DEBUG stream_writer.py:2272 env send: ='' DEBUG client_base.py:460 negotiation complete after 0.62s. DEBUG stream_writer.py:3036 pending_option[DO + BINARY] = True DEBUG stream_writer.py:938 send IAC DO BINARY DEBUG stream_writer.py:3036 pending_option[DO + STATUS] = True DEBUG stream_writer.py:938 send IAC DO STATUS DEBUG stream_writer.py:3036 pending_option[DO + CHARSET] = True DEBUG stream_writer.py:938 send IAC DO CHARSET DEBUG stream_writer.py:3036 pending_option[DO + EOR] = True DEBUG stream_writer.py:938 send IAC DO EOR DEBUG stream_writer.py:3036 pending_option[DO + COM_PORT_OPTION] = True DEBUG stream_writer.py:938 send IAC DO COM_PORT_OPTION DEBUG stream_writer.py:3036 pending_option[DO + GMCP] = True DEBUG stream_writer.py:938 send IAC DO GMCP DEBUG stream_writer.py:3036 pending_option[DO + MSDP] = True DEBUG stream_writer.py:938 send IAC DO MSDP DEBUG stream_writer.py:3036 pending_option[DO + MSSP] = True DEBUG stream_writer.py:938 send IAC DO MSSP DEBUG stream_writer.py:3036 pending_option[DO + MSP] = True DEBUG stream_writer.py:938 send IAC DO MSP DEBUG stream_writer.py:3036 pending_option[DO + MXP] = True DEBUG stream_writer.py:938 send IAC DO MXP DEBUG stream_writer.py:3036 pending_option[DO + ZMP] = True DEBUG stream_writer.py:938 send IAC DO ZMP DEBUG stream_writer.py:3036 pending_option[DO + AARDWOLF] = True DEBUG stream_writer.py:938 send IAC DO AARDWOLF DEBUG stream_writer.py:3036 pending_option[DO + ATCP] = True DEBUG stream_writer.py:938 send IAC DO ATCP DEBUG stream_writer.py:697 recv IAC WONT STATUS DEBUG stream_writer.py:1991 handle_wont(STATUS) DEBUG stream_writer.py:3036 remote_option[STATUS] = False DEBUG stream_writer.py:3036 pending_option[DO + STATUS] = False DEBUG stream_writer.py:697 recv IAC WONT CHARSET DEBUG stream_writer.py:1991 handle_wont(CHARSET) DEBUG stream_writer.py:3036 remote_option[CHARSET] = False DEBUG stream_writer.py:3036 pending_option[DO + CHARSET] = False DEBUG stream_writer.py:697 recv IAC WONT EOR DEBUG stream_writer.py:1991 handle_wont(EOR) DEBUG stream_writer.py:3036 remote_option[EOR] = False DEBUG stream_writer.py:3036 pending_option[DO + EOR] = False DEBUG stream_writer.py:697 recv IAC WONT COM_PORT_OPTION DEBUG stream_writer.py:1991 handle_wont(COM_PORT_OPTION) DEBUG stream_writer.py:3036 remote_option[COM_PORT_OPTION] = False DEBUG stream_writer.py:3036 pending_option[DO + COM_PORT_OPTION] = False DEBUG stream_writer.py:697 recv IAC WONT GMCP DEBUG stream_writer.py:1991 handle_wont(GMCP) DEBUG stream_writer.py:3036 remote_option[GMCP] = False DEBUG stream_writer.py:3036 pending_option[DO + GMCP] = False DEBUG stream_writer.py:697 recv IAC WONT MSDP DEBUG stream_writer.py:1991 handle_wont(MSDP) DEBUG stream_writer.py:3036 remote_option[MSDP] = False DEBUG stream_writer.py:3036 pending_option[DO + MSDP] = False DEBUG stream_writer.py:697 recv IAC WONT MSSP DEBUG stream_writer.py:1991 handle_wont(MSSP) DEBUG stream_writer.py:3036 remote_option[MSSP] = False DEBUG stream_writer.py:3036 pending_option[DO + MSSP] = False DEBUG stream_writer.py:697 recv IAC WONT MSP DEBUG stream_writer.py:1991 handle_wont(MSP) DEBUG stream_writer.py:3036 remote_option[MSP] = False DEBUG stream_writer.py:3036 pending_option[DO + MSP] = False DEBUG stream_writer.py:697 recv IAC WONT MXP DEBUG stream_writer.py:1991 handle_wont(MXP) DEBUG stream_writer.py:3036 remote_option[MXP] = False DEBUG stream_writer.py:3036 pending_option[DO + MXP] = False DEBUG stream_writer.py:697 recv IAC WONT ZMP DEBUG stream_writer.py:1991 handle_wont(ZMP) DEBUG stream_writer.py:3036 remote_option[ZMP] = False DEBUG stream_writer.py:3036 pending_option[DO + ZMP] = False DEBUG stream_writer.py:697 recv IAC WONT AARDWOLF DEBUG stream_writer.py:1991 handle_wont(AARDWOLF) DEBUG stream_writer.py:3036 remote_option[AARDWOLF] = False DEBUG stream_writer.py:3036 pending_option[DO + AARDWOLF] = False DEBUG stream_writer.py:697 recv IAC WONT ATCP DEBUG stream_writer.py:1991 handle_wont(ATCP) DEBUG stream_writer.py:3036 remote_option[ATCP] = False DEBUG stream_writer.py:3036 pending_option[DO + ATCP] = False INFO fingerprinting.py:737 new server fingerprint 01ae1fbbd8c9b4da INFO client_base.py:105 Connection closed to *Generated by* `telnetlib3-fingerprint `_ .. code-block:: shell telnetlib3-fingerprint --loglevel=debug telehack.com 23