MITM — это самая импак­тная ата­ка, которую мож­но про­вес­ти в сети. Но одновре­мен­но это и самая опас­ная тех­ника с точ­ки зре­ния рис­ков для инфраструк­туры. В этой статье я рас­ска­жу о том, как спу­фить при пен­тесте, что­бы ничего не сло­мать по дороге и не устро­ить DoS.

warning

Статья име­ет озна­коми­тель­ный харак­тер и пред­назна­чена для спе­циалис­тов по безопас­ности, про­водя­щих тес­тирова­ние в рам­ках кон­трак­та. Автор и редак­ция не несут ответс­твен­ности за любой вред, при­чинен­ный с при­мене­нием изло­жен­ной информа­ции. Рас­простра­нение вре­донос­ных прог­рамм, наруше­ние работы сис­тем и наруше­ние тай­ны перепис­ки прес­леду­ются по закону.

Нач­нем с теории. Я покажу, какие парамет­ры нуж­ны для кор­рек­тно­го про­веде­ния MITM. Эти нас­трой­ки поз­волят тебе избе­жать неп­редна­мерен­ного DoS.

 

Маршрутизация трафика и неразборчивый режим

Клас­сика жан­ра: перек­лючить свой интерфейс в promiscuous mode и раз­решить мар­шру­тиза­цию. Раз­решение мар­шру­тиза­ции — это вооб­ще очень важ­ная нас­трой­ка, так как без нее во вре­мя MITM тра­фик легитим­ных хос­тов будет упи­рать­ся в твою ОС и даль­ше не прой­дет, а это вызовет DoS.

sudo ip link set dev eth0 promisc
sudo sysctl -w net.ipv4.ip_forward=1

Так­же будет полез­но отклю­чить ICMP Redirect. При про­веде­нии MITM твоя машина может генери­ровать эти сооб­щения, что вызовет тре­вогу сен­соров сис­тем IDS/IPS.

sudo sysctl -w net.ipv4.conf.all.accept_redirects=0
sudo sysctl -w net.ipv6.conf.all.accept_redirects=0
 

Возможности порта коммутатора

Так или ина­че при MITM ты будешь упи­рать­ся в воз­можнос­ти пор­та ком­мутато­ра. Если на пор­те ком­мутато­ра условно про­пус­кная спо­соб­ность 1 Гбит/с, то выше этой отметки не прыг­нуть. Поэто­му не рекомен­дует­ся спу­фить слиш­ком мно­го хос­тов.

 

NAT Helper, маскарадинг и его побочные эффекты

Че­рез тебя может про­ходить FTP, H.323 и дру­гой тра­фик, который пло­хо работа­ет с NAT. Модуль nf_conntrack поможет про­хож­дению тра­фика таких про­токо­лов:

sudo modprobe nf_conntrack

Да­вай зададим пра­вило NAT, которое поз­волит видеть не толь­ко вхо­дящий во вре­мя MITM тра­фик, но еще и исхо­дящий.

sudo iptables -t nat -A POSTROUTING -o eth0 -J MASQUERADE

Од­нако у это­го пра­вила может быть побоч­ный эффект.

Од­нажды мой кол­лега по цеху во вре­мя MITM как раз таки и нас­тро­ил такое пра­вило. В инфраструк­туре заказ­чика были Zabbix-аген­ты, которые он спу­фил. И это пра­вило при­вело к тому, что Zabbix-сер­вер боль­ше не мог дос­тучать­ся до Zabbix-аген­тов, так как оно, по сути, спу­фит адре­са легитим­ных хос­тов. Разуме­ется, от такого вне­зап­ного события сетеви­ки были в шоке.

 

Поиск чувствительных данных в эфире

Ути­литы net-creds и PCredz — полез­ней­шие инс­тру­мен­ты для удоб­ного сбо­ра дан­ных в эфи­ре. Обыч­но их исполь­зуют для того, что­бы вытащить из тра­фика пароли, NTLM-хеши, стро­ки SNMP Community и дру­гие инте­рес­ные вещи.

sudo python2 net-creds -i eth0
sudo python3 ./Pcredz -i eth0
 

Ядро Linux

При MITM твое устрой­ство дол­жно быть готово к обра­бот­ке боль­шого количес­тва тра­фика. Мож­но нем­ного затюнить ядро Linux для опти­маль­ной работы с боль­шим количес­твом тра­фика, который ты будешь при­нимать во вре­мя спу­фин­га сети.

sudo sysctl -w fs.file-max=100000
sudo sysctl -w net.core.somaxconn = 65535
sudo sysctl -w net.core.netdev_max_backlog = 65536
sudo sysctl -w net.ipv4.tcp_fin_timeout=15
sudo sysctl -w net.ipv4.tcp_tw_reuse=1
sudo sysctl -w net.ipv4.tcp_tw_recycle=1
sudo sysctl -w net.ipv4.tcp_max_tw_buckets=65536

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.


  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии