代码审计(二)
创始人
2025-05-30 21:44:34

一、DevSecOps的概念

DevSecOps 是描述开发、安全和运营集成的术语。它是一种文化、自动化和平台设计策略,强调安全是整个 IT 生命周期中的共同责任。

它是将应用程序和基础架构安全性无缝地结合到敏捷和DevOps 流程和工具中。从而在一定程度上保证了及时性(当出现漏洞时可以更加快速、准确的进行安全测试)

二、最佳DevSecOps实践

(1)发展 DevSecOps 文化。

(2)左移。

(3)安全培训。

(4)文化。

(5)可审计性、可见性和可追溯性。

(6)自动化至关重要。

(7)需要在部署前进行审计。

(8)部署后审计至关重要。

(9)扫描外部漏洞。

三、DevSecOps优势

(1)快速、经济有效的软件交付。

(2)改进的主动安全性。

(3)加速安全漏洞修补。

(4)与现代开发相适应的自动化。

(5)可重复、自适应的过程。

四、DevSecOps的安全工具

简述:开发者工具中有很多工具,可以用来帮助创建没有错误和漏洞的代码的。

1.SAST工具:

此工具是一个实用性较强的工具,在一定程度上具有高度的扩展性,它能够自动扫描代码,以便于可以更好的查明其他软件可能存在的漏洞。

2.DAST工具

此工具是深入研究软件应用程序的编码,并且能够实时分析执行逻辑和实时数据。此工具具有更加全面的方法,在应用程序运行时进行分析。

SAST和DAST可以协同工作,从而可以在一定程度上保证产品的安全。

3.容器扫描:

容器扫描至少应确认软件供应链已启动并运行,并且开发团队的容器基础设施已经正确配置和保护。

最好的容器扫描工具将容器组件与它们正在扩展的新漏洞数据库进行比较。

它们还应该为开发团队提供报告、影响分析和已发现的任何许可问题或漏洞的图表。

五、JAVA的安全编程规范

  1. 设计开发必须符合概要设计及防护方案。

  1. 上线代码必须进行严格的安全测试并进行软著备案。

  1. 严格限制账号访问权限。

  1. 提供完备的安全审计功能。

  1. 采取有效措施保证认证安全。

  1. 保证代码简介、注释明确。

  1. 使用安全函数和安全规范验证所有外部输入。

  1. 必须过滤上传文件。

  1. 确保多线程编程的安全性。

  1. 设计错误、异常处理机制。

  1. 数据库操作使用参数化请求方式。

  1. 禁止在源代码中写入口令、服务器IP等敏感信息。

  1. 为所有敏感信息采用加密传输。

  1. 使用可信的密码算法。

  1. 禁止在日志、表单、cookie等文件中记录口令、银行账号、通信内容等敏感数据。

  1. 禁止高风险的服务及协议。

  1. 避免异常信息泄露。

  1. 严格会话管理。

六、PHP的安全编程规范

  1. 命名规范:

在PHP编码中,命名的规范是十分重要的,它可以提高代码的可读性和可维护性:

  1. 变量名:小写字母、并且使用下划线分隔单词。

  1. 类名:大写字母开头,并且使用驼峰命名法。

  1. 函数名:小写字母,并且使用下划线分隔单词。

  1. 注释规范:

注释是一个十分有用的工具,可以帮助其他开发人员理解该行代码的目的和功能。

  1. 缩进规范:

缩进规范可以提高代码的可读性以及可维护性。

  1. 安全规范:

安全规范是一种十分重要的因素,能够保证安全性。

  1. 性能规范:

保证性能规范可以在一定程度,提高性能。

七、Python的安全编程规范

  1. 普通变量命名:小写字母,字母之间用_分割。

  1. 全局变量名:大写字母,单词之间用_分割。

  1. 类成员变量:以_开头。

  1. 私有实例变量:以_开头。

  1. 类名:单词首字母大写。

  1. 包名:小写字母,字母之间用_分割。

  1. 模块名:小写字母,字母之间用_分割。

  1. 文件名:全小写,使用下划线。

相关内容

热门资讯

基于深度学习的车型识别系统(P... 摘要:基于深度学习的车型识别系统用于识别不同类型的车辆,应用YOLO V...
[C语言]错误信息报告stre... strerrorchar* strerror(int errnum);//返回错误码,...
配置管理的四个要点 配置管理是基础,是关键。做工具平台或系统,一定要重视基础的建设。一定要做...
机构密集调研!长三角区域银行为... 地方性上市银行大获青睐。 5月29日,《国际金融报》记者梳理Wind数据发现,已有超千家机构对24家...
Android文件目录 前言 Android文件目录可以分为内部存储和外部存储,其中外部存储又可以分为私有目录...
用友NC数据库迁移服务解决方案 NC数据库迁移工具操作说明          NC数据库迁移工具的功能:不同数据库之间...
Harbor仓库开启SSL 目录一、部署docker二、安装docker-compose三、安装harbor下载离线安装包&#x...
HTML、CSS学习笔记7(媒... 目录 一、媒体查询 1.max-min-width 2.书写顺序  3.媒体类型 4.媒体查询——l...
Word加载项/插件管理 Word加载项/插件管理前言准备:开启加载项功能区加载项Word加载项COM加载项 前...
Spring产生数据源对象(c... 目录一、c3p01. 添加依赖2. 在resources中创建applicationContext....
ArcScene制作三维地图-... ArcScene制作三维地图-三维模型发布时间:2018-01-17 版权࿱...
【C++】面试101,用两个栈... 目录 1. 用两个栈实现队列  2.包含min函数的栈 3.有效括号序列  4.滑动窗口的最大值 5...
一文说明白,TypeScrip... ● 通过前两章的学习, 我们基本上对于 TS 已经入门了 ● 但是我们会发现, 我们好像对于类型限制...
《JavaEE初阶》计算机网络... 《JavaEE初阶》计算机网络之网络原理(传输层) 前言: 本章主要将介绍传输层的UDP与TCP协议...
菲林格尔筹划控制权变更事项 6... 菲林格尔(603226)筹划易主。 5月30日晚间菲林格尔公告,公司于5月30日收到公司实际控制人丁...
[实战]上传文件的实战问题 [实战]上传文件的实战问题文件上传前的编辑问题上传文件的时机选择=>编辑=>上传 文...
学习笔记:基于SpringBo... 一、发送邮件 发送邮件主要使用JavaMailSender类,使用send方法&#x...
ENet学习笔记 ENet:A deep Neural Network Architecture for Real-T...
Obsidian插件推荐和页面... 1. 插件推荐 custom attachment location 可自定义附件图片的存放位置&#...
7个Python中的隐藏小技巧... Python 是每个程序员都喜欢的语言,因为它易于编码和易于阅读的语法。但是ÿ...
Kotlin实现Service... Service的使用1异步通信方式2Service的启动和停止3希望Activity和Service...
python绘制三维图 一、初始化 假设已经安装了matplotlib工具包。 利用matplotlib.figure.Fi...
每周股票复盘:恺英网络(002... 截至2025年5月30日收盘,恺英网络(002517)报收于15.93元,较上周的15.77元上涨1...
HashTabld底层源码解读 Java源码系列:下方连接 http://t.csdn.cn/Nwzed 文章目录...
常熟银行新注册《常熟农商银行P... 证券之星消息,近日常熟银行(601128)新注册了《常熟农商银行PDF转Word系统V1.0.0.0...
血洗币圈!比特币崩盘,跌至8万... 端午安康,祝大家在牛市中稳健操作,迈向财富自由!别忘了点赞关注,咱们一起把握市场机会! 比特币最近...
k8s部署prometheus k8s部署prometheus 版本说明: k8s:1.24.4 pro...
OpenAI似乎步子迈太大了 ... 出品|虎嗅科技组作者|孙晓晨编辑|苗正卿头图|视觉中国当地时间5月29日,据外媒报道,特拉华州总检察...
代码随想录-58-654.最大... 目录前言题目1.构造二叉树-递归(区间,左闭右开)2. 本...
Git Actions自动发布... Git Actions自动发布部署,非最完善但足够完善和上手的一篇 文章最后附带完整...