Firewall Piercing

Материал из Xgu.ru

Перейти к: навигация, поиск
Автор: Игорь Чубин

Firewall Piercing (англ., дословно: прокалывание брандмауэра) — разнообразные техники, использующиеся для преодоления ограничений брандмауэра, сопровождающиеся, как правило, образованием туннеля для передачи IP-трафика или любого другого трафика определённого вида.

Firewall-piercing.png

Для успешного прокалывания необходимо два условия:

  • Снаружи есть принимающая сторона (пирсинг-сервер);
  • Между пирсинг-сервером и пирсинг-клиентом можно обеспечить двусторонний обмен информацией любым способом.


Все виды пирсинга предполагают участие двух сторон: одной, находящейся внутри сети, и второй, находящейся в Интернете, которая готова принять создаваемый туннель и будет обрабатывать весь трафик пользователя, находящегося внутри сети, со второй стороны туннеля.

Второе требование предполагает, грубо говоря, что вы можете при желании переслать байт в одну сторону и получить байт в ответ (в действительности, для того чтобы нормально работали некоторые протоколы существуют ещё требования по времени).

Самый простейший вид пирсинга: прокладывание туннеля поверх HTTP-прокси. Более сложные: ICMP-tunneling и DNS-tunneling, позволяют организовать IP-туннель поверх ICMP и DNS-пакетов соответственно. Фактически это означает, что можно получить полноценный выход в Интернет в обход брандмауэра, если у клиента существует хотя бы возможность пинговать внешние машины или резолвить внешние имена изнутри сети.

Примеры практических ситуаций, когда может применяться прокалывание брандмауэра (в порядке возрастания сложности и редкости):

  1. HTTP-proxy. Вы находитесь в сети, где разрешён доступ только через прокси-сервер, а вам нужен полноценный доступ в сеть, в частности SSH, SMTP и прочее.-
  2. Туннель через терминал. Вы можете попасть внутрь сети через несколько промежуточных SSH-заходов (в том числе на сетевые устройства, которые не поддерживают SSH port forwarding), но прямого доступа из этой сети в Интернет нет.
  3. DNS-туннель. Разрешена обработка DNS-запросов, передача другого трафика запрещена.
  4. ICMP-туннель. Разрешена сквозная пересылка ICMP-трафика, а передача другого трафика запрещена.
  5. ICMP-туннель + IP-spoofing. Запрещена сквозная пересылка ICMP-трафика и любого другого трафика, но нет защиты от подмены IP-адресов (IP-spoofing).
Firewall Piercing
IP over HTTP | ICMP-tunneling | DNS-tunneling | IP over terminal

Cordless-drill.jpg