CN114547121A - 信息检测方法、装置、电子设备和计算机存储介质 - Google Patents
信息检测方法、装置、电子设备和计算机存储介质 Download PDFInfo
- Publication number
- CN114547121A CN114547121A CN202210151810.1A CN202210151810A CN114547121A CN 114547121 A CN114547121 A CN 114547121A CN 202210151810 A CN202210151810 A CN 202210151810A CN 114547121 A CN114547121 A CN 114547121A
- Authority
- CN
- China
- Prior art keywords
- code
- determining
- information
- protected
- priority
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000012545 processing Methods 0.000 claims description 20
- 230000015654 memory Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 12
- 230000009467 reduction Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 9
- 238000012544 monitoring process Methods 0.000 description 9
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开实施例提出了一种信息检测方法、装置、电子设备和计算机存储介质中,该方法包括:在预设类型的关键字中确定目标关键字;或者,根据待保护代码的优先级,确定目标关键字;根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果;根据所述第一检索结果确定所述远程代码仓库中的敏感信息。
Description
技术领域
本公开涉及信息安全技术领域,尤其涉及一种信息检测方法、装置、电子设备和计算机存储介质。
背景技术
随着信息处理技术的迅速发展,越来越多的用户为了更便捷地进行开发与代码项目管理,可以使用如Github、Gitee等远程代码仓库对开发的代码进行管理,这类利用远程代码仓库对代码开源的方式存在敏感信息泄露的问题;例如,随着企业业务的不断发展,企业内部人员由于完全意识等问题,可能将企业内部的敏感信息上传到远程代码仓库,从而造成企业的经济损失。
相关技术中针对敏感信息的检测方案通常是周期性对远程代码仓库进行检索,在检测过程中使用不恰当的预置关键字,会导致敏感信息检测不准确。
发明内容
本公开实施例提供了信息检测的技术方案。
本公开实施例提供了一种信息检测方法,所述方法包括:
在预设类型的关键字中确定目标关键字;或者,根据待保护代码的优先级,确定目标关键字;
根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果;
根据所述第一检索结果确定所述远程代码仓库中的敏感信息。
在一些实施例中,所述在预设类型的关键字中确定目标关键字,包括:在后缀为预设后缀的关键字中确定所述目标关键字,或者,在包含设定字符串的关键字中确定所述目标关键字;其中,所述预设后缀为表示敏感信息的字符串的后缀,所述设定字符串为表示敏感信息的字符串。
可以看出,本公开实施例通过在后缀为预设后缀的关键字中确定目标关键字,或者,在包含设定字符串的关键字中确定目标关键字,可以更加精确地选取目标关键字,进而,在基于目标关键字对远程代码仓库的内容进行检索的情况下,可以提高检索精度,降低误检率。
在一些实施例中,所述方法还包括:在程序产品的发布时间点,将用于检索所述程序产品的关键字确定为所述预设类型的关键字。
可以看出,本公开实施例中可以在程序产品的发布时间点实现预设类型的关键字的更新,从而,在对远程代码仓库的内容进行检索时,实现目标关键字的更新,有利于提高检索精度。
在一些实施例中,在确定所述敏感信息后,所述方法还包括:根据预设的查询系统查询所述敏感信息的溯源信息。
可以看出,本公开实施例可以根据预设的查询系统,方便快捷地实现对敏感信息的溯源,可以精确定位到泄露敏感信息的人员。
在一些实施例中,在根据所述待保护代码的优先级,确定所述目标关键字之前,所述方法还包括:根据所述待保护代码所属程序产品的重要程度,或所述待保护代码的开发人员的类型,确定所述待保护代码的优先级。
可以看出,由于待保护代码的优先级是根据待保护代码所属程序产品的重要程度或待保护代码的开发人员的类型确定的,因此,本公开实施例可以较为准确地得出待保护代码的优先级,进而,有利于准确地确定目标关键字。
在一些实施例中,所述根据所述待保护代码的优先级,确定所述目标关键字,包括:在所述待保护代码的优先级高于第一预设优先级的情况下,以降低对所述远程代码仓库的内容进行检索的漏检率为目标,确定所述目标关键字。
可以看出,在待保护代码的优先级较高的情况下,通过针对性地设置合理的目标关键字,可以降低对远程代码仓库的内容进行检索的漏检率,可以对待保护代码全面可靠地进行信息泄露检测。
在一些实施例中,所述根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果,包括:在所述待保护代码的优先级高于第二预设优先级的情况下,根据所述目标关键字,对所述远程代码仓库中的待保护代码进行优先检索,得到所述第一检索结果中的优先检索结果;在得到所述优先检索结果后,对所述远程代码仓库中除所述待保护代码之外的内容进行检索,得到所述第一检索结果中的其余检索结果;相应地,所述根据所述第一检索结果确定所述远程代码仓库中的敏感信息,包括:依次根据所述优先检索结果和所述其余检索结果,确定所述远程代码仓库中的敏感信息。
可以看出,在待保护代码的优先级较高的情况下,通过对远程代码仓库中的待保护代码进行优先检索,可以及时确定待保护代码的泄露情况,即,本公开实施例对于较高优先级的待保护代码,能够更有针对性地进行优先检索,从而缩短待保护代码发生泄露时的响应处理时间。
在一些实施例中,所述方法包括:在监测到代码提交事件的情况下,在待提交代码中添加标记信息,所述标记信息至少包括所述待提交代码所属程序产品的标识;根据用于检索程序产品的标识的预设关键字,对所述远程代码仓库的内容进行检索,得到第二检索结果;根据所述第二检索结果确定所述远程代码仓库中的敏感信息。
可以看出,本公开实施例可以根据待提交代码所属程序产品的标识,准确地确定预设关键字,进而,在基于预设关键字对远程代码仓库的内容进行检索的情况下,可以提高检索精度,降低误检率和漏检率。
在一些实施例中,所述标记信息还包括所述待提交代码的溯源信息;在确定所述远程代码仓库中的敏感信息后,所述方法还包括:根据所述标记信息中的所述溯源信息,对所述敏感信息中的所述待提交代码进行溯源。
可以看出,本公开实施例可以根据标记信息中待提交代码的溯源信息,方便快捷地实现对待提交代码的溯源,可以精确定位到泄露敏感信息的人员。
在一些实施例中,所述方法还包括:在监测到所述代码提交事件的情况下,在所述代码提交事件的提交记录中,获取所述待提交代码的溯源信息;在确定所述远程代码仓库中的敏感信息后,所述方法还包括:根据所述提交记录中的所述溯源信息,对所述敏感信息中的所述待提交代码进行溯源。
可以看出,本公开实施例可以提交记录中的溯源信息,方便快捷地实现对待提交代码的溯源,可以精确定位到泄露敏感信息的人员。
本公开实施例还提供了一种信息检测装置,所述装置包括确定模块、检索模块和处理模块,其中,
确定模块,用于在预设类型的关键字中确定目标关键字;或者,根据待保护代码的优先级,确定目标关键字;
检索模块,用于根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果;
处理模块,用于根据所述第一检索结果确定所述远程代码仓库中的敏感信息。
本公开实施例还提供了一种电子设备,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,
所述处理器用于运行所述计算机程序以执行上述任意一种信息检测方法。
本公开实施例还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任意一种信息检测方法。
本公开实施例提出的信息检测方法、装置、电子设备和计算机存储介质中,可以在预设类型的关键字中确定目标关键字;或者,可以根据待保护代码的优先级确定目标关键字,从而,有利于准确地得出用于对远程代码仓库的内容进行检索的目标关键字,提高了敏感信息检测的准确率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1为本公开实施例的应用环境示意图;
图2为本公开实施例的信息检测方法的流程图一;
图3为本公开实施例中对远程代码仓库进行检索的一个流程图;
图4为本公开实施例的信息检测方法的流程图二;
图5为本公开实施例中一个commit提交记录的示意图;
图6为本公开实施例中另一个commit提交记录的示意图;
图7为本公开实施例中实现信息检测的架构示意图;
图8为本公开实施例的信息检测装置的组成结构示意图;
图9为本公开实施例的电子设备的结构示意图。
具体实施方式
在相关技术中,可以采用预置关键字对远程代码仓库中的敏感信息进行检测,这里的预置关键字能够标识需要检测的敏感信息,例如,预置关键字可以是企业的程序产品名称等,然而,相关技术中针对远程代码仓库中敏感信息的检测方案存在以下问题:1)在检测过程中使用不恰当的预置关键字,容易导致漏检、误检等问题;2)定位泄露事件的泄密人员存在困难;3)在每次进行敏感信息检测时,需要人工确定预置关键字,工作量较大;4)对于需要重点检测是否发生泄露的代码,并未进行针对性地处理。
针对相关技术存在的上述问题,提出本公开实施例的技术方案。
以下结合附图及实施例,对本公开进行进一步详细说明。应当理解,此处所提供的实施例仅仅用以解释本公开,并不用于限定本公开。另外,以下所提供的实施例是用于实施本公开的部分实施例,而非提供实施本公开的全部实施例,在不冲突的情况下,本公开实施例记载的技术方案可以任意组合的方式实施。
图1为本公开实施例的应用环境示意图,参照图1,该应用环境可以包括终端101和服务器102,该服务器102可以是如Github、Gitee等远程代码仓库的服务器。其中,终端101可以通过网络与服务器102进行连接。在实际应用中,终端101可以对服务器102中的远程代码仓库进行关键字检索,从而确定远程代码仓库中的敏感信息。示例性地,敏感信息可以是企业开发的业务代码信息、服务器账号密码、私钥信息、业务内部核心资料等,内部核心资料可以是员工信息、项目文档等。
在上述应用环境中,终端101可以是瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统,等等,服务器102可以是服务器计算机系统小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
终端101、服务器102等电子设备可以包括用于执行指令的程序模块。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
本公开实施例提出了一种信息检测方法,可以应用于图1中的终端101中,参照图2,本公开实施例的信息检测方法的流程可以包括:
步骤201:在预设类型的关键字中确定目标关键字;或者,根据待保护代码的优先级,确定目标关键字。
本公开实施例中,目标关键字的数量可以是一个,也可以是至少两个。
在预设类型的关键字中确定目标关键字的一种实现方式为:在后缀为预设后缀的关键字中确定目标关键字;即,在关键字的后缀为预设后缀的情况下,确定关键字的类型为预设类型。
这里,预设后缀为表示敏感信息的字符串的后缀,示例性地,预设后缀可以是lic、aaa、bbb等;在关键字的后缀为lic的情况下,关键字为表示证书文件名称的字符串,证书文件属于一种敏感信息,例如,在关键字extension.lic中,由于后缀为lic,可以确定关键字extension.lic为预设类型的关键字;在关键字的后缀为aaa或bbb的情况下,关键字为表示人工智能(Artificial Intelligence,AI)模型名称的字符串,AI模型属于一种敏感信息。
在预设类型的关键字中确定目标关键字的另一种实现方式为:在包含设定字符串的关键字中确定所述目标关键字;即,在关键字包含设定字符串的情况下,确定关键字的类型为预设类型。
这里,设定字符串为表示敏感信息的字符串,示例性地,设定字符串可以是表示证书文件名称或AI模型的名称的字符串。
可以看出,本公开实施例通过在后缀为预设后缀的关键字中确定目标关键字,或者,在包含设定字符串的关键字中确定目标关键字,可以更加精确地选取目标关键字,进而,在基于目标关键字对远程代码仓库的内容进行检索的情况下,可以提高检索精度,降低误检率。
在一些实施例中,可以根据待保护代码所属程序产品的重要程度,或待保护代码的开发人员的类型,确定待保护代码的优先级。
本公开实施例中,待保护代码属于一种敏感信息;示例性地,在待保护代码所属程序产品的重要程度较高的情况下,确定待保护代码具有较高的优先级;在待保护代码所属程序产品的重要程度较低的情况下,确定待保护代码具有较低的优先级。
示例性地,在待保护代码的开发人员为容易泄露敏感信息的人员时,可以确定待保护代码具有较高的优先级;在待保护代码的开发人员为不容易泄露敏感信息的人员时,可以确定待保护代码具有较低的优先级;例如,在待保护代码的开发人员为企业的离职人员或即将离职的人员时,确定待保护代码的开发人员为容易泄露敏感信息的人员。
可以看出,由于待保护代码的优先级是根据待保护代码所属程序产品的重要程度或待保护代码的开发人员的类型确定的,因此,本公开实施例可以较为准确地得出待保护代码的优先级,进而,有利于准确地确定目标关键字。
在一些实施例中,在待保护代码的优先级高于第一预设优先级的情况下,以降低对远程代码仓库的内容进行检索的漏检率为目标,确定目标关键字。
在一种实现方式中,在待保护代码的优先级高于第一预设优先级的情况下,可以将较短长度的关键字作为目标关键字,这样有利于在远程代码仓库的内容中检索得出更多信息;例如,针对待保护代码初始确定的关键字为“ABCD”,在待保护代码的优先级高于第一预设优先级的情况下,可以将“AB或“CD”作为目标关键字,这样,有利于降低对远程代码仓库的内容进行检索的漏检率。
在另一种实现方式中,在待保护代码的优先级高于第一预设优先级的情况下,可以设置多个不同的目标关键字,这样,可以利用多个不同的目标关键字分别对远程代码仓库的内容进行检索,从而得出更多信息;例如,可以将字符“E”和“F”分别作为目标关键字,这样,有利于降低对远程代码仓库的内容进行检索的漏检率。
可以看出,在待保护代码的优先级较高的情况下,通过针对性地设置合理的目标关键字,可以降低对远程代码仓库的内容进行检索的漏检率,可以对待保护代码全面可靠地进行信息泄露检测。
步骤202:根据目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果。
步骤203:根据第一检索结果确定远程代码仓库中的敏感信息。
在一种实现方式中,在第一检索结果不为空的情况下,可以将第一检索结果直接作为远程代码仓库中的敏感信息;在另一种实现方式中,在第一检索结果不为空的情况下,可以将第一检索结果进行展示,以供用户选择部分第一检索结果,然后,可以将用户选择的部分第一检索结果作为远程代码仓库中的敏感信息。
在一种实现方式中,在第一检索结果为空的情况下,可以确定远程代码仓库中不存在敏感信息。
在实际应用中,步骤201至步骤203可以利用电子设备中的处理器实现,上述处理器可以为特定用途集成电路(Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(Digital SignalProcessing Device,DSPD)、可编程逻辑装置(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、中央处理器(Central ProcessingUnit,CPU)、控制器、微控制器、微处理器中的至少一种。
可以看出,本公开实施例可以在预设类型的关键字中确定目标关键字;或者,可以根据待保护代码的优先级确定目标关键字,从而,有利于准确地得出用于对远程代码仓库的内容进行检索的目标关键字,提高了敏感信息检测的准确率。
在一些实施例中,可以在程序产品的发布时间点,将用于检索程序产品的关键字确定为预设类型的关键字。
这里,程序产品中的代码属于一种敏感信息,在实际应用中,可以在程序产品的发布时间点,获取程序产品的运营人员提交的用于检索程序产品的关键字,可以实现预设类型的关键字的更新;由于可以在预设类型的关键字中确定目标关键字,因此,本公开实施例可以实现目标关键字的更新。
可以看出,本公开实施例中可以在程序产品的发布时间点实现预设类型的关键字的更新,从而,在对远程代码仓库的内容进行检索时,实现目标关键字的更新,有利于提高检索精度;进一步地,由于在对远程代码仓库的内容进行检索的情况下,无需人工设置关键字,而是可以在预设类型的关键字中确定目标关键字,从而,在一定程度上降低了人工维护关键字的工作量。
在本公开的一些实施例中,可以在确定敏感信息后,根据预设的查询系统查询敏感信息的溯源信息。
本公开实施例中,溯源信息可以是将敏感信息上传远程代码仓库的人员的身份信息、将敏感信息上传远程代码仓库的网络地址信息等。
在实际应用中,可以预先建立针对敏感信息的溯源信息的查询系统,例如,可以针对数字证书,建立用于查询数字证书签发者的查询系统;或者,可以针对AI模型,建立用于查询上传AI模型的人员的查询系统。
可以看出,本公开实施例可以根据预设的查询系统,方便快捷地实现对敏感信息的溯源,可以精确定位到泄露敏感信息的人员。
在本公开的一些实施例中,参照图3,步骤202的实现方式可以包括:
步骤2021:在待保护代码的优先级高于第二预设优先级的情况下,根据目标关键字,对远程代码仓库中的待保护代码进行优先检索,得到第一检索结果中的优先检索结果。
本公开实施例中,第二预设优先级可以与第一预设优先级相同,也可以与第一预设优先级不相同。
步骤2022:在得到优先检索结果后,对远程代码仓库中除所述待保护代码之外的内容进行检索,得到所述第一检索结果中的其余检索结果。
相应地,根据第一检索结果确定远程代码仓库中的敏感信息的实现方式,可以包括:依次根据优先检索结果和其余检索结果,确定远程代码仓库中的敏感信息。
可以看出,在待保护代码的优先级较高的情况下,通过对远程代码仓库中的待保护代码进行优先检索,可以及时确定待保护代码的泄露情况,即,本公开实施例对于较高优先级的待保护代码,能够更有针对性地进行优先检索,从而缩短待保护代码发生泄露时的响应处理时间。
在本公开的一些实施例中,参照图4,本公开实施例的信息检测方法的流程还可以包括:
步骤401:在监测到代码提交事件的情况下,在待提交代码中添加标记信息,标记信息至少包括待提交代码所属程序产品的标识。
本公开实施例中,代码提交事件表示将待提交代码提交到远程代码仓库的事件;标记信息可以是包含待提交代码的文件中的水印信息。
在实际应用中,可以采用钩子(hook)服务或代码提交事件的提交记录监测代码提交事件,示例性地,在程序产品的项目开发场景中,可以在不影响项目正常编译的情况下,利用gitlab hook机制,开发hook服务,利用该hook服务监测代码提交事件;示例性地,代码提交事件的提交记录为commit提交记录,通过监测commit提交记录,可以实现代码提交事件的监测。
本公开实施例中,标记信息可以是包含待提交代码的文件中的水印信息;待提交代码所属程序产品的标识可以为待提交代码所属程序产品的名称、提交代码所属程序产品的版本或提交代码所属程序产品对应的项目分支。
步骤402:根据用于检索程序产品的标识的预设关键字,对远程代码仓库的内容进行检索,得到第二检索结果。
在实际应用中,可以将程序产品的标识的全部或部分作为上述预设关键字。
步骤403:根据第二检索结果确定远程代码仓库中的敏感信息。
在一种实现方式中,在第二检索结果不为空的情况下,可以将第二检索结果直接作为远程代码仓库中的敏感信息;在另一种实现方式中,在第二检索结果不为空的情况下,可以将第二检索结果进行展示,以供用户选择部分第二检索结果,然后,可以将用户选择的部分第二检索结果作为远程代码仓库中的敏感信息。
在一种实现方式中,在第二检索结果为空的情况下,可以确定远程代码仓库中不存在敏感信息。
可以看出,本公开实施例可以根据待提交代码所属程序产品的标识,准确地确定预设关键字,进而,进而,在基于预设关键字对远程代码仓库的内容进行检索的情况下,可以提高检索精度,降低误检率和漏检率。
在本公开的一些实施例中,上述标记信息还可以包括待提交代码的溯源信息。相应地,在确定远程代码仓库中的敏感信息后,可以根据标记信息中的溯源信息,对敏感信息中的待提交代码进行溯源。
示例性地,待提交代码的溯源信息可以是将待提交代码上传远程代码仓库的人员的身份信息、将待提交代码上传远程代码仓库的网络地址信息、待提交代码所属产品的负责人等。将待提交代码上传远程代码仓库的网络地址信息可以是网际互连协议(InternetProtocol,IP)地址、用户邮箱等信息。
可以看出,本公开实施例可以根据标记信息中待提交代码的溯源信息,方便快捷地实现对待提交代码的溯源,可以精确定位到泄露敏感信息的人员。
在本公开的一些实施例中,还可以在在监测到代码提交事件的情况下,在代码提交事件的提交记录中,获取待提交代码的溯源信息。
相应地,在确定远程代码仓库中的敏感信息后,可以根据提交记录中的溯源信息,对敏感信息中的待提交代码进行溯源。
示例性地,在未删除远程代码仓库中根目录下.git文件夹的情况下,可以从远程代码仓库中根目录下.git文件夹中获取commit提交记录,参照图5,第一commit提交记录的窗口501包括第一提交选项按钮503、第一提交选项按钮对应的提交结果窗口504、以及第一邮箱显示区域502,参照图6,第二commit提交记录的窗口601包括第二提交选项按钮603、第二提交选项按钮对应的提交结果窗口604、以及第二邮箱显示区域602;在第一邮箱显示区域502和第二邮箱显示区域602中显示有将待提交代码上传远程代码仓库的用户邮箱;根据该用户邮箱可以精确定位到泄露敏感信息的人员。
可以看出,本公开实施例可以提交记录中的溯源信息,方便快捷地实现对待提交代码的溯源,可以精确定位到泄露敏感信息的人员。
在一些其它的实施例中,还可以利用公网舆情监测敏感信息的泄露情况,例如,通过动态监测商用或开源的公网舆情,确定公网舆情中是否存在泄露的待保护代码;在确定公网舆情中存在泄露的待保护代码的情况下,可以作为紧急事件及时进行处理,以降低企业经济损失。
本公开实施例中,可以对远程代码仓库中的内容进行实时监控,在确定远程代码仓库中存在敏感信息时,可以及时通知相关人员进行处理,降低企业损失。
下面结合附图对本公开实施例中实现信息检测的架构进行示例性说明。
参照图7,处于用户层701的安全人员7011和开发人员7012可以通过表现层702和业务层703进行敏感信息的检测;表现层702包括产品关键字管理模块7021、产品commit记录管理模块7022、公网舆情管理模块7023、代码文件打水印模块7024和特定情况模块7025。
其中,产品关键字管理模块7021,用于选取关键字和对关键字进行更新,这里,选取关键字的实现方式为:在预设类型的关键字中确定目标关键字,并根据目标关键字对远程代码仓库的内容进行检索;对关键字进行更新的实现方式为:在程序产品的发布时间点,将用于检索所述程序产品的关键字确定为预设类型的关键字。
代码文件打水印模块7024,用于不影响项目正常编译情况下,在采用hook服务监测到代码提交事件的情况下,在待提交代码的文件中添加水印信息,该水印信息为上述标记信息。
产品commit记录管理模块7022,用于在代码提交事件的commit提交记录中,获取将待提交代码上传远程代码仓库的用户邮箱等溯源信息。
特定情况模块7025,用于针对重要性程度较高的待保护代码,设置以降低对远程代码仓库的内容进行检索的漏检率为目标,确定目标关键字;还用于根据待保护代码所属程序产品的重要程度,或待保护代码的开发人员的类型,确定待保护代码的优先级,针对优先级较高的待保护代码,进行优先检索和处理。
公网舆情管理模块7023,用于监测商用或开源的公网舆情,在确定公网舆情中存在泄露的待保护代码的情况下,可以作为紧急事件及时进行处理。
业务层703可以包括Github扫描引擎7031、Gitee扫描引擎7032、hook服务7033、公网舆情监控引擎7034和特定情况监测引擎7035;表现层702的各个模块可以通过业务层703的引擎或服务实现。其中,Github扫描引擎7031用于对Github中的内容进行检索;Gitee扫描引擎7032用于对Gitee中的内容进行检索;公网舆情监控引擎7034用于监测商用或开源的公网舆情;特定情况监测引擎7035用于根据待保护代码所属程序产品的重要程度,或待保护代码的开发人员的类型,确定待保护代码的优先级。
数据库层704包括MySQL数据库管理系统7041和RabbitMQ消息队列服务软件7042,业务层703中的引擎或服务可以调用RabbitMQ消息队列服务软件7042,而MySQL数据库管理系统7041和RabbitMQ消息队列服务软件7042之间可以通过接口层705的代理服务集合7051实现,图7中,agent1和agent2表示代理服务集合7051中两个不同的代理服务。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
在前述实施例提出的信息检测方法的基础上,本公开实施例提出了一种信息检测装置。
图8为本公开实施例的信息检测装置的组成结构示意图,如图8所示,该装置可以包括:确定模块801、检索模块802和处理模块803,其中,
确定模块801,用于在预设类型的关键字中确定目标关键字;或者,根据待保护代码的优先级,确定目标关键字;
检索模块802,用于根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果;
处理模块803,用于根据所述第一检索结果确定所述远程代码仓库中的敏感信息。
在一些实施例中,所述确定模块801,用于在预设类型的关键字中确定目标关键字,包括:
在后缀为预设后缀的关键字中确定所述目标关键字,或者,在包含设定字符串的关键字中确定所述目标关键字;其中,所述预设后缀为表示敏感信息的字符串的后缀,所述设定字符串为表示敏感信息的字符串。
在一些实施例中,所述确定模块801,还用于在程序产品的发布时间点,将用于检索所述程序产品的关键字确定为所述预设类型的关键字。
在一些实施例中,所述处理模块803,还用于在确定所述敏感信息后,根据预设的查询系统查询所述敏感信息的溯源信息。
在一些实施例中,所述确定模块801,还用于在根据所述待保护代码的优先级,确定所述目标关键字之前,根据所述待保护代码所属程序产品的重要程度,或所述待保护代码的开发人员的类型,确定所述待保护代码的优先级。
在一些实施例中,所述确定模块801,用于根据所述待保护代码的优先级,确定所述目标关键字,包括:
在所述待保护代码的优先级高于第一预设优先级的情况下,以降低对所述远程代码仓库的内容进行检索的漏检率为目标,确定所述目标关键字。
在一些实施例中,所述检索模块802,用于根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果,包括:
在所述待保护代码的优先级高于第二预设优先级的情况下,根据所述目标关键字,对所述远程代码仓库中的待保护代码进行优先检索,得到所述第一检索结果中的优先检索结果;
在得到所述优先检索结果后,对所述远程代码仓库中除所述待保护代码之外的内容进行检索,得到所述第一检索结果中的其余检索结果;
相应地,所述处理模块803,用于根据所述第一检索结果确定所述远程代码仓库中的敏感信息,包括:
依次根据所述优先检索结果和所述其余检索结果,确定所述远程代码仓库中的敏感信息。
在一些实施例中,所述处理模块803,还用于:
在监测到代码提交事件的情况下,在待提交代码中添加标记信息,所述标记信息至少包括所述待提交代码所属程序产品的标识;
根据用于检索程序产品的标识的预设关键字,对所述远程代码仓库的内容进行检索,得到第二检索结果;
根据所述第二检索结果确定所述远程代码仓库中的敏感信息。
在一些实施例中,所述标记信息还包括所述待提交代码的溯源信息;
所述处理模块803,还用于在确定所述远程代码仓库中的敏感信息后,根据所述标记信息中的所述溯源信息,对所述敏感信息中的所述待提交代码进行溯源。
在一些实施例中,所述处理模块803,还用于在监测到所述代码提交事件的情况下,在所述代码提交事件的提交记录中,获取所述待提交代码的溯源信息;
所述处理模块803,还用于在确定所述远程代码仓库中的敏感信息后,根据所述提交记录中的所述溯源信息,对所述敏感信息中的所述待提交代码进行溯源。
实际应用中,所述确定模块801、所述检索模块802和所述处理模块803均可以利用电子设备中的处理器实现,上述处理器可以为ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
具体来讲,本实施例中的一种信息检测方法对应的计算机程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与一种信息检测方法对应的计算机程序指令被一电子设备读取或被执行时,实现前述实施例的任意一种信息检测方法。
基于前述实施例相同的技术构思,参见图9,其示出了本公开实施例提供的一种电子设备90,可以包括:存储器901和处理器902;其中,
所述存储器901,用于存储计算机程序和数据;
所述处理器902,用于执行所述存储器中存储的计算机程序,以实现前述实施例的任意一种信息检测方法。
在实际应用中,上述存储器901可以是易失性存储器(volatile memory),例如RAM;或者非易失性存储器(non-volatile memory),例如ROM,快闪存储器(flash memory),硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);或者上述种类的存储器的组合,并向处理器902提供指令和数据。
上述处理器902可以为ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本公开实施例不作具体限定。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述
本公开所提供的各方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本公开所提供的各产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本公开所提供的各方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (13)
1.一种信息检测方法,其特征在于,所述方法包括:
在预设类型的关键字中确定目标关键字;或者,根据待保护代码的优先级,确定目标关键字;
根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果;
根据所述第一检索结果确定所述远程代码仓库中的敏感信息。
2.根据权利要求1所述的方法,其特征在于,所述在预设类型的关键字中确定目标关键字,包括:
在后缀为预设后缀的关键字中确定所述目标关键字,或者,在包含设定字符串的关键字中确定所述目标关键字;其中,所述预设后缀为表示敏感信息的字符串的后缀,所述设定字符串为表示敏感信息的字符串。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
在程序产品的发布时间点,将用于检索所述程序产品的关键字确定为所述预设类型的关键字。
4.根据权利要求1至3任一项所述的方法,其特征在于,在确定所述敏感信息后,所述方法还包括:
根据预设的查询系统查询所述敏感信息的溯源信息。
5.根据权利要求1至4任一项所述的方法,其特征在于,在根据所述待保护代码的优先级,确定所述目标关键字之前,所述方法还包括:
根据所述待保护代码所属程序产品的重要程度,或所述待保护代码的开发人员的类型,确定所述待保护代码的优先级。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述根据所述待保护代码的优先级,确定所述目标关键字,包括:
在所述待保护代码的优先级高于第一预设优先级的情况下,以降低对所述远程代码仓库的内容进行检索的漏检率为目标,确定所述目标关键字。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果,包括:
在所述待保护代码的优先级高于第二预设优先级的情况下,根据所述目标关键字,对所述远程代码仓库中的待保护代码进行优先检索,得到所述第一检索结果中的优先检索结果;
在得到所述优先检索结果后,对所述远程代码仓库中除所述待保护代码之外的内容进行检索,得到所述第一检索结果中的其余检索结果;
相应地,所述根据所述第一检索结果确定所述远程代码仓库中的敏感信息,包括:
依次根据所述优先检索结果和所述其余检索结果,确定所述远程代码仓库中的敏感信息。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述方法包括:
在监测到代码提交事件的情况下,在待提交代码中添加标记信息,所述标记信息至少包括所述待提交代码所属程序产品的标识;
根据用于检索程序产品的标识的预设关键字,对所述远程代码仓库的内容进行检索,得到第二检索结果;
根据所述第二检索结果确定所述远程代码仓库中的敏感信息。
9.根据权利要求8所述的方法,其特征在于,所述标记信息还包括所述待提交代码的溯源信息;
在确定所述远程代码仓库中的敏感信息后,所述方法还包括:
根据所述标记信息中的所述溯源信息,对所述敏感信息中的所述待提交代码进行溯源。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述方法还包括:
在监测到代码提交事件的情况下,在所述代码提交事件的提交记录中,获取待提交代码的溯源信息;
在确定所述远程代码仓库中的敏感信息后,所述方法还包括:
根据所述提交记录中的所述溯源信息,对所述敏感信息中的所述待提交代码进行溯源。
11.一种信息检测装置,其特征在于,所述装置包括确定模块、检索模块和处理模块,其中,
确定模块,用于在预设类型的关键字中确定目标关键字;或者,根据待保护代码的优先级,确定目标关键字;
检索模块,用于根据所述目标关键字,对远程代码仓库的内容进行检索,得到第一检索结果;
处理模块,用于根据所述第一检索结果确定所述远程代码仓库中的敏感信息。
12.一种电子设备,其特征在于,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,
所述处理器用于运行所述计算机程序以执行权利要求1至10任一项所述的方法。
13.一种计算机存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210151810.1A CN114547121A (zh) | 2022-02-18 | 2022-02-18 | 信息检测方法、装置、电子设备和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210151810.1A CN114547121A (zh) | 2022-02-18 | 2022-02-18 | 信息检测方法、装置、电子设备和计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114547121A true CN114547121A (zh) | 2022-05-27 |
Family
ID=81674784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210151810.1A Pending CN114547121A (zh) | 2022-02-18 | 2022-02-18 | 信息检测方法、装置、电子设备和计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114547121A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112016A (zh) * | 2023-08-25 | 2023-11-24 | 北京火山引擎科技有限公司 | 代码操作行为检测方法、装置、介质及电子设备 |
-
2022
- 2022-02-18 CN CN202210151810.1A patent/CN114547121A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112016A (zh) * | 2023-08-25 | 2023-11-24 | 北京火山引擎科技有限公司 | 代码操作行为检测方法、装置、介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11036771B2 (en) | Data processing systems for generating and populating a data inventory | |
US11775501B2 (en) | Trace and span sampling and analysis for instrumented software | |
JP4608522B2 (ja) | ファイル管理システム | |
US8090693B2 (en) | System, method, and article of manufacture for maintaining and accessing a whois database | |
KR100850255B1 (ko) | 실시간 데이터 웨어하우징 | |
US20120101866A1 (en) | Service level agreement design and enforcement for outsourced call center | |
CN112491602B (zh) | 行为数据的监控方法、装置、计算机设备及介质 | |
US20140344273A1 (en) | System and method for categorizing time expenditure of a computing device user | |
CN111198976B (zh) | 云上资产关联分析系统、方法、电子设备及介质 | |
CN115150261B (zh) | 告警分析的方法、装置、电子设备及存储介质 | |
CN112925757A (zh) | 一种追踪智能设备操作日志的方法、设备、存储介质 | |
CN115329381A (zh) | 基于敏感数据的分析预警方法、装置、计算机设备及介质 | |
CN115544050A (zh) | 操作日志记录方法、装置、设备及存储介质 | |
WO2020233013A1 (zh) | 一种数据处理方法、设备及存储介质 | |
CN114547121A (zh) | 信息检测方法、装置、电子设备和计算机存储介质 | |
US20210241215A1 (en) | Data processing systems for generating and populating a data inventory | |
WO2017092355A1 (zh) | 一种数据服务系统 | |
CN111753149A (zh) | 敏感信息的检测方法、装置、设备及存储介质 | |
US11544667B2 (en) | Data processing systems for generating and populating a data inventory | |
CN115878864A (zh) | 一种数据检索方法、装置、设备及可读存储介质 | |
CN115658794A (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
EP2819028A2 (en) | Content management system | |
US10664501B2 (en) | Deriving and interpreting users collective data asset use across analytic software systems | |
JP2009199385A (ja) | 情報管理装置 | |
US9009073B1 (en) | Product availability check using image processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |