1.本技术涉及计算机技术领域,尤其涉及一种网站系统模拟方法及装置。
背景技术:2.随着网络技术的不断发展,网络中的攻击手段也逐步增多,为了避免真实的网站被攻击,网站所属的公司往往就需要对网站系统进行模拟和仿真,利用模拟出的“真实网站”来吸引攻击者对其攻击。
3.目前在网站系统模拟的过程中,一般是在蜜罐环境中设置各种静态资源的方式来模拟真实的网站,其中静态资源可以是真实网站中的文本、图片等。当攻击者访问该“真实网站”时,预先在蜜罐环境中部署的服务就会基于该访问行为反馈对应的静态资源。但在实际应用中,当攻击者发起的访问行为所要获取的数据不属于静态资源或不仅仅包括静态资源时,现有的网站系统模拟方式就会因反馈的仅仅是静态资源而被攻击者感知到当前攻击的网站存在问题,从而影响网站系统模拟的效果。
技术实现要素:4.本技术实施例提供一种网站系统模拟方法及装置,主要目的在于实现一种网站系统模拟方法,以解决目前现有的网站系统模拟方式的模拟效果较差的问题。
5.为解决上述技术问题,本技术实施例提供如下技术方案:
6.第一方面,本技术提供了一种网站系统模拟方法,所述方法包括:
7.响应于检测到对网站系统的访问请求,拦截所述访问请求;
8.若所述访问请求用于请求动态资源,则在预设数据集中获取对应所述访问请求的目标动态资源数据;所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的;
9.将所述目标动态资源数据进行反馈。
10.可选的,在所述响应于检测到对网站系统的访问请求,拦截所述访问请求之前,所述方法还包括:
11.对所述网站系统执行所述访问操作,其中,所述访问操作至少包括用于触发所述动态资源的操作;
12.录制所述网站系统基于所述访问操作的反馈数据,并基于所述反馈数据构建所述预设数据集,其中,所述反馈数据至少包含所述动态资源。
13.可选的,在所述将所述目标动态资源数据进行反馈之前,所述方法还包括:
14.基于所述访问请求,确定对应的响应体参数,所述响应体参数用于表征所述网站基于所述目标动态资源数据响应所述访问请求的方式;
15.基于所述目标动态资源数据及所述响应体参数,生成响应体,并基于所述响应体添加对应所述访问请求的响应头,得到第一响应信息;
16.所述将所述目标动态资源数据进行反馈,包括:
17.将所述第一响应信息反馈至对应所述访问请求的发起者。
18.可选的,所述预设数据集中包含至少一种所述访问请求,以及每种所述访问请求对应的响应体;所述响应体为包含所述动态资源的响应信息的体文件;
19.所述在预设数据集中获取对应所述访问请求的目标动态资源数据,包括:
20.在所述预设数据集中,基于所述访问请求获取对应的所述响应体,并添加对应所述访问请求的响应头,得到第二响应信息;
21.所述将所述目标动态资源数据进行反馈,包括:
22.将所述第二响应信息反馈至对应所述访问者的发起者。
23.可选的,所述响应头中至少包含响应时间,其中,所述响应时间是基于所述访问请求确定的。
24.可选的,在所述拦截所述访问请求之前,所述方法还包括:
25.对路由服务的配置信息进行修改,得到修改后的配置信息,其中,所述修改后的配置信息用于控制所述路由服务对存在恶意攻击行为的目标访问请求进行拦截;
26.所述拦截所述访问请求包括:
27.控制所述路由服务基于所述修改后的配置信息检测是否存在目标访问请求,并当确定存在所述目标访问请求时,基于所述路由服务拦截所述目标访问请求。
28.可选的,所述在预设数据集中获取对应所述访问请求的目标动态资源数据,包括:
29.在检测到存在被拦截的访问请求时,确定所述被拦截的访问请求对应的网站域名;
30.通过预设后端服务在对应不同网站的多个预设数据集中确定对应所述网站域名的目标动态资源数据集,并基于所述目标动态资源数据集提取对应所述被拦截的访问请求的所述目标动态资源数据。
31.可选的,所述预设数据集还包括静态资源;
32.在所述拦截所述访问请求之后,所述方法还包括:
33.若所述访问请求用于请求所述静态资源,则在所述预设数据集中获取对应所述访问请求的目标静态资源数据,并反馈所述目标静态资源数据,其中,所述静态资源数据用以表征在所述网站系统被访问操作时触发时基于文件、图像以及字符中至少一种所形成的固定页面数据。
34.可选的,在所述拦截所述访问请求之前,所述方法还包括:
35.对所述网站系统执行所述访问操作;其中,所述访问操作包括用以触发动态资源数据的操作以及用于触发静态资源数据的操作;
36.录制所述网站系统基于所述访问操作反馈的第一数据和第二数据,其中,第一数据为所述网站系统被所述访问操作触发后产生的动态资源数据,所述第二数据为所述网站系统被所述访问操作触发后产生的静态资源数据;
37.基于第一数据和对应的访问操作,以及第二数据和对应的访问操作,构建所述预设数据集,其中,所述预设数据集包括第一数据集和第二数据集,所述第一数据集为基于所述第一数据和对应的访问操作构建的动态资源数据集,所述第二数据集为基于所述第二数据和对应的访问操作构建的静态资源数据集。
38.第二方面,本技术还提供一种网站系统模拟装置,包括:
39.拦截单元,用于响应于检测到对网站系统的访问请求,拦截所述访问请求;
40.获取单元,用于若所述访问请求用于请求动态资源,则在预设数据集中获取对应所述访问请求的目标动态资源数据;所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的;
41.反馈单元,用于将所述目标动态资源数据进行反馈。
42.可选的,所述装置还包括:
43.执行单元,用于对所述网站系统执行所述访问操作,其中,所述访问操作至少包括用于触发所述动态资源的操作;
44.构建单元,用于录制所述网站系统基于所述访问操作的反馈数据,并基于所述反馈数据构建所述预设数据集,其中,所述反馈数据至少包含所述动态资源。
45.可选的,所述装置还包括:
46.确定单元,用于基于所述访问请求,确定对应的响应体参数,所述响应体参数用于表征所述网站基于所述目标动态资源数据响应所述访问请求的方式;
47.生成单元,用于基于所述目标动态资源数据及所述响应体参数,生成响应体,并基于所述响应体添加对应所述访问请求的响应头,得到第一响应信息;
48.所述反馈单元,具体用于将所述第一响应信息反馈至对应所述访问请求的发起者。
49.可选的,所述预设数据集中包含至少一种所述访问请求,以及每种所述访问请求对应的响应体;所述响应体为包含所述动态资源的响应信息的体文件;
50.所述获取单元,具体用于在所述预设数据集中,基于所述访问请求获取对应的所述响应体,并添加对应所述访问请求的响应头,得到第二响应信息;
51.所述反馈单元,还具体用于将所述第二响应信息反馈至对应所述访问者的发起者。
52.可选的,所述响应头中至少包含响应时间,其中,所述响应时间是基于所述访问请求确定的。
53.可选的,所述装置还包括:
54.修改单元,用于对路由服务的配置信息进行修改,得到修改后的配置信息,其中,所述修改后的配置信息用于控制所述路由服务对存在恶意攻击行为的目标访问请求进行拦截;
55.所述拦截单元,还具体用于控制所述路由服务基于所述修改后的配置信息检测是否存在目标访问请求,并当确定存在所述目标访问请求时,基于所述路由服务拦截所述目标访问请求。
56.可选的,所述获取单元包括:
57.确定模块,用于在检测到存在被拦截的访问请求时,确定所述被拦截的访问请求对应的网站域名;
58.提取模块,用于通过预设后端服务在对应不同网站的多个预设数据集中确定对应所述网站域名的目标动态资源数据集,并基于所述目标动态资源数据集提取对应所述被拦截的访问请求的所述目标动态资源数据。
59.可选的,所述预设数据集还包括静态资源;
60.所述装置还包括:
61.执行单元,用于若所述访问请求用于请求所述静态资源,则在所述预设数据集中获取对应所述访问请求的目标静态资源数据,并反馈所述目标静态资源数据,其中,所述静态资源数据用以表征在所述网站系统被访问操作时触发时基于文件、图像以及字符中至少一种所形成的固定页面数据。
62.可选的,所述装置还包括:
63.访问单元,用于对所述网站系统执行所述访问操作;其中,所述访问操作包括用以触发动态资源数据的操作以及用于触发静态资源数据的操作;
64.录制单元,用于录制所述网站系统基于所述访问操作反馈的第一数据和第二数据,其中,第一数据为所述网站系统被所述访问操作触发后产生的动态资源数据,所述第二数据为所述网站系统被所述访问操作触发后产生的静态资源数据;
65.数据集构建单元,用于基于第一数据和对应的访问操作,以及第二数据和对应的访问操作,构建所述预设数据集,其中,所述预设数据集包括第一数据集和第二数据集,所述第一数据集为基于所述第一数据和对应的访问操作构建的动态资源数据集,所述第二数据集为基于所述第二数据和对应的访问操作构建的静态资源数据集。
66.第三方面,本技术的实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面所述的终端设备的网站系统模拟方法。
67.第四方面,本技术的实施例提供了一种网站系统模拟装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行第一方面所述的终端设备的网站系统模拟方法。
68.借由上述技术方案,本技术提供的技术方案至少具有下列优点:
69.本技术提供一种网站系统模拟方法及装置,本技术能够首先响应于检测到对网站系统的访问请求,拦截所述访问请求;然后若所述访问请求用于请求动态资源,则在预设数据集中获取对应所述访问请求的目标动态资源数据从而实现网站系统模拟功能。与现有技术相比,所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的,由于本技术在响应于检测到对网站系统的访问请求后,能够对该访问请求进行拦截,并在此基础上确定如果该访问请求是用于请求动态资源时,从预设数据集中获取对应的目标动态资源数据并反馈,这就避免了现有的无论请求的是何种资源都反馈静态资源,从而使攻击者发觉当前访问的网站是被模拟出来的,使网站模拟效果更为真实,同时,在检测到访问请求用于请求动态资源后,能够从预设数据集中获取对应的目标动态资源数据,由于预设数据集中包含有预先录制的所述网站系统的动态资源数据,因此可以确保在攻击者发起访问后,能够反馈给攻击者访问请求所需的动态资源,也就是说每次反馈的目标动态资源数据都会随着访问请求的不同而不同,从而使攻击者将当前访问请求对应的网页系统看作真实的网页,进一步提高了网页模拟的真实性,改善了网页模拟效果。
70.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够
更明显易懂,以下特举本技术的具体实施方式。
附图说明
71.通过参考附图阅读下文的详细描述,本技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本技术的若干实施方式,相同或对应的标号表示相同或对应的部分,其中:
72.图1示出了本技术实施例提供的一种网站系统模拟方法流程图;
73.图2示出了本技术实施例提供的另一种网站系统模拟方法流程图;
74.图3示出了本技术实施例提供的一种网站系统模拟装置的组成框图;
75.图4示出了本技术实施例提供的另一种网站系统模拟装置的组成框图。
具体实施方式
76.下面将参照附图更详细地描述本技术的示例性实施方式。虽然附图中显示了本技术的示例性实施方式,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
77.需要注意的是,除非另有说明,本技术使用的技术术语或者科学术语应当为本技术所属领域技术人员所理解的通常意义。
78.本技术实施例提供一种网站系统模拟方法,具体如图1所示,该方法包括:
79.101、响应于检测到对网站系统的访问请求,拦截访问请求。
80.本实施例所述的方法可以应用在中继服务器中,该中继服务器可以理解为设置于用户与目标网站对应的服务器之间的服务器。因此,在本实施例中可以实时检测是否存在访问请求,并当发现存在对网站系统的访问请求时,将该访问请求进行拦截,这样访问请求就不会到达网站系统所在的服务器,而是直接由中继服务器所拦截。这样就确保了在整个访问行为的发生过程中,不会对真实的网站系统所在的服务器造成影响。
81.当拦截了访问请求后,则可以对该访问请求进行检测,以确定是否是用于对动态资源进行请求。由于在实际应用中,访问请求一般会对两种网站资源进行申请,一种是用于对静态资源进行申请的请求,而另一种则是对动态资源进行申请的请求。其中,静态资源可以包括图片、字符以及文件。而动态资源则包括验证码、登录页面等需要实时变化的资源。具体来说,该动态资源可以理解为在网站中执行特定行为时所产生的数据,譬如该特征行为包括在不同页面层级之间的跳转,在这个过程中网站需要基于其跳转的链接反馈不同的页面内容和数据,而这部分数据就属于动态资源。由于现有技术仅在蜜罐中部署简单的服务功能和静态资源,对于请求静态资源的请求信息还可以应对,但对于动态资源这里存在变化的数据则无法模拟,因此,在本实施例中在拦截到请求信息后就需要分析该请求想要请求的资源属于哪类。尤其是判断其是否用于请求包括验证码、登录界面等动态资源。
82.102、若访问请求用于请求动态资源,则在预设数据集中获取对应访问请求的目标动态资源数据。
83.其中,所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的。
84.当确定访问请求是用于请求动态资源时,则说明当前如果想要维持对网站系统的模拟,就需要依照该请求反馈对应的动态资源。因此,在本步骤中就可以通过预设数据集进行目标动态资源数据的获取。其中,该预设数据集可以理解为一种包含了预先在网站系统中录制到的各种动态资源的数据集。这样在检测到访问请求,且确定其用于请求动态资源的时候,就可以直接从该预设数据集中获取对应的动态资源数据,即目标动态资源数据。
85.例如,当确定访问请求用于请求动态资源后,则可以解析该访问请求,并确定该访问请求所需的动态资源具体是什么。当确定该访问请求所请求的是动态验证码时,在预设数据集中查询对应访问请求的动态验证码,并将找到的动态验证码确定为所述目标动态资源数据。
86.需要说明的是,由于在本实施例所述的方法具体应用时,可能在预设数据集中预先存储了针对不同网站的动态资源数据,那么为了避免反馈错误的目标动态资源数据,在本步骤中确定访问请求所需的是动态资源后,还需要进一步的判断当前的访问请求所对应的是哪一个网站,并在此基础上在预设数据集中对应的网站数据中获取目标动态资源数据,以避免将其他网站的动态资源数据错当成访问请求的目标动态资源数据,从而避免因反馈了与访问请求不一致的网站的动态资源而影响网站系统模拟的真实性。
87.103、将目标动态资源数据进行反馈。
88.当确定了目标动态资源数据后,则可以将该目标动态资源数据进行反馈,也就是将目标动态资源数据反馈至该访问请求的发起者,这样对于发起者而言,其向某个网站发起了访问请求,而部署了网站系统模拟方法的中继服务器则在拦截了该访问请求后,从预设数据集中反馈了对应的目标动态资源数据,这样发起者即便请求了动态资源,本实施例所述的方法也能够逼真的反馈对应的数据,从而使攻击发起者难以觉察当前的访问请求实际上访问的是一个模拟出来的网站,使网站系统模拟的效果更趋近真实网站,改善了模拟效果。
89.本技术提供一种网站系统模拟方法,在本技术实施例中,能够首先响应于检测到对网站系统的访问请求,拦截所述访问请求;然后若所述访问请求用于请求动态资源,则在预设数据集中获取对应所述访问请求的目标动态资源数据从而实现网站系统模拟功能。与现有技术相比,所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的,由于本技术在响应于检测到对网站系统的访问请求后,能够对该访问请求进行拦截,并在此基础上确定如果该访问请求是用于请求动态资源时,从预设数据集中获取对应的目标动态资源数据并反馈,这就避免了现有的无论请求的是何种资源都反馈静态资源,从而使攻击者发觉当前访问的网站是被模拟出来的,使网站模拟效果更为真实,同时,在检测到访问请求用于请求动态资源后,能够从预设数据集中获取对应的目标动态资源数据,由于预设数据集中包含有预先录制的所述网站系统的动态资源数据,因此可以确保在攻击者发起访问后,能够反馈给攻击者访问请求所需的动态资源,也就是说每次反馈的目标动态资源数据都会随着访问请求的不同而不同,从而使攻击者将当前访问请求对应的网页系统看作真实的网页,进一步提高了网页模拟的真实性,改善了网页模拟效果。
90.以下为了更加详细地说明,本技术实施例提供了另一种网站系统模拟方法,具体如图2所示,该方法包括:
91.201、对网站系统执行访问操作。
92.其中,所述访问操作至少包括用于触发所述动态资源的操作。
93.基于本实施例所述的方法是用于对网站系统进行模拟,因此为了确保模拟效果更趋近于真实网站,那么就需要在进行模拟之前首先对网站模拟用户访问的行为,并以此分析和记录网站的反馈情况,从而作为后续模拟网站系统的基础。尤其对于访问行为用来申请动态资源的情况下,由于这个过程中网站系统会反馈的数据不同于以往的静态资源,因此在本实施例中就需要在执行步骤201至202的过程中模仿此类访问行为,并将此类的数据进行搜集和记录。因此,在本步骤中执行的访问操作就需要包括用于触发动态资源的操作。
94.202、录制网站系统基于访问操作的反馈数据,并基于反馈数据构建预设数据集。
95.其中,所述反馈数据至少包含所述动态资源。
96.由于网站接收到访问行为后会进行响应,尤其对于申请或触发动态资源的行为,网站会反馈相应的数据,也就是说在这种情况下反馈数据中就包含动态资源。在本实施例中,所述动态资源包括但不限于网站的登录页面数据,网站的动态码响应数据(譬如验证码),以及网站中各个网页之间跳转时反馈的数据。在此,对于动态资源的种类和数量不做限定,但是要确保获取的动态资源要与访问操作相对应。在本发明实施例中,录制网站系统基于访问操作的反馈数据的过程,可以理解为从网站系统的底层代码数据中解析出每次访问操作执行时的数据内容,其中既包括访问请求对应的数据,也包括基于访问请求网站系统的响应数据,并将这两部分数据按照对应关系进行记录和存储,这样就实现了在网站系统中进行各种访问操作时,对网站系统同步反馈的数据进行录制的效果。
97.具体的,在本步骤中获取反馈数据的过程中可以具体为,在执行访问操作后,同步记录访问时的行为类型、执行目标等用于表征该访问操作的参数信息,然后同步录制当前网站的响应数据,该响应数据中包括网站具体的反馈数据,以及网站在反馈该反馈数据时的其他相关参数。这样,就可以确保在构建预设数据集的过程中,能够基于访问操作-反馈数据的数据对的形式进行记录,可以便于后续在模拟网站系统时,可基于不同的访问请求确定对应记录的那个访问操作,并基于数据对获取对应的反馈数据,可以提高后续模拟时的处理效率。
98.203、对路由服务的配置信息进行修改,得到修改后的配置信息。
99.在本实施例中,所述配置信息可以理解为在进行模拟网站系统的过程中,蜜罐中路由服务在运行时的依据,这样在后续进行请求信息的检测时,路由服务就会基于修改后的配置信息对需要进行拦截的请求进行拦截,这样就能够实现一种自动化对请求进行甄别和自动拦截的效果,避免了某些不需要拦截的请求被拦截的问题。同时,由于该修改后的配置信息是用于对存在恶意攻击行为的目标访问请求进行拦截,这样就可以基于用户的需要对配置信息进行修改,从而确保拦截访问请求的过程中可以基于修改后的配置信息有针对性的对访问请求进行拦截,从而避免网站被恶意攻击的问题。
100.204、响应于检测到对网站系统的访问请求,拦截访问请求。
101.具体的,本步骤执行时具体可以为:控制所述路由服务基于所述修改后的配置信息检测是否存在目标访问请求,并当确定存在所述目标访问请求时,基于所述路由服务拦截所述目标访问请求。
102.基于前述步骤的描述可知,在本实施例中,网站系统模拟过程实际上可以基于蜜
罐系统进行,该蜜罐系统可以理解为一种封装了自动化执行某种功能的容器。这样在进行模拟的过程中,可以基于路由服务直接基于修改后的配置信息对该蜜罐系统中接收到的所有的访问请求进行分析和甄别,从而确定在多个访问请求的情况下,确定哪些访问请求是需要进行拦截的,哪些是不需要进行拦截的。
103.在确定需要拦截访问请求后,由于访问请求存在两种,其中一种是对静态资源进行请求,而另一种则是用于对动态资源进行请求,因此在本步骤中就需要基于该访问请求确定当前申请的是否为动态资源。
104.205、若访问请求用于请求动态资源,则在预设数据集中获取对应访问请求的目标动态资源数据。
105.其中,所述预设数据集中包含有用于反馈动态资源请求的动态资源数据。
106.在一些实施例中,所述预设数据集中包含至少一种所述访问请求,以及每种所述访问请求对应的响应体;所述响应体为包含所述动态资源的响应信息的体文件;
107.基于此,在本步骤中,所述在预设数据集中获取对应所述访问请求的目标动态资源数据,包括:
108.在所述预设数据集中,基于所述访问请求获取对应的所述响应体,并添加对应所述访问请求的响应头,得到第二响应信息;
109.在进行访问响应的过程中,网站一般会按照一定的信息格式进行响应,即在响应信息设置有特定的文件格式,为了确保网站系统模拟效果的真实性,就需要在生成目标动态资源数据并反馈的过程中也仅可能的按照这类文件格式进行。由于响应信息一般都头文件和体文件两部分构成,其中头文件又称报文头文件,即head文件,一般包含数据内容的一些相关属性信息,例如反馈的时间、反馈日期、反馈的方式等信息。而体文件又称报文体文件,即body文件,一般是整个响应信息的主要内容数据,也就是说接收者接收到响应信息后可以在体文件中获取访问请求所需的数据内容,而在头文件中则可以获取网站反馈该数据内容的一些属性类的信息。
110.这样,在本实施例中,为了确保模拟效果更为趋近真实,就可以在构建数据集的过程中,直接从反馈信息获取其中的响应体,然后将访问请求和对应的响应体以数据对的形式进行存储,这样在本步骤确定目标动态资源数据的过程中,就可以直接基于当前拦截到的访问请求在预设数据集中查找相同的访问请求,然后基于“访问请求-响应体”的数据对获取对应的响应体,并在该响应体的基础上添加对应当前响应时间等属性信息的响应头,从而得到第二响应信息。
111.进一步的,由于在网站模拟的过程中,可能在一个蜜罐系统中模拟了多个网站,那么在这个过程中就需要对访问请求针对的是哪个网站进行界定,从而避免误将其他网站的数据反馈至当前拦截的访问请求的访问者的问题。
112.基于此,所述在预设数据集中获取对应所述访问请求的目标动态资源数据,在执行时还可以包括:
113.在检测到存在被拦截的访问请求时,确定所述被拦截的访问请求对应的网站域名;
114.通过预设后端服务在对应不同网站的多个预设数据集中确定对应所述网站域名的目标动态资源数据集,并基于所述目标动态资源数据集提取对应所述被拦截的访问请求
的所述目标动态资源数据。
115.在本实施例中,蜜罐系统中可以包含多个不同网站的数据,也就是说每个预设数据集分别对应一个网站,那么在检测到存在被拦截的访问请求后,还需要确定当前访问请求所要访问的是哪个网站,具体的可以基于访问请求确定网站域名的方式进行,然后基于预设后端服务在多个预设数据集中基于该网站域名来确定哪一个是对应当前访问请求的网站,并以此在多个预设数据集中确定对应的目标动态资源数据集。
116.需要说明的是,为了确保反馈目标动态资源数据的过程中更为趋近真实网站的反馈过程,在本步骤中已经生成了第二响应信息的情况下,则可以直接执行步骤208,反之,若在本步骤中未生成第二响应信息的情况下,则可以在后续步骤206至207所述的方法进行响应信息的生成,此时在本步骤完成后可以直接执行步骤206。
117.206、基于访问请求,确定对应的响应体参数。
118.其中,所述响应体参数用于表征所述网站基于所述目标动态资源数据响应所述访问请求的方式。
119.基于前述步骤的描述可知,由于网站在对访问请求进行响应的过程中,是按照一定的格式进行反馈的。那么在本实施例所述的方法应用过程中,还可以基于本步骤的方法基于访问请求来确定当前响应信息的反馈方式,即响应体参数。
120.207、基于目标动态资源数据及响应体参数,生成响应体,并基于响应体添加对应访问请求的响应头,得到第一响应信息。
121.在本步骤中,由于响应体参数已经确定,也就是说将数据内容封装成为响应体的体文件的格式是确定的,那么在这种情况下就可以直接将目标动态资源数据按照该响应体参数封装成响应体,然后在根据当前的系统环境和目标动态资源数据的属性设置响应的响应头,从而得到第一响应信息。
122.需要说明的是,在本实施例中,所述第一响应信息、第二响应信息之间的关系仅仅作为区分响应信息设置的,第一、第二之间并不存在先后顺序,仅作为示例使用。
123.进一步的,述响应头中至少包含响应时间,其中,所述响应时间是基于所述访问请求确定的。
124.也就是说在设置响应头的过程中,还需要添加对应当前时间的响应时间,由于响应时间时体现访问请求发出后,网站何时进行反馈的,那么以当前访问请求来设置响应时间,就可以较好的模拟网站在接收到访问请求并添加相应响应时间的效果,避免了直接利用预先采集动态资源时的响应时间而使访问请求的发起者发现当前网站是被模拟的情况,进一步的改善了模拟效果。
125.208、将目标动态资源数据进行反馈。
126.基于前述步骤的描述可知,由于在反馈目标动态资源数据的过程中,实际上需要按照一定的格式将目标动态资源数据生成的响应信息进行反馈的,因此,在反馈过程中可以分别两种情况:
127.一方面,在前述步骤已生成第一响应信息的情况下,具体的,本步骤在执行时可以具体包括:将所述第一响应信息反馈至对应所述访问请求的发起者。
128.另一发明,在前述步骤已生成第二响应信息的情况下,具体的,本步骤执行时可以为:将所述第二响应信息反馈至对应所述访问者的发起者。
129.进一步的,在本实施例中,由于攻击者在对网站系统进行访问和攻击的过程中,访问请求可能不仅仅对动态资源进行申请,还可能对静态资源进行申请,那么为了进一步提高网站系统模拟效果的真实性,在本实施例中还可以在录制网站系统反馈的数据的过程中,就静态资源进行获取并添加到预设数据集中。
130.有鉴于此,在前述步骤204之前,还可以执行下述步骤:
131.209、对网站系统执行访问操作。
132.其中,所述访问操作包括用以触发动态资源数据的操作以及用于触发静态资源数据的操作。
133.在本步骤中对网站系统执行的访问操作实际上是分为两种,一种如前述实施例所述的用于对动态资源数据进行申请的请求,而另一种则为用于对静态资源数据进行申请的请求,这样就确保了后续当攻击者发起了不同的类型的访问请求的过程中,都能够在本步骤中进行模拟,从而为后续获取对应不同类型的访问请求的数据奠定了基础。
134.210、录制网站系统基于访问操作反馈的第一数据和第二数据。
135.其中,第一数据为所述网站系统被所述访问操作触发后产生的动态资源数据,所述第二数据为所述网站系统被所述访问操作触发后产生的静态资源数据。
136.基于前述步骤的描述可知,由于访问请求分为对动态资源数据申请的请求和对静态资源数据申请的请求,那么在网站系统反馈的数据中也分为两种,也就是本实施例所述的第一数据和第二数据,分别对应动态资源数据和静态资源数据,这样在录制的过程中就能够确保无论是申请动态资源数据的请求还是申请静态资源数据的请求都能够录制到对应的反馈数据,从而确保了后续构建的预设数据集中不仅可以应对后续攻击者发起对动态资源数据的访问请求,也能够应对静态资源数据的访问请求,确保了网站系统模拟效果更趋近真实。
137.211、基于第一数据和对应的访问操作,以及第二数据和对应的访问操作,构建预设数据集。
138.其中,所述预设数据集包括第一数据集和第二数据集,所述第一数据集为基于所述第一数据和对应的访问操作构建的动态资源数据集,所述第二数据集为基于所述第二数据和对应的访问操作构建的静态资源数据集。
139.在本步骤中分别利用第一数据和第二数据构建两个不同的数据集,这样可以确保在后续拦截到访问请求后,可以先基于访问请求的类型进行划分,从对应的资源类型的数据集中获取数据,从而确保可以更为快捷的进行反馈,避免从大量的数据进行筛选过程。
140.基于此,在步骤204对访问请求进行拦截之后,在确定访问请求用于对静态资源进行申请时,则可以执行步骤212。
141.212、若所述访问请求用于请求所述静态资源,则在预设数据集中获取对应访问请求的目标静态资源数据,并反馈目标静态资源数据。
142.其中,所述静态资源数据用以表征在所述网站系统被访问操作时触发时基于文件、图像以及字符中至少一种所形成的固定页面数据。
143.基于前述步骤的描述可知,由于攻击者在向网站系统发起访问的过程中,可能不仅仅是对动态资源数据进行申请,还可能是对静态资源数据进行申请,那么在这个过程中,当前述步骤拦截到了访问请求后,实际上就需要确定该访问请求是要请求何种数据,当确
定需要申请静态资源数据时,那么就可以基于本步骤的方法从预设数据集中获取对应访问请求的静态资源数据,基于前述步骤的描述可知,由于在录制网站系统的反馈数据的过程中实际上不仅将动态资源数据和对应的访问请求进行了录制,同时也录制了静态资源数据以及对应的访问请求,那么在本步骤中就可以直接从预设数据集中多个从静态资源数据中确定对应当前访问请求的目标静态资源数据,并将该目标静态资源数据反馈,这样对于攻击者而言无论发送了用于申请动态资源数据的访问请求,还是发送了用于申请静态资源数据的访问请求,本技术的中继服务器,都可以从预设数据集中获取对应该访问请求的目标动态资源或目标静态资源进行反馈,从而使攻击者难以发觉当前访问请求并未到达网站系统,使网站模拟效果更趋近真实。
144.进一步的,作为对上述图1及图2所示方法的实现,本技术另一实施例还提供了一种网站系统模拟装置。该网站系统模拟装置实施例与前述方法实施例对应,为便于阅读,本网站系统模拟装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。具体如图3所示,该网站系统模拟装置包括:
145.拦截单元31,可以用于响应于检测到对网站系统的访问请求,拦截所述访问请求;
146.获取单元32,可以用于若所述访问请求可以用于请求动态资源,则在预设数据集中获取对应所述访问请求的目标动态资源数据;所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的;
147.反馈单元33,可以用于将所述目标动态资源数据进行反馈。
148.进一步的,如图4所示,所述装置还包括:
149.执行单元34,可以用于对所述网站系统执行所述访问操作,其中,所述访问操作至少包括可以用于触发所述动态资源的操作;
150.构建单元35,可以用于录制所述网站系统基于所述访问操作的反馈数据,并基于所述反馈数据构建所述预设数据集,其中,所述反馈数据至少包含所述动态资源。
151.进一步的,如图4所示,所述装置还包括:
152.确定单元36,可以用于基于所述访问请求,确定对应的响应体参数,所述响应体参数可以用于表征所述网站基于所述目标动态资源数据响应所述访问请求的方式;
153.生成单元37,可以用于基于所述目标动态资源数据及所述响应体参数,生成响应体,并基于所述响应体添加对应所述访问请求的响应头,得到第一响应信息;
154.所述反馈单元33,具体可以用于将所述第一响应信息反馈至对应所述访问请求的发起者。
155.进一步的,如图4所示,所述预设数据集中包含至少一种所述访问请求,以及每种所述访问请求对应的响应体;所述响应体为包含所述动态资源的响应信息的体文件;
156.所述获取单元32,具体可以用于在所述预设数据集中,基于所述访问请求获取对应的所述响应体,并添加对应所述访问请求的响应头,得到第二响应信息;
157.所述反馈单元33,还具体可以用于将所述第二响应信息反馈至对应所述访问者的发起者。
158.进一步的,如图4所示,所述响应头中至少包含响应时间,其中,所述响应时间是基
于所述访问请求确定的。
159.进一步的,如图4所示,所述装置还包括:
160.修改单元38,可以用于对路由服务的配置信息进行修改,得到修改后的配置信息,其中,所述修改后的配置信息可以用于控制所述路由服务对存在恶意攻击行为的目标访问请求进行拦截;
161.所述拦截单元31,还具体可以用于控制所述路由服务基于所述修改后的配置信息检测是否存在目标访问请求,并当确定存在所述目标访问请求时,基于所述路由服务拦截所述目标访问请求。
162.进一步的,如图4所示,所述获取单元32包括:
163.确定模块321,可以用于在检测到存在被拦截的访问请求时,确定所述被拦截的访问请求对应的网站域名;
164.提取模块322,可以用于通过预设后端服务在对应不同网站的多个预设数据集中确定对应所述网站域名的目标动态资源数据集,并基于所述目标动态资源数据集提取对应所述被拦截的访问请求的所述目标动态资源数据。
165.进一步的,如图4所示,所述预设数据集还包括静态资源;
166.所述装置还包括:
167.执行单元39,可以用于若所述访问请求可以用于请求所述静态资源,则在所述预设数据集中获取对应所述访问请求的目标静态资源数据,并反馈所述目标静态资源数据,其中,所述静态资源数据用以表征在所述网站系统被访问操作时触发时基于文件、图像以及字符中至少一种所形成的固定页面数据。
168.进一步的,如图4所示,所述装置还包括:
169.访问单元40,可以用于对所述网站系统执行所述访问操作;其中,所述访问操作包括用以触发动态资源数据的操作以及可以用于触发静态资源数据的操作;
170.录制单元41,可以用于录制所述网站系统基于所述访问操作反馈的第一数据和第二数据,其中,第一数据为所述网站系统被所述访问操作触发后产生的动态资源数据,所述第二数据为所述网站系统被所述访问操作触发后产生的静态资源数据;
171.数据集构建单元42,可以用于基于第一数据和对应的访问操作,以及第二数据和对应的访问操作,构建所述预设数据集,其中,所述预设数据集包括第一数据集和第二数据集,所述第一数据集为基于所述第一数据和对应的访问操作构建的动态资源数据集,所述第二数据集为基于所述第二数据和对应的访问操作构建的静态资源数据集。
172.本技术实施例提供一种网站系统模拟方法及装置,在本技术实施例中,能够首先响应于检测到对网站系统的访问请求,拦截所述访问请求;然后若所述访问请求用于请求动态资源,则在预设数据集中获取对应所述访问请求的目标动态资源数据从而实现网站系统模拟功能。与现有技术相比,所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的,由于本技术在响应于检测到对网站系统的访问请求后,能够对该访问请求进行拦截,并在此基础上确定如果该访问请求是用于请求动态资源时,从预设数据集中获取对应的目标动态资源数据并反馈,这就避免了现有的无论请求的是何种资源都反馈静态资源,从而使攻击者发觉当前访问的网站是被模拟出来的,使网站模拟效果更为真实,同时,在检测到访问请求用于请
求动态资源后,能够从预设数据集中获取对应的目标动态资源数据,由于预设数据集中包含有预先录制的所述网站系统的动态资源数据,因此可以确保在攻击者发起访问后,能够反馈给攻击者访问请求所需的动态资源,也就是说每次反馈的目标动态资源数据都会随着访问请求的不同而不同,从而使攻击者将当前访问请求对应的网页系统看作真实的网页,进一步提高了网页模拟的真实性,改善了网页模拟效果。
173.本技术实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的网站系统模拟方法。
174.存储介质可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。
175.本技术实施例还提供了一种网站系统模拟装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行上述所述的网站系统模拟方法。
176.本技术实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:响应于检测到对网站系统的访问请求,拦截所述访问请求;若所述访问请求用于请求动态资源,则在预设数据集中获取对应所述访问请求的目标动态资源数据;所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的;将所述目标动态资源数据进行反馈。
177.进一步的,在所述响应于检测到对网站系统的访问请求,拦截所述访问请求之前,所述方法还包括:
178.对所述网站系统执行所述访问操作,其中,所述访问操作至少包括用于触发所述动态资源的操作;
179.录制所述网站系统基于所述访问操作的反馈数据,并基于所述反馈数据构建所述预设数据集,其中,所述反馈数据至少包含所述动态资源。
180.进一步的,在所述将所述目标动态资源数据进行反馈之前,所述方法还包括:
181.基于所述访问请求,确定对应的响应体参数,所述响应体参数用于表征所述网站基于所述目标动态资源数据响应所述访问请求的方式;
182.基于所述目标动态资源数据及所述响应体参数,生成响应体,并基于所述响应体添加对应所述访问请求的响应头,得到第一响应信息;
183.所述将所述目标动态资源数据进行反馈,包括:
184.将所述第一响应信息反馈至对应所述访问请求的发起者。
185.进一步的,所述预设数据集中包含至少一种所述访问请求,以及每种所述访问请求对应的响应体;所述响应体为包含所述动态资源的响应信息的体文件;
186.所述在预设数据集中获取对应所述访问请求的目标动态资源数据,包括:
187.在所述预设数据集中,基于所述访问请求获取对应的所述响应体,并添加对应所述访问请求的响应头,得到第二响应信息;
188.所述将所述目标动态资源数据进行反馈,包括:
189.将所述第二响应信息反馈至对应所述访问者的发起者。
190.进一步的,所述响应头中至少包含响应时间,其中,所述响应时间是基于所述访问请求确定的。
191.进一步的,在所述拦截所述访问请求之前,所述方法还包括:
192.对路由服务的配置信息进行修改,得到修改后的配置信息,其中,所述修改后的配置信息用于控制所述路由服务对存在恶意攻击行为的目标访问请求进行拦截;
193.所述拦截所述访问请求包括:
194.控制所述路由服务基于所述修改后的配置信息检测是否存在目标访问请求,并当确定存在所述目标访问请求时,基于所述路由服务拦截所述目标访问请求。
195.进一步的,所述在预设数据集中获取对应所述访问请求的目标动态资源数据,包括:
196.在检测到存在被拦截的访问请求时,确定所述被拦截的访问请求对应的网站域名;
197.通过预设后端服务在对应不同网站的多个预设数据集中确定对应所述网站域名的目标动态资源数据集,并基于所述目标动态资源数据集提取对应所述被拦截的访问请求的所述目标动态资源数据。
198.进一步的,所述预设数据集还包括静态资源;
199.在所述拦截所述访问请求之后,所述方法还包括:
200.若所述访问请求用于请求所述静态资源,则在所述预设数据集中获取对应所述访问请求的目标静态资源数据,并反馈所述目标静态资源数据,其中,所述静态资源数据用以表征在所述网站系统被访问操作时触发时基于文件、图像以及字符中至少一种所形成的固定页面数据。
201.进一步的,在所述拦截所述访问请求之前,所述方法还包括:
202.对所述网站系统执行所述访问操作;其中,所述访问操作包括用以触发动态资源数据的操作以及用于触发静态资源数据的操作;
203.录制所述网站系统基于所述访问操作反馈的第一数据和第二数据,其中,第一数据为所述网站系统被所述访问操作触发后产生的动态资源数据,所述第二数据为所述网站系统被所述访问操作触发后产生的静态资源数据;
204.基于第一数据和对应的访问操作,以及第二数据和对应的访问操作,构建所述预设数据集,其中,所述预设数据集包括第一数据集和第二数据集,所述第一数据集为基于所述第一数据和对应的访问操作构建的动态资源数据集,所述第二数据集为基于所述第二数据和对应的访问操作构建的静态资源数据集。
205.本技术还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:响应于检测到对网站系统的访问请求,拦截所述访问请求;若所述访问请求用于请求动态资源,则在预设数据集中获取对应所述访问请求的目标动态资源数据;所述预设数据集中包含有预先录制的所述网站系统的动态资源数据,所述动态资源数据基于对所述网站系统的访问操作触发后产生的;将所述目标动态资源数据进行反馈。
206.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
207.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
208.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
209.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
210.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
211.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
212.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
213.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
214.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形
式。
215.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。