《代码安全体系建设实践——汤青松(25页).pdf》由会员分享,可在线阅读,更多相关《代码安全体系建设实践——汤青松(25页).pdf(25页珍藏版)》请在三个皮匠报告上搜索。
1、代码代码安全体系建设实践安全体系建设实践FunplusFunplus趣加游戏安全架构趣加游戏安全架构师师汤青松汤青松分享背景信息安全的防御遵从木桶原理,在业界受到一致认可,保障整个应用的安全,不由某一维度是否做的足够好来衡量。安全质量不在于开发人员的编码能力高低,也不在于安全人员单独的技术能力,而在于整个体系的意识、技术、监督、学习等多维度。安全安全培训培训案例就地取材0303小组培训0202首次基础培训0101首次基础培训万事开头难,对于安全培训首次可以分享的三个点:1、分享自己审计的流程2、介绍安全漏洞的分类3、分享代码自查的方法小组培训要想让开发人员诚心接受你的安全开发培训,你尽可能保障
2、培训人数在10人以下,否则很难形成互动局面,分享中要注意:1、贴近所在团队的真实代码2、贴近所在团队的业务场景3、多分享故事形成互动气氛案例就地取材分享的漏洞案例尽可能贴近所在团队,平时可以从以下场景中积累:1、代码审计2、安全测试3、安全事件风险实时提醒风险实时提醒信息泄露提醒0303风险函数提醒0202风险提醒作用0101git钩子使用0404风险提醒作用开发者接受安全培训后,可以在git仓库中部署钩子来检测代码安全性,并指出提交的代码安全问题,这么做的意义有三点:1、加强安全意识2、从源头阻挡风险3、提升安全反馈速度风险函数提醒函数作用assert使用用户输入调用assert相当于eva
3、l,需要确保参数不被用户所控制。eval将字符串作为PHP代码执行exec执行系统命令ftpFTP明文下载文件mcrypt加密库preg_replace正则替换,如果使用/e模式,可能会存在命令执行问题信息泄露提醒函数作用phpinfo显示PHP环境信息pprofgolang的调试信息db.Rawgolang知悉SQL语句ioutil.ReadFilegolang读取文件内容os.StartProcessgolangos.StartProcess执行命令git钩子使用钩子检测的原理是在git服务器接收push数据时候执行一个事件,事件调用semgrep进行正则匹配,然后将风险返回,具体实现参考地址:https:/ SCACheckMax代码卫士SemGrepCodeQlkunlun-M批量代码审计实现目前几款产品针对单个代码库支持比较好,对于多项目支持并不是太好,甲方工作其实比较关注多项目,因此我开发了一套批量代码审计工具,支持按照漏洞筛选https:/