流水线/集权设施安全建设方案
目标:围绕办公网、研发流水线、运维集权与生产环境,形成“身份可追溯、凭证可保护、行为可检测、风险可阻断、事件可处置”的纵深防御体系。本文保留原始思维导图的关注点,并将仅有标题的节点补充为可落地的建设要求。
1. 建设原则与共性要求
1.1 优先级与告警分级
- P0(立即处置):生产管理员/root 登录、密钥或蜜标被使用、关键环境命令执行、未授权访问成功、关键代码/制品被大规模导出、数据库被非预期主体直连。
- P1(30 分钟内研判):异常来源登录、权限提升或管理员变更、容器内交互式命令、异常 Secrets 读取、关键配置变更、异常镜像下载。
- P2(工作日处置):基线偏离、行为频率异常、资产或软件变化、疑似信息搜集。
1.2 共性控制基线
- 所有系统接入统一身份认证、最小权限和多因素认证;生产权限采用临时授权、到期回收与审批留痕。
- 统一汇聚 IdP/VPN、应用审计、WAF/Inrouter、云审计、EDR、容器运行时、数据库审计和网络流量日志,保留不少于 180 天;P0/P1 日志建议保留 1 年。
- 对生产系统的高风险操作实施“审批 + 二次确认 + 会话录制/命令审计”;紧急通道需单独标识、复盘和限时回收。
- 白名单不应只做静态 IP 或进程名单,应同时校验身份、来源网络、设备状态、时间窗口、目标资源与操作类型,并建立例外申请与定期复核机制。
- 蜜标/蜜钥不得具备真实生产权限;应能定位到投放位置和责任人,触发后自动禁用关联会话/凭证并创建 P0 事件。
- 每类告警明确:责任团队、处置时限、所需证据、隔离/撤销动作和恢复条件,并通过演练验证。
2. 办公网
2.1 办公管理
Lazarus 历史行为
目前无已知直接行为记录,仍应将办公管理系统纳入统一登录、审计与资产管理范围,避免成为进入研发与运维环境的跳板。
CrowdStrike
- 启用防篡改、传感器健康度、恶意行为检测与高风险终端隔离能力。
- 建立终端基线告警:传感器离线、策略被停用、内核/安全工具被卸载、可疑持久化、凭证转储和横向移动行为。
- P0 终端事件应自动关联其 VPN、SSO、GitLab、JumpServer 和云账号会话,支持一键冻结或强制重新认证。
Jamf、Intune
- 对 macOS、Windows 和移动设备执行合规准入:磁盘加密、屏幕锁定、补丁版本、EDR 状态、越狱/root 状态和证书有效性。
- 对不合规或失联设备限制访问研发、运维和敏感文档;设备所有权、管理员权限与配置变更须留审计记录。
- 定期核对 MDM 资产与 IdP、EDR 资产,发现“有人无设备”“有设备无负责人”“高权限设备未受管”即告警。
亿格云
将亿格云纳入身份、权限、外发和审计基线:高敏文件下载/外发、分享链接公开、外部协作人新增、管理员配置变化和异常登录均需被记录和告警。
2.2 运维设备
本地窃取信息
攻击者可能从浏览器、云凭证、Shell 历史及开发工具配置中获取后续访问能力。建设重点是减少本地长期密钥、监测访问行为,并将高风险终端与生产访问解耦。
Chrome
- 禁止在受管设备以外保存生产账号或长期凭证;对浏览器密码库、Cookie、扩展安装、下载目录和敏感配置文件访问启用 EDR 检测。
- 投放不可用的浏览器凭证蜜标;一旦被读取或使用,关联终端进程树、网络连接与身份会话。
- 发现浏览器被非交互式进程访问、异常导出用户数据或可疑扩展时,隔离终端并吊销 Web 会话。
AK/云凭证
- 用短期凭证、角色扮演和密钥托管替代本地 AK/SK;扫描代码库、配置文件与开发目录中的明文密钥。
- 为高价值凭证投放蜜标,并监控首次使用、异常地域/IP、异常 User-Agent、非预期服务调用和权限枚举。
- 发生疑似泄露时立即禁用/轮换凭证,回溯其使用范围并检查关联角色的权限提升。
Bash History
- 禁止通过命令行传递密钥;对历史记录、shell 配置、环境变量文件、SSH 配置和云 CLI 凭证目录实施敏感数据发现。
- 监测异常读取、压缩、外传和清理历史记录的行为;为运维终端提供安全的凭证注入与审计命令封装。
2.3 基础设施:Inrouter
- 对主机/容器执行进程、网络、文件与配置基线;白名单以服务镜像、签名、运行路径、父子进程、监听端口和目标地址为维度。
- 进程白名单违规:告警包含容器/主机、镜像版本、命令行、父进程、启动用户、关联发布单和哈希;未知二进制、解释器执行、反向连接和权限变更应升为 P0/P1。
- 网络白名单违规:识别非业务端口、横向连接、外联匿名代理/威胁情报 IP、DNS 隧道和跨环境访问;联动安全组/网络策略隔离。
- WAF/Inrouter 日志需覆盖路径、请求体摘要、响应码、来源身份和上游实例,以支撑漏洞利用溯源。
3. 研发流水线/生产网
3.1 研发协作:Lark 与 Wiki
Lark
- 异常登录:检测新设备、新地域、异常 ASN、异常时间段、失败后成功、MFA 变更和高权限账号登录;强制二次验证并通知账号所有者。
- 异常文档读取:对钱包、密钥、架构、生产运维和财务类文档建立标签;检测短时间大量浏览/下载、全量搜索及跨部门访问。
- 关键词搜索:对“密码、密钥、AK、token、private key、password”等搜索与导出行为做风险评分,避免仅凭单次搜索误报。
- 服务器被入侵:承载 Lark 集成服务的主机/容器执行同一白名单与运行时检测;发现异常进程或外联时隔离实例并轮换服务凭证。
Wiki
- Wiki 仍在用时应作为高优先级知识资产;若下线,应在迁移前完成文档、权限和审计日志的保留及敏感数据清理。
- 对大量读取钱包、转账、架构文档,采用“资源敏感度 + 用户角色 + 访问量 + 下载行为”的组合检测。
- 非浏览器可信进程访问:识别 API token、脚本客户端、自动化账号和异常 UA;非批准客户端默认拒绝或要求额外认证。
- 管理员异常:新增管理员、修改角色、邀请外部用户、批量改权限均需审批、实时通知和定期复核。
- 漏洞利用:在 Inrouter/WAF 中识别扫描、异常路径、认证绕过、命令注入和上传 WebShell 尝试;发布补丁后验证暴露面。
- 数据库访问:仅 Wiki 服务身份可连接数据库;其他主体的连接、查询或失败尝试均为 P0,并自动保全连接源、账号和 SQL 审计。
3.2 代码与制品:GitLab、Harbor、Nexus、Apollo
GitLab
- 凭证盗用登录:关联浏览器凭证窃取告警、VPN/IdP 设备指纹与 GitLab 登录;用户凭证在新设备或异常来源使用时触发二次验证和会话失效。
- 运维凭证异常来源:Runner、机器人和管理员 token 分别建模;禁止共享账号,异常源 IP 或非预期 CI 环境调用直接告警。
- 大量下载关键代码:为关键项目、分支、CI 变量和加解密代码设置资产标签;检测 clone/archive 量、下载频率、时间段、首次访问与批量 API 调用。关键项目首次下载或大规模导出可设 P1/P0。
- 容器命令监控:GitLab 容器的 exec、shell 进入、包安装、网络工具、权限变更和访问挂载卷均需审计。非变更窗口交互式命令执行需二次确认。
- 从代码获取生产凭据:启用 secret scanning、预提交校验与历史扫描;在高价值项目植入可追踪蜜标,命中后自动吊销相邻真实凭证并调查访问范围。
- 漏洞利用:将 GitLab 版本、插件与暴露接口纳入漏洞管理;WAF 与应用日志应可关联到具体用户、项目和 Runner。
- 建议补充:保护分支、合并请求双人复核、CI 变量最小可见、Runner 隔离、制品签名与 SBOM。
Harbor
- 大量下载镜像:识别关键镜像、短时间批量 pull、跨环境 pull、首次来源及异常客户端;对镜像导出和匿名拉取默认禁止。
- 从镜像获取生产凭据:在镜像构建、推送和上线前执行 secret scan;发现 AK/SK、私钥或钱包相关敏感内容立即阻断发布并轮换泄露凭据。
- 访问来源异常:除 EKS、市场发布和批准的 CI/CD 节点外的访问默认拒绝或 P1 告警;审计仓库、镜像、tag、客户端 IP 与身份。
- 主机/容器入侵:同 Inrouter 基线;另需检测 Registry 存储后端的直接访问和镜像篡改。
- 漏洞利用:记录 API、认证和项目权限变更;定期修复 Harbor 与依赖组件漏洞。
Nexus
- 延续 Harbor 的下载、来源、凭据扫描与主机基线能力,并按包类型记录组件坐标、版本、下载主体及来源。
- 对 Validator 库读取实施细粒度审计:非构建账号、异常时间、批量下载、跨项目访问和首次访问均应纳入风险评分。
- 建议增加依赖投毒防护:上游代理白名单、制品校验和、发布者签名、版本覆盖保护与隔离仓库。
Apollo
- 关键 AK 获取:对 Validator/AMS 等高价值配置的读取建立资源标签;记录操作者、来源、应用、namespace、变更单和读取量。角色授权不替代行为检测。
- 异常访问:明确 admin、config、portal 的认证边界和办公网暴露范围;无鉴权接口应下线、加鉴权或置于受控网关之后。
- 未授权访问漏洞:持续扫描 apps/config/namespace 等接口,验证鉴权、越权与审计覆盖;禁止在配置中心保存长期明文密钥。
- 漏洞利用与主机入侵:接入 WAF/Inrouter 及运行时白名单;发现异常写配置、批量读取或命令执行迹象时冻结 token 并回滚配置。
- 治理:新项目上线应自动通知安全团队,完成密钥扫描、配置分级、责任人登记与审计接入后方可发布。
3.3 运维集权:JumpServer、Argo、Rundeck、DBSOS
JumpServer
- 所有会话必须绑定唯一人员身份、工单/审批单和目标资产;禁止共享账户,启用 MFA、会话录制与命令审计。
- 管理员异常:监测管理员登录、权限调整、资产批量变更、凭证查看/导出、token 使用和高风险命令;管理员 token 应短期化并可撤销。
- 身份盗用:比对 VPN 身份、设备状态、JumpServer 登录身份与会话目标;不一致、无 VPN 来源或异常设备指纹应阻断。
- 会话异常:对非 VPN/办公网段创建会话、会话身份与 VPN 身份不一致、异常时长、异常并发和跨环境跳转告警。
- 主机/容器白名单用于保护 JumpServer 自身及其代理节点;发现入侵时优先冻结会话、隔离代理并轮换托管凭证。
Argo
- 对应用同步、集群目标、manifest 差异、管理员操作和 webhook 事件完整审计;生产集群同步需审批或双人复核。
- 可疑指令/行为:检测新增高权限 RBAC、hostPath、特权容器、异常镜像、反向连接、CronJob 持久化和跨命名空间部署。
- 管理员登录:生产管理员登录应 P0 告警并执行运维二次确认;凭证被盗疑似时立即吊销 token、暂停同步并回滚到可信版本。
- 服务器基线与容器网络白名单覆盖 Argo Server、Repo Server、Application Controller 及其访问的代码仓库。
Rundeck
- 所有自动化任务需关联作业定义、调用人、目标实例、命令内容、变量来源、执行结果与工单。
- 自动执行 EC2 命令:针对下载、执行、权限提升、账户变更、密钥读取和破坏性命令做高风险规则;生产任务需审批和最小化目标范围。
- token/SSH key 盗取:token 仅限短期、最小权限和固定来源;SSH 私钥进入集中托管,禁止在作业脚本、节点属性和日志中明文出现。
- 建议将作业变更、调度变更与失败重试异常纳入告警,防止被滥用为持续执行渠道。
DBSOS(Archery)
- 对 SSO 登录建立异常检测:新设备/地域、暴力尝试、越权数据库申请、异常时间段与高风险账号访问。
- SQL 审批、执行与结果导出须绑定工单;对全库查询、批量导出、权限变更、DDL 和敏感表访问施加额外审批与水印。
3.4 集成发布:MarketUI、Cabbage、Jenkins
MarketUI 与 Cabbage
- Cabbage 的命令执行应形成不可篡改审计:调用人、token、来源、目标环境、Pod、完整命令、前后状态和输出摘要。
- 基于正则白名单限制命令仅覆盖必要运维操作;下载、执行二进制、赋权、反弹连接、删除审计和长时间 sleep 等异常模式应 P0/P1 告警。
- 高风险运维指令实行审批和二次确认;Cabbage token 仅允许 MarketUI、监控与日志等明确来源,其他来源使用即告警并吊销。
- MarketUI token 盗用:使用无权限蜜标 token、短期 token、绑定来源和轮换机制;检测非构建节点、异常时间或异常发布频率。
- 恶意打包防护:构建环境使用隔离 Runner 和最小权限;锁定依赖、校验构建脚本与制品哈希,生成 SBOM 并执行恶意代码/密钥扫描。构建中异常网络连接、超长 sleep、未知子进程或制品哈希漂移应阻断并调查。
- MarketUI 服务器同样纳入主机/容器进程和网络白名单。
Jenkins
- 对登录来源、管理员权限、API token、凭据读取和 Job 配置变更实施审计;非预期来源登录要求 MFA 或拒绝。
- 保护凭据库:凭据分域、最小读取权限、短期化、禁止在控制台日志输出;检测 Pipeline 中读取大量凭据或向外部地址发送数据。
- 构建节点按环境隔离,生产发布使用专用 Agent;对 Pipeline、共享库、插件和 Webhook 变更实施双人复核和签名校验。
- Jenkins 主机/容器实施白名单、补丁管理和备份;发现异常进程/网络外联时暂停队列并隔离 Agent。
3.5 生产环境:AWS 与 MGT
AWS 通用控制
- 开启并集中分析 CloudTrail、CloudWatch、VPC Flow Logs、EKS 审计日志、GuardDuty/Security Hub 等;关键账号日志写入独立、不可被业务账号删除的归档账户。
- 所有生产访问优先通过 IAM Identity Center/角色扮演;禁止 root 日常使用,避免长期 AK/SK,启用 MFA、会话标签与来源条件。
- 对异常 IP、恶意 UA、异常地域、服务枚举、权限提升和跨账户角色扮演做关联分析。
RDS
- 数据大批量解密/读取:按表和数据敏感度记录查询量、导出量、解密操作与调用身份;对突增、全量读取、跨环境访问和非业务时间操作告警。
- 解密/访问失败:将连续失败、权限拒绝、KMS 拒绝和认证失败聚合检测,防范凭证枚举及错误配置。
- 修改 admin 密码:仅允许审批变更窗口执行;变更后触发 P0 通知、强制会话复核和变更单校验。
SSM
SSM 连接 EC2、启动 Session、执行 Run Command、端口转发和文件传输均应 P0/P1 审计;关联操作者、审批单、实例标签与命令。对非授权实例、无工单连接和高危命令默认阻断或二次确认。
ASM(Secrets Manager)
- 对 GetSecretValue、ListSecrets、PutSecretValue、资源策略和轮换配置记录主体、来源、secret 标签和调用频率。
- Validator 等高价值 Secret 的首次读取、非工作负载身份读取、跨地域/异常来源读取应 P0;自动轮换疑似泄露 Secret 并核查下游服务。
STS
- 监控 AssumeRole、GetCallerIdentity、GetSessionToken 等调用;对威胁情报 IP、异常 UA、跨账户、异常 role chain 和会话时长告警。
- 角色信任策略限制外部主体、来源网络和会话标签;高权限角色要求 MFA 与审批上下文。
EKS
- 管理员凭证盗取:将 Kubernetes audit、IAM、IdP 和节点日志关联,检测异常管理员登录、匿名/ServiceAccount 滥用及高权限 RBAC 变更;投放无权限蜜标身份。
- 命令执行:重点检测 exec/attach、下载、赋权、执行、删除、写入启动目录、创建特权 Pod 和 hostPath;高危操作需审批或即时告警。
- 信息搜集:对 list/watch pods、secrets、nodes、RBAC 等枚举行为设阈值和历史基线,关注非运维账号的跨 namespace 查询。
- 网络探测失败:记录到钱包 EKS 网络或受限网段的拒绝流量;频繁被拒绝或 DNS 探测行为应关联终端/身份调查。
S3
- 对 JS、前端静态资源和发布桶开启版本控制、对象锁、变更审计、恶意内容扫描与发布审批。
- 非预期主体修改对象、ACL/策略变更、删除版本、跨区域复制和异常下载均需告警;关键文件变更可自动回滚到已签名版本。
其他 AWS 服务与 Account
- 信息搜集:对 get/list/describe 按身份、资源类型、频率、时间段和历史行为评分;云资产枚举不应直接等同攻击,但结合异常登录、STS、网络行为可升高优先级。
- root 登录:root 登录、root API 调用、MFA 设备变更、访问密钥创建均为 P0;root 仅用于受控应急,事件后必须复盘。
- Web Console SSH key 登录 EC2:禁用或严格限制实例级 SSH key;优先使用 SSM。若发生 key 注入、EC2 Instance Connect 或控制台访问,记录操作者、目标实例、工单和来源。
MGT
- 为管理账户、管理平面和堡垒/监控组件部署蜜标,覆盖登录、令牌使用、配置读取和横向访问;触发即自动创建 P0 事件。
- 用户异常行为:监测高频权限查询、跨环境访问、异常下载、非常用管理操作、失败后成功和异常设备切换;采用基线评分并保留人工复核入口。
4. 横向移动与内网探测
凭证驱动的横向登录
- 关联 SSH、VPN、JumpServer、SSM、数据库和 Kubernetes 身份,识别同一凭证在短时间跨多台服务器、跨环境或跨多个账号使用的情形。
- 禁止密码复用和共享 SSH key;以短期证书、JIT 授权和受控跳板替代直连。发现疑似横向移动时,先冻结身份和活动会话,再保全证据、核查受影响资产。
内网 DNS/域名探测
- 监测 nslookup/dig、DNS NXDOMAIN、短时间大量子域枚举和对研发流水线、密钥管理、钱包相关域名的访问尝试。
- 内网 DNS 日志需保留查询主体、终端、解析结果和响应码;对未知终端、非业务时段、异常字典枚举进行 P1 告警。
- 通过网络分段、私有 DNS 访问控制和服务发现最小暴露,降低探测成功后的横向风险。
5. 落地路线图与验收
第一阶段:基础可见性(0–30 天)
- 完成资产、账号、权限、日志源和责任人清单;接入 IdP/VPN、EDR、GitLab、JumpServer、AWS CloudTrail、EKS 审计及 WAF/Inrouter 日志。
- 落地 P0 规则:生产管理员/root 登录、蜜标命中、异常 Secret 读取、关键环境命令执行、非预期数据库访问。
- 验收:每条 P0 告警可在 10 分钟内定位身份、来源、目标资源、操作和责任团队。
第二阶段:关键路径防护(31–90 天)
- 完成 CI/CD、制品仓、配置中心、运维平台和 Kubernetes 的最小权限、白名单、审批与命令审计。
- 上线敏感数据/密钥扫描、短期凭证、蜜标和异常行为基线;修复高危未授权接口与外网暴露。
- 验收:模拟凭证窃取、异常代码下载、Pod exec 和异常 SSM 会话时,系统能产生关联告警并执行预设遏制动作。
第三阶段:持续运营(90 天后)
- 定期复核权限、白名单、例外项和蜜标有效性;按季度开展横向移动、供应链投毒和生产应急演练。
- 以误报率、MTTD、MTTR、高危权限数量、未受管资产比例和密钥轮换覆盖率衡量成效,持续调整规则与阈值。