Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР_12.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
228.35 Кб
Скачать

3.3 Реєстрація в системі

Тепер познайомимося з процесом реєстрації користувача в системі. Це допоможе вам краще зрозуміти систему безпеки, яка використовується в ОС Linux при авторизації. Програма init завантажує віртуальні консолі getty. Кожна з них для роботи вимагає авторизації і запрошує ім'я користувача. Для цього на екран виводиться вікно запрошення. Введене ім'я користувача передається програмі login, а вона у свою чергу запрошує пароль.

Програма login порівнює ім'я користувача із списком імен у файлі /etc/password, а пароль - з відповідним записом у файлі /etc/shadow. Всі паролі у файлі зберігаються тільки в зашифрованому вигляді. Для зіставлення введений пароль теж шифрується, і результат порівнюється із значенням у файлі /etc/shadow для вказаного імені користувача.

Чому так складно відбувається перевірка? Просто всі паролі у файлі /etc/shadow зашифровані незворотнім алгоритмом (частіше за все використовується алгоритм MD5). Це значить, що математичними методами з результату кодування не можна отримати початковий пароль, тому можливий тільки підбір. Для цього існує декілька дуже простих програм. Чим простіше пароль і менше його довжина, тим швидше програма знайде потрібний варіант. Якщо пароль складний і його довжина більше 8 символів, а краще - понад 16, то підбір може відняти дуже багато часу.

Якщо ідентифікація користувача відбулася, то програма login виконає всі сценарії автоматично і запустить оболонку (командний рядок), через яку і відбуватиметься робота з системою. Якщо перевірка пройшла невдало, то система поверне управління консолі getty, яка знову запитає введення імені користувача.

Таким чином, поки ми не пройдемо авторизацію через програму login, запустити командну оболонку (Shell) неможливо, нам залишиться доступною лише консоль getty, яка уміє тільки запрошувати ім'я користувача і передавати його програмі login.

3.4 Контрольні суми

На дати зміни можна сподіватися, але необхідний додатковий засіб перевірки. Найкращим методом є підрахунок контрольної суми. Припустимо, що ви хочете відстежувати зміни в директорії /etc. Для цього виконайте наступну команду:

Md5sum /etc/*

Таким чином, підраховується контрольна сума вказаних як параметр файлів. На екрані ви отримаєте результат виконання команди приблизно такого вигляду:

783fd8fc5250c439914e88d490090ael /etc/DIR_COLORS

e2eb98e82a51806fe310bffdd23ca851 /etc/Muttrc

e!043de2310c8dd266eb0ce007ac9088 /etc/a2ps-site.cfg

4543eebdOf473107e6e99ca3fc7b8d47 /etc/a2ps.cfg

C09badb77749eecbeafd8cb21c562bd6 /etc/adjtime

70abal6eOd529c3db01a20207fd66blf /etc/aliases

C3e3a40097daed5c27144f53f37de38e /etc./aliases .db

3e5bb9f9e8616bd8a5a4d7247f4d858e /etc/anacrontab

fe4aad090adcd03bf686103687d69f64 /etc/aspldr.conf

Результат відображається в дві колонки: перша містить контрольну суму, а друга - ім'я файлу. Контрольні суми підраховуються тільки для файлів. Для каталогів буде виведено повідомлення про помилку.

В даному випадку вказані всі файли каталогу /etc/*. Результат розрахунку виводиться на екран. Але запам'ятовувати ці дані незручно, тому логічно записати їх у файл, щоб потім використовувати його вміст для аналізу змін. Наступна команда зберігає результат у файлі /home /proba/md:

md5sum /etc/* » /home/proba/md

Щоб порівняти поточний стан файлів директорії /etc з вмістом файлу /home/proba/md, необхідно виконати команду:

md5sum -с /home/proba/md

На екрані з'явиться список всіх файлів, і напроти кожного повинен бути напис "Success" (Успіх). Це означає, що змін не було. Давайте модифікуємо який-небудь файл, виконавши, наприклад, наступну команду:

groupadd test

Поки не вдаватимемося в подробиці команди, зараз достатньо знати, що вона змінює файл /etc/group. Знову виконуємо команду перевірки контрольних сум файлів:

md5sum -с /home/proba/md

Тепер напроти файлу /etc/group буде повідомлення про помилку, тобто контрольна сума змінилася. Таким чином, навіть якщо дата коригування файлу залишилася колишньою, по контрольній сумі легко визначити наявність втручання.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]