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

Посты по тегу: Linux

Направления кибербезопасности

20 дн. назад
Кибербезопасность — это не одна работа и не один путь. Здесь нет универсального «стань киберспецом». Кто-то целыми днями смотрит логи и ловит атаки. Кто-то расследует взломы. Кто-то ломает системы легально. А кто-то вообще не пишет код, но управляет рисками и аудитами. Этот пост — карта направлений в кибербезопасности. Он нужен, чтобы Вы поняли, куда реально идти, что там делают на практике и чего ждать по деньгам и сложности. Без мотивационных сказок. Без «войти за месяц». Только честная картина рынка и вариантов развития. Прочитай — и выбери путь осознанно, а не наугад.

SOC / Blue Team Этап 0:
Фундамент (3-6 месяцев)
Цель: Понимать, как всё устроено. Без этого этапа дальнейшее обучение будет шатким.
1. Компьютерные сети (Самое важное!):
• Теория: Модель OSI и TCP/IP. Протоколы: Ethernet, IP, TCP/UDP, DNS, HTTP/HTTPS, DHCP, ARP. NAT, VLAN, Subnetting.
• Ресурсы: Книга "Компьютерные сети" Таненбаума, курс Network+ от CompTIA (бесплатные видео на YouTube).
• Практика: Настроить домашний роутер, поработать с Wireshark для просмотра базового трафика.
2. Операционные системы:
• Windows: Архитектура, процессы, службы, реестр, журналы событий (Event Log). Управление через PowerShell (основы).
• Linux: Обязательно! Установите дистрибутив (Ubuntu, CentOS). Изучите командную строку (bash), структуру файловой системы, управление процессами, пакетами, правами (chmod/chown), основы сетевых утилит (netstat, ss, tcpdump).
• Ресурсы: Microsoft Learn, сайт likegeeks.com, книга "Linux для начинающих".
3. Кибербезопасность - основы:
• Триада CIA (Конфиденциальность, Целостность, Доступность).
• Базовые понятия: угрозы, уязвимости, риски, виды атак (DoS, фишинг, malware).
• Ресурсы: Введение в кибербезопасность от Cisco Networking Academy (бесплатно), TryHackMe - комнаты "Pre Security" и "Introduction to Cyber Security".
Этап 1: Ядро Blue Team (6-9 месяцев)
Цель: Получить конкретные навыки, необходимые для работы в SOC.
1. Системный и сетевой мониторинг:
• SIEM (Security Information and Event Management): Основная рабочая среда SOCаналитика.
• Практика: Разверните дома ELK-стек (Elasticsearch, Logstash, Kibana) или Wazuh (бесплатный SIEM с HIDS). Настройте сбор и анализ логов с вашего ПК.
• Изучите: Что такое корреляция событий, алерты, дашборды.
2. Анализ угроз (Threat Intelligence):
• Понять: Что такое IOC (Indicators of Compromise) - хэши, IP-адреса, домены.
• Научиться: Пользоваться открытыми источниками (OTX AlienVault, VirusTotal, Abuse.ch).
• Форматы: STIX/TAXII (базово).
3. Расследование инцидентов (Incident Response):
• Жизненный цикл: Подготовка → Обнаружение → Анализ → Устранение → Восстановление → Уроки.
• Практика на CTF: Расследуйте "утечки данных", "заражение вирусом" на платформах для тренировок.
• Форензика (базово): Анализ дампов оперативной памяти, дисков (автономно). Инструменты: Volatility, Autopsy.
4. Основы защиты сетей:
• Firewall (МЭ): Разберитесь с понятием политик (allow/deny), stateful inspection.
• IDS/IPS (Системы обнаружения/предотвращения вторжений): Чем отличаются, как работают (на основе сигнатур и аномалий).
• Практика: Поработайте с open-source решениями: Snort (IDS), Suricata (IDS/IPS), pfSense (firewall).
5. Логи и их анализ:
• Какие логи критичны: Windows Security/System Logs, Linux auth.log/syslog, веб-сервера (Apache/nginx), сетевые устройства.
• Научиться: "Читать" логи, вытаскивать из них ключевую информацию (IP, имя пользователя, временная метка, действие).
Этап 2: Практика и сертификации (параллельно с Этапом 1)
Цель: Закрепить знания, получить подтверждающие документы для резюме.
1. Лабораторная практика:
• TryHackMe: Лучший старт! Пройдите все комнаты из дорожки "Cyber Defense" и "SOC Level 1". Интерактивно, с пояснениями.
• LetsDefend.io: Платформа, созданная специально для Blue Team. Вы выступаете в роли SOC-аналитика, работаете с реальной SIEM, расследуете инциденты. Критически важно!
• Blue Team Labs Online (Security Blue Team): Более продвинутые лабораторные работы.
• Создайте свою домашнюю лабу: В VMware/VirtualBox разверните мини-сеть: "жертва" (Windows), "атакующий" (Kali Linux), "защитник" (Linux с ELK/Wazuh).
2. Сертификации (выберите 1-2 для старта):
• CompTIA Security+: Фундаментальный сертификат по безопасности. Обязателен к изучению программы, даже если не сдаете экзамен.
• CompTIA CySA+ (Cybersecurity Analyst): Более сфокусирован на анализе и навыках Blue Team. Отличный следующий шаг после Security+.
• Blue Team Level 1 (BTL1) от Security Blue Team: Практический экзамен в формате лаборатории. Очень ценится сообществом.
• EC-Council Certified SOC Analyst (CSA): Специализированный сертификат для SOC.

Этап 3: Трудоустройство (поиск первой работы)
Цель: Получить позицию Junior SOC Analyst или Security Operations Center Intern.
1. Портфолио:
• GitHub: Выкладывайте свои скрипты (например, на Python для парсинга логов), конфигурации для SIEM, отчеты по расследованию инцидентов из LetsDefend.
• Блог/Write-ups: Пишите разборы решенных вами заданий с TryHackMe/LetsDefend. Показывайте ход мыслей аналитика.
2. Резюме и LinkedIn:
Резюме: Делайте упор на навыки (SIEM, анализ логов, IDS, основы сетей, Linux) и практический опыт (лабы, CTF, пет-проекты). Укажите пройденные курсы и сертификаты.
LinkedIn: Заполните профиль на 100%. Укажите ключевые слова: "SOC Analyst", "Cybersecurity", "Threat Hunting", "SIEM".
Подпишитесь на хедхантеров и компании.
3. Подготовка к собеседованию:
• Техническая часть: Будьте готовы: Разобрать пейлоад (PCAP-файл) в Wireshark. Проанализировать образец лога и сказать, что произошло. Объяснить, как работает DDoS-атака и как ее обнаружить. Рассказать, что вы будете делать, если увидите алерт "Множественные неудачные попытки входа в систему".
• Поведенческая часть: Говорите о своем энтузиазме, желании учиться, внимательности к деталям. Ты должен быть лучше, чем другие в глазах работодателя, покажи уверенность, даже если ты боишься.
Ключевые навыки Junior SOC Analyst:
• Hard Skills: Понимание сетей, ОС, основ безопасности. Умение работать с SIEM, анализировать логи, понимать IOC. Базовые знания по IDS/IPS, фаерволам.
• Soft Skills: Аналитическое мышление, внимание к деталям, стрессоустойчивость (работа в сменах), умение ясно излагать мысли в отчете, желание постоянно учиться.
Об остальных направлениях расскажу в следующих постах.
Показать полностью...
+2
11

Расположение кнопки главного действия и кнопки отмены в диалоговых окнах

недавно
Вы когда-нибудь задумывались, с какой стороны в диалоговых окнах программ находится кнопка "Отмена" и с какой стороны находится кнопка действия, например, "Сохранить"? А ведь в разных операционных системах приняты разные правила расположения таких кнопок.

Вот диалог сохранения из Блокнота Windows 10. "Сохранить" слева, "Отмена" справа:
Диалоговое окно из виндового Total Commander: "OK" слева, "Cancel" справа.
А вот десктопный Telegram для Windows не следует виндовым правилам UX/UI и порядок здесь другой:
Телеграм использует такой же порядок кнопок, какой принят в macOS:
Показать полностью...
+7
32

Как убрать гул жестких дисков в Linux

1 г. назад
В Windows есть удобный функционал автоматического отключения жёстких дисков после указанного времени бездействия. У меня на компе стоит линукс и винда на разных SSD дисках, плюс есть дополнительные HDD диски для хранения музыки, фото и прочего. Так вот эти диски ощутимо гудят, даже если не используется. В винде настроил отключение через 10 минут и гул пропадает.

Оказывается в Linux тоже можно "глушить" жесткие диски.
Сначала смотрим какие есть диски:
lsblk
И далее убираем шум вот так с помощью hdparm:
sudo hdparm -y /dev/sdX
Вместо sdX - нужный HDD надо написать, например sdc.
Проверил на Kubuntu 22 - там всё ок, шум HDD пропадает и комп становится практически бесшумным. Если обратиться к диску снова, то всё будет ок, диск заведётся снова.

Вот так можно автоматически переводить в режим standby через 10 минут (5 * 120 - измеряется в 5-секундных интервалах, ну и бред):
sudo hdparm -S 120 /dev/sdX

Еще нашёл такую рекомендацию через правку hdparm.conf:
sudo nano /etc/hdparm.conf
И там добавляем секцию для диска:
/dev/sdX {
  spindown_time = 120
}

Вместо sdX - нужный диск.
+2
97

Как я сражался на сервере с вирусом-криптомайнером, маскирующимся под PostgreSQL

1 г. назад
Целая детективная история разыгралась на моём сервере.

Дано: небольшой арендуемый у хостера сервер с Debian 12 и последней PostgreSQL 16. Постгрес стоит без всяких докеров.

Месяц назад начал тормозить сервак. Думаю, что за ерунда, захожу по SSH, ввожу:
top
и вверху поверх всякой мелочи вижу это:
 PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
2251 postgres  20   0 2445140   2,3g      4 S 400,7  14,7   6:20.66 kswapd0
Жрёт все ресурсы, процессор загружен полностью.
Зарождается слабая мысль о криптомайнерах, но пока не понимаю, как вирус проник на сервер. Пароль у рута сложный, да и тут про постгрес написано.

В общем, думаю - ну, заглючил PostgreSQL, наверное. Убиваю процесс и перезагружаю сервак (это всегда полезно):
kill 2251
reboot
Захожу по SSH снова - чисто. Ну, думаю, всё ок.

Потом опять тормоза через некоторое время. Смотрю - эта хрень опять запущена. И странно как-то всё, причём тут юзер postgres?

Полез гуглить. Про этот kswapd и нагрузку на проц много разрозненных сообщений. Народ про него пишет и 2013, и в 2017, а у меня вообще-то 2024 на дворе, а ведь в те годы не было ещё криптовалют.
Может это не криптомайнер, а что-то другое?
Пытаюсь понять, кто запускает процесс. Делаю:
ls -l /proc/2251/exe
выводит:
lrwxrwxrwx 1 postgres postgres 0 июл 23 13:12 /proc/2251/exe -> /var/lib/postgresql/.configrc5/a/kswapd0
Такс... Находится в каталоге postgresql. А вдруг это важная часть сервера базы данных? Названо ведь так "по-умному" - configrc5.

Решаю просто переименовать каталог:
kill 2251
cd /var/lib/postgresql
mv .configrc5 _renamed_.configrc5
reboot
После этого всё хорошо... но только пару недель :)

Через эти пару недель опять веселуха с загрузкой всех ядер процессора.
Смотрю - каталог снова создан. Значит точно криптовалютный вирус. Но как зараза проникла на сервер?

Наконец-то до моей глупой головы дошло посмотреть логи SSH:
journalctl -t sshd
Опытные линуксоиды знают, что так смотреть не имеет смысла. Там толпы кул-хацкеров пытаются подключиться к серверу, но обламываются.
Фильтрую только логи успешного входа по SSH:
journalctl -t sshd --since "2024-08-01" --until "2024-08-16 10:00:00" | grep "Accepted "
И там среди моих заходов вижу эту падлюку:
Jul 06 11:40:07 debian sshd[589266]: Accepted password for postgres from 103.94.113.2 port 33482 ssh2
Jul 10 08:18:00 debian sshd[723300]: Accepted publickey for postgres from 162.217.64.26 port 60366 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Aug 02 07:45:44 debian sshd[258599]: Accepted publickey for postgres from 206.189.36.236 port 47140 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Aug 02 07:50:53 debian sshd[258915]: Accepted publickey for postgres from 157.245.42.37 port 50478 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Aug 14 10:23:08 debian sshd[99132]: Accepted publickey for postgres from 82.165.79.77 port 40086 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Aug 14 10:47:37 debian sshd[99723]: Accepted publickey for postgres from 103.146.52.138 port 55110 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Ёлы-палы! Сначала чувак вошёл по паролю, а потом уже входил по ключу.

Ради интереса проверил айпишники:
103.94.113.2 - India
162.217.64.26 - USA
206.189.36.236 - Singapore
103.146.52.138 - Hong Kong
Целый ботнет. Или VPN-ы. Не знаю, да и это не важно.

Начинаю вспоминать, что когда ставил PostgreSQL, создавал примитивный пароль. Или вообще не задавал его - точно не помню.

Срочно меняю пароль юзеру postgres:
passwd postgres
и ставлю запрет входа SSH для определённых юзеров:
nano /etc/ssh/sshd_config
DenyUsers postgres no-reply blah
В идеале, конечно вообще всем запретить, а оставить только для разрешённых.

Перезагружаем SSH демона:
systemctl restart sshd

Кстати, это зараза прописала SSH-ключ в:
/var/lib/postgresql/.ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEArDp4cun2lhr4KUhBGE7VvAcwdli2a8dbnrTOrbMz1+5O73fcBOx8NVbUT0bUanUV9tJ2/9p7+vD0EpZ3Tz/+0kX34uAx1RV/75GVOmNx+9EuWOnvNoaJe0QXxziIg9eLBHpgLMuakb5+BgTFB+rKJAw9u9FSTDengvS8hX1kNFS4Mjux0hJOK8rvcEmPecjdySYMb66nylAKGwCEE6WEQHmd1mUPgHwGQ0hWCwsQk13yCGPK5w6hYp5zYkFnvlC8hGmd4Ww+u97k6pfTGTUbJk14ujvcD9iUKQTTWYYjIIu5PmUux5bsZ0R4WFwdIe6+i6rBLAsPKgAySVKPRK+oRw== mdrfckr
Разумеется это надо сразу удалять.
Показать полностью...
+3
68

Как запустить Elasticsearch из-под рута

1 г. назад
Elasticsearch не разрешает запускать себя из-под пользователя root, это намеренно сделанное ограничение. Если нужно оставаться под рутом по тем или иным причинам, а запустить Elasticsearch нужно, то есть обходное решение.

Нужно создать пользователя, например, назвав его elastic:
useradd elastic

Далее делаем этого юзера владельцем каталога c Эластиком:
chown -R elastic:elastic ./elasticsearch-8.14.3

И наконец используем программу runuser для запуска Elasticsearch из-под другого юзера:
runuser -u elastic -- /elasticsearch-8.14.3/bin/elasticsearch -d -p pid.txt

Эластиксёрч будет запущен, рут-юзер сможет к нему подключаться.

Напоминаю, что runuser может использоваться только root-пользователем.
+2
145

В Kubuntu перестали работать сочетания клавиш

1 г. назад
Как же я "люблю" линукс, хех :)
Сижу на Kubuntu, у меня перестали работать шорткаты. Например, блокировка экрана - Win+L или запуск терминала Ctrl+Shift+T.
Вспомнил, что менял раскладки клавиатуры.

Вот так выглядит состояние:
Это KDE-шная настройка. И вот такая конфигурация сломала все горячие клавиши.
А знаете как починить?
Вот так:
Знаете, что изменилось?
Я поменял местами в списке русскую раскладку и английскую.
Ааааа!!!! :))))

И нет, дело тут не во включенной раскладке. Сочетания клавиш не работали при любой раскладке. Нужно просто английскую поставить на первое место. Так и живём с линуксом :)
Показать полностью...
+4
104
1