Close

Аудит Linux-сервера очима хакера

Коли я вперше заходжу на невідомий сервер, то першим чином проводжу експрес-аудит, який включає базовий збір технічних, апаратних, файлових та інших характеристик. Сюди входять: перевірка логів, накопичувачів, енумерація користувачів, аналіз програмного забезпечення, мережевих служб та інтерфейсів. Я підібрав список консольних команд, якими часто послуговуються хакери на етапі дослідження та експлуатації Linux.

Зміст статті

Аналіз технічних і апаратних характеристик

uname -a — інформація про версію операційної системи і ядра.
cat /etc/os-release — найповніша інформація про версію операційної системи в файлі os-release.
hostnamectl— повна інформація про сервер (комп’ютер): ім’я хосту, тип сервера, віртуалізація, операційна система, версія ядра, архітектура.
uptime— час безперервної роботи сервера.
free — статистика використання оперативної пам’яті.
vmstat— статистика продуктивності сервера.
cat /proc/cpuinfo— детальна інформація по процесору (CPU).
cat /proc/meminfo — детальна інформація по оперативній пам’яті.
cat /proc/loadavg— статистика середнього навантаження на систему у вигляді 5-ти значень (load average).
cat /proc/cmdline — інформація по інсталяційному пакету Linux (образу).
dmidecode— інформація про BIOS і залізо (по DMI коду).
dmidecode -s system-manufacturer — назва виробника пристрою.
dmidecode -s system-product-name— назва продукту системи.
lscpu
 — технічна інформація по процесору (виробник, тип, розрядність, архітектура та ін.).
lshw— дуже детальна інформація про залізо.
sysctl -a — вивід списку параметрів ядра.
cat /proc/version — версія ядра ОС.
cat /etc/services — перелік сервісних служб системи.
ls -ls /etc/ | grep .conf — пошук файлів конфігурації у папці etc.

Аналіз системних процесів

top— показ запущених в системі процесів в реальному часі.
ps— швидкий показ статистики по процесах в системі.
ps -ef— показ запущених в системі процесів з детальною характеристикою.
ps -auxf— показ запущених в системі процесів з детальною характеристикою (2).
jobs— вивід запущених процесів.
crontab -l — переглянути список задач серверного планувальника завдань для активного користувача.
ls -al /etc/cron* — пошук усіх файлів планувальника завдань.
ps aux | grep root — пошук процесів, закріплених за користувачем root.
ps -eaf — перевірка запущених процесів.

Аналіз облікових записів (користувачів)

who— назва активного користувача і мінімальна статистика по ньому (останній вхід, IP адреса).
w — статистика навантаження на систему по користувачам.
id — інформація по правам користувача.
last — інформація про останні входи в систему.
lastlog — інформація про активність усіх облікових записів в системі.
cat /etc/group— перелік груп користувачі.
cat /etc/passwd— список користувачів системи з вказаними хешами, правами та приналежністю до груп.
cat /etc/shadow— список облікових записів системи з їх паролями.
tail /var/log/secure— вся інформація про авторизації користувачів системи.
cat /etc/sudoers — вивід списку користувачів з правами sudo для виконання команд від імені адміністратора.
find / -not -type l -perm -o+w — пошук файлів з правами запису для всіх користувачів.
sudo -l — аналіз параметрів sudo для активного користувача.

Читайте також:   Що таке VPN: як працює і який обрати?

Аналіз системних журналів (логів) і подій

history— історія виконаних в системі команд
journalctl— цікавий журнал з точки зори безпеки, який проливає світло на все, що відбувалося в бекенді системи, зокрема спроби авторизації, час, IP-адреси
dmesg — вивід повідомлень ядра операційної системи
dmesg | tail — вивід останніх 10-ти повідомлень ядра операційної системи
tail /var/log/messages— вивід подій системного журналу
tail /var/log/cron— вивід виконаних подій в службі планувальника crond
nano /var/log/apache2/access.log— логи доступа до сайту, оброблених веб-сервером Apache
nano /var/log/apache2/error.log— логи помилок, оброблених веб-сервером Apache
find / -type f -name "*.log" | wc -l— пошук усіх log-файлів в системі
ls -alh /var/log

Аналіз файлової системи і накопичувачів (жорстких дисків)

df -T— статистика використання дискового простору (disk free)
df -h— статистика по дискових накопичувачах і їх наповненню
du -sh dir – статистика використання дискового простору за конкретною директорією
du --max-depth=1— інформація про використання дискового простору директоріями за вказаною глибиною вкладення (disk usage)
cat /etc/fstab — показ розмонтованих дискових накопичувачів
ncdu — утиліта з псевдографічним інтерфейсом для швидкого перегляду використання дискового простору у вигляді файлового навігатора.

Аналіз мережевих портів, інтерфейсів, пристроїв, обладнання

ifconfig— вивід інформації по мережевих пристроях.
netstat— вивід TCP/IP підключень.
netstat -tunap— ще один тип виводу TCP/IP підключень.
ss— вивід мережевої статистики.
iptables -L -n -v— вивід даних фаєрвола IPtables.
arp— вивід таблиць ARP.
route— вивід IP маршрутизації.
ip -s link— вивід мережевої статистики (інформація про передані пакети, помилки).
ethtool eth0— детальна інформація по заданому мережевому пристрої.
ip addr show — перелік IP-адрес мережевих інтерфейсів.
ip ro show — вивести інформацію по роутингу мережевих інтерфейсів.
cat /etc/resolv.conf — вивести вміст файлу конфігурації налаштування IP/DNS.
cat /etc/networks — вивід мережевих інтерфейсів.
grep 80 /etc/services — вивід сервісів, які працюють на портах, де зустрічається цифри 80.
cat /etc/hosts — вивід прив’язаних до сервера хостів.
ip a s — список активних мережевих інтерфейсів.

Читайте також:   Оптимізація кібербезпеки CMS WordPress

Аналіз програмних засобів, системних служб, репозиторіїв

rpm -qa
dpkg --list
dpkg --list | wc --lines
apt list
apt list --installed | grep -v "^Listing" | wc -l
yum list installed
yum repolist
yum repoinfo
snap list
ls -l /etc/yum.repos.d/
lsmod
ls -alh /usr/bin/
ls -alh /sbin/
systemctl

Додаткові ресурси і посилання

Підпиcатися

Підписуйтесь на новини та отримуйте нові публікації на свою електронну пошту!

👉 Також долучайтеся і читайте нас в Twitter і LinkedIn!

0 0 голосів
Рейтинг статті
Підписатися
Сповістити про
guest
0 Коментарі
Вбудовані Відгуки
Переглянути всі коментарі
0
Цікаво почути Вашу думку!x
Отримати комерційну пропозицію
Оформити заявку
Замовити консультацію

Заповніть, будь ласка, форму й наш спеціаліст зв’яжеться з Вами та надасть безкоштовну консультацію!

Замовити дзвінок

Вкажіть, будь ласка, контактний номер телефону. Наш менеджер миттєво зв’яжеться з Вами!