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


12

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

На мою думку, хоча здається, що користувачі Windows більше схильні до вірусів та вразливостей, я вважаю, що це, в основному, пов'язано з тим, що більшість користувачів Windows є менш досвідченими користувачами комп’ютерів, а платформа Windows залучає більше зловмисників, оскільки в неї є більше користувачів.

Мені хотілося б знати, чи є детальніші статті чи папір, які порівнюють механізми та конструкції безпеки в Windows та Linux?


1
Чудове запитання. Мене вже багато років цікавить, як * nix може бути більш безпечним, оскільки NT має єдиний базовий принцип безпеки та добре встановлений спосіб розширення безпеки з машинного рівня через мережевий стек. * nix просто має облікові записи користувачів, безпеку файлів та підсистему мережевої безпеки, яка була задумливою.

4
У Linux є і DAC, і 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 та багатьох інших утилітів, призначених для запобігання Heap та Форматування рядкових атак від успішного. Суворо з точки зору доступу, існує чимало розширень до застарілої поточної системи.

Якщо процес ділення атаки є проблемою для вас, а же не бути , що норовливий Unix Admin, але Windows , постраждав далеко , далеко , гірше

Словом, якщо ти лінивий, тобі краще з Windows. Якщо ви старанні, вам часто краще з * Nix (з точки зору безпеки)


"Ніхто не заперечить, що писати переповнення буфера в Windows значно складніше, ніж на Linux"? Ти серйозно? Це причина перших помилок програмного забезпечення Windows і використовується регулярно як вектор атаки.
Джон Гарденєр

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

2
@John - Я мав на увазі процедурно, в Linux все, що вам потрібно зробити, - це викрадення зберігається EIP, нерестовий баш з обгорткою getuid (setuid ()) і в 99,9% випадків, що не є ASLR'd / StackGuarded, ви готові йти. Якщо ви коли-небудь писали B0F в програмі Win32 / 64, вам відомо про проблеми з маркерами, які є тривіальними, але дратують і часто порушують спроби розбиття стека, Серед інших механізмів захисту, які застосовує MS. Крім того, AFAIK, Зрештою, Use-After-Frees було СУБСТАНТИЛЬНО популярніше використовувати в додатках Microsoft (імовірно, через перемикач / GS). Вибачення за неоднозначність.
ŹV -

Я радий, що ти це пояснив, адже це, звичайно, не так, як я це прочитав.
Джон Гарденєр

Причину написання переповнення буфера на Windows важче, тому що в пізніших версіях Windows стільки програм буфероване, що замість того, щоб безкоштовно випускати інструменти, щоб знайти перевитрати, як в unix (valgrind), вони вирішили поставити пам'ять, що не ман приземляється навколо кожного виділення, щоб зменшити можливість потрапляння на якусь критичну пам'ять. Ось чому вікна 10 + 7 "здаються" надійними та "стабільними".
Сова

2

Ось детальна стаття, яка потрапляє до основи цього питання - неважливо, наскільки потужною і детальною є ваші системи контролю доступу та безпеки ... якщо її занадто складне для їх правильного встановлення, у вас з’являться дірки безпеки. У цьому випадку її складність систем - чим більше «поверхня», тим більше шансів на помилку безпеки.

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


Посилання на регістр має деякі фактичні неточності щодо дозволу / заборони, але в іншому випадку це цікава перспектива.
Максим Мінімус

1

Мені хотілося б знати, чи є детальніші статті чи папір, які порівнюють механізми та конструкції безпеки в Windows та Linux?

Це один звук відносно добре для моїх недосвідчених очей ... застарий і трохи зміщений, але не так багато.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.