首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >30条新Semgrep规则发布:涵盖Ansible、Java、Kotlin和Shell脚本等场景

30条新Semgrep规则发布:涵盖Ansible、Java、Kotlin和Shell脚本等场景

原创
作者头像
qife122
发布2025-08-18 23:27:09
发布2025-08-18 23:27:09
1550
举报

新规则概览

我们发布了30条针对Ansible剧本、Java/Kotlin代码、Shell脚本和Docker Compose配置文件的Semgrep规则。这些规则可用于审计以下常见安全问题:

模式

规则ID

规则描述

Generic

container-privileged

检测具有扩展权限的容器命令

Generic

curl-insecure

检测禁用SSL验证的curl命令

Java/Kotlin

gc-call

检测依赖垃圾回收器调用的反模式

YAML

apt-key-unencrypted-url

检测通过非加密URL下载的apt密钥

YAML

port-all-interfaces

检测服务端口暴露在所有网络接口的情况

完整规则列表涵盖未加密网络传输、SSL验证禁用、命令行工具不安全标志等问题。

Semgrep进阶功能解析

通用模式(Generic Mode)
  • 优势:支持任意文本搜索,适用于非常规格式(如Jinja模板、NGINX配置)
  • 局限:可能产生误报(如匹配注释内容),缺乏语义理解
  • 案例ssh-disable-host-key-checking规则可跨Bash脚本、Dockerfile和CI配置检测SSH主机密钥验证禁用
YAML支持
  • 应用场景:覆盖Kubernetes、GitHub Actions、Ansible等主流YAML格式配置
  • 规则示例port-all-interfaces规则通过正则表达式检测非回环地址绑定:metavariable-regex: metavariable: $PORT regex: '^(?!127.\d{1,3}.\d{1,3}.\d{1,3}:).+'

使用方式

执行审计命令:

代码语言:bash
复制
semgrep scan --config p/trailofbits /path/to/code

延伸应用

我们曾将Semgrep应用于:

  • 机器学习管道安全审计
  • Goroutine泄漏检测
  • Apollo GraphQL服务器加固

提示:如需定制规则,可联系Trail of Bits团队。所有规则已加入公开的CodeQL查询库

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 新规则概览
  • Semgrep进阶功能解析
    • 通用模式(Generic Mode)
    • YAML支持
  • 使用方式
  • 延伸应用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档