Служба проверки уязвимостей [закрыто]

Нет, теоретически переустановка coreutils не должна быть опасной, и да, она должна вернуть env.

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

2
11.08.2016, 01:39
1 ответ

То, о чем вы просите, кажется мне похожим на написание стандартных скриптов мониторинга.

Лучший способ подойти к этому - остановиться на каком-нибудь языке программирования и использовать его для написания всех этих скриптов.

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

Я бы рекомендовал использовать один из языков JVM - Java, Scala, Groovy - там есть драйверы для любой базы данных и прочего. Также хорошим выбором будет C#, так как он имеет все библиотеки.

Если нет, то Python, PHP, Perl - здесь также много драйверов и API.

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

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

Более того, вы можете рисовать метрики с помощью pnp4nagios.

Также обратите внимание, что сканирование уязвимостей и мониторинг - это две разные вещи. Для первого у вас есть OpenVAS и Nessus, для второго - Nagios, Solar Winds и другие. Что вы хотите сделать, так это использовать пользовательские сценарии, например, в Nagios.

Это также очень хороший способ изучить программирование. Все, что вам нужно, это делать очень простые сценарии, так что таким образом вы сможете многому научиться без особого напряжения. Выделите 2-3 часа в день, и таким образом вы сможете получить большое представление о своей инфраструктуре. Вы можете начать с Eclipse или IntelliJ и использовать Gradle для создания простых проектов. Поскольку в Gradle хорошая автоматизация и хорошая поддержка Java, вы будете счастливы в долгосрочной перспективе. И вы можете обратиться за помощью к команде разработчиков. Проверьте в документации плагина Nagios, какие строки должны быть возвращены для построения графиков с помощью pnp4nagios.

Вы также можете попробовать заносить логи в базу данных, что также очень полезно.

Теперь еще немного практической информации. Вы можете запускать java мини-программы (плагины Nagios) удаленно или локально на машине Nagios (предпочтительнее). В этом случае вы подключаетесь к системе по ssh (на Java или Python), читаете файл, загружаете его и анализируете. Таким образом, в некоторых сценариях вам понадобятся некоторые сетевые операции.

Вы также можете использовать облачные API.

И вы можете использовать SNMP с существующими плагинами Nagios, так что вам не нужна Java для всего.

Некоторые базы данных вы можете контролировать с помощью специальных решений, если вы не делаете скрипты вручную (для чего Nagios является лучшим), вы можете найти в Интернете что-то, что будет контролировать производительность вашей базы данных.

Наконец, скрипты мониторинга могут проверять, есть ли у вашей базы данных пароль. Это то, для чего он обычно используется. А также, чтобы не закончилась оперативная память, место на диске и т.д.

И вот как это может быть сделано правильно.

  1. База данных вашей инфраструктуры, например, все хосты и так далее, возможно, с автоматическим обнаружением. Это связано с инфраструктурой сборки / автоматизации. Это может быть более одной базы данных, если вы используете облако.

  2. Другая база данных с журналами и другими, например, документами, так что она содержит журнал выполнения Nagios и результаты скриптов, запущенных в (4). Сюда можно добавить любые другие журналы. Подойдет MongoDB. Cassandra тоже может это сделать.

  3. Nagios

    • Запустите проверку, которая заглядывает в базу данных (2), и посмотрите, были ли проверки успешными и каков результат
    • Проверьте, запущен ли фоновый скрипт, проверив журналы из базы данных (2)
  4. Фоновые скрипты запускают проверку пароля / доступа

    • Если каждая система из базы данных (1) не имеет пустого пароля root или пароля по умолчанию
    • Если каждая система из базы данных (1) разрешает определенные входы
    • Загрузите результаты и журналы в базу данных (2)
    • Это может также запустить OpenVAS и результат может быть загружен в (2)
  5. Как результат, вы можете обновить сборку (1) или серверы из (1), если есть пароль по умолчанию или нет пароля. Вы также можете сделать сборку (1) генерировать проверки для Nagios для мониторинга и получения определенных метрик. Вы можете запустить множество систем Nagios. База данных (2) может быть использована для получения логов из различных источников (для этого вам понадобятся адаптеры). На основе этих журналов вы можете увидеть, что именно было взломано, настроить политики и т.д.

Кроме того, Nessus и OpenVAS - это огромные нагрузки. Поэтому использование Nagios с выделенными проверками для хостов является простым и эффективным способом. Также Nessus и OpenVAS не являются хорошими решениями для проверки паролей по умолчанию или отсутствия паролей. Выделенный скрипт - лучший способ решения этой проблемы.

1
27.01.2020, 22:19

Теги

Похожие вопросы