TL; DR : Так, дані можна надсилати на порт, який не слухається, але це марно. І це неможливо зробити поза вашим будинком / офісом / школою / будь-яким іншим.
Для цього є два аспекти:
Ваша локальна мережа не маршрутизована з Інтернету. Жодної локальної мережі немає. Якби я спробував надіслати дані на випадкову IP-адресу локальної мережі, наприклад 10.42.17.172
, ці дані не знайдуть свого призначення, оскільки інтернет-маршрутизатори літерально скажуть "Ей, я не плачу за це!" і покладіть у смітник. Єдиний спосіб перенаправити дані до IP-адреси локальної мережі - це якщо IP-адреса знаходиться в тій самій локальній мережі, що і відправник.
Дані, що надсилаються до порту, який не слухається, або відкидаються, або відмовляються відверто . За замовчуванням, якщо ви надсилаєте дані до порту, який не слухає, ваш комп'ютер ввічливо скаже вам, що це не хвилює. Інші конфігурації можуть сприймати вас (як iptables -P INPUT DROP
).
Єдиний спосіб це може заподіяти шкоду, якщо зловмисник націлить на відому вразливість вашої ОС щодо керування небажаними вхідними пакетами IP.
EDIT : Як вказував Сандер Стеффман, це стосується не всіх локальних мереж. Я узагальнив для локальної мережі те, що насправді стосується приватного діапазону IP . Мережа, яка не використовує ці IP-адреси, буде спрямована з Інтернету, саме це дозволяє веб-серверам виконувати свою роботу (вони знаходяться в локальній мережі датацентру, але все ще доступні в Інтернеті).
Більшість програмного забезпечення на домашньому комп’ютері (наприклад, avast! Або Firefox) насправді не слухатимуть порт (або дозволяють лише з'єднання з одного комп’ютера) для доступу до мережевого ресурсу, і вони використовуватимуть порти, випадково приписувані ОС. Надіслати шкідливі дані таким чином складніше для третьої сторони, оскільки їм доведеться представляти собою ресурс, з яким ви спілкуєтесь.
Порти прослуховування чекають на вхідні з'єднання, які можуть надходити з будь-якого місця. Вони створюються різними програмами, такими як Apache або SSHD. Однак вони працюватимуть лише в тому випадку, якщо вони отримують дані, які очікують, тобто якщо я використовую правильний протокол. Якщо я спробую спілкуватися з Apache за допомогою протоколу SSH, я нічого корисного з цього не отримаю. Добре зроблені програми належним чином відмовляться від помилкових даних.