如何使用DockerSpy检测你的Docker镜像是否安全

关于DockerSpy

DockerSpy是一款针对Docker镜像的敏感信息检测与安全审计工具,该工具可以帮助广大研究人员在Docker Hub上检测和搜索自己镜像的安全问题,并识别潜在的泄漏内容,例如身份验证密钥等敏感信息。

功能介绍

1、安全审计:通过分析 Docker 镜像,组织可以发现可能无意中包含的公开机密,例如 API 密钥、身份验证令牌和私钥。这有助于减轻潜在的安全风险。

2、事件预防:主动搜索 Docker 镜像中暴露的秘密可以防止安全漏洞发生,保护敏感信息并维护应用程序的完整性。

3、合规性:确保容器镜像不会泄露机密对于满足监管和组织安全标准至关重要。OSINT 有助于验证敏感信息是否被无意泄露。

4、漏洞评估:作为定期安全评估的一部分,识别暴露的秘密,使组织能够及时解决这些漏洞,降低被恶意行为者利用的风险。

工具要求

Go

Docker

工具安装

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/UndeadSec/DockerSpy.git

然后切换到项目目录中,使用make命令编译项目代码:

cd DockerSpymake

工具使用

dockerspy

工具配置

正则表达式模式

{"amazon_mws_auth_token": "amzn\\\\.mws\\\\.[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}","amazon_aws_url": "s3\\.amazonaws.com[/]+|[a-zA-Z0-9_-]*\\.s3\\.amazonaws.com","authorization_bearer": "bearer [a-zA-Z0-9_\\-\\.=:_\\+/]{5,100}","github_access_token": "[a-zA-Z0-9_-]*:[a-zA-Z0-9_\\-]+@github\\.com*","rsa_private_key": "-----BEGIN RSA PRIVATE KEY-----","ssh_dsa_private_key": "-----BEGIN DSA PRIVATE KEY-----","ssh_dc_private_key": "-----BEGIN EC PRIVATE KEY-----","pgp_private_block": "-----BEGIN PGP PRIVATE KEY BLOCK-----","slack_token": "\\\"api_token\\\":\\\"(xox[a-zA-Z]-[a-zA-Z0-9-]+)\\\"","SSH_privKey": "([-]+BEGIN [^\\s]+ PRIVATE KEY[-]+[\\s]*[^-]*[-]+END [^\\s]+ PRIVATE KEY[-]+)"}

需要忽略的文件扩展

{"extensions": [".md",".png", ".jpg", ".jpeg", ".gif", ".bmp", ".tiff", ".tif", ".mp4", ".mp3", ".avi", ".mkv", ".mov", ".exe", ".dll", ".so", ".bin", ".dmg", ".iso", ".jar", ".bat", ".sh", ".msi"]}

工具运行演示

许可证协议

本项目的开发与发布遵循MIT开源许可协议。

项目地址

DockerSpy:【GitHub传送门】

参考资料

https://www.bleepingcomputer.com/news/security/thousands-of-images-on-docker-hub-leak-auth-secrets-private-keys/

Docker Hub images found to expose secrets and private keys - ThreatDown by Malwarebytes

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56154.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Isaac Sim sensor插件报UnicodeDecodeError错误

在使用isaac sim或isaac lab时,如果涉及传感器插件,omni.isaac.sensor,可能会遇到如下编码错误,导致传感器无法正常使用。这个错误在isaac sim历代版本里一直都存在。 2024-10-22 08:42:59 [4,085ms] [Error] [carb.scripting-py…

基于yolov10的驾驶员抽烟打电话安全带检测系统python源码+pytorch模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv10的驾驶员抽烟、打电话、安全带检测系统是一种先进的驾驶行为监测系统。该系统利用YOLOv10算法的高效性和准确性,实现对驾驶员行为的实时检测与识别。 YOLOv10是一种最新的实时物体检测模型,其通过深度学习技术,如卷…

【网络原理】HTTP协议

目录 前言 一.什么是HTTP HTTP报文格式 HTTP的请求格式 1.首行 2.请求头(header) 3.空行 4.正文(body) HTTP的响应格式 1.首行 2.响应头 3.空行 4.正文(body) 首行中的方法 GET和POST的区别 …

使用Radzen Blazor组件库开发的基于ABP框架炫酷UI主题

一、项目简介 使用过ABP框架的童鞋应该知道它也自带了一款免费的Blazor UI主题,它的页面是长这样的: 个人感觉不太美观,于是网上搜了很多Blazor开源组件库,发现有一款样式非常不错的组件库,名叫:Radzen&am…

[渗透]前端源码Chrome浏览器修改并运行

文章目录 简述本项目所使用的代码[Fir](https://so.csdn.net/so/search?qFir&spm1001.2101.3001.7020) Cloud 完整项目 原始页面修改源码本地运行前端源码修改页面布局修改请求接口 本项目请求方式 简述 好久之前,就已经看到,_无论什么样的加密&am…

10.22Python_numpy习题整合

编写一个函数,返回数组沿指定轴的方差。 import numpy as npdef calculate(var1,var2):arr1 np.array(var1)variance np.var(arr1, axisvar2)print(variance)calculate([[1,2,3],[4,5,6]],0)实现一个函数,它接受一个 NumPy 数组,并返回该数…

【p2p、分布式,区块链笔记 Blockchain】truffle004 测试网络项目部署

编写合约 一个简单的Solidity智能合约 Usermap 用于在以太坊区块链上管理用户的ID和名称: 数据存储: 使用了 mapping 和 array 两种方式存储用户信息。addUser: 添加用户(id和对应的用户名name)到区块链。getid: 根据用户 id 获取用户名。该函…

awk命令学习记录

awk命令 awk命令 表示将一行数据按特定分割符分割成多列,而从而选取特定列数的数据,默认分割符为空格,连接符默认也是空格 // 1. 更换分割符 awk -F : 1.txt // 1.txt为你的文件名 // 2. 打印多列 awk {print $1,$2} // $0为整行&#xff…

深度学习模型:原理、架构与应用

深度学习(Deep Learning)是机器学习中的一个分支,基于人工神经网络的发展,尤其是多层神经网络的研究,使其在语音识别、图像处理、自然语言处理等领域取得了显著进展。深度学习的核心是通过大量数据的训练,学习到数据的内在结构和模式,并且具备自动从复杂的输入中提取特征…

计算机组成原理一句话

文章目录 计算机系统概述存储系统 计算机系统概述 指令和数据以同等地位存储在存储器中,形式上没有差别,但计算机应能区分他们。通过指令周期的不同阶段。 完整的计算机系统包括,1)软件系统:程序、文档和数据&#xff…

Rust使用config加载Toml配置文件

前面提到用dotenvy读取配置文件到环境变量:https://juejin.cn/post/7411407565357449225 这里从配置文件中读取配置 添加依赖(这里使用yaml配置) # 异步运行时 tokio { version "1", features ["full"] } # 序列化…

SpringBoot request.getContextPath()获取到http 而不是https的问题解决

在某些情况下,使用 request.getContextPath() 可能会返回 HTTP 而不是 HTTPS,这通常是因为应用程序运行在反向代理后面(如 Nginx 或 Apache),而代理服务器没有正确地转发请求的协议信息。 要解决这个问题,…

在linux中 appimage是什么文件? 为什么能直接运行

chmod x 你的.appImage ./你的.appImagehttps://github.com/AppImage/AppImageKit/wiki/AppImages AppImage 是一种用于打包和分发 Linux 应用程序的格式。它具有以下特点: 可移植性:AppImage 包可以在不同的 Linux 发行版上运行,因为它将应…

【牛客刷题】笔记2

目录 1、单词搜索 2、岛屿数量 2.1 DFS 2.2 BFS 3、腐烂的橘子 1、单词搜索 单词搜索_牛客题霸_牛客网 (nowcoder.com) 这道题我们就是先遍历数组board,若遇到了与word[0]相等的字符,则以这个字符为起点进行搜索,搜索可以是dfs&#x…

网关挂了服务还能正常运行吗?

网关是现代架构(尤其是在微服务架构中)中的重要组件,负责处理客户端请求并将其路由到适当的服务。如果网关挂掉,通常会影响到系统的正常运行,但具体后果取决于系统的设计和架构。 网关挂掉后的影响 请求路由中断&…

PHP露营地管理小程序系统源码

🏕️露营新风尚!露营地管理小程序系统,打造完美露营体验✨ 📍营地预订,轻松搞定📅 想要逃离城市的喧嚣,享受大自然的宁静?露营地管理小程序系统让你的露营计划轻松实现&#xff01…

判断网站需不需要改版的几个要点

判断一个网站是否需要改版,可以从多个维度进行分析。以下是一些关键要点: 用户体验: 访问速度:如果网站加载缓慢,用户可能会感到沮丧并离开。导航性:网站结构是否清晰,用户是否能够轻松找到所需…

【设计模式】深入理解Python中的桥接模式(Bridge Pattern)

深入理解Python中的桥接模式(Bridge Pattern) 在软件开发中,我们常常会遇到一个类随着功能的扩展,继承层次越来越复杂,导致系统僵化,难以维护。桥接模式(Bridge Pattern)提供了一种…

WebGL编程指南 - 绘制和变换三角形

三角形在三维图形学中的重要地位,以及WebGL如何绘制三角形。使用多个三角形绘制其它类型的基本图形。利用简单的方程对三角形做基本的变换,如移动、旋转和缩放。利用矩阵简化变换。 绘制多个点与缓冲区对象 相关内容:缓冲区对象:创…

第J6周:ResNeXt-50实战解析(pytorch版)

>- **🍨 本文为[🔗365天深度学习训练营]中的学习记录博客** >- **🍖 原作者:[K同学啊]** 任务: ●阅读ResNeXt论文,了解作者的构建思路 ●对比我们之前介绍的ResNet50V2、DenseNet算法 ●使用ResNeX…