文章来源: 系统安全运维
公司越来越大,开发人员也越来越多。每个研发人员的安全素质都不一样,虽然在公司核心项目上可以采取框架层安全防护,但各类新项目太多,无法做到每个项目都使用相同框架,都去集成安全组件。
所以对于公司所有的项目必须有一道防护来保障基本安全,代码安全审计即可作为这一道安全手段。
软件代码审计是在一个编程中对源代码旨在发现错误、安全漏洞或违反编程约定的项目。它是防御性程序设计范例,它试图在软件发布之前减少错误。C、C++、php源代码是最常见的审计代码,因为许多高级语言,如Python,具有较少的潜在易受攻击的函数(例如,不检查边界的函数)
代码检查是审计工作中最常用的技术手段,实际应用中,采用“自动分析+人工验证”的方式进行。通常检查项目包括:系统所用开源框架、源代码设计、错误处理不当、直接对象引用、资源滥用、API滥用、后门代码发现等,通常能够识别如下代码中的风险点:
跨站脚本漏洞、跨站请求伪装漏洞、SQL注入漏洞、命令执行漏洞、日志伪造漏洞、参数篡改、密码明文存储、配置文件缺陷、路径操作错误、资源管理、不安全的Ajax调用、系统信息泄露、调试程序残留、第三方控件漏洞、文件上传漏洞、远程命令执行、远程代码执行、越权下载、授权绕过漏洞。
个人认为,作为一个要入门代码审计的人,审计流程应该从简单到困难,逐步提升。因此我建议大家的审计流程为——DVWA——blueCMS——其他小众CMS——框架。同时做总结,搞清楚漏洞原理。
入门可参考:
https://www.freebuf.com/articles/web/166602.html
https://cloud.tencent.com/developer/article/1450536
https://blog.csdn.net/bylfsj/article/details/10273195
https://blog.csdn.net/m0_37711941/article/details/97954734?utm_term=%E4%BB%A3%E7%A0%81%E5%AE%A1%E8%AE%A1%E9%A1%B9%E7%9B%AE%E6%80%BB%E7%BB%93&utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~sobaiduweb~default-3-97954734&spm=3001.4430
1、常见的代码审计工具
1)、Fortify SCA
2)、Checkmarx CxSuite
3)、360代码卫士
参考:https://www.jianshu.com/p/cd1cb66e4d7d
参考:https://www.oschina.net/p/seay
参考:https://www.cnblogs.com/qiumingcheng/p/7253917.html
参考:https://zhuanlan.zhihu.com/p/32363880
参考:https://github.com/alpha1e0/kiwi
分享一波在学习过程中收集的资料
公众号发送“代码审计”即可获取资料包。希望对各位大佬有用,一起学习哈。
侵权请私聊公众号删文