外包安全评估

信息安全 代码审查 人事管理 供应商选择
2021-09-02 10:46:26

有没有人通过自由网站(如 Rent-a-coder、Elance、Guru、Getafreelancer 等)外包安全代码审查的经验?这有效吗?最佳实践是什么?有什么陷阱吗?有没有人有任何建议或经验教训?是否有任何资源或阅读材料可以更多地了解其他人的经验?

一些示例问题:对于如何筛选具有安全知识的自由职业者,您有什么建议吗?(是否有筛选自由职业者候选人的标准预测试?)对于安全审查,要求开放式审查更有效,还是创建许多范围狭窄的较小任务更有效(例如,审查此代码库SQL注入漏洞)?定价方面,是否有任何标准费率或薪酬范围?收取固定价格更有效,还是奖金有效(例如,发现漏洞的奖金)?尝试为同一个代码审查任务雇用多个人,以最大限度地发现问题的机会,和/或交叉比较他们的结果并确定最有效的自由职业者,这是一种很好的金钱用途吗?

您可以考虑一个超出范围的问题:您可以假设我了解与未知个人共享此类代码的风险,并且对此感到满意。

2个回答

试图将代码审查分成多个部分会遇到两个问题。第一个是列举坏事的臭名昭著且一直存在的问题,第二个是招聘和管理远程自由职业者的开销。

进行开放式评论将避免拆分问题,但您需要注意确保自由职业者不会仅仅停留在低垂的果实上,因为他们觉得他们写的东西和您支付的一样多。任何远程外包都需要非常仔细地指定 - 非常具体地说明您希望如何报告审查将管理自由职业者提前停止的风险。与自由职业者交互开发此规范——甚至可能从一个完整的白板开始——将提供一个很好的机会来评估他们的知识范围和深度,而不是测验所允许的。

故意在代码中添加问题以供审查也是评估审查者的一种可能方法,但是您在流程中获得反馈太晚而无法使用,除非您正在寻找重复使用的审查者。

虽然获得多个评论可能会物有所值,但可能不值得增加流程开销。不同组织之间的权衡会有所不同——如果技术人员负责所有的招聘和管理工作,他们的时间可能最好花在代码和内部审查上,如果项目管理时间充足,那么开销可能是可以接受的。

虽然我没有从自由职业者网站雇用人员进行代码审查的任何经验,但考虑到这个问题,我相信您确实在寻找可以作为另一只眼睛来捕捉一些遗漏的人。听起来像是我知道的一个'duh时刻。但是,如果您要问的是是否可以将某些东西拼凑在一起,那么只需使用一个安全的代码编辑器来美化它并使它变得美观和安全,而您所做的只是专注于逻辑……我想您会失望的。

您需要知道并且可能已经使用一些安全编码原则准备好您的代码 95-97%,您从一开始就构建它,但最终无法将其添加。与 JUG 或其他本地编程小组交朋友怎么样,也许在那里建立关系,看看你是否不能通过这种方式获得代码审查,或者至少也许有人可以通过口耳相传的方式传递某人。

如果你要走自由职业者的路线,我认为你想具体一点。分割你的程序的各个部分,然后租出去寻找特定类型的漏洞。代码分析是一个漫长的过程,如果一个按小时计算时间的人知道寻找错误只值得花 X 小时,但你得到的报酬比所需的时间少,那么你可能不会得到一个好的产品所以没有动力了。这是一次采访,也许向他们扔一些你知道是错误的东西以确保他们能找到它是个好主意。

我很好奇在这方面有更多经验的人将如何回答你的问题。