MyBooks.club
Все категории

Михаил Флёнов - Linux глазами хакера

На сайте mybooks.club вы можете бесплатно читать книги онлайн без регистрации, включая Михаил Флёнов - Linux глазами хакера. Жанр: Программное обеспечение издательство -,. Доступна полная версия книги с кратким содержанием для предварительного ознакомления, аннотацией (предисловием), рецензиями от других читателей и их экспертным мнением.
Кроме того, на сайте mybooks.club вы найдете множество новинок, которые стоит прочитать.

Название:
Linux глазами хакера
Издательство:
-
ISBN:
-
Год:
-
Дата добавления:
17 сентябрь 2019
Количество просмотров:
376
Читать онлайн
Михаил Флёнов - Linux глазами хакера

Михаил Флёнов - Linux глазами хакера краткое содержание

Михаил Флёнов - Linux глазами хакера - описание и краткое содержание, автор Михаил Флёнов, читайте бесплатно онлайн на сайте электронной библиотеки mybooks.club
Рассмотрены вопросы настройки ОС Linux на максимальную производительность и безопасность. Описаны потенциальные уязвимости и рекомендации по предотвращению возможных атак. Дается подробное описание настройки прав доступа и конфигурирования сетевого экрана. Показано, как действовать при атаке или взломе системы, чтобы максимально быстро восстановить ее работоспособность и предотвратить потерю данных.Для пользователей, администраторов и специалистов по безопасности

Linux глазами хакера читать онлайн бесплатно

Linux глазами хакера - читать книгу онлайн бесплатно, автор Михаил Флёнов

robert:x:501:501::/home/robert:/bin/bash

Третий и четвертый параметры — это идентификаторы пользователя и группы соответственно. Когда на объекты выделяются права, то система сохраняет только идентификаторы. Что это значит? Допустим, что у вас есть пользователь robert с идентификатором 501. Вы создали еще одного пользователя Dan и дали ему такой же идентификатор. Теперь обе учетные записи с одинаковыми ID будут разделять владение одними и теми же объектами.

Что это нам дает? Посмотрите на идентификатор пользователя root — он равен нулю. Именно нулевой ID, а не имя root указывает на максимальные права. Давайте попробуем учетной записи robert, которую мы создали ранее, поставить вручную идентификаторы пользователя и группы, равные 0. В файле /etc/passwd должна получиться строка:

robert:x:0:0::/home/robert:/bin/bash

Теперь войдите в систему под этой учетной записью и попробуйте снова открыть файл /etc/passwd и внести изменения или просто добавить пользователя. Все пройдет успешно, хотя файл /etc/passwd может изменять только root. Так что система проверяет наши права по идентификатору, который в данном случае нулевой и соответствует максимуму.

Так как имя пользователя ничего не значит, я рекомендую удалить пользователя root в файлах /etc/passwd и /etc/shadow, создать новую запись с другим именем, но идентификатором, равным 0. Злоумышленники, которые попытаются взломать ваш сервер, будут пытаться подобрать пароль для администратора root, но т.к. пользователя с таким именем нет, то их действия окажутся безуспешными.

С другой стороны, пользователя root можно оставить, но установить ему идентификатор больше нуля. Я иногда создаю учетную запись root с UID=501 или выше. Увидев эту запись, взломщик думает, что он обладает всеми правами, но в реальности оказывается простым пользователем.

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

Итак, злоумышленник, проникнув в систему, может не пользоваться учетной записью root, а отредактировать любую другую или добавить еще одну с нулевым идентификатором пользователя и получить максимальные права в системе. Если вы являетесь администратором сервера, то должны отслеживать подобные трансформации и останавливать любые попытки изменения идентификаторов.

Команда id позволяет узнать идентификаторы пользователя. Если она вызывается без параметров, то на экран будут выведены идентификаторы текущего пользователя. Чтобы получить информацию о конкретной учетной записи, нужно выполнить команду:

id имя

Например, давайте посмотрим параметры пользователя robert. Для этого выполним команду:

id robert

Результатом будет строка:

uid=501(robert) gid=501(robert) group=501(robert)

Таким образом в любой момент можно определить идентификатор пользователя и его реальные права.

4.9. Расширение прав

Регламентация доступа — достаточно сложный процесс. Это основная задача администратора и от правильности ее выполнения зависит многое. Любая ошибка может стоить вам зарплаты и благополучия. В мире, когда информация является самым дорогим продуктом, вы должны оберегать ее всеми возможными методами.

Не пожалейте времени и проверьте всю систему на правильность установленных прав. Ни у кого не должно быть ничего лишнего, и в то же время, необходимый доступ должен быть у всех программ для корректной работы.

Честно сказать, права на основе "босс", "друзья босса" и "все остальные" устарели и не обеспечивают необходимой безопасности. Например, у вас есть две группы: бухгалтерия и экономисты. Файлы, созданные любым бухгалтером, будут иметь права -rwxrwx--- и станут доступными для всех сотрудников этого отдела, потому что в данных правах группа имеет все разрешения на файл, как и владелец.

А как быть, если теперь нужно, чтобы экономист просмотрел документы бухгалтерии? Причем не все пользователи группы экономистов, а только один, и не все файлы бухгалтерии, а выборочно! Решить эту задачу достаточно сложно. Если поставить на файлы бухгалтерии права -rwxrwxrwx, то любой пользователь сможет просмотреть бухгалтерскую отчетность, а это уже далеко от идеала безопасности.

Можно пытаться выйти из положения через ссылки или копии файлов с другими правами, но в этом случае вы просто запутаетесь, и дальнейшее управление системой станет затруднительным.

Проблему достаточно просто решить, если ввести списки ACL (Access Control List, списки контроля доступа), как это реализовано в ОС Windows. Сложность только с внедрением, т.к. ОС Linux не имеет стандарта. В принципе, это ядро, на которое любой разработчик может повесить все, что угодно, и каждый производитель ищет свои пути выхода из ситуации или вообще ничего не делает.

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

Именно поэтому я только предложу взглянуть на проект Linux Extended Attributes and ACLs (http://acl.bestbits.at/). Вы можете его использовать только на свой страх и риск.

Linux Extended Attributes and ACLs — продукт, который устанавливается в систему, и после этого требует перекомпиляции ядра. Работа его основана на хранении для каждого файла расширенных атрибутов. Это возможно не на всех файловых системах, поэтому убедитесь, что используемая вами система поддерживает списки ACL. Лучше всего, на мой взгляд, подходят системы ReiserFS и Ext3.

После установки патча и дополнительных программ вам становятся доступны списки ACL. С их помощью можно отдельным пользователям устанавливать режим доступа к файлу. Владельцем файла остается его создатель, и он имеет полные права. Остальные атрибуты доступа могут отсутствовать.

Например, для файла можно установить права -rwx------. Несмотря на такие жесткие требования можно указать пользователей, которые будут иметь доступ к этому файлу помимо владельца.

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

Если бы такой принцип был реализован на уровне ядра и поддерживался всеми дистрибутивами, то я назвал бы ОС Linux самой безопасной и стабильной в мире операционной системой.

4.10. Сетевой экран

Мы достаточно подробно рассмотрели управление доступом к файлам, но на этом распределение прав не закапчивается. Сейчас уже невозможно работать без соединения с локальной сетью или Интернетом, поэтому, прежде чем наш сервер начнет функционировать, нам необходимо ограничить доступ извне к компьютеру и его определенным портам.

Для защиты компьютера от вторжения по сети используется сетевой экран (Firewall). Некоторые службы Linux также имеют свои настройки прав, но их мы будем рассматривать отдельно, когда дойдем до соответствующего сервиса. И все же, я не советую сильно доверять такому управлению. Не забываем, что ошибки есть во всех программах, и если сетевой экран будет дублировать права, прописанные в сервисе, хуже от этого не будет.

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

Почему же тогда мы рассматриваем сетевой экран после прав доступа на файлы? Да потому, что Firewall защищает только от сетевых вторжений, а правильная регламентация доступа предохраняет и от локальных хакеров или недобросовестных пользователей, которые получили возможность пользоваться непосредственно терминалом. Оба уровня защиты очень важны. В сфере безопасности вообще нет ничего несущественного, вы должны уделять внимание каждой мелочи.

Сетевой экран позволяет ограничить доступ к компьютеру в целом или к отдельным портам, на которых работают сервисы, но не является 100% защитой от вторжения. Это всего лишь проверка пакетов на соответствие правилам, которая не может гарантировать, что пользователь является реальным отправителем.

Простейший способ обхода сетевого экрана — подделка IP-адреса. Например, мне приходилось работать в сети, где простым пользователям запрещалось использовать почтовые протоколы SMTP и POP3 (подключение на 25 и 110 порты соответственно). Я относился к этой категории и не мог получать или отправлять почту, но доступ был у моего начальника. Использование Web-интерфейса для работы с почтовыми сервисами также блокировалось на уровне прокси-сервера. Однажды мне очень срочно нужно было отправить письмо. Для этого я выполнил следующее:


Михаил Флёнов читать все книги автора по порядку

Михаил Флёнов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mybooks.club.


Linux глазами хакера отзывы

Отзывы читателей о книге Linux глазами хакера, автор: Михаил Флёнов. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.