John the Ripper — самая популярная программа для взлома паролей, которая завоевала сердца большинства хакеров и администраторов. Она поддерживает основные алгоритмы шифрования MD5, DES и Blowfish.
Чтобы подобрать пароли, для начала необходимо выполнить следующие команды:
unshadow /etc/passwd /etc/shadow > pass.txt
jhon -incremental pass.txt
С помощью первой директивы мы получаем файл pass.txt, в котором находятся соответствия имен пользователей и паролей. Этот файл можно создать и вручную, перенеся пароли из файла /etc/shadowв файл /etc/passwd, но это занятие не для слабонервных, поэтому лучше довериться программе.
Вторая команда запускает полный перебор паролей. Если у вас есть файл со словарем, то для его использования выполните следующую команду:
jhon -wordfile:filename pass.txt
В данном случае filename
— это имя файла словаря.
В ОС Linux уже есть словарь, который находится в файле /usr/share/dict/words. На заре становления Интернета самый знаменитый вирус Морриса, благодаря подбору паролей по словарю, встроенному в ОС Unix (в те времена Linux еще не было), смог взломать множество систем и заразить самое большое число компьютеров для своего времени. Для того чтобы использовать встроенный словарь, выполните команду:
jhon -wordfile: /usr/share/dict/words pass.txt
На сайте http://packetstorm.sequrity.comесть большая коллекция словарей, которую можно использовать для тестирования своей системы на сложность паролей. Если с помощью такого лексикона вы подберете пароль для одной из своих учетных записей, то поверьте мне, то же самое сделает и хакер.
Если нажать любую клавишу, то на экране будет отображена информация о ходе подбора. Для прерывания программы необходимо нажать сочетание клавиш +. Для продолжения процесса подбора можно выполнить команду:
jhon -restore
Чтобы просмотреть пароли, которые подобрала программа, необходимо выполнить следующую директиву:
jhon -show pass.txt
В течение всей книги мы говорили о безопасной и эффективной настройке ОС Linux и ее сервисов. В данном разделе подведем итог всему сказанному ранее и рассмотрим несколько новых параметров, которые могут сделать систему еще быстрее и надежнее. Эти установки уже относятся к более тонким, поэтому я оставил их напоследок.
Мы уже говорили о том, что лучшим средством повысить безопасность и производительность является загрузка только самого необходимого. От этого напрямую зависит использование памяти и нагрузка на процессор.
После того как вы определились со списком загружаемых сервисов и сократили их до минимума, необходимо позаботиться о настройке каждого из них с учетом целесообразности использования. Здесь опять вступает в дело минимизация возможностей. Например, сервис Apache загружает множество различных модулей, абсолютно ненужных для большинства сайтов.
Каждый лишний модуль — это очередной удар по производительности и безопасности. Закончив с этим, переходим к более тонким настройкам.
Для начала откроем конфигурационный файл /etc/sysctl.conf. В нем находятся параметры ядра. Пример файла можно увидеть в листинге 14.1.
Листинг 14.1. Конфигурационный файл /etc/sysctl.conf
# Kernel sysctl configuration file for Red Hat Linux
# Конфигурационный файл ядра для Red Hat Linux
# For binary values, 0 is disabled, 1 is enabled.
# See sysctl(8) for more details.
# Для бинарных значений, 0 - это отключен, а 1 - включен.
# Смотрите man sysctl для получения дополнительной информации
# Controls IP packet forwarding
# Контролирует переадресацию IP-пакетов
net.ipv4.ip_forward = 0
# Controls source route verification
# Контроль проверки маршрутизации от источника
net.ipv4.conf.default.rp_filter = 1
kernel.sysrq = 1
kernel.core_uses_pid = 1
#net.ipv4.tcp_ecn = 0
kernel.grsecurity.fifo_restrictions = 1
kernel.grsecurity.linking_restrictions = 1
# audit some operations
# аудит некоторых операций
kernel.grsecurity.audit_mount = 1
kernel.grsecurity.signal_logging = 1
#kernel.grsecurity.suid_logging = 1
kernel.grsecurity.timechange_logging = 1
kernel.grsecurity.forkfail_logging = 1
kernel.grsecurity.coredump = 1
# lock all security options
# блокировка всех опций безопасности
#kernel.grsecurity.grsec_lock = 1
Что представляют собой параметры, которые вы можете видеть в файле? Попробуем разобраться на примере net.ipv4.tcp_ecn
. На самом деле это путь к файлу относительно каталога /proc/sys, в данном случае это файл /proc/sys/net/ipv4/tcp_ecn. Как видите, я просто заменил в параметре все точки на символ слэш и прибавил результат к подкаталогу /proc/sys. Выполните следующую команду, чтобы просмотреть содержимое файла:
Читать дальше
Конец ознакомительного отрывка
Купить книгу