Security 如何最好地向您自己公司的web开发团队展示安全漏洞?

Security 如何最好地向您自己公司的web开发团队展示安全漏洞?,security,xss,Security,Xss,想象以下场景: 你在Big Co.工作,大厅下面的同事都是Big Co公共博客系统的web开发团队成员,很多Big Co员工和一些公众人士都使用该系统。博客系统允许任何HTML和JavaScript,你被告知这是一种选择(不是偶然的),但你不确定他们是否意识到这一点 所以你想让他们相信这是个坏主意。您可以编写一些演示代码,并在自己的博客中植入XSS脚本,然后编写一些博客文章。不久之后,博客管理员主管(在大厅下面)会访问你的博客帖子,XSS会将他的cookies发送给你。您将它们复制到浏览器中,现

想象以下场景:

你在Big Co.工作,大厅下面的同事都是Big Co公共博客系统的web开发团队成员,很多Big Co员工和一些公众人士都使用该系统。博客系统允许任何HTML和JavaScript,你被告知这是一种选择(不是偶然的),但你不确定他们是否意识到这一点

所以你想让他们相信这是个坏主意。您可以编写一些演示代码,并在自己的博客中植入XSS脚本,然后编写一些博客文章。不久之后,博客管理员主管(在大厅下面)会访问你的博客帖子,XSS会将他的cookies发送给你。您将它们复制到浏览器中,现在以他的身份登录

好了,现在你以他的身份登录了。。。你开始意识到继续“黑客”博客系统可能不是个好主意。但你是个好人!你在登录他的账户后不会碰他的账户,而且你绝对不打算公开这个弱点;你可能只是想让他们知道公众有能力做到这一点,这样他们就可以在恶意用户意识到同样的事情之前修复它


从这里开始的最佳行动方案是什么?

过去,每当我看到需要我们内部IT团队解决的安全问题时,我都会简单地告诉他们问题是什么,以及可以采取什么措施来潜在地利用它

根据他们的敏感程度以及您对他们/公司的立场,概念验证代码可能是个好主意,也可能不是个好主意。如果他们有理由怀疑你恶意使用它,我会保密的。否则,如果他们愿意,就分享吧


这是唯一的敏感区域。只要以一种负责任的方式沟通这个问题,很明显你只是关心安全问题,而不是想利用这些问题。

这取决于你在公司的职位,大厅里人的性质等等

提出一种选择:

走到他们跟前,用抽象的术语描述威胁(“有人可能劫持你的cookies,反过来又会……”),并询问他们是否愿意观看演示?如果比赛中有自大狂,而你真的想让他们解决这个问题,那么不要和整个团队交谈,而只和团队负责人交谈

如果他们同意,等几个小时,然后以“他”的身份登录,然后在系统中做一些非破坏性但明显的事情——你是在他们允许的情况下这样做的。他们可能会被打动,并确保洞得到修复

如果他们不同意并告诉你走开,那么,你必须权衡你的选择:要么你把它带到更高的地方,要么你把它埋了。提到这个问题,你就放弃了匿名发送的所有选择


如果你不能100%确定决策链中的每个人都是合理的,并且完全理解你在做什么,并且这是为了公司的利益,我不会做任何流氓“黑客”——总是先谈论它,尤其是在大公司的环境中。这些东西很容易被你误解为恶意的——特别是如果有人会因为建立这个安全漏洞而感到尴尬,并想把责任推到其他人身上。

每个人都在关注解决网站的问题,也许我只是一个小马基雅维利人,但我也会考虑确保我的反对意见以书面形式记录在案;我会给我的几个上司写封电子邮件


你最不需要的是被开发的站点,决策者坚持认为是你的工作(或者你的伙伴的工作)来考虑技术方面的问题,而你发现没有人记得你说过的话。虽然XSS漏洞是一个严重的问题,但如果您不在组织中担任信息安全角色,那么您就没有必要干预开发组织的运作方式

没有绝对安全这回事,但我想,监督博客项目的人晚上会很轻松,因为他们知道,如果任何员工滥用了这项技术,他们可以通过日志进行跟踪,并得到相应的处理


如果您未经他们同意而编写恶意代码“证明此点”,那么未经批准执行此操作是相当严重的,我想您的上司也会有同样的感受。

您有三个可行的选择:

  • 与网络团队交谈

  • 和你自己的老板谈谈

  • 别理它


  • 我想我会同时选择1和2。这是一种令人担忧的行为。如果他们不了解最简单的安全缺陷,比如XSS,那么他们必须被解雇。这不是因为一个漏洞,这只是愚蠢的。他们应该被解雇,因为他们不了解安全性,我毫不怀疑他们在系统中引入了更严重的漏洞。如果他们没有得到这本教科书XSS版,那么CSRF呢?他们会认为你疯了


    理解代码的安全影响是绝对必要的。如果没有这一点,那么程序员只是个累赘。

    试着和他们谈谈不是一个好主意吗?你已经简单地表达了你的担忧;在这段对话中,你了解到这是一个决定(有人告诉你,要么全有,要么全无)。你想表达一个中间立场,阻止所有HTML标记(非恶意标记除外),但同时你首先进行了演示,以获得支持你担忧的实际证据。要匿名将攻击证据发送给博客管理员负责人,翻到第34页。我同意他在写这种攻击之前应该获得许可,但是任何人都可以找到安全问题,所以应该有方法来报告