[安全开发]日志敏感信息检测-3-正则合集(手机号邮箱车牌号)

Posted 白夜鸦羽

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[安全开发]日志敏感信息检测-3-正则合集(手机号邮箱车牌号)相关的知识,希望对你有一定的参考价值。

  1. 前言
  2. 手机号
  3. 邮箱
  4. 车牌号

前言

从日志中提取所需信息时,建议两端加上\\W用于匹配特殊字符,能减少不少误报

\\W:匹配非单词字符,与"[^A-Za-z0-9_]"等效

手机号

手机号共11位,编码格式如下:

  • 前3位:网络识别号
  • 4至7位:地区编码
  • 8至11位:用户号码

我们用下面这个正则,从日志中提取手机号

\\W1[3-9]\\d9\\W

  • 1[3-9]:匹配手机号前两位
  • \\d9:匹配手机号后9位

虚拟运营商的出现,导致各种手机号段都有。并且2020年之后,中国广电也开始发行新的手机号段了,所以匹配手机号时,不用限制太死,用1[3-9]匹配前两位即可

邮箱

邮箱正则没什么好说的,就按这个来

\\W\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*\\W

如果误报比较多的话,可以考虑限定邮箱后缀为常用的域名地址

车牌号

车牌号组成:

  • 传统车牌:1-省份简称、2-发牌机关代码、3-7位为号码
  • 新能源车牌:1-省份简称、2-发牌机关代码、3-8位为号码
  • 新能源小型车:第1位只能是字母D或者F,第2位可以是数字或字母,第3位到第6位必须是数字
  • 新能源大型车:第1位到第5位必须是数字,第6位只能是字母D或者F

另外,车牌中不存在字母I、O,防止和数字1、0混淆。

综上,车牌正则如下:

\\W(([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z](([0-9]5[DF])|([DF]([A-HJ-NP-Z0-9])[0-9]4)))|([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z][A-HJ-NP-Z0-9]4[A-HJ-NP-Z0-9挂学警港澳使领]))\\W

以上是关于[安全开发]日志敏感信息检测-3-正则合集(手机号邮箱车牌号)的主要内容,如果未能解决你的问题,请参考以下文章

[安全开发]日志敏感信息检测-2-银行卡

APP测试流程合集

常见开发场景安全开发指南

[安全开发]敏感信息脱敏函数

网络安全学习笔记工具篇——GSIL GITHUB敏感信息泄露检测工具

一文玩转 Java 日志数据脱敏