如何使用MaskerLogger防止敏感数据发生泄露

关于MaskerLogger

MaskerLogger是一款功能强大的记录工具,该工具可以有效防止敏感数据泄露的发生。

MaskerLogger旨在保护目标系统的日子安全,此格式化程序可确保你的日志安全并防止敏感数据泄露。例如使用此格式化程序,打印下列数据:

复制代码
logger.info(f'Dont Give Your {secrets} away')

输出结果如下所示:

复制代码
Dont Give Your ****** away

功能介绍

此格式化程序使用标准logging.Formatter模块。

在将每条记录打印到任何目标(文件、标准输出等)之前,它会确保敏感数据用星号屏蔽,以防止泄露。

工具要求

Python3

工具安装

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

源码获取

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

复制代码
git clone https://github.com/oxsecurity/MaskerLogger.git

pip安装

复制代码
pip install maskerlogger

工具使用

与任何格式化程序一样 - 只需使用 MaskerLogger 格式化程序初始化你的记录器处理程序即可:

复制代码
from maskerlogger import MaskerFormatter

logger = logging.getLogger('logger')

logger.setLevel(logging.DEBUG)

handler = logging.StreamHandler()

handler.setFormatter(

    MaskerFormatter("%(asctime)s %(name)s %(levelname)s %(message)s"))

logger.addHandler(handler)

如果由于某种原因,你想要禁用特定日志行上的屏蔽,请使用该SKIP_MASK("隐蔽跳过")机制:

复制代码
from masker_formatter import MaskerFormatter, SKIP_MASK

...

...

logger.info('Line you want to skip', extra=SKIP_MASK)

如果你希望仅屏蔽敏感数据的其中一部分(而不是其全部长度),则可以在格式化程序中设置redact参数,该redact参数可以指定要屏蔽的机密的百分比。

以下是如何使用它的示例:

复制代码
handler.setFormatter(

    MaskerFormatter("%(asctime)s %(name)s %(levelname)s %(message)s",

                    redact=30))

在此示例中,30% 的敏感数据将被屏蔽。请根据需要调整redact的值以满足你的要求。

使用自定义配置文件

要创建和使用自己的配置文件,请在初始化格式化程序时设置路径:

复制代码
handler.setFormatter(

    MaskerFormatter("%(asctime)s %(name)s %(levelname)s %(message)s",

                    regex_config_path="your/config/gitleaks.toml"))

许可证协议

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

项目地址

MaskerLogger :【GitHub传送门

参考资料

https://www.ox.security/

相关推荐
百结2147 小时前
Nginx安全防护与HTTPS部署实战笔记
nginx·安全·https
_下雨天.7 小时前
Nginx安全防护与HTTPS部署实战笔记
nginx·安全·https
上海云盾-小余10 小时前
等保 2.0 全攻略:企业合规建设与安全防护一站式指南
安全
萌兰三太子12 小时前
企业级 AI 智能体平台安全沙箱在 E2B 中的实现
人工智能·安全
卢傢蕊12 小时前
Nginx安全防护与HTTPS部署实战
nginx·安全·https
胖头鱼的鱼缸(尹海文)13 小时前
数据库管理-第411期 OpenClaw进阶实战:升级+网关安全+飞书对接一次性搞定(20260315)
安全·飞书·openclaw
yhdata13 小时前
年复合增速11.5%!智慧安全巡检机器人,锚定未来六年高成长新航向
人工智能·安全·机器人
CodeCraft Studio14 小时前
Parasoft C/C++嵌入式软件测试解决方案:安全、可靠且符合标准
开发语言·c++·安全·单元测试·代码规范·parasoft·嵌入式软件测试
KKKlucifer14 小时前
数据资产化背景下的分类分级技术架构设计
人工智能·安全·重构
cramer_50h14 小时前
网络安全技术研究:渗透测试环境和APP安全测试教程(二)
安全·web安全