The embodiment of the invention provides a method and apparatus for penetration testing, involving code audit, methods include: link data acquisition for testing flow; through the preset vulnerability database, vulnerability scanning of the data stream; the vulnerability is stored in a database, used to verify the number according to a plurality of holes to flow loopholes the verification code POC, and the POC for machine learning based on historical data flow after the output of the first vulnerability scan results. The embodiment of the invention, update vulnerability in the POC library through machine learning, and use the updated vulnerability testing data flow to vulnerability scanning, to meet the diverse needs to find loopholes form.
【技术实现步骤摘要】
渗透测试的方法及装置
本专利技术实施例涉及代码审计领域,特别涉及一种渗透测试的方法及装置。
技术介绍
代码审计顾名思义就是检查源代码中的缺点和错误信息,分析并找到这些问题引发的安全漏洞,并提供代码修订措施和建议,从而在系统开发阶段/运维阶段进行深入的问题查找和消灭过程。渗透测试是代码审计中,对代码进行漏洞查找,以及修复的关键环节。现有的渗透测试过程,主要是以人工方式,对待测试的源代码数据流(以下简称“数据流”)进行观察,并依据程序员自身的专业水平和经验来查找数据流中可能存在的漏洞。当然,还存在以漏洞验证代码(ProofOfConcept,POC)进行自动化的漏洞查找方式。专利技术人在实现本专利技术的过程中,发现现有技术存在如下缺陷:采用人工方式进行漏洞查找,需耗费大量人力,且耗时,测试效率低;而采用现有的POC查找漏洞的方式,虽然可以节省人力,但只能查找相对单一的漏洞,并不能满足查找形式多样化的漏洞的需求。
技术实现思路
本专利技术实施例提供一种渗透测试的方法及装置,通过机器学习更新漏洞库中的POC,并利用不断更新的漏洞库对待测试的数据流进行漏洞扫描,以满足查找形式多样化的漏洞的需求。为达到上述目的,本专利技术实施例提供了一种渗透测试的方法,包括:获取待测试的链接数据流;通过预设的漏洞库,对所述数据流进行漏洞扫描;所述漏洞库中存储有,用于验证数据流存在漏洞的多条漏洞验证代码POC,且所述POC为通过对历史数据流进行机器学习后获得;输出第一漏洞扫描结果。本专利技术实施例提供了一种渗透测试的装置,包括:数据采集模块,用于获取待测试的链接数据流;第一漏洞扫描模块,用 ...
【技术保护点】
一种渗透测试的方法,其特征在于,包括:获取待测试的链接数据流;通过预设的漏洞库,对所述数据流进行漏洞扫描;所述漏洞库中存储有,用于验证数据流存在漏洞的多条漏洞验证代码POC,且所述POC为通过对历史数据流进行机器学习后获得;输出第一漏洞扫描结果。
【技术特征摘要】
1.一种渗透测试的方法,其特征在于,包括:获取待测试的链接数据流;通过预设的漏洞库,对所述数据流进行漏洞扫描;所述漏洞库中存储有,用于验证数据流存在漏洞的多条漏洞验证代码POC,且所述POC为通过对历史数据流进行机器学习后获得;输出第一漏洞扫描结果。2.根据权利要求1所述的方法,其特征在于,所述通过预设的漏洞库,对所述数据流进行漏洞扫描包括:将所述数据流逐一经所述漏洞库中的各所述POC进行验证,若验证通过,则确定所述数据流中存在漏洞。3.根据权利要求2所述的方法,其特征在于,所述漏洞扫描结果包括:存在漏洞的数据流部分;所述方法还包括:在原所述数据流中,提取除所述存在漏洞的数据流部分以外的第一数据流,进行机器学习,生成具有潜在漏洞的第二数据流;通过所述漏洞库,对所述第二数据流进行漏洞扫描,以确定存在漏洞的部分第二数据流;依据所述存在漏洞的部分第二数据流,生成对应的POC,并添加到所述漏洞库中。4.根据权利要求3所述的方法,其特征在于,所述在原所述数据流中,提取除所述存在漏洞的数据流部分以外的第一数据流,进行机器学习,生成具有潜在漏洞的第二数据流包括:对所述第一数据流中的第一参数内容,通过朴素贝叶斯算法进行类别学习,生成与所述第一参数内容为同类别的多个第二参数内容;将原所述第一数据流中的第一参数内容替换为对应的所述第二参数内容,以形成所述第二数据流。5.根据权利要求1-4任一种所述的方法,其特征在于,所述数据流为统一资源定位符URL数据,所述获取待测试的链接数据流包括:在地址栏中输入指定域名IP进行网页链接,并通过爬虫技术获取目标网页的URL数据;对所述URL数据进行指纹识别对比,以去除重复的URL数据。6.一种渗透测试的装置,...
【专利技术属性】
技术研发人员:姚勇,谭智勇,薛兆云,钟锋,张勇,
申请(专利权)人:北京瑞卓喜投科技发展有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。