Уязвимости можно условно разделить на уровни на которых они находятся по модели OSI.
1) Уязвимости сетевого стека OS
2) Открытые по ошибке порты (Торчащая наружу БД без авторизации).
3) Уязвимости связанные с работой прикладных протоколов из-за устаревших версий ПО (ssh,ftp)
4) Слабые пароли (Для ssh, ftp, mysql).
5) Уязвимости в веб-приложениях (OWASP TOP 10)
Для каждой отдельной уязвимости и для каждого отдельного типа существуют различные утилиты для проверки.
Начать можно с Nmap и продолжить чтением OWASP Web Application Security Guide.
Есть специальные ресурсы, сканеры уязвимостей, которые могут проверить большинство уязвимостей на каждом из уровней.
https://metascan.ru
https: //acunetix.cоm
https: //detectify.cоm