Veracode CWE ID 259 - PullRequest
       12

Veracode CWE ID 259

0 голосов
/ 29 ноября 2018

Ошибка получения CWE ID 259 в приведенном ниже коде в строке session.setAttribute,

public void doGet (HttpServletRequest req, HttpServletResponse resp) вызывает ServletException, IOException {

    HttpSession session = req.getSession();
    session.setAttribute("resetPassword", "Gets are not accepted.");
    this.getServletContext().getRequestDispatcher("pwReset.jsp").forward(req, resp);    
}

Нужна помощьна исправление этого

1 Ответ

0 голосов
/ 06 декабря 2018

Прежде всего, вы должны понимать, что инструменты анализа кода, такие как VeraCode, могут давать ложные срабатывания, и вам, возможно, придется принимать исключения от команды безопасности (и, возможно, не обязательно будет исправление кода) для некоторых флагов.

CWE ID 259 - это жесткое кодирование необработанной информации о полномочиях, такой как пароли в коде, и это очень плохая практика кодирования.

Для вашего случая, session.setAttribute("resetPassword", "Gets are not accepted.");, как VeraCode узнает, что вы жестко кодируете необработанный пароль?

Скорее всего, поскольку вы назвали атрибут как resetPassword.

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

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

Пожалуйста, прочитайте Потенциальные меры по снижению риска разделы на - CWE-259: Использование жесткого пароля

...