Как защитить порты TCP и UDP и почему некоторые из них опасны

На транспортном уровне модели TCP / IP у нас есть два типа протоколов: TCP и UDP. Оба они постоянно используются различными программами и протоколами прикладного уровня, такими как порт 80 и 443 для просмотра веб-страниц, порт 22 для протокола SSH или популярный порт 1194 для виртуальных частных сетей OpenVPN. Некоторые из этих портов весьма опасны, если мы не отфильтруем их правильно с помощью брандмауэр, потому что они могли проводить разные виды атак и даже взламывать наше оборудование. Сегодня в этой статье мы покажем вам, какие порты мы должны защищать, чтобы избежать проблем.

TCP и UDP порты

Что такое порты TCP и UDP?

TCP и UDP относятся к протоколу транспортного уровня, используемому для сквозной связи между двумя хостами, порты являются частью сегмента TCP или дейтаграммы UDP для правильной установки связи. Мы могли бы сказать, что «порты» - это что-то вроде «дверей» для определенной службы, независимо от того, используем ли мы TCP или UDP, поскольку оба протокола используют порты. Сами порты не опасны, порт является портом, и не имеет значения, является ли он портом 22 или портом 50505, что наиболее важно, так это использование, которое дается порту, опасно иметь порт, открытый для служба прикладного уровня, которая не защищена, потому что любой может подключиться к этой службе и использовать уязвимости или взломать нас напрямую. Конечно, всегда необходимо, чтобы если мы открыли порт для Интернета, мы контролировали трафик с помощью IDS / IPS для обнаружения возможных атак и обновляли программу, которая прослушивает этот порт.

Как в TCP, так и в UDP у нас есть в общей сложности 65535 доступных портов, у нас есть классификация в зависимости от используемого номера порта, поскольку некоторые порты обычно называются «известными», и они зарезервированы для определенных приложений, хотя есть много других портов. Они обычно используются различным программным обеспечением для связи как в локальной сети, так и через Интернет. У нас также есть зарегистрированные порты и временные порты.

Известные порты

Известные порты в диапазоне от порта 0 до 1023 регистрируются и назначаются Управлением по присвоению номеров Интернета (IANA). Например, в этом списке портов есть порт 20 для FTP-Data, порт 21 для FTP-Control, порт 22 для SSH, порт 23 для Telnet, порт 80 и 443 для Интернета (HTTP и HTTPS соответственно), а также почта. port среди многих других протоколов прикладного уровня.

Зарегистрированные порты

Зарегистрированные порты варьируются от порта 1024 до порта 49151. Основное отличие этих портов состоит в том, что разные организации могут делать запросы в IANA, чтобы предоставить им определенный порт по умолчанию, и он будет назначен для использования с определенным приложением. Эти зарегистрированные порты зарезервированы, и никакая другая организация не сможет зарегистрировать их снова, однако они обычно являются «частично зарезервированными», потому что, если организация прекращает их использовать, они могут быть повторно использованы другой компанией. Наглядным примером зарегистрированного порта является 3389, который используется для RDP-подключений к удаленному рабочему столу в Windows.

Эфемерные порты

Диапазон этих портов от 49152 до 65535, этот диапазон портов используется клиентскими программами, и они постоянно используются повторно. Этот диапазон портов обычно используется при передаче на известный или зарезервированный порт с другого устройства, такого как пассивный Интернет или FTP. Например, когда мы посещаем веб-сайт, порт назначения всегда будет 80 или 443, но порт источника (чтобы данные знали, как возвращаться) использует порт эпиметра.

Какие порты я должен особенно защищать?

Все порты, которые используются для установления удаленной связи, будь то для обмена файлами, удаленного управления через консоль и даже приложений удаленного рабочего стола, e-mail и другие службы, подверженные атакам, должны быть надлежащим образом защищены. Затем у вас есть список портов (TCP), которые вы должны защищать особенно, и закрывайте их, когда мы не собираемся его использовать, потому что в будущем возможно, что они уже используются, и мы забыли защитить их должным образом.

  • Порт 21: используется протоколом FTP для передачи файлов.
  • Порт 22: используется протоколом SSH для удаленного управления компьютерами.
  • Порт 23: используется протоколом Telnet для удаленного управления компьютерами (небезопасно)
  • Порты 80, 8080, 8088, 8888 и 443: мы должны закрыть все веб-ориентированные порты, если у нас нет веб-сервера, и если у нас есть, мы должны контролировать его должным образом, чтобы смягчить возможные веб-атаки, такие как атаки SQL-инъекций, XSS и другие.
  • Порт 4444: этот порт обычно используется троянами и вредоносными программами в целом, рекомендуется всегда блокировать его.
  • Порты 6660-6669: эти порты используются популярным IRC, если мы их не используем, мы не будем их открывать.
  • Порт 161 UDP: он используется протоколом SNMP для просмотра конфигурации и управления различным оборудованием, таким как маршрутизаторы, коммутаторы, а также серверы. Желательно закрыть его, если вы не собираетесь им пользоваться.
  • Порт 53 UDP: порт, используемый протоколом DNS, этот порт может использоваться для эксфильтрации информации в самих запросах DNS.

Конечно, все эти порты, которые мы объяснили, являются самыми простыми, но мы всегда должны следовать политике блокировки всего, кроме тех, которые используются, таким образом мы не забудем закрыть разные порты. Если мы заблокируем все (кроме тех, которые используются и разрешены), у нас будет хорошо защищенная система, так как наличие открытого порта - это первый шаг к вторжению.

Как мне правильно защитить порты?

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

Используемое программное обеспечение, открывающее сокет TCP или UDP, важно, чтобы оно было актуальным, мало полезно закрывать все порты, кроме одного, если служба, работающая на этом порту, не обновлена ​​и имеет недостатки безопасности. По этой причине так важно обновлять все программное обеспечение, всегда рекомендуется использовать программное обеспечение, которое все еще поддерживается, для получения различных обновлений.

Если для доступа к определенной службе требуется аутентификация, необходимо, чтобы учетные данные были надежными, по возможности используйте цифровые сертификаты или ключи SSH (если вы собираетесь аутентифицироваться на сервере SSH). Например, всегда рекомендуется закрывать порт 23 Telnet, потому что это небезопасный протокол, и поэтому его лучше не использовать ни при каких обстоятельствах.

Настоятельно рекомендуется отслеживать, какие порты TCP и UDP используются, чтобы обнаруживать возможные проблемы вторжений или заражения троянами. Важно исследовать любой странный трафик или порты, которые открыты, хотя этого не должно быть. Также очень важно знать, как определенная служба (прослушивающая определенный порт) ведет себя при нормальном использовании, чтобы идентифицировать необычное поведение.

Наконец, в дополнение к использованию брандмауэров для закрытия всех портов, которые мы не используем, также настоятельно рекомендуется использовать IDS / IPS для обнаружения странного поведения на сетевом уровне, и было бы даже целесообразно установить IDS самостоятельно. ПК, чтобы он обнаружил любую аномалию.