Почему операционные системы на основе Linux считаются более безопасными, чем Windows? [закрыто]


19

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

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

Я немного знаю о том, как работают операционные системы, но не особо разбирался в том, как Linux и Windows реализуют свои ОС. Может кто-нибудь объяснить разницу, которая делает Linux-системы более безопасными?


5
Я не совсем отвечаю на ваш вопрос, но я хочу немного отстоять выбор вашей школы. Моя школа работает как с системой Windows, так и с системой Linux, которые (пытаются) использовать общую файловую систему. Но на практике это может быть дорого, потому что Windows и Unix-домены в сети действительно не ладят, к сожалению. Учитывая то, что мы видим, что пользователям Windows нужно использовать какой-то компонент с открытым исходным кодом больше, чем противоположный (извините за .net), тогда вполне реальным выбором является то, что они поддерживают Linux только на базовом базовом оборудовании, таком как серверы. Linux поддерживает самые важные сервисы сегодня
Notmyfault

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

Ответы:


55

Я не думаю, что операционная система "безопасна". Конкретная конфигурация операционной системы обладает определенной степенью устойчивости к атакам.

Я, вероятно, буду заслужен пламенем за то, что являюсь «апологетом Microsoft» здесь, но этот поток очень неестественен к обобщениям о «Windows», которые не соответствуют действительности.

Windows 1.0 - 3.11, 95, 98 и ME основаны на DOS. Эта линейка операционных систем не имела никакой безопасности в формальном смысле (защищенные адресные пространства, разделение режима ядра / пользователя и т. Д.). К счастью, когда мы говорим о «Windows» сегодня, мы не говорим об этих операционных системах.

Семейство операционных систем Windows NT (Windows NT 3.5, 3.51, 4.0, 2000, XP, 2003, Vista, 2008 и 7) имеет очень разумную систему безопасности, «разработанную» с момента первого выпуска в 1992 году. разработан с учетом «Оранжевой книги» TCSEC и, хотя и не идеален, я думаю, что он достаточно хорошо спроектирован и реализован.

  • Windows NT была «многопользовательской» с самого начала (хотя функциональность нескольких пользователей, получающих графический пользовательский интерфейс одновременно с одного и того же сервера, существовала только в Citrix WinFrame в эпоху Windows NT 3.51). Существует разделение между ядром и пользовательским режимом, при этом защита адресного пространства зависит от базовых аппаратных функций MMU и CPU. (Я бы сказал, что это очень "Unix-y", но на самом деле это очень "VMS-y".)

  • Модель прав доступа к файловой системе в NTFS довольно «богата», и, хотя у нее есть некоторые недостатки, связанные с «наследованием» (или его отсутствием - см. Как обойти недостаток дизайна NTFS Move / Copy? ), Так было до последние 10 лет или около того, что операционные системы в стиле Unix реализовали аналогичную функциональность. (Novell NetWare превзошла Microsoft в этом вопросе, хотя я думаю, что MULTICS побили их обоих ...> улыбка <)

  • Диспетчер управления службами, в том числе система разрешений для контроля доступа к программам запуска / остановки / паузы, очень хорошо спроектирована и имеет гораздо более надежную конструкцию, чем различные «архитектуры» сценария init.d (больше похоже на «джентльменские соглашения»). ") во многих дистрибутивах Linux.

  • Руководитель исполнительного объекта (см. http://en.wikipedia.org/wiki/Object_Manager_(Windows) ), которая в некоторой степени аналогична файловой системе / proc и файловой системе / dev, имеет модель ACL, которая похожа на файловую систему и намного, намного богаче, чем любая модель разрешений, которую я знаю для / proc или / dev в любом дистрибутиве Linux.

  • Хотя мы могли бы обсудить достоинства и недостатки реестра, модель разрешений для ключей в реестре гораздо более детализирована, чем модель установки разрешений для файлов в каталоге / etc. (Мне особенно нравятся комментарии Роба Шорта о реестре в его интервью «За кодексом»:http://channel9.msdn.com/shows/Behind+The+Code/Rob-Short-Operating-System-Evolution Роб изначально был одним из главных разработчиков реестра Windows, и я думаю, можно с уверенностью сказать, что он не обязательно рад с / как все обернулось.)

Сам Linux - просто ядро, а Windows более аналогична дистрибутиву Linux. Вы сравниваете яблоки и апельсины, чтобы сравнить их вот так. Я бы согласился, что Windows сложнее «раздеть», чем некоторые системы на базе Linux. С другой стороны, некоторые дистрибутивы Linux поставляются с большим количеством «дерьма». С появлением различных «встроенных» разновидностей Windows стало возможным (хотя и не для широкой публики) создавать «дистрибутивы» Windows, отличающиеся по своему поведению от настроек по умолчанию Microsoft (исключая различные службы, изменяя разрешения по умолчанию и т. Д.) ,

Различные версии Windows имели свою долю плохо выбранных значений по умолчанию, ошибок, которые позволяли неавторизованным пользователям получать привилегии, атаки типа «отказ в обслуживании» и т. Д. Ядра Unix (и множество приложений на основе Unix, работающих по умолчанию как root), имели такие же проблемы. Начиная с Windows 2000, Microsoft проделала потрясающую работу по упрощению разделения приложений, запуска программ с наименьшими правами и удаления ненужных функций ОС.

Короче говоря, я предполагаю, что то, что я говорю, заключается в том, что конкретная конфигурация конкретной операционной системы для ваших нужд имеет большее значение, чем тип используемой вами операционной системы. Дистрибутивы Windows и Linux имеют очень похожие возможности в отношении функций безопасности. Вы можете применять надежные методы защиты (наименьшие привилегии, ограниченная установка дополнительных компонентов, криптографически безопасные механизмы аутентификации и т. Д.) В любой ОС. Независимо от того, действительно ли вы это делаете или нет - вот что имеет значение.


для такого человека, как я, который понятия не имеет, как создавались системы Windows и Linux, ваш пост был невероятно информативным
echoblaze

Согласовано. Хорошие моменты.
Кайл Ходжсон

1
+1 - я - пользователь Linux дома и в основном профессионал безопасности Windows на работе. Конфигурация имеет гораздо большее значение, чем сама ОС, и вам определенно необходимо сравнить дистрибутивы Linux с Windows, а не просто «Linux» в виде ядра.
Романдас

3
медленный хлопок +1
куриное печенье

Одна вещь, которая действительно навредила миру Windows в течение долгого времени (даже если это теперь в основном история), это то, что в течение очень долгого времени вам приходилось быть локальным администратором, чтобы делать много вещей, тогда как в мире * nix вы просто быть несчастным на этой машине. Проблема, очевидно, заключалась в том, что все, что запускалось локальным администратором и большинство машин, могло делать с машиной все, что угодно. Это было бы равной угрозой для linux / unix, если бы это не всегда было общеизвестной практикой - не быть root, а делать sudo / su при необходимости. Я полагаю, что проблема была не в Windows, а в программном обеспечении, и в UAC это в основном исправлено.
Фредрик

16

Еще одна вещь, которая не упоминается, заключается в том, что безопасность в Windows гораздо более непрозрачна, чем в Linux.

Например, я могу посмотреть пару текстовых файлов и точно узнать, что работает мой веб-сервер. IIS? Не так много - вы можете увидеть результаты конфигурации через инструмент GUI, но есть скрытые настройки. Затем вы должны использовать другой набор инструментов для просмотра списков ACL для файлов и т. Д.

То же самое с большинством программ в мире Windows - очень трудно быстро понять, что именно влияет на среду выполнения, между реестром и ACL.


11

Не знаю насчет сравнения разрешений файлов ... Когда я был администратором UNIX / Linux, NT4 имел ACL для файлов, которые были гораздо более детализированными, чем традиционные разрешения в стиле "777" в UNIX / Linux. Разумеется, разрешения - это еще не все, и я уверен, что современные дистрибутивы Linux, по крайней мере, делают детализированные ACL доступными, даже если они не реализованы по умолчанию. На мой взгляд, концепции sudo и root всегда существовали в UNIX, хотя Windows постоянно добавляла эти концепции и, вероятно, сейчас находится на одном уровне.

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

Гораздо проще войти в систему Linux и просто завершить работу всей оконной системы, демонов RPC и т. Д. - вы можете получить систему на основе Linux или BSD до одного или двух открытых портов с минимумом установленных пакетов и тем не менее иметь очень полезную систему очень легко. Это, вероятно, больше связано с наследием UNIX как ОС разработчика; все было построено, чтобы быть модульным, а не чрезмерно взаимосвязанным. Это приводит к гораздо более настраиваемой системе, в которой вы можете просто удалять ненужные вещи. Я не думаю, что так легко защитить серверы Windows таким образом.

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

Корпорации, в то время как они делают прекрасное программное обеспечение (MSSQL, Exchange, Windows Server 2003 - все прекрасно в моей книге), просто преследуют разные цели.


5
Да; Списки ACL Windows более детализированы, чем Linux / Unix без ACL (хотя в большинстве современных версий есть варианты использования ACL). Существенным отличием является то, что люди, как правило, входят в Windows с правами администратора - это все еще стандартная настройка на ноутбуках XP, предоставляемых компанией, - тогда как люди в Linux / Unix не выполняют большинство операций в качестве пользователя root. Это ограничивает ущерб, который может быть нанесен в Linux / Unix по сравнению с Windows - по умолчанию. Если кто-то все время запускается с правами root, все ставки отменяются (за исключением того, что он рано или поздно попадет в печальный - и сожалеющий - несчастный случай).
Джонатан Леффлер

«Совершенно верно, что концепции sudo и root всегда были в UNIX и только сейчас приходят в Windows». О чем ты говоришь? Windows NT не так стара, как Unix, но Windows NT обладает очень разумной защитой, «разработанной» с момента ее выпуска в 1992 году. К сожалению, многие администраторы Windows не развертывают пользователей с учетными записями «ограниченных пользователей» (так как они должны были быть с самого начала), но это не должно чёрт побери операционной системы.
Эван Андерсон

С точки зрения сервера, предоставлено. Но обычному пользователю Windows требовался административный доступ, чтобы иметь достаточно комфортную среду до Vista. Я считаю Vista "щелчком правой кнопкой мыши, работающей от имени администратора" как сопоставимую с sudo.
Кайл Ходжсон

3
Я совершенно не согласен. Начиная с Windows NT 4.0 я депонировал тысячи рабочих столов с ограниченными учетными записями. «RunAs», что несколько аналогично «sudo», существует в операционной системе начиная с Windows 2000 («щелчок правой кнопкой мыши, функциональность запуска от имени»). Я скажу, что управление учетными записями пользователей - глупая функция, и ее не следовало включать в ОС. Microsoft сделала неправильную вещь, сделав «безопаснее» работать в качестве «Администратора», вместо того, чтобы сделать его более трудным и болезненным, в то же время поощряя разработчиков работать над написанием программного обеспечения, которое не отстой (т.е. требует прав «Администратор»).
Эван Андерсон

2
Пользователи Vista на моих сайтах клиентов никогда не видят UAC, потому что они работают как ограниченные учетные записи пользователей. Вы увидите UAC только в том случае, если вы работаете как «Администратор». Вы можете отключить UAC с помощью групповой политики, но вам это не нужно.
Эван Андерсон

9

На мой взгляд, если достаточно хорошо сконфигурированы системы на базе Linux, они более безопасны, чем системы Windows. Некоторые из причин:

  1. Прозрачность и множество простых сетевых инструментов. Например, администратору Linux очень легко увидеть текущую конфигурацию брандмауэра, набрав «iptables -L -n» на оболочке. Вы также можете увидеть, какие порты открыты на машине, запустив «nmap» с другой машины Linux. Это делает жизнь намного проще, так как вы можете очень точно указать, какие порты могут быть доступны, с каких адресов и т. Д.

  2. Текстовые файлы журнала в одном месте: текстовые файлы журнала в одном месте "/ var / log" легко архивировать и анализировать. Кроме того, такие инструменты, как logwatch, которые могут отслеживать эти файлы журналов и отправлять вам важные сообщения по электронной почте, упрощают работу. Мы даже можем написать свои собственные инструменты для анализа файлов журналов и поиска интересующей нас информации. Журналы можно даже экспортировать на удаленный сервер системного журнала, если мы не хотим, чтобы журналы присутствовали на одном сервере.

  3. Не беспокойтесь о вирусах: меньше ли вирусов в Linux, потому что систем на базе Linux меньше, ИЛИ потому что все пользователи любят Linux или потому, что Linux более безопасен. Причина не имеет значения. Если в конце концов Linux имеет меньше вирусных угроз, то это хорошо для Linux. Я лично видел, как люди установили два антивируса, антишпионское и рекламное ПО на одну машину. Все эти инструменты защиты потребляют много ресурсов процессора и памяти.

  4. Поддержка многих языков программирования: в Linux очень просто писать код. C, C ++, Python, Perl, Java и т. Д. Просто работают без необходимости установки какого-либо дополнительного пакета. (Это в случае, если вы устанавливаете большой дистрибутив, такой как Fedora, который поставляется на DVD.) Это повышает безопасность, поскольку мы можем выполнять повторяющиеся задачи путем кодирования. Так что, если сделать ошибку и возникнет проблема, это будет со всеми учетными записями, и это будет легко обнаружить и исправить. Если бы нам пришлось вносить одинаковые изменения в большое количество учетных записей / каталогов вручную, мы могли бы ошибиться в одной или двух, и для обнаружения таких ошибок может потребоваться много времени. Также мы можем исправлять ошибки и искать простые ошибки, используя код. Поскольку все файлы конфигурации, файлы информации о пользователях, файлы журналов и т. Д. Находятся в тексте, очень легко кодировать все, что мы хотим достичь, и существует множество способов сделать то же самое.

  5. Открытый исходный код: поскольку, вероятно, многие люди видели код, очень редко некоторые шпионские и рекламные программы входят в состав приложений, поставляемых с Linux. Вы также можете увидеть исходный код, если безопасность очень важна для некоторого сервиса, и посмотреть, как он работает. Если вы точно знаете, как это работает, то вы знаете ограничения и когда это сломается. Фактически, если существуют хорошо известные ограничения безопасности, которые были бы задокументированы на страницах руководства, на веб-сайте пакета и в комментариях в файлах конфигурации. Разработчикам нечего терять, если вы скажете, что если вы используете наш инструмент в таком сценарии, то это рискованно. Организациям, продающим программное обеспечение, может быть невыгодно сообщать об ограничениях для программного обеспечения, и это может ухудшить их программное обеспечение и снизить продажи / прибыль.

  6. Бесплатная и совместимость: хотя это не связано с безопасностью. Для университета, где стоимость имеет значение, системы на основе Linux намного более экономичны, чем системы на основе Windows, и нет необходимости приобретать лицензии для ОС, а также для дополнительного программного обеспечения, которое мы установим после установки ОС. Что касается совместимости, мы можем подключаться с компьютеров Linux к другим ОС и легко обмениваться файлами. В Linux мы можем смонтировать множество файловых систем, включая FAT, NTFS, HFSPLUS. Мы можем делиться вещами используя ftp, http, ssh, samba, nfs и т. Д., И все эти вещи устанавливаются или могут быть установлены с помощью одной команды. Другие ОС обычно предоставляют только одну возможность делиться вещами.

Но если неправильно сконфигурировать системы на основе Linux, это может вызвать больше проблем, чем можно себе представить. Многие пользователи могут одновременно войти в систему и делать практически все из оболочки. Очень легко оставить бэкдоры, трояны, если брандмауэр не настроен должным образом. Атакующий может удалить файл журнала или вмешаться в него, чтобы скрыть свои следы. Атакующий может кодировать на атакованной машине, так как все редакторы, компиляторы, отладчики легко доступны, как только злоумышленник получает доступ к оболочке. Все серверы ftp, http могут быть запущены из учетной записи пользователя, но не на защищенных портах (1-1024). Таким образом, злоумышленник может загрузить код http-сервера, скомпилировать его и запустить http-сервер через порт 6000, чтобы он выглядел как X-сервер.

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


6

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

Тем не менее, если университет является магазином Linux, они не позволят вам использовать Windows Server независимо от того, какие данные вы найдете в безопасности Windows Server. Я хотел бы изучить использование Mono (www.mono-project.com), если вы хотите использовать .Net Framework.


6

диапозитивные

  • Запустите ps auxfи вы узнаете, какие службы запущены, под какой учетной записью.
  • Запустите netstat -lnpи вы узнаете, какие программы имеют какие порты TCP открыты.
  • Запустите iptables -Lи вы знаете, какие правила есть у вашего брандмауэра.
  • Запустите straceили lsofпроверить активность процесса.
  • Запустите ls -lahили, tree -pugи вы точно знаете, какие права доступа и разрешения у полной папки.
  • Журналы находятся /var/logи могут быть проверены с помощью простого «поиска по файлам».
  • Нет скрытых настроек. Все читается человеком /etc. Поиск по текстовым файлам, или их архивирование, или применение контроля версий (subversion / git) действительно просты.

Система четких разрешений

  • В базе есть только права доступа к файлам. Нет «разрешений для ключей регулярных выражений», унаследованных разрешений ACL, контекстов безопасности для процесса или других скрытых функций.
  • Биты разрешения просты:
    • Запись в файлы = редактировать содержимое файла
    • Запись в папки = создание / переименование / удаление файловых узлов.
    • Sticky = редактировать только собственные файлы.
    • Файлы с разрешениями на выполнение или setuid выделяются (в lsцветном режиме).
  • Простое «найти все файлы» показывает, какие разрешения имеет пользователь.
  • Кроме того, ACL могут использоваться только там, где это необходимо.
  • Учетные записи пользователей имеют только два места для записи файлов по умолчанию: их $HOMEи /tmp.

Расширенные параметры безопасности

  • SELinux / AppArmor может ограничивать процессы для доступа только к определенному набору файлов (помимо прав доступа к файлам)
  • Тюрьма Chroot позволяет администраторам запускать программу, полностью изолированную от остальных. Как будто он установлен на пустом жестком диске, только с файлами, которые ему действительно нужны.
  • При этом sudoпользователям и процессам могут быть предоставлены разрешения на выполнение только нескольких административных команд.

Одиночные точки для входа и повышения привилегий

  • Процесс не может получить больше привилегий сам по себе. Единственный способ - запустить другую программу «SetUID Root», например, sudoили связаться со службой DBus, которая сначала проверяет PolicyKit. Эти программы SetUID можно найти с помощью одной команды «Поиск всех файлов».
  • IPC между процессами довольно ограничен, сокращая векторы атак.
  • Доступ к системе (текстовая консоль, удаленный рабочий стол, RPC, удаление команд и т. Д.) Все происходит через ssh. Это туннель SSL с проверкой открытого / закрытого ключа.

Безопасные фоновые процессы

  • Фоновые службы запускаются с более низкими привилегиями как можно скорее. Такие службы, как Apache, Dovecot и Postfix, передают входящее соединение процессу с низким уровнем привилегий как можно скорее.
  • По умолчанию заблокирован. Microsoft также приняла этот подход в Windows Server 2008.

Хорошие инструменты аудита

  • Такие инструменты, как nmap, ncatделают аудит безопасности простым.
  • Фоновые службы могут быть проверены из командной строки.
  • Инструменты аудита журналов распространены.
  • Кодировать безопасный сервис проще, потому что это можно сделать модульным способом.
  • Существует множество бесплатных инструментов для обнаружения вторжений.
  • Инструменты командной строки предназначены для написания сценариев, поэтому администраторы могут автоматизировать задачи.

Хорошие обновления безопасности

  • Каждая часть операционной системы получает обновления безопасности. Когда Apache, Python или PHP устанавливаются через менеджер пакетов, они также получают обновления.
  • В том, что исправляет обновление безопасности, есть большая открытость, поэтому вы можете понять, как это повлияет на вас.
  • Все программные пакеты используют одни и те же библиотеки. Они не отправляют отдельные копии, оставляя пригодные для использования версии вокруг.
  • Нет патчей по вторникам, ожидая исправления, когда хакеры уже используют баг в дикой природе.
  • Разработчикам легко протестировать обновления и развернуть их.
  • Нет перезагрузки должен быть запланирован, чтобы сделать обновление. Файлы можно заменить, пока существующие процессы продолжают получать доступ к старым данным на диске. После этого вы можете узнать, какие службы нуждаются в перезапуске ( lsof | grep =).
  • Вся операционная система может быть обновлена ​​без переустановки!

Все, что здесь упомянуто, поставляется или в любой основной дистрибутив Linux, например, Red Hat, Debian, openSUSE или Ubuntu.


5

С самого начала Linux был спроектирован как многопользовательская система, поэтому у него гораздо более сильная система разрешений, чем у Windows. Он также был разработан для того, чтобы вы не работали с правами администратора (root-доступ), поэтому все программы разработаны так, чтобы не нуждаться в правах. Это означает, что если ваша учетная запись будет взломана, вся система не будет.

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


2
Некоторые различия между многопользовательскими и однопользовательскими операционными системами: jdurrett.ba.ttu.edu/courseware/opsys/os01a.htm
moshen

7
Хорошо, я использую Linux более 12 лет, а UNIX-подобные операционные системы - еще дольше. Как бы мне ни нравился Linux, нельзя сказать, что у него более сильная система разрешений , чем у Windows. У него лучшая модель безопасности, чем в ранних версиях Windows (т. Е. Не всегда в качестве администратора), но WinNT и более поздние версии имеют мощную систему разрешений, которая просто не использовалась для хорошего эффекта. В последних версиях Linux есть selinux, который еще сильнее, но это относительно недавнее (хотя и очень мощное) дополнение.
Эдди

5

«Безопасность - это контроль»

С моей точки зрения, в Windows у вас меньше контроля, чем в Linux. Закаливание окон ... сложнее :). Хотя любой инструмент зависит от навыков владельца, я хотел бы рассмотреть следующее:

  • В Windows больше уязвимостей с высокой степенью риска и более автоматическая эксплуатация (вирусы, ботнеты)
  • Администраторы Windows являются (или должны быть) параноиками (из-за боязни вторжения) и сделали своего рода упорство
  • Системные администраторы Linux иногда слишком доверяют безопасности операционной системы и забывают об усилении безопасности
  • После взлома в системе Linux вы можете сделать больше, чем в системе Windows, так как есть более мощные инструменты командной строки

Поэтому, хотя я предпочитаю Linux вместо Windows, я думаю, что вы не должны доверять установкам по умолчанию.


3

Большинство предыдущих постов были посвящены вторжению, и была проделана хорошая работа по этому вопросу, один из вопросов вашего вопроса был о вирусах. Основными причинами того, что в дистрибутивах Linux меньше проблем с вирусами, является то, что существует больше оконных коробок, чем Linux и Mac вместе взятых. Авторы вирусов хотят получить максимальную отдачу, поэтому они пишут для Windows.

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


3

Судя по исправлениям безопасности для ВСЕГО программного обеспечения в наши дни, я думаю, что проблема не в программном обеспечении, а в количестве рабочих столов под управлением Windows. Это цель, для создания бот-сетей. Если Linux когда-либо действительно вырастет в настольном пространстве, то на него будут больше нападать. Я думаю, что Mac OSX уже видит это.


2

Есть одна очень важная причина, по которой Linux и OpenBSD могут быть более безопасными, чем Windows. Это способность операционной системы защищать себя от сетевых атак.

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

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


2

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

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

Ни одна из ОС не является более или менее безопасной, чем другая. Конечно, мы могли бы поговорить об истории платформ и использовать ее, чтобы обсудить, какая из них стала более безопасной с течением времени, но мы не говорим о * nix ОС 10 лет назад и о развертывании Windows NT 4 в производственных средах. , Мы говорим о современных ОС (или, по крайней мере, так и должно быть), и какие из них могут быть лучше защищены.

Я видел, как кто-то что-то говорил в ответе о том, что пакеты, поступающие на брандмауэр Windows, затрагивают больше частей ОС, чем брандмауэр Linux. Вопрос к нему: кто, черт возьми, доверяет программному брандмауэру, работающему на хосте? Вот для чего нужны конечные точки / внешние брандмауэры. Чтобы защитить сеть. Хост, на котором запущен сервис, имеет доступ к сервису. Задача хостов - обеспечить, чтобы этот сервис не был скомпрометирован. Перед сетевыми устройствами стоит задача предотвратить попадание других пакетов из Интернета на хосты других служб.

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

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


1
Я был бы во мнении, что все зависит от знаний администраторов. Если вас попросят защитить форт от атаки против палатки, я думаю, у вас есть преимущество в форте. Если сравнивать здесь два Linux и Windows, то они были разработаны с двумя различными принципами работы с несколькими пользователями и одновременным доступом к системе. В то время как хорошие администраторы могут помочь исправить недостатки, все же есть преимущества от одного над другим в качестве отправной точки.
Барт Сильверстрим

1

Нет необходимости проклинать ваш университет за использование серверов Linux. В соответствии с вашими конкретными требованиями, как сказал AdamB, используйте Mono (www.mono-project.com). Обычно профессора, интересующиеся ОС, предпочитают linux, даже любой любитель ОС предпочел бы linux, для любопытства, как это работает на практике из книг.

  • Теперь о безопасности,

Linux теперь следует DAC (дискреционное управление доступом), это более умная система для контроля доступа. Как упоминалось в других ответах, да, linux был многопользовательским, и поэтому система контроля доступа стала лучше, чем другие.

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

Помимо безопасности, экономическая жизнеспособность делает linux лучшим вариантом для серверов, где их очень мало, но приложения должны запускаться или размещать службы. И эти приложения очень хорошо перенесены на них. Например, Apache.

Я думаю, что не только безопасность, но и другие факторы, которые делают вас, как большинство остальных университетов, выбирают Linux на серверах.


1

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

Известно, что если человек создал «безопасную» платформу, то другой человек может со временем найти дыры в этой платформе.

Я согласен, что первые два предложения Эвана лучше всего отражают безопасность ОС:

Я не думаю, что операционная система "безопасна". Конкретная конфигурация операционной системы обладает определенной степенью устойчивости к атакам.

Поэтому не имеет значения, сравниваем ли мы GNU / Linux, системы BSD (Free / Open / Net), Microsoft, Windows, Mac OSX, Symbian, PalmOS, Cisco IOS, AIX, QNX, Solaris, z / OS или любые другие другие «операционные системы», которые запускают такие вещи, как ваш телевизор, MP3-плеер, микроволновая печь и т. д. и т. д.

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

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

например:

  • NAT
  • обратный прокси
  • межсетевые экраны

1
я бы все равно положил свои деньги на openbsd в любой день, потому что он «менее всего уязвим для удаленного доступа».
Кайл Ходжсон

Я не буду ставить свои деньги против ваших тоже! Если только мы не поговорим о DOS <= 4 (нет драйверов NDIS до 5.5, я полагаю?)
Уэйн

1

Факт безопасности операционной системы в отношении фреймворков - это не просто проблема типа ядра. Каждый из фреймворков индивидуально имеет свои механизмы безопасности. Спецификация многопользовательской учетной записи в Microsoft Windows действительно обеспечивает большую гибкость в плане массового развертывания, однако в Linux вы можете контролировать входные и исходные разрешения и делегирование.

Уровень безопасности .NET Framework в основном связан с вашей групповой политикой, настройками powershell andnetsh console. Причина в том, что ядро ​​телеметрирует при низкоуровневых параметрах доступа с динамическими запросами доступа в памяти. Фреймворки Linux часто требуют аналогичного уровня внимания, но в основном это связано с флагами, которые вы указываете при настройке языка. Linux при правильной настройке доказано, что она более безопасна, чем Microsoft Windows. Хотя на «приличном» уровне конфигурации; инструменты могут проскользнуть прямо через ваш IIS и проникнуть прямо в ваши сервисы, используя определенный GUID. В целом Linux позволяет больше аспектного контроля, чем

Основные моменты:

inodes and NTFS index primers and permissions in Windows (including registry) 
    are easier to sift through than an EXT hardnened Linux 

protocol traversal within Linux for exception handling are easier to find 
    than a solid configured Windows Firewall. 

cache indexes within ASP.NET are easier to violate than cache management    
    technologies which are well handled within GNU and C++ libraries
    they are practically built for parallel systems now. 

SQL parse queries, have been proven over and over again; MySQL is faster. 
    than MSSQL, though Oracle has been pushing the belt. Transactional 
    security is proven to be more secure on Windows, but for performance 
    and sheer flexibility shows that MySQL should be used or something 
    along the lines of a iSQL or NSQL (not SQLAB like Berkeley SQL which 
    MSSQL is based on) 

Gateway permissions, Linux has an amazing ability to fondle packets and tiny 
    little things that Windows can only put into sorting bins. This being 
    said, if you are running a Windows network, you have more network auditing 
    than a Linux network because the packages are easier to apply walls to 
    than DLL files and protocol requests. 

Surface layer GUI, .NET Framework offers strict field definitions; while Linux 
    allows intense PCRE and other Regular Expressions. 

Правительственные постановления:

OWASP proves over and over again that it is harder to crack a hardened Linux Server 
than it is to crack a hardened Windows Server. Why? Because the firewall and Group 
Policy does not allow as far a tuned key for aspects of the closed source framework 
within ASP.NET; Linux will let you choose a color for every letter on your command. 

NIST Shows over time that SQL management permissions are harder to parse with Windows 
while Linux PCRE makes it harder to bypass SQL queries whether it be within a GUI or 
a Web Interface. 

Carnagie Mellon shows that ASP.NET can hold higher regulations because it is built 
in a more module based context which employs the use of MVC frameworks and can potentially 
have a higher restriction. Meanwhile PHP and Java show that they are incredibly robust 
with their Obfuscation and encapsulation methodologies.

Личные мнения:

Каждая операционная система потенциально может быть более безопасной, чем остальные. Взяв сырое сравнение фреймворков, работающих с более высокой безопасностью в Linux или Windows, я бы сказал, что основная часть веб-безопасности - это использование наиболее несовместимой, но эффективной фреймворк Таким образом, становится гораздо труднее привязать к собственным разрешениям доступа к жесткому диску и ручкам библиотеки. Таким образом, у вас есть несколько приваренных чаш на вашей операционной системе. Как сказал Эван с разрешениями NTFS и / proc или / dev. Если вы используете что-то, что не может с этим поговорить; его сложнее взломать.

То, что я узнал от веб-разработки, никогда не стоит недооценивать вашу структуру. .NET имеет разрешения на создание общих подключенных томов и механизмов управления для кластеров SQL Server; в то время как Apache Source может делать то же самое с операционными системами, использующими Linux. Это довольно приличный вопрос, хотя я должен сказать, что Linux обеспечивает большую безопасность при управлении отдельными аспектами, а также при ограничениях и мониторинге на нескольких языках; в то время как Windows обладает широкими возможностями аудита и ведения журналов с интерфейсом отладки логики высокого уровня. Оба они сравнимы, в конечном итоге это сводится к тому, «насколько хорошо - вы его заблокируете» и «сколько существует наворотов?» в рамках. Apache имеет больше надстроек безопасности;

В настоящий момент, сравнивая PHP в Linux или Windows, совершенно очевидно, что в операционной системе Linux можно использовать больше расширений; Windows имеет другой уровень управления разрешениями по сравнению с PHP, что затрудняет управление каталогами и доступом к файлам. В Apache, например, XAMPP, LAMPP или WAMP, я чувствую, что Windows немного менее безопасна, учитывая тот факт, что ее ограничения на брандмауэр легче нарушать, потому что она использует те же правила туннелирования, что и ваш веб-браузер. Linux, с другой стороны, может использовать пулы приложений и дополнительные механизмы безопасности на уровне пакетов, которые гораздо сложнее воспроизвести. Windows потребует от вас использования всех аспектов операционной системы, чтобы сделать сеть более безопасной.

IIS (на сервере Microsoft, а не на клиенте Windows) в Windows с ASP.NET с последними микшерами SEC_ATL также может быть очень безопасным.

Только Apache, вы можете запустить его с Linux, чтобы активировать драйверы верхнего и нижнего уровня, SMIME, кодеки и ценные бумаги пакетного уровня. В то время как Windows потребует, чтобы вы установили перекрывающие механизмы безопасности, которые в противном случае блокировали бы ваш трафик немного больше, чем вы хотели бы, если бы речь шла о работе тысяч серверов.

В Linux более узкое ядро ​​и оптимальность для сетевой безопасности тем лучше (как в Apache с NSLUG).

С Windows вам больше нравится программировать модули Powershell и дополнительное наложение безопасности для вашей платформы ASP.NET и настраивать групповую политику на USGS, потому что большую часть времени она действительно нуждается в том, чтобы отключать тот тип трафика, который Linux будет автоматически отрицать и не думать. около.

В равной степени они могут быть сильными. Из коробки «живая» версия Linux будет сильнее ненастроенного Microsoft Windows Server, только что настроенного с помощью мастера.

Со временем Linux превзойдет Windows в игре безопасности. Серверы Debian 3 сегодня все еще сильнее, чем Microsoft Server 2008 R2, и предполагают, что они могут поддерживать те же технологии без перестройки ядра. Debian все еще может курить, и я видел это своими глазами.

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


0

В основном я считаю, что Linux считается более безопасным выбором из-за повсеместного использования программного обеспечения с открытым исходным кодом.

Непринужденность исходит из идеи, что «сообщество» заметит, что если что-то будет добавлено что-то подозрительное (скажем, если openSSH неожиданно начнет звонить домой с паролями), оно не будет надолго задерживаться.

Но я не могу повторить достаточно того, что уже сказали выше: безопасность во многом зависит от конфигурации: кого волнует, не звонит ли openSSH домой, если у вас нет брандмауэра, нулевой пароль root и PermitRootLogin включены в sshd;)


0

Краткий ответ: изначально UNIX был разработан для обеспечения безопасности; Windows была разработана, чтобы быть простой. Теперь потомки UNIX будут делать вид, что для своих пользователей они проще; Windows притворяется более безопасной.

Они еще не встречались


2
Ба! В своей первоначальной конструкции Windows NT больше заботилась о безопасности, чем Unix. Позже Unix заперла безопасность. Современные Unix-подобные операционные системы (такие как Linux, которая на самом деле не является операционной системой "Unix", так как это совершенно новая кодовая база) значительно улучшились по сравнению с оригинальной Unix, но Windows NT изначально была разработана для отвечают требованиям безопасности Министерства обороны США «Оранжевая книга».
Эван Андерсон

0

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

Даже в самых ранних версиях Linux / Unix было разделение между приложениями и между O / S и прикладным уровнем. Нарезка задач, хотя и не всегда идеальная, была, по крайней мере, справедливой.

Таким образом, наследие Unix (или Linux) для более надежных систем, которые требуют более высокой доступности.

Все это все еще применяется сегодня? Это другой вопрос.


Конечно нет. Большая часть негативной прессы, которую Windows получает от сообщества Linux, на самом деле напрямую нацелена на эти предыдущие версии и не учитывает тот факт, что дела пошли дальше. Последней версией Windows, которая использовала coop m / t, была версия 3.1, а последней версией Windows, в которой DOS бился в сердце, была ME.
Максимус Минимус

0

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

Но .... а. В системах Unix весь доступ ко всем устройствам осуществляется через файлы, для которых можно легко управлять безопасностью. Например, знаете ли вы, как запретить пользователю X доступ к звуковой карте в Windows, в то же время разрешая пользователю Y? В Unix такие вещи просты.

б. Структура каталогов гораздо более вменяемая. (Например, пользовательскому приложению требуется только доступ на запись к вашей домашней папке и т. Д.) Однако это улучшилось и в Windows за несколько лет.

д. Это важная персона: SELinux (и функция песочницы Trusted Solaris и Mac OS «Ремень безопасности»). Это известно как NDAC (недискреционное управление доступом). Если вы работаете с дистрибутивом ОС с этими функциями, то в сущности одновременно существуют два уровня безопасности: обычный DAC (система разрешений), который всегда был в Unix, и современные версии окон - и, кроме того, «Брандмауэр приложений», который навязывают SELinux и подобные системы. Например, вы можете установить политику, которая гласит, что веб-серверу Apache разрешено писать в / tmp и читать из / var / www и / etc / apache. Любой другой доступ к диску будет отказано независиморазрешений. Кроме того, вы можете указать, что он может принимать входящие соединения только через порт 80 и не устанавливать исходящие соединения. Затем, даже если есть ошибка, которая позволит кому-то сделать что-то очень плохое, и даже если apache работает как root, это не будет иметь значения - политика предотвратит это. Это требует (очень незначительного) снижения скорости и может быть проблематично, если вы используете необычную конфигурацию, но в обычном случае может значительно повысить уровень вашей безопасности как в Unix, так и в Windows старого стиля.

е. Слои - системы Unix состоят из множества отдельных уровней и сервисов, которые могут быть заменены. Это означает, что они могут быть индивидуально проанализированы на предмет корректности и безопасности, заменены и т. Д. Почти для любого из них нет необходимости перезагружаться. Это большой плюс в системах типа сервера. Кроме того, в системе Unix проще отключить (и удалить) то, что вам не нужно. Например, зачем запускать графический интерфейс на веб-сервере? Это увеличивает поверхность атаки и занимает оперативную память.

е. Для тех, кто сказал, что Windows NT была разработана с нуля для обеспечения безопасности ... это правда, ядро ​​было разработано с самого начала с расширенными функциями безопасности и многопользовательскими функциями, но есть две основные проблемы: 1. Плохая репутация Microsoft с безопасностью и 2. ОС в целом была разработана для обеспечения совместимости с устаревшими приложениями Windows, что означало множество компромиссов. Unix всегда был многопользовательским, и поэтому приложения не испытывают особого удивления, когда безопасность обеспечивается - что означает меньше компромиссов.


Безопасный доступ к «файлам устройств» в Windows NT осуществляется через ACL, применяемые в диспетчере исполнительных объектов. Он имеет примерно ту же модель ACL, что и файловая система. Re: ваша точка "a": приложениям с логотипом, которые соответствуют рекомендациям Microsoft по разработке, также не требуется доступ для записи вне домашнего каталога пользователя. Re: "B": Я согласен, что в Windows есть ограниченная функциональность MAC. Уровни целостности, добавленные в Vista, являются формой MAC. «Усовершенствованный брандмауэр» (также добавлен в Vista) может ограничивать исходящий трафик, как вы описали, если вы решите настроить его таким образом.
Эван Андерсон

re: "e": я согласен, в принципе, что меньшее количество программного обеспечения означает меньшую вероятность отказа. Существуют внутренние сборки Windows, в которых нет графического интерфейса, но Microsoft решила не выпускать их. re: "f": сторонние разработчики столкнулись с большими проблемами, связанными с установкой нормальных политик безопасности по умолчанию в Windows, чем Microsoft. Лично я считаю, что Microsoft должна быть более настойчивой в отношении приложений с плохим поведением, но они живут в другом «пространстве», чем разработчики бесплатных операционных систем с открытым исходным кодом, когда дело доходит до обеспечения работы приложений их клиентов.
Эван Андерсон

re: «ОС в целом ... разработана для совместимости ...» Win32 - это подсистема ядра - это не NT. Если бы Microsoft захотела (или позволила бы кому-то еще), вы могли бы создать «дистрибутив» Windows NT, который не имел подсистемы Win32, не имел графического интерфейса и загружался, скажем, с помощью подсистемы ядра POSIX «Interix». Практически весь пользовательский интерфейс в NT OS основан на Win32, но ядро ​​прекрасно поддерживает среду, отличную от Win32.
Эван Андерсон

0

Существует несколько причин, по которым системы на основе Linux часто считаются более безопасными, чем системы Windows.

Одним из них является мастерство владельца. Если вы зайдете в Best Buy или Wal-mart (здесь, в США) и купите компьютер, не задумываясь об этом, на нем будет работать Microsoft Windows. Это означает, что существует огромное количество систем Windows, управляемых людьми, которые не имеют ни малейшего представления. Поскольку почти никто не покупает компьютер с Linux случайно (по крайней мере, после того, как Microsoft провела контратаку на нетбуках), большинство пользователей Linux либо что-то знают о компьютерах, либо их компьютер кто-то установил. Это относится ко всем средам, в которых есть люди, которые не знают, что делают; те, кто не работает под управлением Windows, и те, кто работает под управлением различных ОС.

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

Одним из них является культура. В любой среде Unix / Linux существует четкое различие между учетными записями пользователя root и пользователя, и почти во всех случаях люди работают в своих учетных записях пользователей, когда им не нужно быть пользователем root. По моему опыту, различие не столь сильное в средах Windows, в котором каждый пользователь обычно имеет одну учетную запись с какими-либо привилегиями. Я сейчас на своем рабочем компьютере, где у меня есть одна учетная запись, учетная запись администратора. Все, что я делаю, делается с помощью учетной записи с высокими привилегиями. Когда я вернусь домой к своему Linux-боксу, я сделаю почти все в учетной записи с ограниченными правами и буду наращивать, когда мне это нужно. Моей жене приходилось спорить, чтобы получить две учетные записи на своем компьютере на работе, одну обычную учетную запись администратора и одну учетную запись с ограниченными правами, чтобы она могла видеть, имеют ли обычные пользователи права на запуск того, что она пишет.

Одним из них является обратная совместимость. Хотя Unix изначально не представлял собой безопасную ОС, он рано получил безопасность. Программы для Linux не требуют запуска с правами root, если они на самом деле не выполняют функции root. Windows, с другой стороны, запускает большое количество программ, требующих учетных записей администратора, потому что это то, что разработчики запускали и тестировали (см. Выше), и эти разработчики, как правило, не заботились о безопасности, и это работало просто отлично. Это большая проблема, которую Microsoft пытался решить с помощью UAC. Я не думаю, что это особенно хорошее решение, но, если честно, Microsoft не собирается находить здесь хорошее решение (я не думаю, что отказ от обратной совместимости является хорошим решением здесь).

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

Это, на мой взгляд, веские причины. Я не затрагивал фактическую безопасность ОС, так как не знаю, что дистрибутив Windows или Linux более уязвим, чем другой, когда им управляет опытный администратор. Linux обладает преимуществом открытого исходного кода, в котором любой может найти и исправить ошибки, в то время как Microsoft ввела методы обеспечения безопасности, которые могут работать, а могут и не работать лучше. (Если бы я хотел запустить действительно безопасную ОС, я бы выбрал OpenBSD, ОС с открытым исходным кодом, которая стремится быть защищенной.) Обе ОС имеют хорошие системы разрешений (я предпочитаю Unix, но другие разумные люди не согласны).

Конечно, есть веские причины считать ОС менее безопасными. У некоторых людей есть любимая ОС, и они не теряют возможности ругать других. Некоторые люди не любят Microsoft, Ричарда Столлмана или кого-то другого, или организацию, и клеветают на связанные ОС. Некоторые люди не заметили, что Microsoft изменилась за эти годы, так как не так давно Microsoft действительно не заботилась о безопасности, а Windows действительно была менее безопасной, чем Linux.


-1

Там нет реальной причины, кроме инерции. Я видел, как многие сторонники Linux выдвигают аргументы против Windows (и не только с точки зрения безопасности), которые на первый взгляд кажутся верными, но - которые, если немного копнуть, - применимы только к Windows 3.1 или 95/98.

Я говорил это раньше, но хотя в Windows может быть больше исправлений и т. Д., Это исправления для обнаруженных уязвимостей . И это не те, которые были исправлены , вы должны беспокоиться, не так ли? Я не верю, что быть открытым исходным кодом также является более безопасным. Развертывание собственных патчей может подойти для домашнего пользователя, но корпоративный пользователь или администратор всегда хотят, чтобы Real Thing сертифицировалась для работы (и была полностью протестирована) с различными приложениями и сертифицирована как не нарушающая работу. следующее обновление ядра. То же самое относится и к исправлениям сообщества FOSS.

Итак, в моей книге это смесь инерции, предрассудков и внедрения в культуру UNIX, исключая альтернативы.


-2

Процессы в Linux / Unix не могут изменять свои привилегии после того, как они назначены пользователем, процессы в окнах могут изменять свои привилегии пользователя и изменять их пользователя в середине процесса.

Это суть того, почему окна менее безопасны, чем Linux / Unix.


2
Это верно только в том случае, если контекст, в котором выполняется процесс, имеет права «Действовать как часть операционной системы» (SE_TCB PRIVILEGE). Если вы запускаете процесс с контекстом безопасности, который не имеет SE_TCB PRIVILEGE, тогда процесс не может просто «олицетворять» случайно (NT-ism для принятия другого контекста безопасности) другого пользователя. Если вы запускаете приложение с SE_TCB PRIVILEGE без уважительной причины, тогда вы получите то, что заслуживаете, IMO.
Эван Андерсон

Таким образом, безопасность обеспечивается «контекстом» в соответствии с общесистемным правилом, поэтому Windows менее безопасна, чем Unix / Linux.
Fire Crow
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.