Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
ChopChop — 基于YAML的CLI扫描器,用于检测Web端点上的暴露服务、文件和文件夹。专为开发者设计,可将安全检查集成到CI/CD管道中,并支持自定义签名。 | Kitploit
工具/GitHubGitHub/michelin/chopchop
漏洞扫描器配置审计信息收集Web安全DevSecOps
GitHubmichelin/chopchop

ChopChop

基于YAML的CLI扫描器,用于检测Web端点上的暴露服务、文件和文件夹。专为开发者设计,可将安全检查集成到CI/CD管道中,并支持自定义签名。

查看仓库
712775年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Build Status License Go Report Card

ChopChop

ChopChop 是一个用于Web应用程序动态应用程序安全测试的命令行工具,最初由米其林CERT编写。

其目标是扫描多个端点,识别通过Web根目录暴露的服务/文件/文件夹。检查/签名在配置文件中声明(默认:chopchop.yml),完全可配置,尤其适合开发者。

"Chop chop" 是一个源于粤语的短语。"Chop chop" 意为"赶快",表示某事应该立即完成,刻不容缓。


目录

  • 构建
  • 使用
    • 可用标志
    • 高级用法
  • 创建新的检查/签名
  • 外部库
  • 演讲
  • 许可证
  • 作者

构建

我们尽量简化构建过程,希望以下步骤即可完成:

root@kitploit:~
$ go mod download
$ go build .

文件夹中会生成一个 gochopchop 可执行文件。

使用 Docker

得益于 Github Container Registry,我们可以提供一些新鲜构建的 Docker 镜像!

root@kitploit:~
docker run ghcr.io/michelin/gochopchop scan https://foobar.com -v debug

如果你更喜欢,也可以本地构建,如下所示:

本地构建

root@kitploit:~
docker build -t gochopchop .

使用

我们始终致力于让 goChopChop 尽可能简单。使用此工具扫描主机非常简单:

root@kitploit:~
$ ./gochopchop scan https://foobar.com

使用 Docker

root@kitploit:~
docker run gochopchop scan https://foobar.com

自定义配置文件

root@kitploit:~
docker run -v ./:/app chopchop scan -c /app/chopchop.yml https://foobar.com

下一步计划

Golang 重写工作已在几个月前完成,但仍有许多工作要做。以下是我们计划集成的一些功能: [x] 多线程提升性能 [x] 指定并发线程数 [x] 颜色和更好的格式化 [x] 过滤要搜索的检查/签名 [x] 模拟和单元测试 [x] Github CI 还有更多!

测试

为了快速端到端测试 chopchop,我们在 tests/server.go 中提供了一个 Web 服务器。 要尝试它,请运行 go run tests/server.go,然后使用以下命令运行 chopchop:./gochopchop scan http://localhost:8000 --verbosity Debug。 ChopChop 应输出"未发现漏洞"。

还有单元测试,可以使用 go test -v ./... 运行。 这些测试已集成到 Github CI 工作流中。

可用标志

以下是 scan 命令可用的标志:

高级用法

以下是一些你可能感兴趣的高级用法。 注意:可以使用 > 等进行后处理重定向。

  • 扫描并禁用 SSL 验证
root@kitploit:~
$ ./gochopchop scan https://foobar.com --insecure
  • 使用自定义配置文件(包括自定义插件)进行扫描
root@kitploit:~
$ ./gochopchop scan https://foobar.com --insecure --signature test_config.yml
  • 列出所有插件或按严重级别列出:plugins 或 plugins --severity High
root@kitploit:~
$ ./gochopchop plugins --severity High
  • 指定并发线程数:--threads 4 使用 4 个工作线程
root@kitploit:~
$ ./gochopchop plugins --threads 4
  • 按严重级别阻止 CI 管道(等于或超过指定严重级别):--max-severity Medium
root@kitploit:~
$ ./gochopchop scan https://foobar.com --max-severity Medium
  • 指定要检查的特定签名
root@kitploit:~
./gochopchop scan https://foobar.com --timeout 1 --verbosity --export=csv,json --export-filename boo --plugin-filters=Git,Zimbra,Jenkins
  • 列出所有插件
root@kitploit:~
$ ./gochopchop plugins
  • 列出高严重级别插件
root@kitploit:~
$ ./gochopchop plugins --severity High
  • 设置文件中的 URL 列表
root@kitploit:~
$ ./gochopchop scan --url-file url_file.txt
  • 以 CSV 和 JSON 格式导出结果
root@kitploit:~
$ ./gochopchop scan https://foobar.com  --export=csv,json --export-filename results

创建新的检查

编写新检查非常简单:

root@kitploit:~
  - endpoint: "/.git/config"
    checks:
      - name: Git exposed
        match:
          - "[branch"
        remediation: Do not deploy .git folder on production servers
        description: Verifies that the GIT repository is accessible from the site
        severity: "High"

一个端点(例如 /.git/config)映射到多个检查,从而避免为 X 个检查发送 X 个请求。通过单个 HTTP 请求可以完成多个检查。 每个检查需要以下字段:

外部库

有关更多信息,请参阅 third-party.txt 文件。

演讲

  • PyCon FR 2019(该工具最初用 Python 开发)- https://docs.google.com/presentation/d/1uVXGUpt7tC7zQ1HWegoBbEg2LHamABIqfDfiD9MWsD8/edit
  • DEFCON AppSec Village 2020 "将渗透测试思维转化为开发者工具集" - https://drive.google.com/file/d/15P8eSarIohwCVW-tR3FN78KJPGbpAtR1/view

许可证

ChopChop 已根据 Apache License 2.0 发布。 有关更多信息,请参阅 LICENSE 文件。

作者

  • Paul A.
  • David R.(Python 版本)
  • Stanislas M.(Golang 版本)
下载工具
标志完整标志描述
-h--help帮助向导
-v--verbosity日志详细级别
-c--signature自定义签名文件路径
-k--insecure禁用 SSL 验证
-u--url-file包含待测试 URL 的文件路径
-b--max-severity如果严重级别超过或等于指定标志,则阻止 CI 管道
-e--export输出导出类型(csv 和/或 json)
--export-filename指定导出文件的文件名
-t--timeoutHTTP 请求超时时间
--severity-filter按严重级别过滤插件
--plugin-filter按插件名称过滤插件
--threads并发线程数
属性类型描述可选?示例
namestring检查名称否Git exposed
descriptionstring检查的简短描述否Ensure .git repository is not accessible from the webroot
remediationstring针对此"问题"的修复措施否Do not deploy .git folder on production servers
severityEnum("High", "Medium", "Low", "Informational")在环境中触发时的严重等级否High
status_codeinteger预期的 HTTP 状态码是200
headersList of stringHTTP 响应中应存在的头部列表是N/A
no_headersList of stringHTTP 响应中不应存在的头部列表是N/A
matchList of stringHTTP 响应中应存在的字符串列表是"[branch"
no_matchList of stringHTTP 响应中不应存在的字符串列表是N/A
query_string需要传递给端点的 GET 参数字符串是query_string: "id=FOO-chopchoptest"
库名称链接许可证
Viperhttps://github.com/spf13/viperMIT License
Go-prettyhttps://github.com/jedib0t/go-prettyMIT License
Cobrahttps://github.com/spf13/cobraApache License 2.0
strfmthttps://github.com/go-openapi/strfmtApache License 2.0
Go-homedirhttps://github.com/mitchellh/go-homedirMIT License
pkg-errorshttps://github.com/pkg/errorsBSD 2 (Simplified License)
Go-runewidthhttps://github.com/mattn/go-runewidthMIT License