一份好的加密项目审计报告可以让客户发现潜在问题,并助之解决这些问题,最后可以帮助该项目或产品得到改进,使客户获得更高的价值。不过,这要建立在审计人员以专业和客观的态度与你合作,双方共同实现这个目标的前提基础上。如果审计人员都能遵循一定的质量和道德标准,那么客户就能更好地达到他们的预期和要求。
通常,客户对加密项目的要求不仅仅是找到问题,而是能找到解决方案。因此,这要求审计人员能够为每个发现的问题都提供一些附带的解决建议,而不是在重言式推荐中简单写一句“修复这个问题”。其次,应具体说明问题并在可能的情况下提供补丁。虽然作为审计师,找出最佳解决方法并不总是那么容易的,但可以尝试先写下几种解决策略,然后再与客户进行讨论。不仅如此,解决方案还可区分为短期修复和长期修复。短期修复的解决方案比较简单,例如添加其他的健全性检查或更新某些依赖性方案;而长期修复的解决方案耗时较长,有可能需要做更多工作或进行系统/设计更改。
提到与客户的讨论,在这里要建议审计师积极与客户进行交流,通常来说,最好在准备工作说明时或是在启动会议期间能和对方就如何使用沟通渠道达成共识。不仅如此,审核人员定期与客户共享他们的审计工作进度是非常重要的,比如自己正在评审代码中的哪一部分、发现哪些内容不清楚或有错误信息,同时还要在发现问题后立即报告,这将有助于审计师及早发现错误,并让开发人员实施debug措施。
当然,如果最终的审计报告中没有涉及到任何一个安全问题的话,对审核员和客户而言可能都会感到一丝尴尬,客户甚至会以为审核人员可能没有很好地完成工作,自己的钱也许白花了。所以为了减轻这种担忧,无论最终的报告中什么问题都没发现还是发现了一堆问题,建议最好可以首先列出自己一直在寻找的错误类型,然后还可以描述自己使用过哪些审计工具及其配置,并枚举已验证的属性。
但是,在这要注意的一点是,审计人员通常会夸大问题的严重性。而做出这样的评级决定有时并非因为项目真的有明显问题,而是因为项目只是“看起来”很糟糕并且会让审计人员感到尴尬,或者因为他们推测在事件重合的情况下或许会出现漏洞。但要知道,客户并不关心审计员对bug的个人感觉,他们只需要有意义的风险等级,然后再去确定修复bug的优先级,这样才能与用户进行交互。如果漏洞确实非常严重,比如按照威胁模型的定义,这些漏洞很可能被利用,而且存在严重危害,那么可以将其评估为严重漏洞。记住,夸大严重性不会帮助审计员在审计工作中树立声誉。
郑重声明:本文版权归天网查所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。