💣 Извлечение и анализ информации о сайте с помощью Web-Check |

💣 Извлечение и анализ информации о сайте с помощью Web-Check

Мануал

Уязвимости веб-сайтов могут быть вызваны как неправильной конфигурацией, так и недостатками программного обеспечения, которые потенциально могут быть использованы злоумышленниками.

Для предотвращения подобных рисков службы по сканированию веб-конфигурации и уязвимостей являются регулярным и экономически эффективным способом выявления распространенных проблем на сайте.

Эти службы служат в качестве проактивной меры, обеспечивая своевременное обнаружение и устранение известных уязвимостей.

Web-Check позволяет выявить распространенные уязвимости и неправильные конфигурации на сайте.

Эти проверки создают небольшую нагрузку на сайт, что позволяет предотвратить его повреждение.

Web-Check сообщит вам, какие именно уязвимости существуют, когда стоит беспокоиться и как устранить проблемы.

Web-Check предоставляет простую в использовании панель, для понимания которой не требуются высокие технические навыки.

Проверяемые вопросы безопасности включают в себчя:

  • SSL-сертификаты, действительны ли они и хорошо сконфигурированы
  • Настроенное и современное TLS-шифрование
  • Перенаправление с HTTP на HTTPS для всех пользователей.
  • Заголовки безопасности HTTP и защищенные cookies для сайта.
  • Реализация кросс-доменной политики и контроля кросс-оригинального обмена ресурсами (CORS).
  • Есть ли раскрытие информации в файле security.txt
  • Ограниченный доступ к XML-RPC
  • Уязвимость к ряду известных Common Vulnerabilities and Exposures (CVEs)
  • Конфигурация CMS и наличие обновлений.
  • Открытые порты в системе.
  • Общая производительность сайта.

Данное руководство содержит пошаговую демонстрацию скачивания и анализа информации о сайте с помощью Web-Check

1. Установка Web-Check в системе

Для установки Web-Check в систему можно использовать два способа:

  • Сборка локально
  • Использование Docker

Выберите наиболее подходящий для вас вариант.

Вариант 1: Локальная сборка

Этот шаг требует установки нескольких пакетов.

Это Node.js (V 18.16.1 или более поздняя версия) и git.

Для установки Node.js посмотрите инструкции:

Затем можно установить git с помощью команды:

##На Debian/Ubuntu
sudo apt update && sudo apt install git -y

##На Rhel/Rocky/Alma Linux
sudo yum install git -y

После установки клонируйте репозиторий, приведенный ниже:

git clone https://github.com/Lissy93/web-check.git

Перейдите в каталог:

cd web-check

Установите все необходимые зависимости:

yarn

Теперь можно запустить сервер разработки с помощью команд:

yarn dev

Здесь приложение работает на порту 8888.

Теперь нам необходимо настроить приложение на запуск в фоновом режиме и автоматическую загрузку.

Сначала остановите службу, работающую на порту 8888.

sudo killall -9 node

Установите PM2:

sudo npm install pm2@latest -g

Теперь создайте файл конфигурации:

sudo vim ecosystem.config.js

В файле добавьте следующие строки:

module.exports = {
  apps: [
    {
      name: 'web-check', // Replace with your app's name
      cwd: '/home/thor/web-check',
      script: 'npm',
      args: 'run serve',
      env: {
        CHROME_PATH: '/usr/bin/chromium' // Set the desired CHROME_PATH
      }
    }
  ]
};

Замените /home/thor/web-check на правильный путь к вашему приложению.

После сохранения запустите приложение командой:

pm2 start ecosystem.config.js

Просмотреть приложение можно с помощью команды:

pm2 list
┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
│ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
│ 1  │ web-check          │ fork     │ 2    │ online    │ 0%       │ 61.3mb   │
└────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
[PM2][WARN] Current process list is not synchronized with saved list. App strapi differs. Type 'pm2 save' to synchronize.

Для отслеживания журналов используйте:

pm2 logs

Теперь ваше приложение будет запускаться на порту 8888.

Разрешите приложению запускаться при загрузке системы:

pm2 startup
[PM2] Init System found: systemd
[PM2] To setup the Startup Script, copy/paste the following command:
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u thor --hp /home/thor

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

sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u thor --hp /home/thor

Сохраните изменения:

pm2 save

Для систем на базе Rhel настройте SELinux, как показано далее:

sudo dnf install policycoreutils policycoreutils-python-utils setools setroubleshoot setroubleshoot-server
sudo su
setenforce 0
setsebool -P domain_can_mmap_files 1
setenforce 1

🐧 AppArmor и SELinux: Всестороннее сравнение

Вариант 2: Использование Docker

Это еще один более простой вариант запуска Web-Check.

Для этого метода необходимо установить Docker Engine.

Теперь вы можете запустить контейнер с помощью Docker CLI, как показано далее:

docker run -d -p 8888:8888 lissy93/web-check

Или с использованием Docker-Compose:

vim docker-compose.yml
version: '3.9'
services:
web-check:
container_name: Web-Check
image: lissy93/web-check
ports:
- 8888:8888
restart: unless-stopped

Запустите контейнер:

docker-compose up -d

2. Настройка Web-Check

По умолчанию Web-Check не требует никаких настроек.

Однако некоторые конфигурации окружения все же необходимы.

Они могут быть объявлены в файле .env или в контейнере docker:

  • GOOGLE_CLOUD_API_KEY – ключ API Google . Он может использоваться для возврата показателей качества сайта
  • TORRENT_IP_API_KEY – API-ключ торрента. Показывает торренты, скачанные по IP-адресу
  • REACT_APP_SHODAN_API_KEY – API-ключ Shodan Будет показано связанное имя хоста для заданного домена
  • REACT_APP_WHO_API_KEY – WhoAPI-ключ. В результате будут показаны более полные WhoIs-записи, чем в задании по умолчанию
  • SECURITY_TRAILS_API_KEY – API-ключ Security Trails. Будет показана информация об организации, связанной с IP
  • BUILT_WITH_API_KEY – API-ключ BuiltWith. Показывает основные характеристики сайта

3. Доступ и использование Web-Check

После развертывания с помощью любого из вышеперечисленных вариантов убедитесь, что порт 8888 разрешен через межсетевой экран.

##С UFW
sudo ufw allow 8888

##С Firewalld
sudo firewall-cmd --add-port=8888/tcp --permanent
sudo firewall-cmd --reload

Теперь зайдите в веб-интерфейс, используя URL http://IP_address:8888 или http://domain_name:8888.

Теперь в приведенном выше пользовательском интерфейсе можно добавить любой URL-адрес сайта, который необходимо проверить.

После ввода URL-адреса нажмите кнопку Analyze!

Через несколько секунд вы получите информацию.

Здесь представлены такие вопросы безопасности, как местоположение сервера, записи DNS, DNSsec, заголовки, SSL-цертификаты, Traceroute и т.д.

Можно также прокрутить страницу вниз и загрузить, обновить и просмотреть результаты по своему усмотрению.

Заключение

Мы успешно рассмотрели, как можно получить и проанализировать информацию о сайте с помощью Web-Check.

Надеюсь, это поможет вам обеспечить безопасность вашего сайта.

см. также:

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий