Как можно отправлять пакеты или файлы по IP-адресу локальной сети, не получая от компьютера-получателя

Я не знаю, возможно ли это, но я хочу знать, может ли кто-либо, подключенный к вашей локальной сети, отправить вам файл, просто зная ваши IP-адреса в локальной сети. Я имею в виду, если вы не переводите компьютер в состояние прослушивания на конкретном порту?

2 ответа

Решение

TL; DR: Да, данные могут быть отправлены на не слушающий порт вашего компьютера, но это бесполезно. И это не может быть сделано вне вашего дома / офиса / школы / что угодно.


Есть два аспекта этого:

  1. Ваша локальная сеть не маршрутизируется из Интернета. Нет локальной сети есть. Если я попытался отправить данные на случайный IP-адрес локальной сети, например, 10.42.17.172эти данные не найдут места назначения, потому что интернет-маршрутизаторы буквально скажут: "Эй, мне за это не платят!" и положить его в мусорное ведро. Единственный способ передачи данных на IP-адрес локальной сети - это если этот IP-адрес находится в той же локальной сети, что и отправитель.

  2. Данные, отправленные на порт без прослушивания, либо отбрасываются, либо явно отклоняются. По умолчанию, если вы отправляете данные на не слушающий порт, ваш компьютер вежливо сообщит вам, что это не важно. В других конфигурациях он может снобить вас (например, iptables -P INPUT DROP).


Единственный способ, которым это может причинить вред, - это если злоумышленник нацеливается на известную уязвимость вашей ОС, связанную с обработкой нежелательных входящих IP-пакетов.


РЕДАКТИРОВАТЬ: Как указал Сандер Steffman, это не относится ко всем локальным сетям. Я обобщил для локальной сети то, что на самом деле относится к частному диапазону IP. Локальная сеть, которая не использует эти IP-адреса, будет маршрутизироваться из Интернета, именно это позволяет веб-серверам выполнять свою работу (они находятся в локальной сети центра обработки данных, но все еще доступны из Интернета).


Большая часть программного обеспечения на домашнем компьютере (например, avast! Или Firefox) фактически не будет прослушивать порт (или разрешать подключения только с одного компьютера) для доступа к сетевому ресурсу, и они будут использовать порты, случайно назначенные ОС. Посылать вредоносные данные таким способом сложнее для третьей стороны, поскольку им придется выдавать себя за ресурс, с которым вы общаетесь.

Порты прослушивания ожидают входящих соединений, которые могут прийти откуда угодно. Они создаются несколькими программами, такими как Apache или SSHD. Тем не менее, они будут работать только в том случае, если данные, которые они получают, являются данными, которые они ожидают, то есть, если я использую правильный протокол. Если я попытаюсь установить связь с Apache по протоколу SSH, я не получу от этого ничего полезного. Хорошо сделанные программы правильно откажутся от ошибочных данных.

Нет, если компьютер не прослушивает порт, он просто отбросит полученные пакеты. Вы можете отправить столько пакетов, сколько хотите, но конечный компьютер просто отбросит их и проигнорирует.

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

Другие вопросы по тегам