Использование жёстко закодированных IP-адресов в коде может раскрыть детали сети, упрощая злоумышленнику анализ инфраструктуры приложения.
Например, прямое указание адреса SSH-сервера создаёт потенциальную уязвимость:
public static final String SSH_SERVER_ADDRESS = "117.107.58.59"; void connect() { Socket socket = new Socket(SSH_SERVER_ADDRESS, 22); // .... }
При попадании этого кода в публичный доступ или в руки злоумышленника внутренняя инфраструктура перестаёт быть конфиденциальной.
Такое решение также привязывает приложение к конкретному окружению, усложняя настройку и обновление.
Рекомендуется хранить конфиденциальные параметры во внешних источниках. Например, в переменных окружения:
public static final String SSH_SERVER_ADDRESS = System.getenv("MYAPP.SSH_SERVER_ADDRESS"); void connect() { Socket socket = new Socket(SSH_SERVER_ADDRESS, 22); // .... }
Выявляемые диагностикой ошибки классифицируются согласно ГОСТ Р 71207–2024 как критические и относятся к типу: Ошибки некорректного использования системных процедур и интерфейсов, связанных с обеспечением информационной безопасности (шифрования, разграничения доступа и пр.). |
Данная диагностика классифицируется как: