Комментарии Javascript - это риск для безопасности?
Во время аудита PCI-аудита аудитор сказал, что у нас были серьезные риски безопасности, потому что
- Можно было загружать статические ресурсы с нашего сайта, такие как изображения css и javascript, без предварительной проверки подлинности.
- В нашем javascript есть комментарии.
Лично я считаю, что это вовсе не угроза безопасности. Изображения css и javascript, которые не были динамически созданы, и не содержали данных на нашем бэкэнд, наших данных о клиенте и о механизмах.
Комментарии в javascript просто объясняли, что делают методы в файле javascript. Кто-нибудь, кто читает JS, мог бы все равно узнать.
Как это показывает " утечка информации"?
Являются ли комментарии в javascript действительно угрозой безопасности?
Ответы
Ответ 1
В зависимости от того, насколько строгий аудит, загрузка изображений и т.д. без аутентификации МОЖЕТ быть замечена как риск безопасности (подумайте диаграммы, диаграммы, графики...).
Удаление комментариев в javascript походит на обфускацию кода: это делает его немного сложнее, но все еще не невозможно понять, что происходит. В любом случае, JavaScript следует рассматривать как улучшающий - все равно ваша безопасность должна быть (дублирована) на стороне сервера. Кто-нибудь понимает, что JS не следует считать риском.
Ответ 2
Это зависит от содержания комментария. Поскольку нет способа, без вмешательства человека, исследовать содержание комментариев, чтобы определить, являются ли они рискованными, наиболее эффективным способом проверки этого является объявление всех комментариев в исходном коде, обращенных к клиенту, для риска.
Ниже приведены примеры потенциально опасных комментариев.
// doesn't really authenticate, placeholder for when we implement it.
myServer.authenticate(user,pass);
или
// don't forget to include the length,
//the server complains if it gets NaN or undefined.
function send_stuff(stuff, length) {
...
}
или
function doSomething() {
querystring = ""
//querystring = "?TRACING_MODE=true&"
...
//print_server_trace();
}
Другим примером может быть, если вы включаете заголовок истории исходного кода, кто-то может найти некоторую слабость в безопасности, изучив ошибки, которые были исправлены. По крайней мере, взломщик мог бы лучше нацелить свои атаки, если он знает, какие атаки уже были закрыты.
Теперь все эти примеры - плохая практика (как комментарии, так и код), и лучший способ предотвратить это - это получить обзоры кода и хорошие программисты. Первый пример особенно плох, но невинные предупреждения вашим товарищам по команде, как и второй пример, или код отлаживаемых комментариев, как и третий, - это виды дыр в безопасности, которые могут проскальзывать через сеть.
Ответ 3
Не вступая, если они представляют угрозу безопасности или нет, минимизируйте JS на рабочей среде, это предотвратит "утечку информации" и поможет (по крайней мере, как-то) защитить информацию вашего веб-сайта.
относительно риска безопасности, я не думаю, что комментарии JS представляют собой риск вообще, каждый контент веб-сайта (статический) можно загрузить без проверки подлинности. (если не указано иное)
Ответ 4
Нет, если они только показывают, как работает код. Любой достаточно решительный человек мог бы найти это в любом случае.
Тем не менее, это, вероятно, хорошая идея для минимизации JavaScript; не из-за безопасности, а потому, что это уменьшит время загрузки и, следовательно, сделает ваш сайт немного более отзывчивым.
Ответ 5
Комментарии JavaScript могут быть. зависит от вашей логики, но, безусловно, поскольку она общедоступна, вы уделяете больше внимания работе вашего кода.
Есть и другие причины для удаления этого, а также размер файла и, как результат, размер загрузки.
Инструменты, такие как dd JSMin, могут помочь вам удалить комментарии и перенести грубую запутывание кода.