CN117768221A - 互联网资产暴露面探测方法、系统、电子设备及存储介质 - Google Patents
互联网资产暴露面探测方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117768221A CN117768221A CN202311828206.9A CN202311828206A CN117768221A CN 117768221 A CN117768221 A CN 117768221A CN 202311828206 A CN202311828206 A CN 202311828206A CN 117768221 A CN117768221 A CN 117768221A
- Authority
- CN
- China
- Prior art keywords
- detection
- asset
- information
- task
- tasks
- 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 349
- 238000003860 storage Methods 0.000 title claims abstract description 12
- 238000000034 method Methods 0.000 claims abstract description 58
- 230000007246 mechanism Effects 0.000 claims abstract description 32
- 238000005516 engineering process Methods 0.000 claims abstract description 16
- 238000004458 analytical method Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 6
- 238000013475 authorization Methods 0.000 claims description 5
- 238000005422 blasting Methods 0.000 claims description 5
- 230000006399 behavior Effects 0.000 claims description 4
- 238000005336 cracking Methods 0.000 claims description 4
- 238000012098 association analyses Methods 0.000 claims description 3
- 230000003111 delayed effect Effects 0.000 claims description 3
- 230000000737 periodic effect Effects 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 description 59
- 230000004044 response Effects 0.000 description 10
- 239000000523 sample Substances 0.000 description 9
- 238000012795 verification Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 238000010276 construction Methods 0.000 description 5
- 238000005065 mining Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000012502 risk assessment Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 230000035515 penetration Effects 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 235000014510 cooky Nutrition 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 241000282344 Mellivora capensis Species 0.000 description 1
- UQGKUQLKSCSZGY-UHFFFAOYSA-N Olmesartan medoxomil Chemical compound C=1C=C(C=2C(=CC=CC=2)C2=NNN=N2)C=CC=1CN1C(CCC)=NC(C(C)(C)O)=C1C(=O)OCC=1OC(=O)OC=1C UQGKUQLKSCSZGY-UHFFFAOYSA-N 0.000 description 1
- 206010033799 Paralysis Diseases 0.000 description 1
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 229910017052 cobalt Inorganic materials 0.000 description 1
- 239000010941 cobalt Substances 0.000 description 1
- GUTLYIVDDKVIGB-UHFFFAOYSA-N cobalt atom Chemical compound [Co] GUTLYIVDDKVIGB-UHFFFAOYSA-N 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 235000012149 noodles Nutrition 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012038 vulnerability analysis Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种互联网资产暴露面探测方法、系统、电子设备及存储介质,涉及网络安全技术领域,该方法包括根据资产探测任务的信息,将资产探测任务进行分类;根据资产探测任务使用的探测技术,将各类资产探测任务拆分为不同的探测子任务;根据各探测子任务的优先级生成各探测子任务执行的时间序列,并根据所述时间序列对多个探测子任务进行调度编排;基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务;各所述任务执行单元均采用异步调用方式和流水线控制机制执行探测任务;对各所述任务执行单元得到的任务探测数据进行数据缓存同步。本发明提高了探测效率和探测面积。
Description
技术领域
本发明涉及网络安全技术领域,特别是涉及一种互联网资产暴露面探测方法、系统、电子设备及存储介质。
背景技术
现代企业的业务和信息系统越来越依赖于互联网,企业互联网资产的规模也越来越大,这些资产包括网络设备、服务器、数据库、应用程序等。然而,随着互联网的发展,企业互联网资产的暴露面也越来越大,这给企业的信息安全带来了极大的挑战。黑客、病毒、蠕虫、木马等恶意程序可以利用暴露面来攻击企业的信息系统,导致数据泄露、服务中断、网络瘫痪等严重后果。
因此,为了保障企业的信息安全,企业需要采用一种有效的方法来探测其互联网资产的暴露面。一种常见的方法是通过端口扫描、漏洞扫描、服务识别等技术,对企业的互联网资产进行扫描和识别,找出其中可能存在的安全漏洞和风险点。同时,企业还需要对其互联网资产进行分类和管理,及时发现和处理其中的异常情况,确保其信息系统的安全和稳定。
企业互联网资产暴露面探测方法需要结合多种技术手段,包括网络拓扑分析、端口扫描、漏洞扫描、服务识别、应用程序漏洞检测、网络攻击模拟等。此外,还需要结合人工智能、大数据、云计算等技术,对海量的企业互联网资产信息进行处理和分析,以快速发现和处理其中的安全威胁。综合运用这些技术手段,可以有效地探测企业互联网资产的暴露面,保障企业信息安全。
当前企业互联网资产暴露面探测方面,存在以下主要问题:
1、资产分散和复杂:企业互联网资产分散、复杂,包括各种服务器、应用程序、数据库、网络设备等,难以全面掌握和管理。这就给企业互联网资产暴露面探测带来了难度和挑战。
2、资产变化频繁:企业互联网资产变化频繁,包括新增、删除、迁移、升级等,这就要求企业需要对其进行实时监控和更新,否则可能会漏掉重要的安全风险点。
3、扫描效率和准确性问题:传统的扫描方法存在效率低、准确性差等问题,需要花费大量时间和人力,同时扫描结果也不一定完全准确,可能会漏报或误报。
发明内容
本发明的目的是提供一种互联网资产暴露面探测方法、系统、电子设备及存储介质,提高了探测效率和探测面积。
为实现上述目的,本发明提供了如下方案:
一种互联网资产暴露面探测方法,包括:
根据资产探测任务的信息,将资产探测任务进行分类;
根据资产探测任务使用的探测技术,将各类资产探测任务拆分为不同的探测子任务;
根据各探测子任务的优先级生成各探测子任务执行的时间序列,并根据所述时间序列对多个探测子任务进行调度编排;
基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务;各所述任务执行单元均采用异步调用方式和流水线控制机制执行探测任务;所述流水线控制机制为将每个探测子任务分成多个执行阶段,各探测子任务的不同执行阶段并行执行;各所述探测子任务包括按照时序执行的多个原子探测模块,各原子探测模块包括一个工具或者包括一组串联的工具;
对各所述任务执行单元得到的任务探测数据进行数据缓存同步。
可选地,在基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务时,还包括:
通过控制信号对各探测子任务的流程状态进行控制;所述流程状态包括开始、暂停、重启、中断、优先级变更。
可选地,所述资产探测任务包括企业名称、探测目标信息、节点资源组、探测时间、检测项和白名单;
所述探测目标信息包括IP地址、域名字符串和第一预设关键词;所述节点资源组包括探测节点数量、探测节点配置和探测节点所在的地理位置,所述探测时间分为无定时任务、延时执行任务和周期执行任务三类,所述检测项包括至少一个探测子任务,所述白名单包括任务探测过程中要过滤的IP地址、域名和第二预设关键词。
可选地,所述资产探测任务的分类包括基础资源探测、网络资产探测、信息泄露扫描和脆弱性探测,每个分类对应一个任务执行单元;
基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务,具体包括:
采用所述基础资源探测对应的任务执行单元对企业的基础资源数据进行探测;所述基础资源数据包括工商信息、IP地址信息、端口服务、域名信息、子域名及关联资产、网站元数据和证书信息;
采用所述网络资产探测对应的任务执行单元收集多维度的企业网络资产信息,形成企业网络资产的全景画像;
采用所述信息泄露扫描对应的任务执行单元对互联网中的网盘、文库、代码托管平台进行企业敏感信息的检索,所述企业敏感信息包括企业名称、业务领域和所述第一预设关键词;
采用所述脆弱性探测对应的任务执行单元对主机漏洞、web应用漏洞、PoC漏洞和弱口令进行探测;所述弱口令为授权认证中的通过破解进行登录的行为。
可选地,采用所述基础资源探测对应的任务执行单元对企业的基础资源数据进行探测,具体包括:
根据企业名称,采用爬虫技术从各预设网站查询企业的工商信息;所述企业的工商信息包括企业注册信息、股东信息、经营范围、营业执照、官网网站和知识产权;
根据企业的域名,向域名解析服务器发送DNS解析请求包,向whois服务器发送whois请求,向dig查询网站发生查询请求,得到企业的域名信息;
采用子域名爆破工具对企业域名进行子域名探测,采用资产关联分析工具,对企业域名及企业域名关联资产进行分析,得到子域名列表;
根据子域名列表中各子域名,向域名解析服务器发送DNS解析请求包,向whois服务器发送whois请求,向dig查询网站发生查询请求,得到补充后的子域名及关联资产;
采用端口扫描工具对目标端口及目标端口对应的服务信息进行探测,得到端口服务信息。
可选地,对各所述任务执行单元得到的任务探测数据进行数据缓存同步,具体包括:
基于各所述任务执行单元之间的通信机制,根据各探测子任务中探测数据的时间戳,将最新的探测数据按照预设的数据缓存同步规则进行数据同步;在数据同步时采用锁机制进行数据同步。
可选地,一种互联网资产暴露面探测方法还包括:
对数据缓存同步后的各所述任务执行单元对应的任务探测数据进行可视化展示。
本发明还公开了一种互联网资产暴露面探测系统,包括:
资产探测任务分类模块,用于根据资产探测任务的信息,将资产探测任务进行分类;
探测子任务拆分模块,用于根据资产探测任务使用的探测技术,将各类资产探测任务拆分为不同的探测子任务;
任务调度编排模块,用于根据各探测子任务的优先级生成各探测子任务执行的时间序列,并根据所述时间序列对多个探测子任务进行调度编排;
任务执行模块,用于基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务;各所述任务执行单元均采用异步调用方式和流水线控制机制执行探测任务;
数据同步模块,用于对各所述任务执行单元得到的任务探测数据进行数据缓存同步。
本发明还公开了一种电子设备,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行上述的互联网资产暴露面探测方法。
本发明还公开了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行上的互联网资产暴露面探测方法。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明根据各探测子任务的优先级生成各探测子任务执行的时间序列,并根据所述时间序列对多个探测子任务进行调度编排,各任务执行单元均采用异步调用方式和流水线控制机制执行探测任务,提高了探测效率,采用各类资产探测任务对应的任务执行单元执行探测任务,实现互联网资产全景探测,提高了探测面积。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种互联网资产暴露面探测方法流程示意图;
图2为本发明实施例提供的一种互联网资产暴露面探测方法详细流程示意图;
图3为本发明实施例提供的原子探测模块与子任务之间的关系示意图;
图4为本发明实施例提供的任务执行单元中流水线控制机制示意图;
图5为本发明实施例提供的一种互联网资产暴露面探测系统结构示意图;
图6为本发明实施例提供的一种互联网资产暴露面探测系统SaaS化部署示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种互联网资产暴露面探测方法、系统、电子设备及存储介质,提高了探测效率和探测面积。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例1
如图1所示,本实施例提供的一种互联网资产暴露面探测方法,包括如下步骤:
步骤101:根据资产探测任务的信息,将资产探测任务进行分类。
步骤102:根据资产探测任务使用的探测技术,将各类资产探测任务拆分为不同的探测子任务。
步骤103:根据各探测子任务的优先级生成各探测子任务执行的时间序列,并根据所述时间序列对多个探测子任务进行调度编排。
步骤104:基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务;各所述任务执行单元均采用异步调用方式和流水线控制机制执行探测任务;所述流水线控制机制为将每个探测子任务分成多个执行阶段,各探测子任务的不同执行阶段并行执行;各所述探测子任务包括按照时序执行的多个原子探测模块,各原子探测模块包括一个工具或者包括一组串联的工具。
步骤105:对各所述任务执行单元得到的任务探测数据进行数据缓存同步。
本实施例一种互联网资产暴露面探测方法,具体为一种企业互联网资产暴露面探测方法。
在执行步骤104时,还包括:
通过控制信号对各探测子任务的流程状态进行控制;所述流程状态包括开始、暂停、重启、中断、优先级变更。该步骤中控制信号通过编程语言中的特定语法或API调用生成,并用于控制程序的行为。是软件模块中的进程(或线程)通信。
步骤101之前,本实施例一种互联网资产暴露面探测方法还包括:创建资产探测任务,所述资产探测任务包括企业名称、探测目标信息、节点资源组、探测时间、检测项和白名单。创建探测任务后,后台程序将任务以json字符串的格式封装,提交给任务调度处理。
所述探测目标信息包括但不限于IP地址、域名字符串和第一预设关键词;所述节点资源组包括探测节点数量、探测节点配置和探测节点所在的地理位置;所述探测时间分为无定时任务、延时执行任务和周期执行任务三类,所述检测项包括至少一个探测子任务;所述白名单包括任务探测过程中要过滤的容易引起歧义和误报的IP地址、域名和第二预设关键词。
在实际应用中,通过定制化的Form表单给用户提供探测任务的创建界面,通过表单验证防止任务的错误提交。
步骤102和步骤103为任务调度过程,任务调度过程中,采用任务调度算法对任务进行拆解和分发到多个任务探测节点,并根据任务需求动态分配计算机或者计算集群中的计算资源。
任务探测节点是在任务调度阶段进行分配和初始化的,探测任务节点具体是:指通用服务器设备,或者安装在服务器中的docker容器或者虚拟机;在逻辑上,指具有独立计算能力和存储能力的资源点。
所述的任务调度算法对任务从技术角度进行拆分,包括了任务调度策略的管理和任务执行状态的监控。任务调度策略根据不同的任务类型、任务优先级、任务的时间窗口等因素,采用不同的任务调度策略,以提高任务的执行效率和性能;执行状态的监控负责监控任务的执行状态,并根据监控信息进行调整,如重试机制、自动切换机制等。
其中,任务调度算法步骤如下:
步骤a1:根据探测任务的信息,将探测任务拆分成基础资源探测、网络资产探测、信息泄露扫描、脆弱性探测四类任务,根据每类任务的探测量,分配探测所需的计算、IO和存储资源。
所述的四类任务中,根据使用的不同探测技术,再拆分成不同的探测子任务。
步骤b1:根据任务中的优先级划分执行的时间序列,并采用优先级队列对多任务进行调度编排。
步骤c1:对每类任务和子任务设置状态位,使用自动机机制进行执行状态的监测。
步骤d1:任务的外部信号控制,设置任务的开始、暂停、重启、中断、优先级变更等变量,控制任务的全流程状态。
在实际应用中,任务的拆解要考虑任务执行单元中任务和子任务之间的解耦合,尽可能防止出现任务之间的依赖关系,为流水线控制机制的执行创造条件。如果依赖无法拆解,则在数据缓存同步(步骤105)中会消耗较多的时间。
其中,步骤104中任务执行单元可以是多个线程、进程或者分布式节点。
所述的基于消息的异步调用方式是一种非阻塞的通信方式,可以在消息发送后立即返回,而不需要等待消息接收者的响应。这样可以提高系统的并发性和响应性能。
所述的流水线控制机制将任务执行过程分成多个阶段(例如图4中任务构建、探测执行、结果确认),不同阶段并行执行,从而在多进程基础上进一步提高任务的执行效率和吞吐量。
任务执行单元包括基础资源探测、网络资产探测、信息泄露扫描、脆弱性探测四个单元。每个单元在执行任务中相互独立,尽可能满足流水线控制的思想。
所述资产探测任务的分类包括基础资源探测、网络资产探测、信息泄露扫描和脆弱性探测,每个分类对应一个任务执行单元。
对于所述基础资源探测,一个企业的这些基础资源信息彼此之间(IP、域名、端口、网站、证书等)是多对多的图关系,为了提高探测效率,要对图进行子图的识别和分层,降低遍历的复杂度,减少重复探测的冗余。
所述的子图识别和分层算法包括(1)聚类算法:将相似的节点或边聚类成一组的算法,可以用于识别具有相似特征的子图,进而进行分层处理。常见的聚类算法包括K-means、DBSCAN等。(2)基于图分割的算法:将图分割成若干个不相交的子图的算法,可以用于将复杂图分解为若干个简单的子图,进而进行分层处理。常见的基于图分割的算法包括谱聚类算法、最大流最小割算法等。
上述聚类算法中,图是指一个企业的基础资源信息建模构成的图。子图是其中相似的节点和边聚合和形成的子图;图由一个或者多个子图构成。该算法也用于社交网络图中的社区发现等场景。节点为IP地址、端口和域名等实体。节点之间的解析关系为边。相似的节点和边是对他们之间关系的一种刻画,如节点和边都是指<IP-域名>对这样的关系,则他们是相似的。
其中,步骤104具体包括:
采用所述基础资源探测对应的任务执行单元对企业的基础资源数据进行探测;所述基础资源数据包括工商信息、IP地址信息、端口服务、域名信息、子域名及关联资产、网站元数据和证书信息。
采用所述网络资产探测对应的任务执行单元收集多维度的企业网络资产信息,形成企业网络资产的全景画像。
采用所述信息泄露扫描对应的任务执行单元对互联网中的网盘、文库、代码托管平台进行企业敏感信息的检索,所述企业敏感信息包括企业名称、业务领域和所述第一预设关键词。
采用所述脆弱性探测对应的任务执行单元对主机漏洞、web应用漏洞、PoC漏洞和弱口令进行探测;所述弱口令为授权认证中的通过破解进行登录的行为。
其中,采用所述基础资源探测对应的任务执行单元对企业的基础资源数据进行探测,具体包括:
1)采用企业的工商信息探测算法得到企业的工商信息。企业的工商信息探测算法具体包括:
根据企业名称,构造探测数据包,探测数据包能通过爬虫的技术框架从各预设网站查询企业的工商信息,从查询反馈的数据包中提取所述企业的工商信息。所述企业的工商信息包括企业注册信息、股东信息、经营范围、营业执照、官网网站和知识产权。各预设网站包括官网、企查查、天眼查等网站。
2)采用域名信息探测算法得到企业的域名信息。域名信息探测算法,具体包括:
根据企业的域名,构造DNS解析请求包、whois查询请求包、dig查询网站的请求包。
根据DNS解析请求包、whois查询请求包、dig查询网站的请求包,向域名解析服务器(如114.114.114.114,8.8.8.8)发送DNS解析请求包,向whois服务器发送whois请求,向dig查询网站发生查询请求,从查询结果中获取域名的相关信息(企业的域名信息),域名的相关信息包括但不限于A类解析记录的IP地址、whois的注册信息。
3)采用子域名及关联资产的挖掘算法,得到子域名及关联资产。子域名及关联资产的挖掘算法,具体包括:
采用企业的工商信息探测算法获取企业的域名信息字符串信息。
采用子域名爆破工具或者网站地图对企业域名进行子域名探测,采用资产关联分析工具,对企业域名及企业域名关联资产进行分析,得到子域名列表。
所述子域名爆破工具包括dnsrecon、sublist3r等,所述资产关联分析工具包括theHarvester、Shodan等。
根据子域名列表中各子域名,采用域名信息探测算法向域名解析服务器发送DNS解析请求包,向whois服务器发送whois请求,向dig查询网站发生查询请求,得到补充后的子域名及关联资产。
4)采用IP地址信息探测算法得到IP地址信息。IP地址信息探测算法,具体包括:
根据域名信息探测算法获取的域名解析A类记录和AAAA类记录,得到企业的部分IPv4地址和IPv6地址。
使用ping、tracert等工具对部分IPv4地址和IPv6地址的信息进行探测,获取其响应时间、丢包率、路由信息等信息。
使用逆向解析工具,获取IP地址上承载的服务信息。IP地址上承载的服务信息主要是通过端口和协议来体现的,主要包括承载的web服务、邮件服务、数据库服务、域名解析服务、负载均衡服务等,这些由IP地址对应主机上运行的软件系统来体现。
使用IP地理信息库和whois信息库,获取IP地址的地理位置和运营商等信息。
将获取的IP地址信息数据汇入基础资源数据中。IP地址信息包括响应时间、丢包率、路由信息、IP地址的地理位置和运营商。
5)采用端口服务探测算法得到端口服务。端口服务探测算法,具体包括:
步骤a2:配置要探测的端口信息,并对其进行分类(包括默认端口、重点关注端口等)。
步骤b2:使用nmap或masscan等端口扫描工具对目标主机开放的端口及其对应的服务信息进行探测。
所述的目标主机地址,由域名信息探测算法和IP地址信息探测算法中获取的IP地址提供。
所述的服务信息包括了web类的网站指纹和非web类的指纹信息等,其中指纹指能唯一标识对应服务的一个或者一组特征的组合。
步骤c2:将获取的端口及服务信息数据汇入基础资源数据中。
6)采用网站元数据探测算法得到网站元数据。网站元数据探测算法具体包括:
步骤a3:构造企业网站URL信息,该信息可通过企业的工商信息探测算法获取网站URL、子域名及关联资产的挖掘算法获取活跃子域名构造URL字符串信息。
子域名是指二级域名基础上挖掘的三级域名。如baidu.com是二级域名;map.baidu.com是三级域名,属于baidu.com的子域名。
活跃子域名要判断子域名是否存活,通过whois查询和域名解析查看其状态和对应的解析查询结果判断该域名是否活跃。
步骤b3:将URL字符串信息通过爬虫架构构造成求取数据包,通过HTTP(或者HTTPS)协议进行访问目标网站,获取页面结构、JS脚本、CSS样式、网站截图等信息。
其中,网站截图需要模拟浏览器渲染生成可视化的web界面。
步骤c3:从响应数据中获取网站的HTTP响应头、Cookie信息等元数据。
其中步骤c3中响应数据指向服务发起请求后,服务器返回给客户端的所用数据包的集合。
步骤d3:将获取的网站元数据汇入基础资源数据中。所述网站元数据包括页面结构、JS脚本、CSS样式、网站截图、HTTP响应头、Cookie信息。
7)采用证书信息探测算法得到证书信息。证书信息探测算法具体包括:
步骤a4:根据网站元数据探测算法中获取的网站构造SSL证书查询数据包。
步骤b4:将数据包发送到SSL证书查询网站获取目标网站的SSL证书信息,包括证书颁发机构、证书有效期等。
步骤c4,将网站元数据探测算法中获取的网站响应数据包,使用证书分析工具(如openssl、certutil等)进行分析,获取证书算法、密钥长度等信息。
步骤d4:将获取的证书信息数据汇入基础资源数据中。所述证书信息包括证书颁发机构、证书有效期、证书算法和密钥长度。
基础资源探测算法也可以通过网络基础资源测绘网站和开源情报网站获取,如360quake、奇安信Hunter、微步在线的资产测绘、shodan、各种黑客论坛、社交网站等。
在实际应用中,基础资源探测中IP端口扫描和域名子域名挖掘是消耗性能最大的子任务之一,需要进行算法优化,已公开的算法和很多开源的红队工具中有很多优秀的案例可以集成在算法的探测服务链中。
具体的,以端口扫描为例,包括全端口扫描、默认端口扫描、物联网设备端口扫描、常用端口扫描、数据库端口扫描、咖啡厅/酒店/机场网络服务端口等不同的情况。
网络资产探测:针对企业提供的互联网服务,包括但不限于12类业务服务、运营中APP、公众号、小程序和微博等进行最大信息面的探测,收集多维度的企业网络资产信息,形成企业网络资产的全景画像。
所述的12类业务系统包括(1)社交通讯应用;(2)生产力与协作应用;(3)电子商务应用;(4)媒体与娱乐应用;(5)教育与学习应用;(6)新闻与信息应用;(7)旅行与地方服务应用;(8)生活服务应用;(9)健康与健身应用;(10)金融与投资应用;(11)财务管理应用;(12)专业工具与行业应用。
所述的最大信息面的探测,包括采用爬虫技术自动化获取官方网站信息、利用第三方的API接口获取备案APP和小程序信息、网络资产搜索引擎采集的目标资产、开源情报网站获取的信息以及渗透测试工具收集的资产信息等。探测的覆盖面由多维度的资产指纹库支撑。
企业网络资产的全景画像可以包含资产指纹。资产指纹是可以唯一标识这个资产的信息。一个网络资产可以有多个不同的指纹。举例如下:
域名www.baidu.com关联资产的指纹包括(网站标题、中间件、IP地址、CDN信息操作系统等)而对应全景资产包括指纹、还有(域名注册信息、子域名、C段地址、HTTPS信息等等)如果是其他的网络资产,如防火墙设备、摄像头等,则指纹和上述例子完全不同。
网络资产探测包括第一网络资产探测算法、第二网络资产探测算法和第三网络资产探测算法。
其中,第一网络资产探测算法包括如下步骤:
步骤a5:根据企业主体信息、资产指纹库中的资产指纹(覆盖12类业务系统),构造探测数据包,探测数据包能通过爬虫的技术框架用于对官网、资产搜索引擎和开源情报发起信息查询。其中,探测的数据包要能满足多次交互查询的能力,特别针对不同的资产搜索引擎,要针对性满足不同的查询语法格式。
步骤b5:将构造的查询数据包,发送到对应的目标网站(包括但不限于官网、资产搜索引擎和开源情报),获取返回信息。针对多次交互的情况,则根据探测数据包的序列,获取不同阶段返回的信息。
典型的场景是从官网主页和开源情报网站中获取相关资产线索链接,再通过链接进一步拓展资产的信息。
资产搜索引擎包括但不限于FOFA、ZoomEye、360Quake、Shodan等SaaS服务。
开源情报网站包括但不限于各种黑客论坛、搜索引擎、社交网站等。
步骤c5:从返回信息中提取结构化的网络资产属性(返回值为非结构化的信息,需要进行信息抽取),融合出资产的多维度信息。
其中,第二网络资产探测算法包括如下步骤:
步骤a6:根据企业主体信息和备案信息,构造API请求字符串,请求字符串要满足第三方API接口获取备案APP和小程序信息的授权码和关键字要求。
步骤b6:将构造的请求字符串发送到对应的第三方API服务端,获取返回信息(基本上分为标准的json格式)。提取其中的APP和小程序信息。
其中第三方API服务包括但不限于工信部的备案系统、站长工具、阿里云等网络信息服务商等。
步骤c6:将备案APP和小程序信息,融合到企业的资产探测信息中。
其中,第三网络资产探测算法包括如下步骤:
步骤a7:获取渗透测试工具收集的日志信息,渗透测试工具多数为网络安全红队所使用的情报收集工具,包括但不限于Cobalt Strike、Brute Ratel、Metasploit等。
步骤b7:构造资产信息提取特征,包括词典匹配、正则表达式匹配和模版匹配3类方法。
步骤c7:基于资产信息提取特征从日志信息中抽取网络资产的相关信息。
信息泄露扫描:主要针对企业业务敏感信息,通过对互联网中的网盘、文库、代码托管平台的检索和收集,找到泄露的企业敏感信息。所述的企业业务敏感信息由一组关键词组成,如企业名称、关键词、业务领域等。为了提高信息泄露扫描的准确性,采用白名单机制对扫描结果进行过滤。
本实施例采用信息泄露扫描算法进行信息泄露扫描,信息泄露扫描算法包括如下步骤:
步骤a8:初始化一组目标业务的白名单信息,白名单是动态的,每个企业根据行业和业务的不同,可以动态的添加、删除和修改。构造基于企业敏感信息的查询数据包,数据包要适配互联网中的网盘搜索站点、文库站点和代码托管平台的语法。
网盘搜索包括但不限于百度网盘、阿里云盘、天翼云盘等。
文库搜索包括但不限于百度文库、豆丁文库、CSDN等。
代码托管平台包括但不限于Github、Gitee、BitBucket等。
步骤b8:通过爬虫技术框架向网盘搜索站点、文库站点和代码托管平台发送数据包,获取查询的结果信息。
步骤c8:从返回信息中去除包含白名单关键词的信息,将过滤后的信息和敏感信息进行比对,将相关度弱的高频词加入白名单中,保留相关度高的信息。
步骤d8:研判相关度高的信息,从其中提取新发现的敏感词,重新构造数据包执行步骤b8。当收集到的信息趋于收敛和稳定时,即没有新的信息被查询到,算法结束。
在实际应用中,网盘类扫描关联的属性有:标题、关键词、关联企业名称、网盘目录、网盘来源、分享用户、资源大小、网盘URL、收录时间、分享时间。文库类臊面关联的属性有:标题、关键词、关联企业名称、文库来源、描述。代码托管平台类检索关联的属性有:<作者名称、泄露项目数、敏感词个数>,<受影响项目名称、关联作者、敏感词个数>,<关键字、项目名称、用户名称、文件名称>。
脆弱性探测:分为主机漏洞、web应用漏洞、PoC漏洞和弱口令四个探测子任务,漏洞探测中要利用漏洞信息库和目标资产的信息进性匹配,发现可疑漏洞。PoC漏洞要构建漏洞靶场,通过模拟环境进行调试。其中,漏洞靶场通过虚拟机或者Docker来实现。
所述主机漏洞主要针对UNIX、Linux和Windows等操作系统内部的漏洞。所述web应用漏洞主要针对网站程序上的漏洞,由代码编写不规范或引用的第三方组件有漏洞导致。所述PoC漏洞指有验证细节,可作为攻击入口,使得攻击者进入系统的漏洞。所述弱口令指授权认证中的可以通过简单暴力破解进行登录的行为。
采用漏洞探测算法探测主机漏洞和web应用漏洞,漏洞探测算法包括如下步骤:
步骤a9:对目标进行主机扫描和端口扫描,确认主机是否在线,获取开放的端口及服务。
步骤b9:基于指纹和响应数据包信息判断操作系统的类型、版本等信息;针对服务和端口的扫描获取返回的banner信息。
步骤c9:漏洞匹配,利用漏洞信息库和目标资产进行匹配,发现可疑的漏洞。
步骤d9:针对ssh登录、数据库服务等,通过口令爆破、默认口令等方法,监测是否存在弱口令漏洞。
采用PoC漏洞验证算法探测PoC漏洞,PoC漏洞验证算法步骤如下:
步骤a10:构建PoC框架,可以采用开源的框架,如PoCsuite3、OpenVAS、Bugscan等,也可以基于规范自己编写。
步骤b10:获取漏洞信息,开源的CMS漏洞可以通过官网或者Github找到对应源码,非开源系统的漏洞,可以进行黑盒测试,复原漏洞过程。
步骤c10:构建漏洞靶场,构建模拟环境对PoC进行调试,通过虚拟机或者Docker来实现。
步骤d10:进行漏洞的验证和复现,确认漏洞的存在。
在实际应用中,通过CVE漏洞库、PoC规则库等丰富的资源库,结合大量自研POC漏洞,最大成都掌握目标企业网络空间资产安全风险态势。
上述的四个任务执行单元中又可以根据具体任务划分成不同的子任务,每个子任务由一组工具串联执行,最后组装完成后是一个由多个数据处理方法组成的链式服务模型,称其为原子探测模块。流水线机制的控制是以原子探测模块为单位执行的,如图3和图4所示。
对于每个子任务由一组工具串联执行,原子探测模块中每个工具执行一种具体操作,例如:工具1完成IP活跃检测、工具2完成端口1-1024扫描、工具3完成8080-65534的扫描等等。此处的<工具1、工具2、工具3>就是完成IP端口扫描的一组工具。因此,可以直接下载调用这些工具来使用,也可以自己开发。
如图4所示,本发明中设计的探测子任务,由一个或者多个原子探测模块组成任务执行序列,通常分为<任务构建、探测执行、结果确认>三个阶段,每个执行周期对应一个原子探测模块的执行。
当多个相似的探测子任务需要同时执行时,多个相似的探测子任务可以组合成一个连续的工作流。每个进程(或线程)专门执行探测子任务的不同阶段,以便在同一时刻执行多个探测子任务。例如,在执行第一个探测子任务的探测执行阶段时,该进程(或线程)可以开始执行第二个探测子任务的任务构建和结果确认阶段。这样可以最大限度地利用计算机的处理能力,同时避免高并发;流量的峰值跳跃现象,从而提高探测子任务执行的效率。
当多个不同的,彼此独立的探测子任务需要同时执行时,三个阶段可以进一步提高并发度,每个进程(或线程)中可以调度执行更多的探测子任务的不同阶段。
对于该机制执行中带来的一些依赖问题,可采用预测和延迟等技术减少影响,通过配合数据缓存同步中的技术来实现。
图3所示的子图是任务、子任务、原子探测模块和工具的相互关系,图4的子图是数据库POC漏洞探测任务的流水线控制执行时序图和域名探测若干子任务的流水线控制执行时序图。如图4所示:
漏洞探测子任务分为<构建PoC框架、PoC漏洞验证、结果确认>三个阶段,MySQL漏洞的探测、Redis漏洞的探测和MongoDB漏洞的探测三个子任务是相似的探测任务,采用流水线机制的控制思想,一个线程在执行MySQL漏洞的探测子任务的PoC漏洞验证阶段,同时可以执行Redis漏洞的探测子任务的构建PoC框架阶段,从而提高探测子任务执行的效率。
对于域名whois探测、域名ICP备案探测、域名解析记录探测、子域名挖掘探测等多个不同的,彼此独立的探测子任务,他们的执行任务序列可能不同,任务之间的依赖较小,一个进程中可以调度执行多个这样的探测子任务不同阶段。
其中,步骤105具体包括:基于各所述任务执行单元之间的通信机制,根据各探测子任务中探测数据的时间戳,将最新的探测数据按照预设的数据缓存同步规则进行数据同步;在数据同步时采用锁机制进行数据同步。
更具体的,步骤105中采用的数据缓存同步算法包括如下步骤:
步骤a11:定义数据缓存同步的规则。确定哪些数据需要同步及何时进行同步等。
步骤b11:在在各个子任务之间建立通信机制,如共享内存、消息队列、Socket通信等。
步骤c11:在同步数据时,需要先比较各个子任务中数据的时间戳,将最新的数据同步到其他任务的(进程或者线程)中。
步骤d11:在同步数据时,使用锁机制来避免数据竞争,确保各个子任务中的数据逻辑上的完整性。
在实际应用中,经过步骤102的任务拆解后,执行中的子任务中存在的依赖关系大部分是顺序依赖和数据依赖,占到依赖关系的90%以上。
如图2所示,本实施例一种互联网资产暴露面探测方法还包括:
探测数据汇聚及风险评估,探测数据汇聚将探测任务执行单元中的基础资源探测、网络资产探测、信息泄露扫描和脆弱性探测等任务中的结果数据进行关联,将数据存储到数据库中。基于脆弱性探测的数据,对企业的暴露面资产进行风险等级划分和漏洞排行。
对数据缓存同步后的各所述任务执行单元对应的任务探测数据进行可视化展示,具体包括:报告管理及可视化展示,对探测的数据从数据库中读取分析,提供报告生成、分发、下载、可视化展示等功能。
其中,所述的结果数据进行关联,是将不同探测子任务中的结果数据,根据步骤101中的资产探测任务进行聚合,形成企业网络资产的全景画像。包括资产的用途和类别问题、资产的归属问题、资产的定位、分布和挖掘同类资产、资产的变化规律、资产提供的服务、资产对应的数据泄露和脆弱性等。
所述的风险评估,涉及风险等级和网络资产价值的映射关系。如CVE模型、CVSS模型等。
在实际应用中,结果数据的关联可以通过<企业名称+IP地址+端口>做为资产的唯一标识进行聚合,也可以通过<企业名称+域名>做为资产的唯一标识进行聚合。
所述的可视化展示,通过图表、地图、仪表盘等形式展示数据,以便用户更加直观地理解和分析数据。
在实际应用中,展示的基础资源信息中包括但不限于域名概况、网站概况、IP概况、证书概况、ICP/域名/IP信息、备案概况、资产标签、IP地理位置等。其中网站概况包括网站标题和路径;IP概况包括IP、关联子域名;证书概况包括版本、颁发者、使用者、使用组织、web应用、到期时间等。
展示的网络资产信息中,APP信息包括应用商店、应用名称、应用包名、描述、应用大小、应用评分、下载次数、当前版本、应用截图、应用类型、开发商等;公众号信息包括微信号、二维码、公司归属、简介等;小程序信息包括小程序名称、粉丝数量、二维码、描述、小程序类型、关联企业名称等。
展示的信息泄露扫描信息中,包括各种网盘、文库、代码泄露等企业关联的信息,受到敏感词的影响较大。
展示的脆弱性扫描信息中,漏洞信息包括漏洞名称、风险等级、漏洞类型、任务名称、受影响资产、时间等;弱口令信息中包括IP地址、端口、服务协议、产品应用、发现时间等。
本发明提供的一种互联网资产暴露面探测方法,适用于大型集团企业的互联网资产暴露面管理。探测任务执行算法利用事件处理流框架和基于消息的异步调用技术,联合多种探测方法、形成自动化的探测服务工具链,结合任务执行单元中采用流水线控制机制,显著提高了暴露面资产的探测效率50%以上。
针对互联网资产暴露面探测所存在的资产分散和复杂、资产变化频繁的难题,通过基础资源探测、网络资产探测、信息泄露扫描、脆弱性探测等综合技术手段建立互联网资产全景探测方法,解决现有技术中工作量大、探测面积小的问题。
实施例2
本实施例提供的一种互联网资产暴露面探测系统,包括:
资产探测任务分类模块,用于根据资产探测任务的信息,将资产探测任务进行分类。
探测子任务拆分模块,用于根据资产探测任务使用的探测技术,将各类资产探测任务拆分为不同的探测子任务。
任务调度编排模块,用于根据各探测子任务的优先级生成各探测子任务执行的时间序列,并根据所述时间序列对多个探测子任务进行调度编排。
任务执行模块,用于基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务;各所述任务执行单元均采用异步调用方式和流水线控制机制执行探测任务。
数据同步模块,用于对各所述任务执行单元得到的任务探测数据进行数据缓存同步。
实施例3
如图5所示,本实施例提供的一种互联网资产暴露面探测系统,包括:
任务创建模块,用于创建探测任务,任务中要包含企业名称、探测目标信息、节点资源组、探测时间、检测项、白名单等信息。后台程序将任务以json字符串的格式封装,提交给任务调度模块。
在实际应用中,将创建任务的接口采用Form表单的形式提交后台,表单中任务属性的验证采用中间件的方式实现。
任务调度模块,用于探测任务的调度和管理,任务调度中包含了调度策略的管理和任务执行状态的监控,并根据任务需求动态分配计算机或者计算集群中的计算资源。
在实际应用中,任务调度模块中包含若干个队列,队列之间通过消息通信机制,实现多个探测任务之间的调度和管理。包括但不限于对任务的暂停、删除、修改、查询、重启等业务操作。
探测任务执行模块,是探测任务的执行单元,以微服务的方式运行,包含基础资源探测、网络资产探测、信息泄露扫描和脆弱性探测四个组成部分,每个部分中由一系列不可再分的原子探测模块组成链式服务,构成探测的工具链执行具体工作。探测任务执行模块根据任务规模可以复制自身N个拷贝,分布在多个探测节点中。
在实际应用中,所有的执行单元的功能都是一样的,均包含4个任务,考虑轻量级、稳定性、易部署等问题,每个执行单元中的任务都只激活一个。如图5中探测任务执行模块1-N所示,暗色的表示激活中的单元,其他的单元则被抑制。
数据缓存同步模块,用于同步各探测任务中的逻辑依赖关系,完成数据一致性和完整性的校验。由多个消息中间件组成。
探测数据汇聚模块,用于探测任务执行单元中的基础资源探测、网络资产探测、信息泄露扫描和脆弱性探测等任务中的结果数据的汇总并进行逻辑上的关联,将数据存储到数据库中。对于脆弱性的探测数据,采用相应的算法进行风险等级划分和漏洞排行。
在实际应用中,考虑到互联网资产信息的复杂性,存储数据库采用非结构化的MongoDB,为了提高检索速度,采用Elasticsearch构建分析引擎。
风险评估模块,用于对企业的暴露面资产进行风险等级划分和漏洞排行。对脆弱性探测的数据,采用的风险评估方式包括但不限于CVE模型、CVSS模型等。
报告管理模块,用于对企业资产暴露面的分析,根据分析结果生成报告,包括资产信息、漏洞情况、威胁情况等。报告可以按时间、资产类型、漏洞等级等划分,方便管理人员查看和分析。
可视化展示模块,该模块主要负责以图表、表格等形式将网络资产暴露面的信息进行可视化展示。展示的内容包括企业的网络基础资源、网络资产数据、信息泄露情况、漏洞及资产脆弱性分析等。
本发明提供的企业互联网资产暴露面探测系统,在实际部署应用中以SaaS化的方式部署在云上,探测数据回传到数据中心。如图6所述。
实施例3
本实施例提供的一种电子设备,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行实施例1所述的互联网资产暴露面探测方法。
本实施例还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行实施例1所述的互联网资产暴露面探测方法。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种互联网资产暴露面探测方法,其特征在于,包括:
根据资产探测任务的信息,将资产探测任务进行分类;
根据资产探测任务使用的探测技术,将各类资产探测任务拆分为不同的探测子任务;
根据各探测子任务的优先级生成各探测子任务执行的时间序列,并根据所述时间序列对多个探测子任务进行调度编排;
基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务;各所述任务执行单元均采用异步调用方式和流水线控制机制执行探测任务;所述流水线控制机制为将每个探测子任务分成多个执行阶段,各探测子任务的不同执行阶段并行执行;各所述探测子任务包括按照时序执行的多个原子探测模块,各原子探测模块包括一个工具或者包括一组串联的工具;
对各所述任务执行单元得到的任务探测数据进行数据缓存同步。
2.根据权利要求1所述的互联网资产暴露面探测方法,其特征在于,在基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务时,还包括:
通过控制信号对各探测子任务的流程状态进行控制;所述流程状态包括开始、暂停、重启、中断、优先级变更。
3.根据权利要求1所述的互联网资产暴露面探测方法,其特征在于,所述资产探测任务包括企业名称、探测目标信息、节点资源组、探测时间、检测项和白名单;
所述探测目标信息包括IP地址、域名字符串和第一预设关键词;所述节点资源组包括探测节点数量、探测节点配置和探测节点所在的地理位置,所述探测时间分为无定时任务、延时执行任务和周期执行任务三类,所述检测项包括至少一个探测子任务,所述白名单包括任务探测过程中要过滤的IP地址、域名和第二预设关键词。
4.根据权利要求3所述的互联网资产暴露面探测方法,其特征在于,所述资产探测任务的分类包括基础资源探测、网络资产探测、信息泄露扫描和脆弱性探测,每个分类对应一个任务执行单元;
基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务,具体包括:
采用所述基础资源探测对应的任务执行单元对企业的基础资源数据进行探测;所述基础资源数据包括工商信息、IP地址信息、端口服务、域名信息、子域名及关联资产、网站元数据和证书信息;
采用所述网络资产探测对应的任务执行单元收集多维度的企业网络资产信息,形成企业网络资产的全景画像;
采用所述信息泄露扫描对应的任务执行单元对互联网中的网盘、文库、代码托管平台进行企业敏感信息的检索,所述企业敏感信息包括企业名称、业务领域和所述第一预设关键词;
采用所述脆弱性探测对应的任务执行单元对主机漏洞、web应用漏洞、PoC漏洞和弱口令进行探测;所述弱口令为授权认证中的通过破解进行登录的行为。
5.根据权利要求4所述的互联网资产暴露面探测方法,其特征在于,采用所述基础资源探测对应的任务执行单元对企业的基础资源数据进行探测,具体包括:
根据企业名称,采用爬虫技术从各预设网站查询企业的工商信息;所述企业的工商信息包括企业注册信息、股东信息、经营范围、营业执照、官网网站和知识产权;
根据企业的域名,向域名解析服务器发送DNS解析请求包,向whois服务器发送whois请求,向dig查询网站发生查询请求,得到企业的域名信息;
采用子域名爆破工具对企业域名进行子域名探测,采用资产关联分析工具,对企业域名及企业域名关联资产进行分析,得到子域名列表;
根据子域名列表中各子域名,向域名解析服务器发送DNS解析请求包,向whois服务器发送whois请求,向dig查询网站发生查询请求,得到补充后的子域名及关联资产;
采用端口扫描工具对目标端口及目标端口对应的服务信息进行探测,得到端口服务信息。
6.根据权利要求1所述的互联网资产暴露面探测方法,其特征在于,对各所述任务执行单元得到的任务探测数据进行数据缓存同步,具体包括:
基于各所述任务执行单元之间的通信机制,根据各探测子任务中探测数据的时间戳,将最新的探测数据按照预设的数据缓存同步规则进行数据同步;在数据同步时采用锁机制进行数据同步。
7.根据权利要求1所述的互联网资产暴露面探测方法,其特征在于,还包括:
对数据缓存同步后的各所述任务执行单元对应的任务探测数据进行可视化展示。
8.一种互联网资产暴露面探测系统,其特征在于,包括:
资产探测任务分类模块,用于根据资产探测任务的信息,将资产探测任务进行分类;
探测子任务拆分模块,用于根据资产探测任务使用的探测技术,将各类资产探测任务拆分为不同的探测子任务;
任务调度编排模块,用于根据各探测子任务的优先级生成各探测子任务执行的时间序列,并根据所述时间序列对多个探测子任务进行调度编排;
任务执行模块,用于基于所述调度编排,采用各类资产探测任务对应的任务执行单元执行探测任务;各所述任务执行单元均采用异步调用方式和流水线控制机制执行探测任务;
数据同步模块,用于对各所述任务执行单元得到的任务探测数据进行数据缓存同步。
9.一种电子设备,其特征在于,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行根据权利要求1至6中任一项所述的互联网资产暴露面探测方法。
10.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的互联网资产暴露面探测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311828206.9A CN117768221A (zh) | 2023-12-27 | 2023-12-27 | 互联网资产暴露面探测方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311828206.9A CN117768221A (zh) | 2023-12-27 | 2023-12-27 | 互联网资产暴露面探测方法、系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117768221A true CN117768221A (zh) | 2024-03-26 |
Family
ID=90312277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311828206.9A Pending CN117768221A (zh) | 2023-12-27 | 2023-12-27 | 互联网资产暴露面探测方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117768221A (zh) |
-
2023
- 2023-12-27 CN CN202311828206.9A patent/CN117768221A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11153339B1 (en) | Using graph-based models to identify datacenter anomalies | |
Ullah et al. | Architectural tactics for big data cybersecurity analytics systems: a review | |
US20220329616A1 (en) | Using static analysis for vulnerability detection | |
US20220342846A1 (en) | Efficient configuration compliance verification of resources in a target environment of a computing system | |
Mayhew et al. | Use of machine learning in big data analytics for insider threat detection | |
Zhao et al. | Botgraph: large scale spamming botnet detection. | |
Zipperle et al. | Provenance-based intrusion detection systems: A survey | |
US10911479B2 (en) | Real-time mitigations for unfamiliar threat scenarios | |
CN109074454B (zh) | 基于赝象对恶意软件自动分组 | |
US11765249B2 (en) | Facilitating developer efficiency and application quality | |
US20220303295A1 (en) | Annotating changes in software across computing environments | |
Kalegele et al. | Four decades of data mining in network and systems management | |
Ezzati-Jivan et al. | A stateful approach to generate synthetic events from kernel traces | |
Serketzis et al. | Actionable threat intelligence for digital forensics readiness | |
Kim et al. | CyTIME: Cyber Threat Intelligence ManagEment framework for automatically generating security rules | |
Sundaramurthy et al. | Practical IDS alert correlation in the face of dynamic threats | |
Kannan et al. | A novel cloud intrusion detection system using feature selection and classification | |
KR20200018966A (ko) | 사이버 위협 정보 처리 방법 및 장치 | |
Puri et al. | Analyzing and predicting security event anomalies: Lessons learned from a large enterprise big data streaming analytics deployment | |
WO2023081098A1 (en) | Agentless workload assessment by a data platform | |
CN117768221A (zh) | 互联网资产暴露面探测方法、系统、电子设备及存储介质 | |
Xiang | Detecting Access Control Misconfigurations with Change Validation | |
Meenakshi et al. | Literature survey on log-based anomaly detection framework in cloud | |
Veetil et al. | Real-time network intrusion detection using Hadoop-based Bayesian classifier | |
Rabzelj et al. | Cyberattack Graph Modeling for Visual Analytics |
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 |