关于代码审计一行多少钱这个事,其实很多企业老板、开发者朋友都跟我一样是有迷糊情况的,不是说随口问一句就能立马得到一个特别准的数字,因为这里面牵扯的东西可太多了!首先得弄明白,代码审计到底是个啥子,就是说你写了一堆代码出来,怕这里面有漏洞,不管是安全上的,还是影响速度、性能方方面面的问题,就找专业的人或者厉害点的公司,帮你仔仔细细、从头到尾捋一遍,查一查,看看哪儿有毛病……这大概,或者说可能,就是代码审计的意思了。
1. ◆ 影响价格的几个大头因素要说清楚:
代码本身的‘量’与‘难’:你代码没多少行,比如说就几百行、几千行的小工具,跟那些企业用的、动辄几万行、几十万行,结构还乱七八糟的大系统比,那费的功夫肯定不一样,收钱能一样吗?不可能
查得‘深’还是‘浅’:只是随便过一遍,看看有没有个_sql注入或者_xss这些摆在明面上常见的漏洞,跟那种从架构层面、逻辑深处,一点点抠,甚至还要模拟黑客怎么攻击的全方位 Audit,那价钱可不是差一星半点!
‘谁’来干这个活儿:你找那种不知名的小团队,刚毕业没两年的小伙子,跟风投老大看重的那种大安全公司,里面都是干了十几年的老师傅,那收费标准能相提并论吗?简直天差地远!
2. ★市场上常见的几种报价‘模式’可以了解了解:
◇ 按‘ LOC ‘算钱(就是代码行数):这种听说过,但不多,而且差异特别大!我之前模糊地听人讲,几毛的有,一块、两块的有没有?也可能……甚至有听谁嘴里冒出来过说贵的能到十块錢一行?这跨度也太吓人了,但真要按行算,这个一块钱一行、哦对两块代码审计一行多少钱,大概率是针对特定类型、比较规范的代码才行!

◇ 按‘项目’打包收费:这倒像是大多数情况采用的招式!小企业一个小项目,可能几千块到几万块就能搞定;那种big project,几十万、上百万的可着劲儿往上提价钱也是存在,尤其是什么金融的、搞支付的、或者医药相关这种特别需要重安全保险的地界儿!
◇ ‘人·天’报价大法:就是一个技术人员忙活一天算一个人天,一个人天大概从几千到一万多不等?看公司 varying 和地区 varying,比如在北京的大公司,跟三线城市小厂给出的人天价格,肯定不一样!
有时候你打电话过去问多少钱,人家审计公司老不乐意直接给个数,先得盘问你好多问题:啥编程语言写的?后端是 java 还是 PHP ,要不要看看_frontend 的_javascript?用了哪些 Framework 框架?项目大概是干嘛业务的,金融的还是普通管理系统?想查哪些方面,光安全漏洞还是也看看性能问题?有没有啥指定要遵守的 safety standard 规范(像 OWASP Top 10必须Check 一下之外,还有没有 National 级别的要求)?得把这些弄明白了,人家才能给你一个沾点边儿的报价范围,不然都是瞎猜!
问:那我这代码不多,就五千行左右,大概得花费多少_money
答:五千行其实不算多,但具体多少还是不好说死得看复杂程度和审计深度了!如果就是常规的 Web 应用代码,用大众框架写的,审计要求也不高到天上去,往少了说两三千、三五千可能够花?要是代码写得七扭八歪,注释也没法看,逻辑乱腾腾的,那报价就可能往上加,八千一万也不是沒有可能出现的噻!
问:为啥不给我按行算,那种方式明码标价多清楚咧?
答:你以为按行算清楚,其实里面猫腻也不少咧!有些白送的空格、自动生成没屁用的代码要不要算进去?而且静态扫描工具过一遍发现那么多‘警告’,哪些是真有危险的,哪些是误报还得人工去判断、去验证?这人工成本咋按行均摊?所以说按项目或者按人天算,虽然看上去‘糊涂’一点,但对双方来讲,可能更‘公平靠谱’一点点?个人观点是,不能只盯着人家报的那个‘行数单价’一个数字看,一分价钱一分货这话,在这审计行当里,多数情况下还是能讲得通的道理!得看人家到底能给你输出多少有价值的成果。