论DevSecOs及其应用

张开发
2026/4/18 2:04:19 15 分钟阅读

分享文章

论DevSecOs及其应用
摘要2023年07月我所在的单位承接了某市全域智慧旅ing台的建设任务。该项目旨在提升服务指与游客体验。在该项目中我担任系统架构师负责该项目的架构设计工作。本文结合我在该项目中的实践详细论述了DEVSECOS的具体应用编码阶段通过自动化静态代码分析来检测代码依赖库中的安全漏洞测试阶段通过模拟真实攻击来验证系统安全控制措施的有效性部署阶段通过容器扫描确保部署环境安全。通过上述措施安全缺陷逃逸率从32%降到了1.5%以下有效保障了系统的安全运行。该项目历时12个月开发完成并于2024年07月正式上线台成功整合了200多个旅游资源实现了一机在手畅游全程的服务目标。项目背景某市拥有丰富的自然和人文旅游资源为促进旅游产业升级提升服务质与游客体验决定建设一个全域智慧旅游服务台。我所在的单位成功中标该项目并于2023年07月正式启动该项目的建设工作。我被任命为系统架构设计师。负责该项目的假设与演进工作。该项目的建设的内容主要包括智慧服务/智慧景区管理和智慧监管子系统。智慧服务子系统面向游客涵盖行程规划们预定导游预定停车服务ard导览服务等功能为游客提供全周期智能服务体验智慧景区管理子系统面向景区涵盖指挥调度安全防范客流管理景区资源管理经营分析等功能智慧监管子系统面向旅游主管部门涵盖旅游服务质量ia行业监管决策支持等功能以保障行业安全规范市场秩序优化游客服务。该项目以JAVA和ython作为主要开发语言整体操i用基于ASRING Cloud的微服务架构。此外还采用了RFID,MQTT等技术实现设备设施的智能管理和管控采用了KAFKA,flink,doris等大数据技术为景区提供决策支持采用VR技术为游客提供成精神的体验以增强景点的吸引力。devsecos 的重要性该台承载了大量敏感数据如用户身份信息支付交易记录游客行为数据因此需要满足《网络安全法》《数据安全法》M《个人信息保护法》以及等包三级合规要求。然而在传统开发模式下安全通常在软件开发周期的末期才介入这种事后补救的方式导致漏洞的成本极高严重影响项目进度和交付质量。为了解决这个问题我们决定引入Devsecos践行安全左移的历年尽可能在软件开发早期阶段就考虑安全实践。devsecos是一种将安全实践无缝集成流程的方法论旨在通过在软件开发生命周期的每个阶段自动化嵌入安全措施实现开发运维和安全一体化管理。在该项目中devsecos的实施主要包括计划阶段编码接单测试阶段部署阶段和运维阶段。计划阶段的主要任务包括威胁建模安全需求分析风险古语合规分析编码阶段的主要任务是通过静态代码分析识别安全漏洞。测试阶段的主要任务是通过模拟真实攻击来发现安全漏洞。部署阶段的主要任务是通过容器扫描基础设施即代码扫描和加固确保部署环境安全。运维阶段的主要任务包括持续安全监控漏洞补丁管理事件的响应语调查。限于i按章本文着重祭扫DEVSECOS在编码阶段测试阶段和部署阶段中的具体应用。编码阶段在编码阶段我们通过自动化静态代码分析来发现源代码依赖库中的安全漏洞在编码阶段修复漏洞的成本员低于生产环境中的修复成本。我们部署了somaeqube静态代码分析台并继承了githab ci/cd流程中当开发人员提交代码合并请求时会自动触发SomarQUBEJ进行静态代码请求 会自动触发进行静态代码分析我们还设置了严格的质量门禁。任何试图引入新的中高危安全漏洞的代码请求都会被自动阻止同时会将问题只改该代码的工程式并附上详尽的漏洞说明和修复建议。例如以为开发人员在实现游客ing论的功能式将用户提交的令直接嵌入到网页中立刻识别出这式典型的XSS漏洞如果攻击者发布了包含恶意脚本的令当其他正常用户浏览这条论式恶意脚本就会在他们的浏览器中静默哦执行可能导致他们的登录状态被劫持个人信息被截取该代码合并请求被拦截。收到即使反馈的工程师根据提供的修复指引迅速重构了代码对所有用户输入内容进行了严格的输出编码有效阻止了一个高为漏洞进入生产环境。另一位开发人员在实现消息通知wei师为了本地调试方便将云服务商的访问密钥临时写入了文件当他试图提交这段代码师立即弹出了警告inng阻止了提交同时提示它正确的密钥管理方式。测试阶段在测试阶段我们通过模拟真实攻击来验证系统的啊暖控制措施是否按预期生效。在该项目中我们尤其重视访问控制策略因为ing他涉及游客景区管理 员和监管人员等多种角色每个角色具有不同的权限级别确保数据安全和合规性至关重要。因此我们重点进行了访问控制策略测试师用自动ua工具模拟不同用户长衫访问未授权资源验证权限控制的有效性。例如在一次测试中测试人员在QA环境中模拟了两个游客登录会话。测试人员首先使用游客A和游客c的登录会话。测试人员先使用游客A的身份证不正常登录并查询自己的定点信息获取到查询au接口地址该地址包含了订单ID参数。接着测试人员保持了A的登录状态但手动修改请求中订单ID为游客c中的的订单ID,然后发送请求。测试发现了一个严重的安全漏洞当游客A尝试通过修改URL中的订单ID来查询游客C的订单详情师虽然无法看到顶订单的文本信息但系统接口错误的返回了属于游客c的电子二维码图。攻击者可以利用该漏洞遍历订单ID,量获取台所有电子二维码进而可能导致他人冒名入园资产被盗用等严重后果。在定位到问题后开发团队立即对该接口进行额修复。修复的核心逻辑师在后台处理订单查询请求时增加了一到严格的资源归属全按段记载执行数据库查询钱先校验URL中传入的ORDERID所对应的订单其所数的userid时否语当前请求对话中的USERID完全一致。如果不一致则直接拒绝访问呢。部署阶段在部署阶段我们通过容器扫描确保部署环境安全。容器作为应用运行的载体其安全性直接关系到整个系统的稳定性和数据保护。如果容器镜像包含漏洞或错误欸子部署到生产环境后可能被攻击者利用导致数据泄露服务中断或合规性违规。为了能在部署前及时发现并修复这些问题避免风险进入运行时环境我们采取了容器扫描措施。我们在容器经此昂仓库中集成了扫描器任何镜像被推送到生产环境的仓库时都会自动促发进行扫描。我们设置了情难全策略禁止部署任何包含高危或严重级别漏洞的镜像。例如在一次游客eng体验违反因为的更新中扫描发现其基础镜像存在一个新喽的缓冲区溢出漏洞部署流程被自动中止直到我们更新了其安全基础镜像为之。总结与感悟通过DEVSECOS实践安全缺陷逃逸率从32%降到了1.5%以下在保障业务高速发展的同时实现了安全风险的精准防控。该项目历时12个月完成并于2024年07y月正式上线台成功整合了200多个旅游资源实现了一机在手畅游全球的服务目标。通过上述实践我对安全左移的理念有了更深层次的理解安全不再是安全团队的专力而是每一位产经理架构师开发者和运维工程师的共同责任。展望未来我们将继续神户的应用探索人工智能在威胁预测自动化响应等方面的潜力以构建更智能自适应的安全体系

更多文章