在一次重复的PCI审计中,审计员说我们有重大的安全风险,因为
可以从我们的网站上下载静态资源,例如图片、css和javascript,而不需要之前的
就我个人而言,我认为这根本不是一个安全风险。图像css和javascript不是动态创建的,它们不包含关于我们的后端,我们的客户详细信息和机制的数据。
javascript中的注释只是简单地解释了javascript文件中的方法所做的事情。任何读过JS的人都可能会发现。
这是如何显示"information leakage“的?
javascript中的注释真的有安全风险吗?
发布于 2010-07-05 16:59:47
根据审计的严格程度,未经身份验证的下载图像等可以被视为安全风险(想想图表、图表……)。
删除javascript中的注释就像混淆代码一样:这会让代码变得更难,但仍然不是不可能理解发生了什么。JavaScript应该被看作是增强的--不管怎么说,你所有的安全性都应该在服务器端(复制)。让任何人理解JS所做的事情的不应该被认为是风险。
发布于 2010-07-05 17:52:28
这取决于评论的内容。由于在没有人工干预的情况下,无法检查注释的内容以确定它们是否有风险,因此审计的最有效方法是将面向客户端的源代码中的所有注释声明为有风险的。
以下是潜在风险注释的示例。
// 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();
}
另一个例子可能是,如果您包含源代码历史记录头,则某人可能能够通过检查已修复的bug类型来发现一些安全漏洞。至少,如果一个黑客知道哪些攻击载体已经关闭,他可能能够更好地针对他的攻击。
现在,所有这些示例都是糟糕的实践(包括注释和代码),防止这种情况的最好方法是进行代码审查和优秀的程序员。第一个示例特别糟糕,但向您的团队成员发出的无害警告,如第二个示例,或注释掉的调试代码,如第三个,都是可能会漏掉的安全漏洞。
发布于 2010-07-05 16:59:53
不用考虑它们是否有安全风险,在生产环境中最小化你的JS,这将防止“信息泄露”,并有助于(至少在某种程度上)保护你网站的信息。
关于安全风险,我认为JS评论根本不是一个风险,每个网站内容(静态)都可以在没有身份验证的情况下下载。(除非另有定义)
https://stackoverflow.com/questions/3178200
复制相似问题