Почему плохо иметь открытые порты?

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

обновление

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

7
задан aireq
12.01.2023 17:59 Количество просмотров материала 3075
Распечатать страницу

8 ответов

порт не открыт, если на нем не прослушивается соединение.

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


редактировать

чтобы ответить на ваш вопрос о том, почему люди не могут просто писать программы это нельзя использовать:

Это довольно легко для простых программ, но многие программы, которые требуют сокет сложны. Таким образом, у них есть много компонентов, многие из которых даже не написаны разработчиком (включенные библиотеки). Вы не можете полагаться на других людей для обеспечения безопасности сети, когда существуют методы упрочнения можно использовать самостоятельно, например брандмауэры.

выполнение произвольного / удаленного кода представляет собой огромный риск, как вы указали. К сожалению переполнения буфера и другие недостатки безопасности, которые позволяют это, являются общими. Посмотрите на любое обновление для системы безопасности Microsoft, и я готов поспорить, что оно исправляет удаленное выполнение кода или повышение привилегий, а MS-огромная компания с сотнями разработчиков и миллиардами долларов.

36
отвечен MDMarra 2023-01-14 01:47

по поводу обновления вы писали:

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

Это очень трудно написать программное обеспечение, которое не может быть использовано!

Я прочитал книгу Создание Безопасного Программного Обеспечения и одна вещь, которую он обсуждал, - это использование переполнения стека. Там было два очень страшных факта:

  • для программы, чтобы иметь эксплуатируемую ошибку переполнения стека очень легко сделать, особенно когда программа написана на C. На языке программирования C, многие функции не безопасны по умолчанию, и программист либо должен знать, чтобы избежать уязвимых функций, либо должен предпринять специальные действия, чтобы быть в безопасности.
  • эксплойт, который должен использовать хакер, короткий -очень короче. Это было меньше половины страницы ассемблера, что переводит на 100 или около того байт машинного кода. Этого кода эксплойта достаточно для предоставления хакерской оболочке(командной строке) доступа к вашему компьютеру. Не требуется загрузка и выполнение больших файлов - просто крошечный фрагмент кода, который можно вставить в середину допустимых данных.

таким образом, если хакер может найти программу, которая (А) имеет ошибку переполнения стека, которая (Б) может использоваться по сети и (в) имеет пару 100 байт в буфере, то ваш компьютер pwned. К счастью, знания об ошибках переполнения стека теперь довольно распространены, но они все еще всплывают. 5 лет назад и более это было гораздо более частая проблема.

возврат к оригиналу вопрос, вы должны избегать открытых портов, чтобы избежать любой аварии с эксплуатируемой ошибкой в программе. Теперь у вас есть вторая причина: удаленная оболочка, которую хакер будет использовать, - это еще один открытый порт. Если у вас есть брандмауэр, который блокирует все, кроме того, что вы специально разрешили, вы также заблокируете эту удаленную оболочку (хотя хакер все равно сможет делать другие неприятные вещи на вашем компьютере, поэтому не будьте спокойны!)

9
отвечен Richard Downer 2023-01-14 04:04

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

6
отвечен Felix 2023-01-14 06:21
  • открыть порт: когда кто-нибудь спрашивает, компьютер отвечает, что есть служба, прослушивающая этот порт. Это означает, что все, что приходит на этот порт будет обрабатываться программой (службой), запущенной на этом компьютере.
  • закрытые порты: когда кто-нибудь спрашивает, компьютер отвечает, что нет никаких служб, прослушивающих этот порт. Akser будет знать, что компьютер отвечает на адрес.
  • порт "стелс": когда кто спросит, тот не получит ответа. Дело в том, чтобы скрыть, если есть компьютер по адресу вообще. Это может быть не очень эффективным, хотя, как joschi poits в комментариях.

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

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

С точки зрения безопасности, любой открытый порт-это огромная зияющая дыра, так как код используется для обработки внешних данных. Что делает брандмауэр (или маршрутизатор NAT), убедитесь входящий трафик не попадает на компьютер, даже если в системе есть открытые порты. Таким образом, они эффективно закрывают все порты.

6
отвечен Ilari Kajaste 2023-01-14 08:38

предполагая, что у вас нет вируса на вашем компьютере или какой-либо другой программы прослушивание порта, который может сделайте что-то почему оно имеет значение если a порт открыт? Если какой-то злоумышленник начинает посылать пакеты на порт, но ничего нет для получения данных и что-то с ней почему дело?

предположение-мать всех неудач:)

лучше перебдеть, чем недобдеть ... вот приятно читать для вас на makeuseof.com:

Технология Объяснил: Открытые Порты Маршрутизатора И Их Последствия Для Безопасности

3
отвечен 2023-01-14 10:55

Я не экспорт безопасности, но я сделал небольшое исследование... "Открытый" порт-это порт, настроенный для приема входящего TCP-подключения.

Если у вас есть приложения, прослушивающие только порты 9, 21 и 80, и ваш брандмауэр блокирует доступ к этим трем портам, у вас технически нет открытых портов. IOW, порт 25, например, не открыт, потому что на нем ничего не прослушивается.

чтобы ответить на ваш вопрос: причина, по которой плохо иметь открытые порты на вашем компьютере, заключается в том, что порты могут быть легко обнаружены, и как только обнаруженные эти порты теперь восприимчивы к уязвимостям прослушивающих приложений.

1
отвечен Shoeless 2023-01-14 13:12

по той же причине, что вы закрыть и заблокировать ваши двери и окна дома.

0
отвечен Steven A. Lowe 2023-01-14 15:29

давайте просто скажем, что открытые порты, как открытое окно и открытая дверь, но когда ваши окна открыты грабитель или крыса и паук может попасть в #Пожалуйста, скажите мне, если я немой или ослиный Отредактировано no asinine Открытые порты похожи на открытое окно, но в интернете есть открытый порт, я думаю, также закрытый порт закрыты окна без него мы не можем подключиться или просматривать я думаю, так же, как HTTP и SSH или FTP без него мы не можем подключиться, потому что это клиент это просто TCP-соединение

Im нет эксперта по безопасности

-2
отвечен user210203 2023-01-14 17:46

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх