【技术实现步骤摘要】
一种基于自然语言处理技术的代码泄露检测系统和方法
本专利技术属于信息安全
,具体涉及一种基于自然语言处理技术的代码泄露检测系统和方法。
技术介绍
企业的信息安全关系到企业的正常发展。对于IT类企业,信息泄露是典型的信息安全事故,主要表现为项目中的代码、文档等资料泄露到网上。近年来,代码泄露事件频发,对企业或者个人都产生了一些负面影响,信息安全面临极大的挑战。产品核心代码泄露,可能会对产品的安全带来潜在威胁;企业机密信息泄露,可能会对企业造成直接经济损失;不仅是企业,信息泄露还会危害公众用户个人隐私。因此避免信息泄露很有必要。那么,信息是如何泄露出去的呢?信息安全的威胁来自多个方面,例如病毒木马、黑客攻击、局域网内部ARP、溢出攻击、内部人员故意泄密、内部人员无意泄密、数据信息存储设备故障、自然灾害等。据调查报告显示,80%的安全威胁来自企业内部,60%的人离职会带走企业数据。针对这些威胁,出现了相关的安全策略以及产品或者服务。例如以下预防信息泄露产品。①DLP(DataLeakagePrevention)数据泄露防护数据泄密防护(DLP)是通过一定的技术手段,防止企业的指定数据或信息资产以违反安全策略规定的形式流出企业的一种策略。通过加密、文档维护、文档外发限制、离线办公、设备管理、日志审计等多种方法,进行防护。②加密软件透明加密软件、磁盘加密软件等。所谓强制透明加密,是指采用后台自动加密方式,对操作者所存储的文档和数据实时进行强制加密,而操作者并无直观的感知。强 ...
【技术保护点】
1.一种基于自然语言处理技术的代码泄露检测系统,其特征在于,包括权限管理模块、邮件通知模块、日志记录模块、系统设定模块、项目登录模块、项目解析模块、关键字管理模块、搜索引擎模块、可疑分析判定模块,可疑页面表示及确认模块、Dashboard模块和数据库;/n所述权限管理模块,用于针对企业用户管理系统访问权限的设定;/n所述邮件通知模块,用于项目解析完成和信息泄露检测完成的情况下,向相关人员发送相关邮件;/n所述日志记录模块,用于异常情况、错误发生时记录相关日志信息,方便解决问题;/n所述系统设定模块,用于针对搜索引擎的设置和相似度阈值设置进行系统设定;/n所述项目登录模块,用于代码上传及相关基础信息设定;/n所述项目解析模块,用于代码解析,并提取关键字;/n所述关键字管理模块,用于对关键字进行增删改查;/n所述搜索引擎模块,用于基于搜索引擎取得可疑页面;/n所述可疑分析判定模块,用于对提取的可疑页面提取网页正文中的代码,并与项目代码进行相似度计算;/n所述可疑页面表示及确认模块,用于对提取的可疑页面提取网页正文中的代码,按照可疑度排序表示后,人工可对可疑页面进行判定,确认是否真实泄露/n ...
【技术特征摘要】
1.一种基于自然语言处理技术的代码泄露检测系统,其特征在于,包括权限管理模块、邮件通知模块、日志记录模块、系统设定模块、项目登录模块、项目解析模块、关键字管理模块、搜索引擎模块、可疑分析判定模块,可疑页面表示及确认模块、Dashboard模块和数据库;
所述权限管理模块,用于针对企业用户管理系统访问权限的设定;
所述邮件通知模块,用于项目解析完成和信息泄露检测完成的情况下,向相关人员发送相关邮件;
所述日志记录模块,用于异常情况、错误发生时记录相关日志信息,方便解决问题;
所述系统设定模块,用于针对搜索引擎的设置和相似度阈值设置进行系统设定;
所述项目登录模块,用于代码上传及相关基础信息设定;
所述项目解析模块,用于代码解析,并提取关键字;
所述关键字管理模块,用于对关键字进行增删改查;
所述搜索引擎模块,用于基于搜索引擎取得可疑页面;
所述可疑分析判定模块,用于对提取的可疑页面提取网页正文中的代码,并与项目代码进行相似度计算;
所述可疑页面表示及确认模块,用于对提取的可疑页面提取网页正文中的代码,按照可疑度排序表示后,人工可对可疑页面进行判定,确认是否真实泄露
所述Dashboard模块,用于对项目数量、关键字数量、可疑网页数量、真实泄露网页数量等进行统计分析;
所述数据库,用于存储代码泄露检测系统的数据。
2.根据权利要求1所述的一种基于自然语言处理技术的代码泄露检测系统,其特征在于,所述搜索引擎模块包括爬虫模块和搜索API模块;
所述爬虫模块基于Google、Baidu和Yahoo通用搜索引擎搜索爬取可疑页面;
所述搜索API模块基于Google提供的搜索API以及GitHub提供的搜索API,取得可疑页面。
3.根据权利要求2所述的一种基于自然语言处理技术的代码泄露检测系统的代码泄露检测方法,其特征在于,所述方法包括以下步骤:
步骤1:上传项目源代码至项目登录模块,设定项目的基本信息;
步骤2:项目解析模块对项目源代码进行解析,提取函数、变量、注释、类、包等代码信息,基于代码信息提取关键字代码信息;
步骤3:关键字管理模块对关键字进行人工确认,包括增、删、改和查;
步骤3:搜索引擎模块检索关键字代码信息,抓取网页并保存;
步骤4:使用爬虫模块或者搜索API模块分析搜索结果并保存;
步骤5:可疑分析判定模块将可疑网页中的代码块与源代码进行相似度比较;
步骤6:设定相似度阈值,可疑页面表示及确认模块显示高可疑网页相关信息;
步骤7:采用深度学习方法,对可疑度计算进行准确度改善。
4.根据权利要求3所述的一种基于自然语言处理技术的代码泄露检测系统的代码泄露检测方法,其特征在于,所述步骤1具体为:
步骤1.1:通过SVN、GIT或本地文件上传的形式,将源代码上传至系统;
步骤1.2:对步骤1.1中上传的源代码进行预处理,消除与源代码完全无关的文件,只保留源代码文本文件。
5.根据权利要求4所述的一种基于自然语言处理技术的代码泄露检测系统的代码泄露检测方法,其特征在于,所述步骤2具体为:
步骤2.1:对步骤1.2中取得的源代码文本文件进行解析,将源代码按文件提取关键字信息,所述关键信息包括包、类、函数、变量和注释;
步骤2.2:将步骤2.1中提取的关键字信息与...
【专利技术属性】
技术研发人员:许方超,钱志强,周文烨,陈奕鑫,
申请(专利权)人:南京富士通南大软件技术有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。