我的公司目前正在进行以笔试为框架的安全审核。他们要求为我们的每一项服务提供所有管理员密码,并要求提供软件的所有源代码。他们希望登录Google Apps,信用卡处理器,GitHub,DigitalOcean,SSH凭据,数据库访问权限等等。请注意,我们从未签署过一份NDA(但已经提供了一份工作说明),因此,我非常不愿意向他们提供此信息。

入笔测试是否正常? ?我以为那将是黑匣子。我应该如何进行?

“ UPDATE *我们现在有一个NDA。但是合同确实说我们不能对它们承担任何责任。仍然不确定这是否是正确的举动。以我的经验,即使在白盒审核中,他们的要求也不是正常的,而且他们的工作说明的阅读方式不清楚是白盒审核还是黑盒审核。 >

评论

密切相关:我们的安全审核员是白痴。我如何给他他想要的信息?

嘿,我想审核您的公司:请将所有管理员密码发送给我。只需编辑您的问题即可列出所有问题....

等一下您从未与该安全公司签署保密协议吗?立即退缩,并在继续前进之前获得NDA的签署。在我看来,这是一家假冒伪装成真实公司的假公司,以查看他们是否可以从您那里获得任何信息。如果这是一家真正合法的公司,那么审核员将尝试查看您是否愚蠢到无法提供该信息。如果仅提供其中的一部分,就说明审核失败了。但是,这是非常专业的,绝不应该发生。

这是第一次测试。

我已经五年了。在达成一致的范围,时间表,签订的合同和NDA之前,我们不会碰任何该死的事情。这些手续可以保护双方,在正确完成数据之前,任何人都不应移交任何数据或接触任何系统。在没有法律协议且绝对需要访问的情况下,要求此类信息的任何人(最多)是对自身,其组织和您的巨大技术和法律责任。远离这些牛仔。

#1 楼


正常进行测验是否正常?


绝对不是。最好的情况:他们正在执行“社会工程”渗透测试,并希望了解您是否可以承受执行非常危险的行动的压力。在中等情况下,他们不知道如何完成工作。在最坏的情况下,他们只是假装成为一家审计公司,而满足他们的要求将导致昂贵的违规行为。但是,我希望提供此类服务的公司已经了解了这种需求的敏感性,并提供了许多表格供您签名,并愿意在严格控制的环境中工作。一家信誉卓著的安全公司不仅要保护您(因为这是他们的工作),还要保护自己免受不信任客户的侵害(雇用您后我们的源代码就泄露了:我们正在起诉! 。这么说就是:任何没有您在上班前签下大量合同的信誉良好的安全公司都不是信誉良好的安全公司。对其中的任何一个都将是一个好主意。 / agreements / NDA。我想这是可能的,但我想澄清一下,缺少合同并不是我看到的唯一危险信号。

作为构建了需要与许多CC处理器集成的电子商务站点和商业软件的人,我认为授予其他人访问您的CC处理器绝对没有好处。在那时,他们不再对您的系统进行渗透测试:他们正在对您碰巧使用的其他人的系统进行渗透测试。实际上,以这种方式提供访问凭证可能会违反您在开始使用CC处理器时所签署的服务条款(更不用说他们正在请求访问的其他系统)。因此,除非您得到CC处理器的许可,将您的凭据交给安全审核公司(提示:他们永远不会授予您许可),否则授予他们访问权是巨大的责任。

这里的许多其他人都有在阐明白盒测试和黑盒测试之间的差异方面做得很好。的确,您给予安全审核员的访问权限越多,他们执行工作的效率就越高。但是,增加访问权限会带来成本增加:这不仅是因为它们收取更高的费用以进行更彻底的审核,而且还因为增加责任和增加信任而增加了成本,您必须扩大对这家公司及其员工的信任。您正在谈论自由地给予他们对您所有公司系统的完全控制权。我无法想象在任何情况下我都会同意这一点。

评论


完全同意。充其量,我希望这是一种笨拙的方式来证明关于社会工程学的观点。但是即使那样,我也不会与这样的公司做生意。任何信誉良好的公司都将有一份合同,一份NDA,以及各种保证,以在这样的约定开始之前保护您和他们双方。

– JesseM
17-10-25在17:54

好答案。 OP还可能有义务要求其其他服务提供商不要与其他方共享他的密码。话虽如此,创建一个专门用于笔测试者的新用户帐户是可以接受的,使用他们自己的密码,他们将根据情况在有限的权限下进行管理。

–吴宗宪
17-10-25在20:09

@jesseM剩下的一种可能性是签订合同和NDA,而OP对此一无所知。在某些情况下,我们会进行笔测试,而这些笔测试是在参与者不了解或知识有限的情况下进行的。 (即只有首席执行官,CSO和CIO会知道这一点。正确地做到这一点非常棘手,但是组织中需要有非常好的升级流程,否则,当人们的反应不正确时,您将面临很多麻烦事情就停止了。)

– DRF
17-10-26在11:06

@DRF甚至在OP不了解合同的情况下,这些请求也是不合理的。访问他们的CC处理器?我认为安全审计员没有理由需要它。这对双方都是巨大的责任。即使您试图检查他们在CC处理中是否遵循最佳实践,也不需要访问其CC处理器来执行此操作,并且请求访问显然违反了最佳实践。他们要求提供太多高度敏感的物品,以免造成不良影响。

– Conor Mancone
17-10-26在11:24

@DavidMulder这实际上是一项非常有价值的服务:相比之下,谷歌“另一个亚马逊aws泄漏”很有趣,以查看由于配置不正确的主机配置而导致人们泄漏关键信息的所有实例。话虽如此,我认为移交密码不是解决该问题的方法。如果可以解决问题,我认为最好让他们远程连接到办公计算机并观看他们所做的一切。无论如何,这将是一种更有价值的学习经验。

– Conor Mancone
17年11月2日,14:57

#2 楼


我应该如何进行?


不要继续进行。他们的行为方式不专业。渗透测试对双方都有风险,而且似乎他们也无能为力。

首先,绝对不要在没有书面合同(包括NDA)的情况下移交任何东西。令人惊讶的是,他们经常那样做。他们怎么知道确切的范围?他们根据哪些条款获得报酬?他们会只是蛤they他们在某个时候“完成”还是有时间表吗?您得到适当的报告吗?如果造成损坏,谁负责赔偿?如果他们将您的凭据丢失给第三方,他们是否已投保?您如何知道将来的违规行为是测试的一部分还是其他人的实际攻击?即使您信任它们,也一定要在开始测试之前就回答这些问题。如果您从未明确范围,则它们可能会未经许可就攻击您的某些系统,可能会产生法律隐患。


我认为这主要是黑盒。 />
黑盒和白盒测试都很常见,每种方法都有自己的优势。但是,如果测试模式从未出现过,那么似乎从来没有讨论过首先进行笔测试应该实现什么。专业的承包商会帮助您确定正确的条件和方法。它们如何工作以及您可能会期望得到什么结果。)

#3 楼

在进行任何渗透测试之前,应有双方签署的范围界定和参与规则文件。这些文件应详细说明将要测试的内容以及您的公司和承包商已同意的方法。如果您尚未与承包商进行讨论,请停止聘用并寻求其他专业人员。这样可以从恶意员工的角度进行测试。但是,在进行范围和订婚规则测试之前,所有这些都已达成共识。

我的2美分。

#4 楼

永远不能!!

我们正在对我的工作进行全面的测试。渗透测试者明确指出,他们甚至不需要登录名/密码。我们说那太好了,因为我们从不向他们发布任何东西。渗透测试主要有3种类型:白框,灰框,黑框。
灰色盒子是您为他们提供了一些您希望他们渗透的细节。我们之所以使用它,是因为他们不知道我们在使用哪个外部无线ISP。我们告诉他们首先进行外部测试,所以我们给了他们一些IP,它们很容易闯入。之后,他们可以对外部IP进行渗透测试。对于内部测试,情况有所不同。它们将在您的网络内部运行nmap,并对遇到的每个目标进行其他密集扫描。我认为这是最困难的,但是最好的。

评论


“我们告诉他们首先进行外部测试,所以我们给了他们一些IP,他们很容易闯入。” -您在哪里工作?

–丹尼尔(Daniel)
17-10-28在14:37

@Daniel你的意思是,“你的IP是什么”,不是吗? :)

– BenjiWiebe
17-10-30在14:10

@BenjiWiebe我看到你在那里做了什么,但是我不敢走这么阴暗的路。我要求提供公司名称,以便与他们保持联系。我不想渗透任何人,因为这违背了我的本性。

–丹尼尔(Daniel)
17-10-30在23:10

@Daniel闯入只是第一步。利用发现的漏洞是另一个步骤。尝试仿冒您自己的公司。实施政策并执行它们。我为州政府工作。

–rockower
17年11月1日,0:35

@丹尼尔“我不想渗透任何人,因为这违背了我的本性。”我看你在那里做什么

–巴斯
17年11月1日于13:03

#5 楼


我公司目前正在进行以渗透测试为框架的安全审核。





尚未与他们签定一份NDA或其他合同,因此,我非常不愿意向他们提供此信息。 “订立合同以做某事”。这让我想知道是否有矛盾的陈述是偶然的,或者您不是公司中与证券公司有业务往来的实体。

如果是证券公司,则很可能会有您所签订的合同/协议没有意识到。这并不罕见,因为我在接收端进行的许多渗透测试都对员工隐藏了测试的具体细节,因此他们不会采取任何“异常”措施来防范测试。

如果是这种情况,则对请求进行处理,就像通常对这种请求进行的处理一样。告诉他们“否”,如果他们退后(“但我们需要进行渗透测试”),然后(以书面形式)向要求您的主管提出请求(以书面形式提出)。如果您的主管以书面形式告诉您(以书面形式)发布此信息,那么您应该是明确的,因为他们可能比您更了解测试。如果您的上级不清楚,则将其向上延伸至命令链,并/或推动他们向与保安公司联系的实体请求指导。

但是,如果您是与保安公司合作的实体,那么我(像这里的其他答案一样)将有严重的顾虑。如果您认为仍然值得追求(或担心他们会提出某种“违约”主张),那么我建议您使用一种评估方法,以评估这是否是一项社会工程测试。例如,您可以生成伪造的管理员帐户和密码的列表。将其提供给他们,说您仍在处理其余部分,准备就绪时将其发送出去。然后查看他们的反应。

如果这只是一项社会工程测试,他们所需要做的就是查看此类信息泄漏的证据(您以后可以显示为伪造帐户)。负责任的安全公司不应该再需要任何其他信息,而应阻止您提供这些信息(“查看您提供的信息,我认为这足以让我们继续前进;请不要担心其余的信息,除非它变成我们确实需要它”)。如果他们没有停止任何进一步的信息,请立即脱离。

更多的信息只会使他们怀疑从那时起他们进行的任何渗透(即,如果您具有管理员权限,则很容易渗透到系统中) )和/或使其面临潜在的知识产权诉讼(例如,泄露的源代码等)。

评论


伪造的帐户和密码是一个很好的建议。如果它们是导致他们陷入蜜罐的帐户,它们将更加有效,因此您可以监视它们的滥用情况。

–约翰·迪特斯
17-10-26在15:55

#6 楼

从稍微不同的角度提出问题:

您是CEO还是CTO?

不?然后不要给审核员任何密码。

将信息包放在一起,并将其沿链转发给您的IT经理,CTO,CEO或任何其他人。坦率地说,做出这类决定(并承担后果)是他们的责任,而不是您的决定。

如果老板说:“不,请发送。”然后回答:“作为一名雇员,我不愿意将此类危险信息发布给第三方。”

实际上,如果您是CTO,请从以上回答中获取建议。

评论


您可能还会以书面形式补充说,您的专业建议不是发布证书,而是您尊重这是首席执行官的决定。

– o.m.
17年11月4日在9:09

#7 楼

验证您的假设。

如果这应该是黑盒测试,则他们不应获取或要求任何密码。

如果这应该是配置审查或白盒测试,应交出一些密码。正确的程序是在测试前将其更改为唯一的(随机字符串),然后在测试后再次进行更改。 。


对笔试来说这是正常的吗?这完全取决于测试范围和活动的确切约定。


我以为它主要是黑匣子。我应该如何进行?


请与负责签署此笔试团队的经理核对。您的CISO或CSO或IT经理,无论是谁。表达您的担忧并询问是否同意这种方法。


提供密码/源代码

我个人不会将任何密码或源代码提供给任何人没有签署适当的保密协议。我也永远不会给他们实际的密码。在我参与过的所有渗透测试中,双方都是客户和项目经理(我不是一个五星,但我已经管理渗透测试者),总是为渗透测试创建了用户帐户并更改了密码。我们甚至建议我们的客户在测试完成后进行更改(有些不这样做,对于下一次报告来说,这总是很可悲的发现)。


密码强度

至于一些有关“评估密码强度”的答案,这是一大笔费用。是的,好的密码存在“最佳实践”,几十年前有人不知所措,今天非常遗憾。关于该主题的所有数学运算都充满漏洞和未经验证的假设,并且许多密码策略实际上减少了搜索空间而不是扩大了搜索空间。
唯一真正的密码强度测试包括两部分:一,获得前10,000个大约20个左右的列表之一中的密码会在Internet上浮动,并将其用作黑名单。第二,在您的密码哈希上运行坏人使用的相同破解软件(大多数是免费软件)。如果您的John实例破解了,那么他们的实例也将破解。

评论


其他答案大部分都涵盖了这一点-您的密码强度部分基于错误的假设;如果在多个地方使用了相同的管理员密码,那么该密码就不是强密码了-是的,自动密码审核完全按照您的概述进行操作,因此我不确定使用“计数器参数”的目的

– schroeder♦
17-10-26在13:05