Контроль доступа: Windows против Linux


12

Я читаю лекции MIT 6.893, в которых говорится, что защита в Unix - это беспорядок, а не базовый принцип , и также отмечается, что у Windows есть лучшие альтернативы, которые могут передавать привилегии от одного процесса другому через IPC .

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

Я хотел бы знать, есть ли более подробные статьи или статьи, в которых сравниваются механизмы и конструкции безопасности в Windows и Linux?


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

4
В Linux есть как ЦАП, так и MAC. DAC - это учетные записи пользователей, MAC - SELinux и AppArmor.
LiraNuna

пусть бой начнется;)
Кристиан

3
Безопасность не начинается и не заканчивается контролем доступа. Кто бы ни написал то, что вы цитируете, опасно узок и / или невежественен. Есть буквально миллионы статей, написанных на эту тему, поэтому не должно быть слишком сложно найти что-то, если вы просто посмотрите.
Джон Гарденье

1
Это, конечно, интересный вопрос, но, к сожалению, любая тема Linux и Windows потенциально может привести к фейерверку, поэтому я голосую, чтобы закрыть.
Максимус Минимус

Ответы:


2

Никто не станет оспаривать, что переполнение буфера записи в Windows значительно сложнее, чем в Linux. Кроме того, система ACL в Windows во многих отношениях значительно превосходит систему * nix ( все еще возможно использовать setpgid () для выхода за пределы chroot () / jail () и передачи токенов psuedo-root в эффективный UID 0). ).

ТЕМ НЕ МЕНИЕ.

Linux, BSD, Solaris и AIX обладают тем преимуществом, что имеют пользовательские исправления, которые реализуют очень впечатляющие функции безопасности. Я бы назвал проекты PaX / GrSEC , которые, независимо от недостатков безопасности в последние несколько лет, установили стандарт для реализации рандомизации структуры адресного пространства, аналогично для StackGuard, W ^ X и многочисленных других утилит, разработанных для предотвращения кучи и Формат строки атаки от успеха. Строго говоря, с точки зрения доступа, существует много расширений по общему признанию устаревшей действующей системы.

Если процесс деления атаки являются проблемой для вас, а не быть , что своенравный Unix Admin, но Windows , пострадал далеко , далеко , хуже

Короче говоря, если вам лень, вам лучше с Windows. Если вы усердны, вам часто лучше с * Nix (с точки зрения безопасности)


«Никто не станет оспаривать, что переполнение буфера записи в Windows значительно сложнее, чем в Linux»? Ты серьезно? Это причина номер один ошибок программного обеспечения Windows и обычно используется в качестве вектора атаки.
Джон Гарденье

2
Я бы на самом деле утверждал, что вам лучше использовать то, что вы знаете лучше всего, поскольку гораздо проще неправильно настроить систему безопасности на ОС, с которой вы не знакомы (было бы интересно посмотреть статистику о том, какой процент инцидентов безопасности был на самом деле результат этого).
Максимус Минимус

2
@John - я имел в виду процедурно, в Linux все, что вам нужно сделать, это перехватить EIP, хранимый в хакере, spawn bash с оболочкой getuid (setuid ()) и в 99,9% случаев, не относящихся к ASLR / StackGuarded, вы готовы идти. Если вы когда-либо писали B0F в Win32 / 64, вам известны проблемы с токенами, которые являются тривиальными, но раздражающими и часто мешают попыткам разрушения стека, среди других механизмов защиты, которые реализует MS. Кроме того, AFAIK, В конце, Use-After-Frees были СУЩЕСТВЕННО более популярны для использования в Приложениях Microsoft (Предположительно, из-за ключа / GS). Извиняюсь за двусмысленность.
ŹV -

Я рад, что вы это объяснили, потому что это, конечно, не так, как я это читаю.
Джон Гарденье

Причина, по которой переполнение буфера в Windows сложнее, заключается в том, что в более поздних версиях Windows столько приложений буферизовано, что вместо того, чтобы бесплатно выпускать инструменты для поиска переполнений, как в unix (valgrind), они решили разместить вокруг себя пустую память. распределение, чтобы уменьшить возможность попадания в критическую память. Вот почему windows 10 + 7 «кажется» надежным и «стабильным».
Сова

2

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

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


Ссылка на регистр имеет некоторые фактические неточности в отношении разрешения / запрета, но в остальном это интересная перспектива.
Максимус Минимус

1

Я хотел бы знать, есть ли более подробные статьи или статьи, в которых сравниваются механизмы и конструкции безопасности в Windows и Linux?

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.