
HardeningMeter — это инструмент с открытым исходным кодом на Python, тщательно разработанный для комплексной оценки уровня защиты (hardening) бинарных файлов и систем.
Авторские права (c) OfriOuzan (B4MB1)
Хотите узнать больше о механизмах безопасности?
HardeningMeter — это инструмент с открытым исходным кодом на Python, тщательно разработанный для всесторонней оценки защиты (hardening) двоичных файлов и систем. Его мощные возможности включают тщательные проверки различных механизмов защиты от эксплуатации двоичных файлов, включая Stack Canary, RELRO, рандомизации (ASLR, PIC, PIE), None Exec Stack, Fortify, ASAN, NX bit. Этот инструмент подходит для всех типов двоичных файлов и предоставляет точную информацию о статусе защиты каждого файла, определяя те, которые требуют внимания, и те, которые имеют надежные меры защиты. Hardening Meter поддерживает все дистрибутивы Linux и машинно-читаемый вывод; результаты могут быть выведены на экран в виде таблицы или экспортированы в CSV. (Для получения дополнительной информации см. файл Documentation.md)
Сканируйте каталог '/usr/bin', файл '/usr/sbin/newusers', систему и экспортируйте результаты в CSV-файл.
python3 HardeningMeter.py -f /bin/cp -s

Перед установкой HardeningMeter убедитесь, что ваша машина имеет следующее:
readelf и filepip install tabulate
Последние наработки можно получить через git.
Клонируйте или загрузите файлы проекта (компиляция или установка не требуются).
git clone https://github.com/OfriOuzan/HardeningMeter
Укажите файлы, которые вы хотите сканировать; аргумент может принимать несколько файлов, разделённых пробелами.
Укажите каталог, который вы хотите сканировать; аргумент принимает один каталог и сканирует все ELF-файлы рекурсивно.
Укажите, хотите ли вы добавить внешние проверки (по умолчанию False).
Выводит в порядке следования только те файлы, в которых отсутствуют механизмы защиты (hardening) и которые требуют дополнительного внимания.
Укажите, хотите ли вы сканировать методы защиты системы.
Укажите, хотите ли вы сохранить результаты в CSV-файл (по умолчанию результаты выводятся в виде таблицы в stdout).
Укажите, хотите ли вы сохранить результаты в JSON-файл, который легко анализировать и интегрировать с другими инструментами.
Результаты HardeningMeter выводятся в виде таблицы и содержат 3 различных состояния:
Если язык по умолчанию в Linux не английский, обязательно добавьте 'LC_ALL=C' перед вызовом скрипта.