Могут ли руткиты быть эффективными для пользователей без полномочий root?
После неправильной интерпретации значения этого вопроса мне интересно, могут ли руткиты и другие вредоносные программы быть эффективными, если у пользователя нет прав root.
У меня есть простая электронная таблица для ведения домашнего учета с двойной записью, которая прекрасно работает, за исключением одной строки, где в условном форматировании я использую SUM () со значениями £ -23,99, £ 8,00 и £ 15,99. Если результат не равен 0, я получаю красный фон, чтобы предупредить меня, что я не сбалансировал линию. Упомянутая линия имеет красный фон.Глядя на каждое из значений без формата валюты, они, как ожидается, с точностью до 20 знаков после запятой (например, -23.99000000000000000000). Однако результат SUM (x, y, z) возвращает 3.6E-015 только для этой строки. Все остальные ряды в порядке. Если я повторяю один и тот же набор данных в другой строке, я получаю ту же ошибку. Что особенного в этих числах?
Очевидно, я могу исправить это, округлив свой результат, но мне интересно, является ли это известной ошибкой?
2 ответа
Что ты должен знать
Linux не застрахован от передовых вредоносных программ, таких как руткиты и троянские кони, а также от эксплойтов Zero Day.
В любом общем дистрибутиве Linux руткит может использовать социальную инженерию для кражи пароля root; он также может использовать эксплойт памяти, если система не обновлена, и выполнять сценарий оболочки как администратор без участия пользователя и без видимых эффектов.
На Ubuntu, где sudo
часто устанавливается, но неправильно настроен, вредоносному ПО просто необходим пароль текущего пользователя для выполнения административных действий и заражения системы.
Если у вас установлены исполняемые файлы setuid и они используют интерпретатор (как, например, старые версии Nmap
сделал), они могут быть использованы для обхода барьера учетной записи и выполнения административных действий.
Современные руткиты попытаются всеми возможными способами получить root-доступ и загрузить новый модуль ядра, чтобы получить общие привилегии и скрыть другие инфекции.
Как защитить себя
Основные меры предосторожности
Я сделал небольшой список задач:
- Никогда не давайте пароль root вашим пользователям в многопользовательской системе;
- Никогда не вставляйте пароль root в ненадежные приложения (загруженные из неофициальных репозиториев), если это не является абсолютно необходимым;
- Обновляйте свою систему Ubuntu по крайней мере каждый месяц из официального репозитория и оставляйте только последние 2 обновленных ядра установленными.
- Не используйте нестабильное или разрабатываемое программное обеспечение.
- использование
gufw
или другая оболочка для настройки брандмауэра и блокировки неиспользуемых портов для IN/OUT:TCP и IN/OUT:UDP. - конфигурировать
passwd
ввести минимальную длину пароля, потому что вредоносная программа может взломать слабые пароли.
После этого установите и используйте tiger
проверить наличие проблем безопасности в вашей системе.
Расширенные меры предосторожности
Эти меры предосторожности значительно улучшат вашу безопасность, но они требуют регулярного обслуживания после установки нового программного обеспечения и предназначены для опытных пользователей:
- использование
SELinux
для защиты разумных файлов конфигурации,sudo
одна предлагает ограниченные гарантии безопасности от экспертов по безопасности. Вам следует обратиться к официальному справочнику перед его использованием, поскольку он может ограничить права root-доступа и заблокировать вас, если не настроен правильно. Это очень продвинутый и мощный инструмент, экспериментируйте на виртуальной машине, прежде чем использовать ее в производстве. - использование
Apparmor
(устанавливается по умолчанию в Ubuntu), который обеспечивает защиту, ограничивая программу определенным набором каталогов и гарантируя хорошую защиту даже нетехническим пользователям. Чтобы начать работу с ним, вам необходимо установить "профили" Apparmor в некоторые распространенные программы. Вы можете установить их так:sudo apt install apparmor-profiles apparmor-profiles-extra apparmor-utils
а затем включите их, запустивsudo aa-enforce /etc/apparmor.d/*
, Firejail
представляет собой простую в использовании изолированную программную среду, которая снижает риск взлома безопасности, ограничивая рабочую среду ненадежных приложений несколькими методами. Вы можете использовать его, чтобы изолировать ваш веб-браузер и получить дополнительную защиту от эксплойтов в памяти.
Все эти меры предосторожности повысят безопасность соответствующих зон воздействия, но уменьшат производительность всей системы, если оборудование устарело. На самом деле, мы часто находим их на корпоративных серверах, чтобы защитить важные (или общедоступные) сетевые узлы.
Спасибо user311982 за полезные предложения.
Даже если Linux более безопасен, чем другие системы, это не значит, что он неуязвим. Мой маленький гид не является исчерпывающим, не стесняйтесь комментировать здесь, если у вас есть дополнительные вопросы.
По определению руткит не является набором для получения привилегий root; скорее, это набор для хранения их, как только они были получены. Таким образом, руткит в самом строгом смысле бесполезен без прав root.
Конечно, в реальной жизни руткиты, скорее всего, станут частью большого вредоносного пакета, который обычно извлекается и разворачивается дроппером и содержит различные эксплойты, предназначенные для получения привилегий root. Можно в разговорной речи назвать весь этот пакет как "руткит", поскольку руткит является полезной нагрузкой, и хотя это не является технически точным способом обращения к нему, разделение этих волосков не обеспечит вашей системе безопасности.:)
Если вы обычный пользователь, вам следует позаботиться о том, чтобы не вводить в систему вредоносное ПО. Если вы все-таки получите root, вы будете совершенно беспомощны, если будете иметь права root.
Тем не менее, изучив вредоносное ПО достаточно широко, я советую, что если вы знаете, что система каким-либо образом заражена вредоносным программным обеспечением (независимо от уровня разрешений), вы должны предположить, что все это теперь является вредоносным, и уничтожить его огнем, что скажем, протрите жесткий диск и переустановите, сохранив как можно меньше данных, которые были отсканированы из действующей ОС с использованием нескольких антивирусных программ.
Единственный неспециализированный случай, когда это не будет правильным курсом действий, - это если вы доверяете вредоносным программам, чтобы они не делали ничего слишком вредоносного. Но почему вы доверяете вредоносным программам, чтобы они не были вредоносными? Похоже, проигрышная стратегия для меня.