Pull to refresh
62

DevOps/SRE

0,3
Rating
5
Subscribers
Send message
Напомню, началось всё с того, что ccrypt заявил, что механизмы безопасности Linux не допустят полного контроля за системой. А не допустит этого банальное разграничение прав и работа из ограниченной учётной записи. Плюс те механизмы (по ссылке), которые предотвращают потенциальную эксплуатацию уязвимостей (атака на стек, кучу, перезапись указателей и т.д.), что сразу срезает целый спектр атак. Перечислю основное: защита стека — Stack-Smashing Protector, интегрированный в gcc, значительно превосходит /GS из VS; защита кучи; обфускация указателей; ASLR действует шире, чем в Windows (об этом ниже), Fortify Source, Non-Executable Memory и т.д.

Теперь про виндовые средства защиты.
1) ASLR. Во-первых, в «безопасном» Windows ASLR появился на 2 года позже, чем в Linux (что уже не важно, но как бы намекает). Во-вторых, по умолчанию ASLR в Windows распространяется только на исполняемые файлы и библиотеки, непосредственно прилинкованные с поддержкой ASLR, то есть сторонний софт остаётся незащищённым. В-третьих этот ASLR научились уже успешно обходить (JIT Spray).

2) Атаки на DEP (при помощи техники ROP): отключение DEP, вызовы VirtualProtеct/VirtualAlloc и memcp. Плюс всё тот же JIT Spray. Подробно.

3) Buffer overrun protection. Это вообще не совсем удачная попытка скопировать Stack Guard в Visual Studio. Canary Word защищает только адрес возврата и кадр стека. Остальные переменные остаются незащищёнными, что также позволяет перезаписывать указатели. По сути это позволяет переписать саму Canary Word, которая как раз-таки и защищает стек. К тому же, этот самый флаг компиляции /GS касается только защиты стека. А как же куча, целочисленные переполнения и прочее?

P.S. Безопасность Windows всё-таки сосёт.
С такими попытками лучше поможет справиться опция монтирования noexec.
Давай-ка вопросом на вопрос отвечать и «стрелки переводить» не будем?

А про «buffer overrun protection, DEP, ASLR, ACL-ы, Code Integrity» рассказывать не надо. В Linux некоторые из этих технологий появились даже раньше, при чём в более лучшем исполнении.
Только при условии, что скрипт и sudo были запущены на одном терминале.
Получается, что этот .deb можно будет легко удалить из системы с помощью sudo apt-get remove? :)
> Ну давайте уже сравнительный анализ. Какие именно «механизмы безопасности линукс» не допустят, ага.

Возьмём самый популярный дистрибутив Linux'а — Ubuntu: wiki.ubuntu.com/Security/Features. А теперь объясните, какие преимущества перед этим имеет система безопасности Windows? Давайте проведём сравнительный анализ, если уж так хотите, вот только аналогичный списочек секьюрити-фич в Windows предоставьте.
> abeshkov, конечно в разы компетентнее меня в вопросах безопасности. И Вас, кстати, тоже.

Можно поподробнее?
И даже то, что некоторые технологии защиты появились раньше в Linux, чем в Windows вам тоже не о чём не говорит. В пример — ASLR и работа из ограниченного пользователя по умолчанию. Интересно, зачем разработчики этим занимаются, если, как вы говорите, никакой угрозы пока нет?
И, кстати, ASLR распространяется только системные программы и библиотеки. Чтобы включить для всей системы нужно править реестр.
Также ознакомьтесь: www.symantec.com/avcenter/reference/Address_Space_Layout_Randomization.pdf
Я уже кидал ссылку, на которую вы ничего не смогли ответить: wiki.ubuntu.com/Security/Features. С каждым новым релизом дистрибутива количество возможностей обеспечения безопасности только увеличивается. Как минимум это говорит о том, что разработчики уже заботятся о безопасности системы. Так в чём же безопасность Ubuntu уступает Windows? Хотя бы приведите аналогичный список возможностей безопасности Windows — сравним.

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

Может быть это проблема в пользователях, а не в ОС? Linux наоборот приучает ставить софт только из доверенных источников (репозиториев). А чтобы запустить скачанный бинарник, нужно сначала поставить бит выполнения. Как-то неудобно получается заразить свою систему, да?

> Ваш взгляд на широту системы защиты Linux не подтвержден ничем.

См. ссылку выше.

> Опять же никнейм и история о том как вас поймали за взломом, тоже на многое намекает.

Что не так с никнеймом? На что намекает та история? Якобы на мою некомпетентность? А свидетельства вашей компетентности в вопросах безопасности можете предоставить? И, вообще, как связано то, что меня поймали, с моими познаниями в области безопасности операционных систем? Вы ведь даже подробностей той истории не знаете. Так что не надо на личности переходить, а пишите по существу вопроса.

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

Вот вы любите просить ссылки на всякие исследования, и в то же время ваши слова на счёт будущего Linux — это не более чем ваши догадки. Я тоже считаю ваши ничем не подкреплённые заявления не более чем пророчествами.
Обход UAC: www.exploit-db.com/exploits/15609/
Обход DEP и ASLR, используя технологию JIT Spray: www.exploit-db.com/exploits/14514/
www.exploit-db.com/exploits/14599/
Точно такую же атаку применяли, чтобы взломать IE8 и Firefox:
исследование.
> А под Windows вместо антивируса можно использовать DEP и UAC. Пока не дашь разрешения ничего не запустится. :)

Ага, теперь под Windows можно и без антивируса, а Linux'у, при наличии схожих систем защиты (даже более широких, на мой взгляд), вы предрекаете кучу атак и необходимость иметь антивирус?

Возникает противоречие и видится некая предвзятость.
По-вашему отлов и исследование вирусов — занятие такое простое, относительно того, что вы написали выше?
Если вы всё знаете, то о какой голой системе идёт речь?
Я верю в сообщество. К тому же, чтобы создать правило для определённого приложения в AppArmor или SELinux, таким уж экспертом не надо быть.
> А обучать apparmor и selinux сами будете?

При растущей угрозе как раз этим и займутся, а не антивирусами.
> Для умного человека это уже повод задуматься и перестать надеяться на неуязвимость голой системы с закрытыми файерволом портами. Как минимум нужен антивирус.

wiki.ubuntu.com/Security/Features (я бы не сказал, что система голая, механизмов защиты предостаточно). Ну а вообще на никсах другие подходы к обеспечению безопасности. Например, установка софта из репозиториев + централизованное обновление всего софта, а не только самой ОС.
> В тоже время вся ваша защита это лишь ненужность атакующему.

Вы действительно считаете, что ненужность атакующему — это вся защита Linux'а? Ну даже если это так, то пользователь всё равно остаётся в выигрыше, потому что никакие винлокеры ему не грозят.

> Если бы в вашей системе было бы хоть что то ценное вашу ОС уже давно бы взломали.

Интересно, каким образом, если, например, в той же Убунте по умолчанию все порты закрыты.
Ok, как будет время — напишу =)

Information

Rating
2,849-th
Registered
Activity

Specialization

DevOps-инженер, Инженер по доступности сервисов
Linux
Kubernetes
Bash
Docker
CI/CD
Git
Ansible
Terraform
Golang
Python