Linux, безопасность и все такое… (вдогонку)

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

    rkhunter



    Простенькая, но эффективная программа для отслеживания руткитов. Устанавливается элементарно:
    apt-get install rkhunter
    Дальше обновляем базы:
    rkhunter --update
    И запускаем проверку:
    rkhunter --check
    Очень полезным будет открыть файл /etc/rkhunter.conf и раскомментировать строчку MAIL-ON-WARNING, добавив туда свой почтовый адрес.
    Последним шагом имеет смысл прописать в крон ежедневный (или еже нощный) запуск проверки, и за завтраком просматривать в почте присланные логи проверки.

    tripwire



    Это уже инструмент посерьезней. Он хранит снимок текущей файловой системы (вплоть до используемых файлами инодов) и рапортует любые изменения (привет любителям автоапдейтов).
    Опять-таки:
    apt-get install tripwire
    Задаем при установке отдельно пароль для генерации ключей и полиси, и второй пароль для базы данных.
    После установки правим файлы /etc/tripwire/twcfg.txt и /etc/tripwire/twpol.txt, делаем инициализацию БД:
    tripwire --init
    и запускаем пробную проверку
    tripwire --check
    На выходе получаете туеву хучу сообщений об отсутствующих файлах. В базовой поставке tripwire упоминаются все возможные варианты файлов, поэтому правите опять файл политик /etc/tripwire/twpol.txt и обновляете его:
    tripwire --update-policy /etc/tripwire/twpol.txt
    Опять-таки, как и в предыдущем случае, проверяем, ходит ли к вам почта:
    tripwire --test --email адрес
    и создаем в кроне задание с ключиком --email-report

    Но не стоит расслабляться — если уж злоумышленник получит рутовые права на вашей тачке, то ему не составит труда просто переустановить tripwire со своими ключами, и вы будете все так же получать репорты в стиле «Все хорошо, прекрасная маркиза», пока в один прекрасный день не надумаете обновить конфиг или полиси и не получите сообщение о неверном пароле.

    Будьте бдительны!
    Поделиться публикацией

    Похожие публикации

    Комментарии 81

      0
      Вот интересно от троллей хоть раз услышать коммент — что я такого ужасного написал, что мне накидали минусов в карму?
      • НЛО прилетело и опубликовало эту надпись здесь
          +6
          В отличии от поста на который ссылаетесь в начале, ваш полезен, спасибо.
            –3
            Это такая традиция тут.
              +7
              Это, подозреваю, какой-то скрипт у кого-то стоит. Я запостил статью, через 15 секунд открыл исправить опечатку, записываю — уже стоит -1 статье и -1 в карме. За такое время статью прочесть может только робот.
              Ну или это происки виндузофила, минусующего все статьи про Линукс :)
          • НЛО прилетело и опубликовало эту надпись здесь
              +9
              Ничего подобного. Я сам дома и на ноуте держу убунту, удобно. Просто упомянуто для примера, ибо «поставить маме генту» звучит скорее как издевательство :)
                –1
                Кто-то должен сильно не любить свою маму.
                  +1
                  если маму садишь в первый раз за комп, и:
                  — показываешь где лежат картинки, музыка и кино и как их запускать
                  — куда надо тыцнуть, чтобы запустить маджонг или пасьянс,
                  то она будет считать эту ubuntu чем-то новым. Таким же точно, как и windows. А какой он, этот windows или эта ubuntu ей по барабану.
                    +6
                    Я продолжил шутку про маму и генту. У самого вся родня сидит на Убунте. (:
                    После того как мама села за Винду после Убунты у нее было два нарекания:
                    1. мало игр и 2. Не нашла где Файрфокс.
                      –1
                      а моя сказала «ух ты, сколько новых игр!» :)
                    +2
                    Не соглашусь с вами =).
                    От мамы не требуется что-то собирать самой =). Все что нужно поставить и настроит сын заранее.

                    Раз в месяц можно даж обновить чего-то оставив комп на ночь.

                    Пользоваться и обслуживать это две разные вещи =). Наверное вы их путаете.
                      +1
                      Да, вы правы. Но в случаи Генты о телефонном саппорте можно забыть. (:
                        0
                        Устанавливать, пользоваться и обслуживать — это три разные вещи. Пользование зависит только от качества настройки. Установка проще у Ubuntu, обслуживание — в Gentoo. (ибо сам систему собирал и знаешь где что чинить :) )
                          0
                          Огадащас. Собирал портаж. А чинить чонить в openrc скажем не проще чем денить еще
                            +1
                            Минусующие никогда не сталкивались с внезапными багами в построении дерева зависимостей сервисов?
                              0
                              У меня заряд кончился, но, тем не менее, не сталкивались. Ни на нетбуке, ни на домашнем почто-ftp-много-чего-ещё-сервере.
                    • НЛО прилетело и опубликовало эту надпись здесь
                        0
                        Ну слишком он простой. Линуксоид привык гордится тем, что не ищет новых путей. (;
                        Когда я только вставал на юникс/линукс мне говорили: он юзер френдли, но он сам выбирает с кем дружить. А тут получается, что нет… со всеми дружит. Рушится ореол избранности (о;
                    • НЛО прилетело и опубликовало эту надпись здесь
                      • НЛО прилетело и опубликовало эту надпись здесь
                          0
                          Например vlc 1.02 из репозитария убунты имеет багу при питании от батарей при проигрывании видео отрубается экран и не блокируется заставка, в независимости от настроек vlc.
                          Если стыбрить 1.03 с лачпада проблема частично решается(ручной правкой конфига)
                          Предыдущая версия такой проблемы не имела.
                          • НЛО прилетело и опубликовало эту надпись здесь
                            • НЛО прилетело и опубликовало эту надпись здесь
                              • НЛО прилетело и опубликовало эту надпись здесь
                                • НЛО прилетело и опубликовало эту надпись здесь
                          • НЛО прилетело и опубликовало эту надпись здесь
                            • НЛО прилетело и опубликовало эту надпись здесь
                              • НЛО прилетело и опубликовало эту надпись здесь
                          +6
                          Спасибо автору! Не знал о таких утилитах.
                            +5
                            Если вы домашний пользователь — пользуйтесь дистрибутивами с подписанными пакетами. Дебианом там, RPM'based и пр. ставьте пакеты только из репов. Это практически 90% гарантия того, что все будет ок. Периодически просматривайте netstat -ptun, getent passwd | grep ":0:", добавьте в /etc/security/access.conf только своего пользователя, запускайте сетевые сервисы с публичным доступом из chroot и смотрите хоть иногда в логи. Это 95% того, что с вами все будет хорошо. Существует некоторое количество случаев, когда вышеперечисленных мер может быть недостаточно — основная — это дыры в ядре, и дыры в башке администратора на сервере с шелл доступом. От первого вы едва ли можете быть защищены. Но ремот руты — достаточно редкое явление. Иногда бывают локал руты. Локал рут может быть опасен тогда, когда у вас в сетевом сервисе есть дыра. Например у вас старый дырявый phpbb, и старое дырявое ядро. Но в таком случае вам ваще ничего не поможет. Ни rkhunter, ни tripware.
                              –1
                              > Если вы домашний пользователь — пользуйтесь дистрибутивами с подписанными пакетами. Дебианом там, RPM'based и пр.
                              Или Gentoo. Там даже архивы исходников, скачиваемых с сайта разработчика подписываются. Бывают проблемы, если разработчик, ничего не сказав выпускает какой-нибудь hotfix, не изменяя имя архива.
                                –1
                                В генте что-то подписывается? Где? Покажите плз
                                  0
                                  в манифестах к ebuild'ам
                                    0
                                      0
                                      Очевидно. MD5? ^.^
                                        +4
                                        Вы хэши от подписей отличить можете?
                                      +4
                                      На минуточку: хэш-суммы — это не подпись.
                                        0
                                        прошу прощения, ввёл вас в заблуждение. да, в манифестах содержатся только хеш-суммы файлов, загружаемых в процессе emerge. а снепшоты дерева портежей, которые включают в себя и манифесты в свою очередь подписываются. обратите внимание на файлы с подписями (gpgsig) в ваших distfiles. не забывайте ставить webrsync-gpg в FEATURES и обновляйте дерево портежей через emerge-webrsync
                                  +3
                                  Я ожидал selinux и apparmor, а это так, когда почки отвалились.
                                    0
                                    SELinux это круто конечно, но кажется единственные дистрибутивы где оно работает искаробке — это всякие редхеты.
                                      0
                                      Вот экземплярчик с закрученными донельзя гайками из коробки:
                                      www.engardelinux.org/
                                        0
                                        Если исключить всякие редхеты (fedora,centos, etc) selinux есть в последних версиях openSUSE. Так же в ubuntu есть пакеты для selinux.
                                          +2
                                          Везде оно работает, если руки прямые.
                                            0
                                            … после недель сношания на рисование политик и с внеапными проблемами
                                              0
                                              Ну мне хватило двух дней чтения документации.
                                                0
                                                Двух дней, что бы нарисовать политики ко всему в системе? Вы просто волшебник
                                                  0
                                                  Зачем всей системе? Только то, что не входит в стандартную поставку.
                                            0
                                            А для серверов они самое оно.
                                            Для home user есть Suse с её apparmor.
                                          0
                                          по поводу рута…
                                          Была у меня такая фишка во времена паранойи. У меня, по входу рута в систему, высылалось мыло на почту с данными откуда вошли. Одна строчка в .bashrc, а столько приятного. так же и пользователей можно отслеживать, если совсем уж почтовый трафик девать некуда.
                                            0
                                            > Одна строчка в .bashrc

                                            Лучше в pam модуль, .bashrc — одноразовая фигня ))
                                              0
                                              А в случае со входом рута или юзверя не с того адреса больше и не надо =)
                                              Вот у меня встречный вопрос: pam штатными средствами? я просто не видел такого функционала.
                                                0
                                                pam очень просто дописывается. API простой как угол дома. К тому же если вы точно знаете, с каких адресов можно заходить, просто добавьте соответстующие записи в access.conf (=
                                                  0
                                                  я порой с 3G модема хожу, порой прям с телефона, иногда (каюсь) из публичных мест. Так что access.conf не вариант. =(
                                                    0
                                                    Письмо с IP вам тогда тоже ничего не даст. Вообще самая нормальная тема — сетевой лог. Если домашняя машина, то вообще можно расслабиться. Только надо поставить в ssh клиенте принудительно протокол 2, и фингерпринты установить как положено
                                            +3
                                            rkhunter -update
                                            rkhunter --update

                                              0
                                              Спасибо, исправил. Что-то меня проглючило, когда писал.
                                              +3
                                              это все прекрасно конечно, но что мне делать если rkhunter, после всех этих телодвижений, выдал ворнинги?
                                                0
                                                угу с инсталлом-то всё понятно, а дальше что?
                                                  +1
                                                  Попробовать разобраться?!
                                                    0
                                                    Почитать лог?
                                                  • НЛО прилетело и опубликовало эту надпись здесь
                                                      0
                                                      Чувствую подвох, а понять не могу, в чем :)
                                                        0
                                                        Соц. эксперимент очередной. Заплюсуют или заминусуют. Судя по динамике изменений, около 30-40% ставят +.
                                                          0
                                                          а вы бесстрашный фантазер, однако :)
                                                      +2
                                                      в избранное
                                                        0
                                                        Обращусь за ответами, как к посту приемнику со следующими вопросами:
                                                        habrahabr.ru/blogs/linux/81724/#comment_2428247
                                                        habrahabr.ru/blogs/linux/81724/#comment_2428291
                                                          0
                                                          Если ты сам обновил какую-то часть системы, а потом заапдейтил эти изменения в базу — тут ни один тул не поможет. Разве что случай какого-то популярного руткита, тогда ркхантер сработает на него.
                                                            0
                                                            решение — не ставить ничего из PPA?
                                                              0
                                                              Ну, можно еще на улицу не выходить, чтобы сосулька на голову не упала, и не трахаться, чтоб ничем не заразиться…
                                                              Главное — не заморачиваться, и все будет ок :)
                                                                0
                                                                Если честно, сильно не парюсь. Под виндой никогда самостоятельно вирусов не ловил, сидя за НАТом без антивирусом. В линуксе, соответственно переживаю ещё меньше, но вот это иногда и пугает. Полная уверенность может сыграть злую шутку. Я не знаю названия и предназначения всех стандартных процессов и вывод ls мне ничего не даст, и т.д. У меня нет опыта работы с паразитами под линукс и в случае их появления, я даже их не замечу
                                                          –1
                                                          А rkhunter ищет только известные ему руткиты и если написать новый то не найдет?
                                                            +1
                                                            Ну напишите новый и проведите тест. Очевидно же!
                                                            0
                                                            Стоит упомянуть о классике жанра snort ну и ossec не забыть… а сколько всего самописных парсеров netstat и всяких logов с генерацией правил для iptables…
                                                              0
                                                              rkhunter попросил установить для себя пакет unhide и сразу засунул его в warning при первой же проверке, и не нашёл php, хотя оно есть и устанавливалось из репозитория.
                                                              Тем не менее, после проверки я как-то спокойнее себя чувствую, спасибо.
                                                              • НЛО прилетело и опубликовало эту надпись здесь
                                                                0
                                                                Коллеги, как назло вылето из головы название демона, который отслеживает все изменения файлов и находится во всех ОС Linux. Он стандартный, не tripware, вроде на 'a' начинается, напомните пожалуйста
                                                                  0
                                                                  audit, вспомнил) Вот это замечательный демон, очень фнкциональный, а прекрасные правила для него можно взять в соответствующей рассылке.
                                                                  0
                                                                  > Но не стоит расслабляться — если уж злоумышленник получит рутовые права на вашей тачке, то ему не составит труда просто
                                                                  > переустановить tripwire со своими ключами, и вы будете все так же получать репорты в стиле «Все хорошо, прекрасная маркиза»

                                                                  вообще, если под линухом кто-то украл ваш пароль — то битву вы уже проиграли. Человек умелый (разумный) однозначно сможет замаскироваться в системе так, что его и под лупой не найдёшь. Только если специально не сесть и не начать искать, зная что что-то не так.

                                                                  а в случае с серверами, доступ к закрытой информации уже будет получен и базы уже стырены, так что поздно.

                                                                  следовательно, я бы советовал сосредотачиваться на превентивных мерах — частая смена паролей (а лучше и вовсе отказ в пользу ключей), обновление всего и вся регулярно (до стейбл), отказ от «не стейбл» пакетов и тому подобное.

                                                                  а если же понадобится очень жесткий контроль на userspace программками, то это явно надо делать из kernelspace :). И, уверен, если понадобится — появится. Сейчас же надобности в этом нет вообще.
                                                                    0
                                                                    в указанном топике, в одном из комментариев упоминается отчет о взломе серверов debian. Так вот дебиановцы на своих серверах используют aide. Судя по описанию — нечто наподобие tripwire, т.е. отслеживает изменение файлов, заданных регулярными выражениями в конфиге, по контрольным суммам. как аналог tripwire предлагаю добавить с статью
                                                                    • НЛО прилетело и опубликовало эту надпись здесь

                                                                      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                      Самое читаемое