С технической точки зрения туннелирование — это способ передачи данных между сетями через инфраструктуру Интернета, который включает в себя весь процесс инкапсуляции, передачи и распаковки данных. Данные (или нагрузка), передаваемые с помощью туннелей, могут использовать кадры или пакеты данных разных протоколов.
Предположим, мы получили разрешения хоста интрасети и надеемся использовать этот хост в качестве трамплина для доступа к интрасети через внешний хост для последующего проникновения и использования. В этом процессе мы можем столкнуться с некоторыми препятствиями, такими как брандмауэры, система обнаружения вторжений и т. д. и т. д. Эти меры безопасности не позволяют ненормальным портам инициировать внешние коммуникационные соединения. В это время управляемый хост не может пройти. Откройте отдельный порт для связи с внешним миром, но мы можем найти порт, который межсетевые экраны и другое защитное оборудование позволяют связываться с внешним миром, смешивать пакеты данных с обычным трафиком и отправлять их на машину атаки внешней сети через обычный порт для обхода брандмауэра, эта технология называется технологией проникновения туннеля во внутреннюю сеть, а логический путь, по которому проходит этот пакет данных во время передачи, называется туннелем.
Далее, прежде чем изучать туннельную технологию, вам необходимо понять некоторые профессиональные термины, такие как прямое соединение, обратное соединение, переадресация портов и т. д. Ниже будут представлены некоторые общие профессиональные термины, которые облегчат наше углубленное изучение позже.
Как показано на рисунке 1-1, прямое соединение относится к процессу, в котором локальный хост инициирует запрос доступа к веб-службе целевого хоста. После того, как целевой хост получает запрос, они устанавливают соединение друг с другом. В реальных сценариях приложений это прямое соединение. Этот метод часто используется, когда целевой хост не подключен к Интернету или целевой объект имеет общедоступный IP-адрес и для создания прокси-туннеля нельзя использовать прямые веб-соединения.
Как показано на рисунке 1-2, обратное соединение означает, что после получения разрешения целевого сервера он активно инициирует запрос на доступ к хосту с общедоступным IP-адресом, используемым злоумышленником, тем самым устанавливая соединение между ними. коммуникации друг с другом. Обратное соединение является полной противоположностью прямого соединения. В реальных сценариях приложений обратное соединение часто используется, когда целевой хост выходит из сети.
Переадресация портов (Порт Пересылка) относится к процессу пересылки трафика, полученного на определенный порт, на другой локальный порт или другие сетевые порты. В ходе процесса конфронтации между красным и синим персонал красной команды выберет использование переадресации портов на основе фактических условий целевой сети. Как показано на рисунке 1-3, предполагается, что в противостоянии красно-синих сотрудники красной команды получают разрешения веб-сервера и посредством сбора информации обнаруживают, что веб-сервер имеет Двойные сетевые карты и возможность связи с целевой машиной интрасети. Если мы хотим, чтобы атакующая машина могла удаленно подключаться к целевой машине интрасети через RDP, мы можем перенаправить порт 3389 целевой машины интрасети через переадресацию портов. веб-сервера, атакующая машина напрямую обращается к службе RDP порта 3389 целевой машины интрасети, обращаясь к порту 80 веб-сервера для достижения цели связи.
Повторное использование порта означает установление нескольких коммуникационных соединений на порту, который занимает службу на целевом хосте, вместо открытия нескольких служб на одном порту. Службы порта и коммуникационные соединения могут существовать одновременно, не мешая друг другу.
Предположим, что служба Apache открыта на порту 80 на сервере. Если вы продолжите указывать службу на порту 80, возникнет две возможности: не удастся добавить службу или произойдет ошибка службы Apache. Метод использования повторного использования порта. может быть установлен на порту 80. Коммуникационные соединения обходят ограничения порта брандмауэра, поскольку Пакеты данных на обоих концах брандмауэра инкапсулируются в тип пакета данных или порт, через который он разрешен (здесь, порт 80), а затем проходят через брандмауэр для связи с хостом за брандмауэром при инкапсулированных данных. пакет достигает пункта назначения. Затем восстановите пакет данных и доставьте восстановленный пакет данных в соответствующую службу.
Поскольку доступ к IP-адресу интрасети невозможен напрямую через Интернет, но в реальных сценариях мы надеемся, что к службам, которые мы развертываем в интрасети, можно получить доступ через Интернет, тогда мы можем использовать «проникновение в интрасеть». Этот метод преобразует внутренний IP-адрес компьютеру общедоступный IP-адрес и прямой доступ к службам узла интрасети со стороны Интернета. Этот метод называется «проникновением в интрасеть».
Прокси — это специальная сетевая служба, которая позволяет одному сетевому терминалу косвенно подключаться к другому сетевому терминалу через прокси-службу. Злоумышленник может настроить ее через контролируемый хост. сервис для доступа к сервисам других хостов в целевой интрасети.
Туннелирование в основном предназначено для решения проблемы невозможности передачи пакетов данных. Технология туннелирования обычно используется для обхода мониторинга некоторого оборудования безопасности, такого как фильтрация брандмауэра, сетевое соединение, инкапсуляция обратного канала данных и т. д. Если оборудование защиты безопасности перехватывает трафик, который мы отправляем, мы можем использовать технологию туннелирования для обхода перехвата. Технология туннелирования использует различные протокольные технологии для установления коммуникационных соединений. Конечно, туннель также включает в себя некоторые прокси-технологии.
В реальной среде интрасети, чтобы защитить безопасность активов, предприятия или другие организации обычно налагают ограничения политики безопасности на хосты и серверы. Во время наступательной и оборонительной конфронтации членам красной команды необходимо судить, как действовать, исходя из ситуации. Фактический сценарий интрасети Обход ограничений политики безопасности для проникновения в туннель, автор перечисляет распространенные сценарии пересылки туннелей в интрасети, как показано в Таблице 1-1.
Таблица 1-1. Распространенные сценарии туннельной переадресации
Форвардный сценарий | Подробное описание |
---|---|
Цель находится на границе сети | Доступен как к внутренней, так и к внешней сети. На граничном узле сети не установлен брандмауэр. Все порты открыты для доступа в Интернет. |
Цель находится в интрасети | Разрешить определенным протоколам прикладного уровня выходить из сети (например, HTTP, SSH, DNS и другим протоколам прикладного уровня) (3389, 22, 445, 53, 80, 443 и т. д.); |
Цель находится в интрасети,Не могу получить доступ к внешней сети | Доступ к пограничному узлу возможен, а политика брандмауэра ограничивает прямой доступ внешней сети к конфиденциальному концу интрасети (3389, 22, 445 и т. д.). |
Из вышесказанного мы знаем, что туннели — это способ передачи данных между сетями через инфраструктуру Интернета. Из семиуровневой модели компьютерного OSI технология проникновения туннелей в основном используется на уровне приложений, транспортном уровне и сетевом уровне. Общие методы использования туннелей и типы туннелей на уровне показаны в Таблице 1-2.
Таблица 1-2. Распространенные методы использования туннелей и типы туннелей
Туннельный метод | Тип туннеля |
---|---|
Туннель прикладного уровня | SSH-туннель, HTTP-туннель, HTTPS-туннель, DNS-туннель |
туннель транспортного уровня | TCP-туннель, UDP-туннель |
туннель сетевого уровня | Туннель IPv6, туннель ICMP, туннель GRE |
Я участвую в третьем этапе специального тренировочного лагеря Tencent Technology Creation 2023 с эссе, получившими приз, и сформирую команду, которая разделит приз!