Пять скриптов на Bash, которые могут использоваться для автоматизации рутинных задач в кибербезопасности.
Здравствуйте, дорогие друзья.
Предоставляю Вашему вниманию пять скриптов на Bash, для применения в кибербезопасности. Помните, что перед использованием этих скриптов, Вы должны иметь разрешение на проведение любых действий, связанных с системами и сетями, которые могут быть затронуты.
1. Сканирование портов с использованием nmap
1 2 3 4 5 6 |
#!/bin/bash # Сканирование портов конкретного хоста echo "Введите адрес хоста для сканирования:" read host echo "Сканирование портов для хоста $host..." nmap $host |
2. Проверка статуса веб-сервера
1 2 3 4 5 6 7 8 9 |
#!/bin/bash # Проверка статуса веб-сервера по HTTP статус-коду url="http://example.com" # Замените example.com на реальный URL status_code=$(curl -o /dev/null -s -w "%{http_code}\n" $url) if [ $status_code -eq 200 ]; then echo "Веб-сервер $url работает нормально (HTTP статус 200)" else echo "Веб-сервер $url имеет проблемы (HTTP статус $status_code)" fi |
3. Поиск изменений в файлах (интегритет)
1 2 3 4 5 6 7 8 9 10 11 12 |
#!/bin/bash # Проверка интегритета файлов в заданной директории directory="/var/www/html" # Замените на директорию, которую нужно отслеживать hash_file="hashes.txt" # Генерируем хэши файлов и сохраняем их для последующего сравнения find $directory -type f -exec sha256sum "{}" + > $hash_file # Функция, которая проверяет хэши check_hashes() { sha256sum -c $hash_file } # Вызываем функцию check_hashes |
4. Автоматическое создание бэкапов логов
1 2 3 4 5 6 7 8 |
#!/bin/bash # Автоматическое создание бэкапов логов log_path="/var/log/apache2" # Замените на путь к вашей папке с логами backup_path="/backup/apache2" # Создаем каталог для бэкапа, если он не существует mkdir -p $backup_path # Архивируем и перемещаем логи tar -czvf $backup_path/log-$(date +%F).tar.gz $log_path |
5. Мониторинг и оповещение об активности в логах
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#!/bin/bash # Мониторинг и оповещение о подозрительной активности в логах log_file="/var/log/auth.log" # Замените на путь к вашему лог-файлу pattern="Failed password" # Замените на паттерн, который вы хотите отслеживать # Чтение новых строк из лог-файла tail -fn0 $log_file | \ while read line ; do echo "$line" | grep "$pattern" > /dev/null if [ $? = 0 ]; then # Отправляем уведомление echo "Подозрительная активность: $line" # Здесь может быть команда для отправки уведомления, например, через mailx fi done |
Эти скрипты являются простыми примерами, и предназначены для демонстрации типов задач, которые можно автоматизировать с помощью Bash. В реальных сценариях, Вам потребуются более сложные проверки, логирование, и, возможно интеграция с другими системами и инструментами мониторинга. Кроме того, всегда убедитесь, что Ваши скрипты тестируются в безопасной среде перед их развертыванием в производственной среде.
На этом все. Всем хорошего дня!