Здравствуйте, дорогие друзья.
Предоставляю Вашему вниманию пять скриптов на Bash, для применения в кибербезопасности. Помните, что перед использованием этих скриптов, Вы должны иметь разрешение на проведение любых действий, связанных с системами и сетями, которые могут быть затронуты.
1. Сканирование портов с использованием nmap
#!/bin/bash
# Сканирование портов конкретного хоста
echo "Введите адрес хоста для сканирования:"
read host
echo "Сканирование портов для хоста $host..."
nmap $host
2. Проверка статуса веб-сервера
#!/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. Поиск изменений в файлах (интегритет)
#!/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. Автоматическое создание бэкапов логов
#!/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. Мониторинг и оповещение об активности в логах
#!/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. В реальных сценариях, Вам потребуются более сложные проверки, логирование, и, возможно интеграция с другими системами и инструментами мониторинга. Кроме того, всегда убедитесь, что Ваши скрипты тестируются в безопасной среде перед их развертыванием в производственной среде.
На этом все. Всем хорошего дня!