《C++、Go 等六门编程语言.docx》由会员分享,可在线阅读,更多相关《C++、Go 等六门编程语言.docx(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、腾讯代码安全指南开源,涉及 C/C+、Go 等六门编程语言 C+编程资源合集:海量资源免费下载 C+编程/华为C+编程标准/C+编程练习题大全/编程思想/C+编程实例等资源下载 腾讯代码平安指南旨在梳理 API 层面的风险点并提供详实可操作的编码指引 是我们开展 DevSecOps 平安左移理论探究经过中 梳理沉淀面向开发人员的代码平安参考材料。 本次开源涉及 C/C 、JavaScript、Node、Go、Java、Python 六门编程语言的平安指南。 ? 工程主页 s:/github /Tencent/secguide 一、工程背景 近年度来 无论是 DevSecOps 还是 Googl
2、e SRE 的可靠以及平安性理念 都提倡“平安需要每个工程师的介入。其中涉及的“平安左移理念也再次被推向前台 获得关注。 除平安团队建立一系列平安机制以及工具外 每位开发者可以以身体力行地介入进来编写平安的代码 从源头杜绝破绽。 基于此 腾讯各 BG 平安团队以及热心开发人员 从业务角度梳理了代码平安指南。它提供了详实的参考材料以及行动大纲 分功能、语言整理了编码的最正确平安理论 可作为一线开发者的权威参考 有助于开发黑、白盒破绽扫描工具以及策略。 二、设计理念 代码平安指南的内容呈树状构造展开 共分 5 层 如下 2.1 语言 每种语言面临平安的风险种类不同 需要分别开展详述。如 go 以及
3、 javascript 比照 go 就不存在原型链污染的问题。同时 由于公司内的代码风格标准亦分语言展开 平安标准采取一样的分语言方式能保持整体的连接性。 2.2 端 这里的端是指不同的终端 如 Web、安卓客户端、iOS 客户端、PC 客户端。理论经过中 将内容按端区分的原因有 1、同一门编程语言 用在不同的终端应用开发 其面临的风险类型以及数量有着天壤之别。例如 JavaScript 应用于前端页面开发时 面临的主要风险是 DOM XSS 但 JavaScript 亦可依托 Node.js 进展 Web 后端接口开发 假如编码不当 那么存在命令注入、SQL 注入等风险。 2、大型互联网公司
4、内 工程开发采取“流水线化作业 分工往往精细明确 将不同端的场景作为主干目录 更便于开发人员检索、快速解析编码平安知识。 2.3 场景 通过复盘历史破绽 平安风险可按成因粗略归为两类 1、代码破绽 是指代码编写时 因不平安的 API 使用以及逻辑编写产生的平安风险。 2、运维破绽 是指代码的运行环境、配置以及依赖等系统运维相关的问题。如腾讯蓝军共享的一文 涉及的平安风险本质上是 局部语言依赖包管理 当局部企业私有软件包仅在公司内部软件源注册时 攻击者就可以在外部公共软件源上抢注。假如公司内员工使用包管理软件拉取时 未配置公司镜像源时 就会拉取到攻击者抢注的恶意包。 2.4 功能 在对内、外部发
5、现的破绽进展复盘经过中 我们发现平安风险与业务场景高度相关 例如 由于代码平安指南的目的受众是开发人员看的。在撰写指南经过中 我们尝试将破绽转化为功能场景 以此作为主干目录。由于与详细的业务场景关联 在开发时能更容易想起相关的考前须知 由此可降低认知、学习本钱。 2.5 内容 指南内容核心围绕编程语言以及框架的 API/sink 点展开。对开发人员来讲 API 是实现业务逻辑时 高频接触对象。而通常 平安破绽往往可归因为 API 的错误使用。对平安工程师来讲 sink 点是编写平安策略、组件是非常重要的一局部 直接决定了平安系统的扫描才能。 编写代码平安指引时 采取了以下方法来提升内容的完善性
6、 聚合各语言、组件、框架文档中的最正确平安理论 充分调研 CWE、OWASP 等现有标准 采用更方便开发者记忆的编排以及阐述方式 编码形式基于丰富的公司内外已知破绽案例 不断补充先前未考虑到的风险躲避建议 举一反三 结合各类开发文档以及提炼的破绽产生原因 挖掘鲜有提及的风险点参加标准中。 三、开源沟通 我们祈望通过将代码平安指南开源 帮助有 DevSecOps 以及平安左移建立的企业机构解决实际问题。同时 平安指引需要随着新发现的破绽、编程语言 框架的迭代不断完善。祈望能以及社区携手 一道维护完善。假如你觉得帮助 欢送给工程 Star、提交 Issue 以及 PR。 点击直接访问 请给工程 一个 Star ! 欢送提出你的 issue 以及 PR 国内镜像地址 登录后才能访问公开工程 视频号最新视频