使用蜜罐工作流程来进行软件评审转让专利

申请号 : CN201310695561.3

文献号 : CN103870753B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : N·发利勒R·坎宁斯J·B·格鲁弗J·B·拉里默S·J·普尔斯特C·G·康德拉A·路德维格

申请人 : 谷歌股份有限公司

摘要 :

本发明涉及使用蜜罐工作流程来进行软件评审。应用程序分发服务器可用于对应用程序进行应用程序分发处理,其中所述应用程序分发处理包括多个阶段。所述多个阶段可以顺次包括开发者帐户创建阶段、风险评估阶段、应用程序上传阶段、应用程序发布阶段、应用程序推广阶段和应用程序下载阶段。所述应用程序分发服务器可以在所述多个阶段的各阶段中检测是否发生与使用所述应用程序来分发不期望软件相对应的特定行为。在所述应用程序分发处理的特定阶段中检测到发生了所述特定行为的情况下,不通信与检测到发生了所述特定行为有关的信息而是利用陷阱系统对所述应用程序继续所述特定阶段之后的一个或多个后续阶段。

权利要求 :

1.一种利用陷阱系统的方法,其特征在于,包括:

在应用程序分发服务器中,

利用所述服务器对应用程序进行应用程序分发处理,其中所述应用程序分发处理包括多个阶段,所述多个阶段顺次包括开发者帐户创建阶段、风险评估阶段、应用程序上传阶段、应用程序发布阶段、应用程序推广阶段和应用程序下载阶段;

在所述多个阶段的各阶段中,检测是否发生与使用所述应用程序来分发不期望软件相对应的特定行为;以及在所述应用程序分发处理的特定阶段中检测到发生了所述特定行为的情况下,在不通信与检测到发生了所述特定行为有关的信息的情况下利用陷阱系统对所述应用程序继续所述特定阶段之后的一个或多个后续阶段。

2.根据权利要求1所述的方法,其中,包括:在所述风险评估阶段中检测到发生了所述特定行为的情况下,在不封锁帐户的情况下对所述应用程序创建陷阱帐户。

3.根据权利要求1所述的方法,其中,包括:在所述应用程序上传阶段和/或所述应用程序上传阶段之前的先前阶段中检测到发生了所述特定行为的情况下,在不暂停应用程序的情况下将已上传至所述应用程序分发服务器的应用程序标记为陷阱应用程序。

4.根据权利要求1所述的方法,其中,包括:在所述应用程序发布阶段和/或所述应用程序发布阶段之前的先前阶段中检测到发生了所述特定行为的情况下:在不暂停应用程序的情况下将已发布的应用程序标记为陷阱应用程序;以及防止将所发布的陷阱应用程序下载到最终用户装置上。

5.根据权利要求1所述的方法,其中,包括:在所述应用程序推广阶段和/或所述应用程序推广阶段之前的先前阶段中检测到发生了所述特定行为的情况下:在不暂停应用程序的情况下将已推广的应用程序标记为陷阱应用程序;以及防止将所推广的陷阱应用程序安装在最终用户装置中。

6.根据权利要求5所述的方法,其中,包括:允许将所推广的陷阱应用程序安装在一个或多个陷阱最终用户装置中,其中所述一个或多个陷阱最终用户装置是为了运行所安装的陷阱应用程序而创建的。

7.根据权利要求6所述的方法,其中,包括:基于所安装的陷阱应用程序在所述一个或多个陷阱最终用户装置上的运行来监控到所述应用程序分发服务器的通信量。

8.根据权利要求7所述的方法,其中,包括:基于所述监控来确定如何尝试分发所述不期望软件。

9.一种利用陷阱系统的系统,其特征在于,包括:

应用程序分发服务器,所述应用程序分发服务器被配置为:

对应用程序进行应用程序分发处理,其中所述应用程序分发处理包括多个阶段,所述多个阶段顺次包括开发者帐户创建阶段、风险评估阶段、应用程序上传阶段、应用程序发布阶段、应用程序推广阶段和应用程序下载阶段;

在所述多个阶段的各阶段中,检测是否发生与使用所述应用程序来分发不期望软件相对应的特定行为;以及在所述应用程序分发处理中的特定阶段检测到发生了所述特定行为的情况下,在不通信与检测到发生了所述特定行为有关的信息的情况下利用陷阱系统对所述应用程序继续所述特定阶段之后的一个或多个后续阶段。

10.根据权利要求9所述的系统,其中,在所述风险评估阶段中检测到发生了所述特定行为的情况下,所述应用程序分发服务器用于在不封锁帐户的情况下对所述应用程序创建陷阱帐户。

11.根据权利要求9所述的系统,其中,在所述应用程序上传阶段和/或所述应用程序上传阶段之前的先前阶段中检测到发生了所述特定行为的情况下,所述应用程序分发服务器用于在不暂停应用程序的情况下将已上传至所述应用程序分发服务器的应用程序标记为陷阱应用程序。

12.根据权利要求9所述的系统,其中,在所述应用程序发布阶段和/或所述应用程序发布阶段之前的先前阶段中检测到发生了所述特定行为的情况下,所述应用程序分发服务器用于:在不暂停应用程序的情况下将已发布的应用程序标记为陷阱应用程序;以及防止将所发布的陷阱应用程序下载到最终用户装置上。

13.根据权利要求9所述的系统,其中,在所述应用程序推广阶段和/或所述应用程序推广阶段之前的先前阶段中检测到发生了所述特定行为的情况下,所述应用程序分发服务器用于:在不暂停应用程序的情况下将已推广的应用程序标记为陷阱应用程序;以及防止将所推广的陷阱应用程序安装在最终用户装置中。

14.根据权利要求13所述的系统,其中,所述应用程序分发服务器用于允许将所推广的陷阱应用程序安装在一个或多个陷阱最终用户装置中,其中所述一个或多个陷阱最终用户装置是为了运行所安装的陷阱应用程序而创建的。

15.根据权利要求14所述的系统,其中,所述应用程序分发服务器用于基于所安装的陷阱应用程序在所述一个或多个陷阱最终用户装置上的运行来监控到所述应用程序分发服务器的通信量。

16.根据权利要求15所述的系统,其中,所述应用程序分发服务器用于基于所述监控来确定如何尝试分发所述不期望软件。

说明书 :

使用蜜罐工作流程来进行软件评审

技术领域

[0001] 本发明的特定实施例涉及诸如恶意软件等的恶意的或不期望的软件的检测。更具体地,本发明的特定实施例涉及使用蜜罐工作流程来进行软件评审的方法和系统。

背景技术

[0002] 应用程序分发服务器可以包括可以分发至例如智能电话、移动电话、平板电脑和/或其它数据处理装置等的最终用户装置的多个已发布的应用程序。这些应用程序的一些开发者实际可能是可以利用应用程序分发服务器作为用以分发不期望软件的方式的攻击者。可能利用或创建诸如恶意软件等的不期望软件来破坏装置操作、收集敏感信息和/或获得对私人数据处理系统的访问。不期望软件例如可以包括病毒、蠕虫、特洛伊木马、间谍软件、广告软件和/或其它恶意程序。
[0003] 通过如参考附图在本申请的其余部分中所述、将这些系统与本发明进行比较,常规和传统方法的其它限制和缺点对于本领域技术人员而言将变得明白。

发明内容

[0004] 本发明的方面涉及用于使用蜜罐工作流程来进行软件评审的方法和系统。在本发明的各实施例中,应用程序分发服务器可以包括可以下载和/或安装到例如智能电话、移动电话和/或平板电脑等的最终用户装置上的多个应用程序。应用程序分发服务器可以对应用程序进行应用程序分发处理,其中该应用程序分发处理可以包括多个阶段。应用程序分发服务器可以在多个阶段的各阶段中检测是否可能发生与使用应用程序来分发不期望软件相对应的特定行为。在特定阶段中检测到发生了特定行为的情况下,应用程序分发服务器可以在不将与检测到特定行为有关的信息通信至例如与该应用程序相关联的攻击者的情况下,利用陷阱系统对该应用程序继续应用程序分发处理中的一个或多个后续阶段。在这方面,例如,多个阶段可以顺次包括开发者帐户创建阶段、风险评估阶段、应用程序上传阶段、应用程序发布阶段、应用程序推广阶段和应用程序下载阶段。
[0005] 通过以下的说明和附图,将更加充分地理解本发明的各种优点、方面和新颖特征及其例示实施例的详细内容。

附图说明

[0006] 图1是示出根据本发明实施例的示例通信系统的框图。
[0007] 图2是示出根据本发明实施例的示例应用程序分发服务器的框图。
[0008] 图3是示出根据本发明实施例的利用蜜罐工作流程的示例应用程序分发处理的框图。
[0009] 图4是示出根据本发明实施例的用于使用蜜罐工作流程来进行软件评审的示例步骤的流程图。

具体实施方式

[0010] 在用于使用蜜罐工作流程来进行软件评审的方法和系统中可以找到本发明的特定实施例。在以下说明和附图中陈述了特定具体细节以提供对本发明的各实施例的全面理解。然而,本领域技术人员将理解,可以在不具有以下说明所述的若干细节的情况下实践本发明的附加实施例。
[0011] 在本发明的各实施例中,应用程序分发服务器可用于对应用程序进行应用程序分发处理,其中该应用程序分发处理可以包括多个阶段。例如,应用程序分发处理的多个阶段可以顺次包括开发者帐户创建阶段、风险评估阶段、应用程序上传阶段、应用程序发布阶段、应用程序推广阶段和应用程序下载阶段。应用程序分发服务器可用于在这多个阶段的各阶段中检测是否可能发生与使用应用程序来分发不期望软件相对应的特定行为。在应用程序分发处理的特定阶段中检测到发生了特定行为的情况下,应用程序分发服务器可用于在不通信与检测到发生了特定行为有关的信息的情况下,利用陷阱系统对该应用程序继续特定阶段之后的一个或多个后续阶段。
[0012] 在本发明的示例实施例中,在风险评估阶段中检测到发生了特定行为的情况下,应用程序分发服务器例如可用于在不封锁帐户的情况下对应用程序创建陷阱帐户。在应用程序上传阶段和/或该应用程序上传阶段之前的先前阶段中检测到发生了特定行为的情况下,应用程序分发服务器例如可用于在不暂停应用程序的情况下,将可能已上传至应用程序分发服务器的应用程序标记为陷阱应用程序。在应用程序发布阶段和/或该应用程序发布阶段之前的先前阶段中检测到发生了特定行为的情况下,应用程序分发服务器例如可用于在不暂停应用程序的情况下将可能已发布的应用程序标记为陷阱应用程序,并且防止将所发布的陷阱应用程序下载到最终用户装置上。在应用程序推广阶段和/或该应用程序推广阶段之前的先前阶段检测到中发生了特定行为的情况下,应用程序分发服务器例如可用于在不暂停应用程序的情况下将可能已推广的应用程序标记为陷阱应用程序,并且防止将所推广的陷阱应用程序安装在最终用户装置中。
[0013] 在本发明的示例实施例中,应用程序分发服务器例如可用于允许将所推广的陷阱应用程序安装在一个或多个陷阱最终用户装置中,其中这一个或多个陷阱最终用户装置可以是为了运行所安装的陷阱应用程序而创建的。在这种情况下,应用程序分发服务器可用于基于所安装的陷阱应用程序在一个或多个陷阱最终用户装置上的运行来监控到应用程序分发服务器的通信量。然后,应用程序分发服务器可用于基于该监控来确定不期望软件可能如何尝试分发。
[0014] 图1是示出根据本发明实施例的示例通信系统的框图。参考图1,示出通信系统100。通信系统100可以包括应用程序分发服务器102、通信网络130和多个最终用户装置
110,其中在这些最终用户装置110中例示出最终用户装置110a~110d。
[0015] 应用程序分发服务器102可以包括例如可用于将应用程序发布和/或分发至最终用户装置110的适当的逻辑、电路、接口和/或代码。在本发明的示例实施例中,应用程序分发服务器102可以进行用于将应用程序分发至多个最终用户装置110中的一个或多个的应用程序分发处理。在这方面,该应用程序分发处理可以顺次包括例如开发者帐户创建阶段、风险评估阶段、应用程序上传阶段、应用程序发布阶段、应用程序推广阶段和应用程序下载阶段等的多个阶段。应用程序分发服务器102可用于在这多个阶段的各阶段中检测是否可能发生与使用应用程序来分发不期望软件相对应的特定行为。
[0016] 诸如蜜罐等的陷阱系统可以是可以用来收集与诸如攻击者104等的攻击者有关的信息的陷阱集合,其中该攻击者104可以利用应用程序分发服务器102作为用以分发例如恶意软件等的不期望软件的方式。在本发明的示例实施例中,应用程序分发服务器102可用于利用陷阱或蜜罐工作流程来在多阶段的应用程序分发处理中进行恶意软件评审和/或检测。
[0017] 诸如最终用户装置110a等的各最终用户装置110可以包括可用于处理数据或信号的适当的逻辑、电路、接口和/或代码。最终用户装置110a可用于在整个通信网络130内进行信号的通信。最终用户装置110a例如可以包括智能电话、移动电话、平板电脑和/或其它相似类型的数据处理装置。在本发明的示例实施例中,可以将一个或多个应用程序从应用程序分发服务器102例如经由通信网络130下载到和/或安装在最终用户装置110a中。
[0018] 通信网络130可以包括可用于通过使用各种无线和/或有线通信技术来将数据和语音通信服务提供至各种装置和/或实体的适当的逻辑、电路、接口、装置和/或代码。通信网络130例如可以包括因特网、蜂窝网络和/或其它多媒体网络。在本发明的示例实施例中,通信网络130可用于在应用程序分发服务器102、攻击者104和/或多个最终用户装置110a~110d之间提供通信。
[0019] 在工作中,应用程序分发服务器102可用于对应用程序进行应用程序分发处理,其中该应用程序分发处理可以包括多个阶段。例如,应用程序分发处理的多个阶段可以顺次包括开发者帐户创建阶段、风险评估阶段、应用程序上传阶段、应用程序发布阶段、应用程序推广阶段和应用程序下载阶段。在应用程序上传阶段,例如可以将应用程序经由通信网络130上传至应用程序分发服务器102。在应用程序下载阶段,例如可以将应用程序从应用程序分发服务器102经由通信网络130下载到诸如最终用户装置110a等的最终用户装置上。
[0020] 例如,应用程序分发服务器102可用于在多个阶段的各阶段中检测是否可能发生特定行为,其中该特定行为可以与使用应用程序来分发诸如恶意软件等的不期望软件相对应。在应用程序分发处理的特定阶段中检测到发生了特定行为的情况下,应用程序分发服务器102可用于在不将与检测到发生了特定行为有关的信息通信至例如可能与该应用程序相关联的攻击者104的情况下,利用诸如蜜罐等的陷阱系统对该应用程序继续该特定阶段之后的一个或多个后续阶段。在这方面,在应用程序分发处理的各阶段中,应用程序分发服务器102通过允许使用诸如蜜罐等的陷阱系统复制该处理的后续阶段,不向攻击者104提供用以判断特定行为(或不良行为)被检测到的能力。因而,即使在被应用程序分发服务器102检测到的情况下,攻击者104也可能不会观测到他或她已被检测到。该欺诈可以维持得越长,攻击者104可能产生的特定行为的感兴趣信号越多,因而利用应用程序分发服务器102可以收集到的与特定行为有关的信息越多,并且应用程序分发服务器102在防止诸如恶意软件等的不期望软件到达最终用户装置110a~110d方面可以更加有效。
[0021] 在本发明的示例实施例中,在风险评估阶段中检测到发生了特定行为的情况下,应用程序分发服务器102例如可用于在不封锁帐户的情况下对应用程序创建陷阱帐户。在应用程序上传阶段和/或该应用程序上传阶段之前的先前阶段中检测到发生了特定行为的情况下,应用程序分发服务器102例如可用于在不暂停应用程序的情况下,将可能已上传至应用程序分发服务器102的应用程序标记为陷阱应用程序。在应用程序发布阶段和/或该应用程序发布阶段之前的先前阶段中检测到发生了特定行为的情况下,应用程序分发服务器102例如可用于在不暂停应用程序的情况下将可能已发布的应用程序标记为陷阱应用程序,并且防止将所发布的陷阱应用程序下载到诸如最终用户装置110a等的最终用户装置上。在应用程序推广阶段和/或该应用程序推广阶段之前的先前阶段中检测到发生了特定行为的情况下,应用程序分发服务器102例如可用于在不暂停应用程序的情况下将可能已推广的应用程序标记为陷阱应用程序,并且防止将所推广的陷阱应用程序安装在诸如最终用户装置110a等的最终用户装置中。在这方面,尽管可以利用陷阱应用程序来观测攻击者104,但该陷阱应用程序实际可能没有被下载到和/或安装在最终用户装置110a~110d中。
[0022] 在本发明的示例实施例中,应用程序分发服务器102例如可用于允许将所推广的陷阱应用程序安装在一个或多个陷阱最终用户装置中,其中这一个或多个陷阱最终用户装置可以是为了运行所安装的陷阱应用程序而创建的。在这种情况下,应用程序分发服务器102可用于基于所安装的陷阱应用程序在一个或多个陷阱最终用户装置上的运行来监控到应用程序分发服务器102的通信量。然后,应用程序分发服务器102例如可用于基于该监控来确定可能如何尝试分发不期望软件。
[0023] 图2是示出根据本发明实施例的示例应用程序分发服务器的框图。参考图2,示出应用程序分发服务器102。应用程序分发服务器102例如可以包括软件检测模块202、处理器208和存储器210。应用程序分发服务器102可以包括例示出应用程序206a~206c的多个应用程序206。可以将多个应用程序206a~206c各自经由应用程序分发处理上传、发布、推广和/或下载到诸如最终用户装置110a等的最终用户装置上。例如,应用程序分发服务器102可以如参考图1所述。
[0024] 软件检测模块202可以包括可用于对应用程序分发服务器102进行例如恶意软件检测功能等的不期望软件检测功能的适当的逻辑、电路、接口和/或代码。在本发明的示例实施例中,软件检测模块202可用于在应用程序分发处理的多个阶段的各阶段中检测是否可能发生特定行为,其中该特定行为可以与使用诸如应用程序206a等的应用程序来分发诸如恶意软件等的不期望软件相对应。
[0025] 处理器208可以包括可用于对应用程序分发服务器102中的各种组件和/或模块的操作进行管理和/或控制的适当的逻辑、电路、接口和/或代码。处理器208可以利用使得能够执行例如应用程序206等的各种应用程序的操作系统(OS)。在本发明的示例实施例中,处理器208可用于利用陷阱或蜜罐工作流程对各个应用程序206a~206c进行应用程序分发处理。
[0026] 存储器210可以包括可用于存储应用程序分发服务器102中的处理器208、软件检测模块202和/或其它模块或组件可以利用的诸如可执行指令和/或数据等的信息的适当的逻辑、电路、接口和/或代码。存储器210可以包括RAM、ROM、诸如闪速存储器等的低延时非易失性存储器和/或其它适当的电子数据存储器。
[0027] 在工作中,应用程序分发服务器102中的处理器208可用于对诸如应用程序206a等的应用程序进行应用程序分发处理,其中该应用程序分发处理可以顺次包括例如开发者帐户创建阶段、风险评估阶段、应用程序上传阶段、应用程序发布阶段、应用程序推广阶段和应用程序下载阶段等的多个阶段。例如,应用程序分发服务器102中的软件检测模块202可用于在多个阶段的各阶段中检测是否可能发生特定行为,其中该特定行为可以与使用应用程序206a来分发诸如恶意软件等的不期望软件相对应。在应用程序分发处理的特定阶段中利用软件检测模块202检测到发生了特定行为的情况下,处理器208可用于在不将与检测到发生了特定行为有关的信息通信至例如可能与应用程序206a相关联的攻击者104的情况下,利用诸如蜜罐等的陷阱系统对应用程序206a继续该特定阶段之后的一个或多个后续阶段。
[0028] 图3是示出根据本发明实施例的利用蜜罐工作流程的示例应用程序分发处理的框图。参考图3,示出应用程序分发处理300。例如,应用程序分发处理300可以顺次包括开发者帐户创建阶段302、风险评估阶段304、应用程序上传阶段306、应用程序发布阶段308、应用程序推广阶段310和应用程序下载阶段312。
[0029] 在示例工作中,应用程序分发服务器102中的处理器208可用于对诸如应用程序206a等的应用程序进行应用程序分发处理300。处理器208可用于在开发者帐户创建阶段302中创建与应用程序206a相关联的开发者帐户。在后续的风险评估阶段304中,处理器208例如可用于利用风险引擎对与开发者帐户相关联的一个或多个在线交易进行风险分析。处理器208可以将该风险分析的结果通信至应用程序分发服务器102中的软件检测模块202。软件检测模块202可用于基于该风险分析的结果来检测在风险评估阶段304中是否可能发生特定行为。例如,风险评估阶段304中的特定行为可以包括使用特定的和/或无效的信用卡来进行交易、使用盗窃的信用卡来进行交易以及/或者不是从真实的人进行交易。在风险评估阶段304中利用软件检测模块202检测到发生了特定行为的情况下,代替封锁或终止所创建的帐户,处理器208可用于创建与应用程序206a相关联的陷阱帐户
314。处理器208可以利用陷阱帐户314继续一个或多个后续阶段。除了正在分发的相关联的应用程序206a可以被标记为陷阱应用程序以外,陷阱帐户314可以如正常帐户那样起作用。
[0030] 在应用程序上传阶段306中,处理器208可用于将应用程序206a上传至应用程序分发服务器102。所上传的应用程序206a对于最终用户装置110a~110d而言尚不可用,并且处于未发布状态。软件检测模块202可用于检测在应用程序上传阶段306中是否可能发生特定行为。在应用程序上传阶段306和/或该应用程序上传阶段306之前的先前阶段中利用软件检测模块202检测到发生了特定行为的情况下,代替暂停应用程序206a,处理器208例如可用于将可能已上传至应用程序分发服务器102的应用程序206a标记为陷阱应用程序316。处理器208不会将应用程序206a标记为“暂停”或者表明已知应用程序206a是恶意的。处理器208可以利用陷阱应用程序316来继续一个或多个后续阶段。在这方面,特定行为例如可以包括以下:复制所有的现有图像并且将所复制的所有现有图像发送至通信网络130、打开联系人数据库中的所有联系人信息并且将所打开的所有联系人信息发送至通信网络130、以及/或者其它相似类型的行为。
[0031] 在后续的应用程序发布阶段308中,处理器208可用于发布应用程序206a并且使应用程序206a对于最终用户装置110a~110d而言可用。软件检测模块202可用于检测在应用程序发布阶段308中是否可能发生特定行为。在应用程序发布阶段308和/或该应用程序发布阶段308之前的先前阶段中利用软件检测模块202检测到发生了特定行为的情况下,代替暂停应用程序206a,处理器208例如可用于将可能已发布的应用程序206a标记为陷阱应用程序318。处理器208可以利用陷阱应用程序318来继续一个或多个后续阶段。例如,处理器208还可用于防止将所发布的陷阱应用程序318下载到诸如最终用户装置110a等的最终用户装置上。在这方面,从攻击者104的角度,陷阱应用程序318可能看上去已发布。事实上,陷阱应用程序318实际可能没有被下载到任何最终用户装置110上。例如,这可以通过如同存在网络或缓存问题那样故意破坏对陷阱应用程序318的任何尝试下载来实现。
[0032] 在后续的应用程序推广阶段310中,处理器208可用于推广已发布的应用程序206a。例如,可以利用广告、网站链接和/或社交网络来推广应用程序206a。软件检测模块
202可用于检测在应用程序推广阶段310中是否可能发生特定行为。在应用程序推广阶段
310和/或该应用程序推广阶段310之前的先前阶段中利用软件检测模块202检测到发生了特定行为的情况下,代替暂停应用程序206a,处理器208例如可用于将可能已推广的应用程序206a标记为陷阱应用程序320。处理器208可以利用陷阱应用程序320来继续一个或多个后续阶段。处理器208还可用于防止将所推广的陷阱应用程序320实际安装在诸如最终用户装置110a等的最终用户装置中。
[0033] 在本发明的示例实施例中,处理器208例如可用于允许将所推广的陷阱应用程序320安装在一个或多个陷阱最终用户装置330中(322),其中这一个或多个陷阱最终用户装置330可以是为了运行所安装的陷阱应用程序324而创建的。在这种情况下,软件检测模块202可用于基于所安装的陷阱应用程序324在一个或多个陷阱最终用户装置330上的运行来监控到应用程序分发服务器102的通信量。然后,软件检测模块202可用于基于该监控来确定可能如何尝试分发诸如恶意软件等的不期望软件。例如,软件检测模块202可以检测到使用广告和/或附属网络来驱动到不期望软件的通信量。
[0034] 图4是示出根据本发明实施例的用于使用蜜罐工作流程来进行软件评审的示例步骤的流程图。参考图4,这些示例步骤以步骤401开始。在步骤402中,应用程序分发服务器102中的处理器208可用于对诸如应用程序206a等的应用程序进行应用程序分发处理300,其中该应用程序分发处理300可以包括多个阶段。例如,应用程序分发处理300的多个阶段可以顺次包括开发者帐户创建阶段302、风险评估阶段304、应用程序上传阶段306、应用程序发布阶段308、应用程序推广阶段310和应用程序下载阶段312。在步骤403中,应用程序分发服务器102中的软件检测模块202可用于在多个阶段的各阶段中检测是否可能发生与使用应用程序206a来分发不期望软件相对应的特定行为。在步骤404中,在应用程序分发处理300的特定阶段中利用软件检测模块202检测到发生了特定行为的情况下,处理器208可用于在不将与检测到发生了特定行为有关的信息通信至例如可能与应用程序206a相关联的攻击者104的情况下,利用诸如蜜罐等的陷阱系统对应用程序206a继续该特定阶段之后的一个或多个后续阶段。示例步骤可以进入结束步骤405。
[0035] 在本发明的各实施例中,诸如应用程序分发服务器102等的应用程序分发服务器中的处理器208可用于对诸如应用程序206a等的应用程序进行应用程序分发处理300,其中该应用程序分发处理300可以顺次包括例如开发者帐户创建阶段302、风险评估阶段304、应用程序上传阶段306、应用程序发布阶段308、应用程序推广阶段310和应用程序下载阶段312等的多个阶段。应用程序分发服务器102中的软件检测模块202可用于在多个阶段的各阶段中检测是否可能发生与使用应用程序206a来分发不期望软件相对应的特定行为。在应用程序分发处理300的特定阶段中利用软件检测模块202检测到发生了特定行为的情况下,处理器208可用于在不通信与检测到发生了特定行为有关的信息的情况下,利用诸如蜜罐等的陷阱系统来对应用程序206a继续该特定阶段之后的一个或多个后续阶段。
[0036] 在风险评估阶段304中利用软件检测模块202检测到发生了特定行为的情况下,处理器208例如可用于在不封锁帐户的情况下对应用程序206a创建陷阱帐户314。在应用程序上传阶段306和/或该应用程序上传阶段306之前的先前阶段中利用软件检测模块202检测到发生了特定行为的情况下,处理器208例如可用于在不暂停应用程序的情况下将可能已上传至应用程序分发服务器102的应用程序206a标记为陷阱应用程序316。在应用程序发布阶段308和/或该应用程序发布阶段308之前的先前阶段中利用软件检测模块
202检测到发生了特定行为的情况下,处理器208例如可用于在不暂停应用程序的情况下将可能已发布的应用程序206a标记为陷阱应用程序318,并且防止将所发布的陷阱应用程序318下载到诸如最终用户装置110a等的最终用户装置上。在应用程序推广阶段310和/或该应用程序推广阶段310之前的先前阶段中利用软件检测模块202检测到发生了特定行为的情况下,处理器208可用于例如在不暂停应用程序的情况下将可能已推广的应用程序206a标记为陷阱应用程序320,并且防止将所推广的陷阱应用程序320安装在诸如最终用户装置110a等的最终用户装置上。
[0037] 应用程序分发服务器102中的处理器208例如可用于允许将所推广的陷阱应用程序320安装在一个或多个陷阱最终用户装置330中(322),其中这一个或多个陷阱最终用户装置330可以是为了运行所安装的陷阱应用程序324而创建的。在这种情况下,应用程序分发服务器102中的软件检测模块202可用于基于所安装的陷阱应用程序324在一个或多个陷阱最终用户装置330上的运行来监控到应用程序分发服务器102的通信量。然后,软件检测模块202可用于基于该监控来确定例如可能如何尝试分发不期望软件。
[0038] 本发明的其它实施例可以提供其上存储有机器代码和/或计算机程序的非瞬态计算机可读介质和/或存储介质以及/或者非瞬态机器可读介质和/或存储介质,其中该机器代码和/或计算机程序具有机器和/或计算机可执行的至少一个代码部分,由此使该机器和/或计算机进行如这里所述的用于使用蜜罐工作流程来进行软件评审的步骤。
[0039] 因此,本发明的方面可以以硬件、软件或者硬件和软件的组合来实现。本发明的方面可以以集中方式在至少一个计算机系统中实现、或者以不同元件分散开的分布方式在几个互连的计算机系统内实现。配置成用于执行这里所述的方法的任何种类的计算机系统或其它设备均适合。硬件和软件的典型组合可以是具有如下计算机程序的通用计算机系统,其中该计算机程序在载入并执行的情况下,控制计算机系统以使得该计算机系统执行这里所述的方法。
[0040] 本发明的方面还可以嵌入在计算机程序产品中,其中该计算机程序产品包括使得能够实现这里所述的方法的所有特征,并且该计算机程序产品在载入计算机系统的情况下,能够执行这些方法。本上下文中的计算机程序表示采用任何语言、代码或注释的如下指令组的任何表达,其中该指令组意图使具有信息处理能力的系统直接地进行特定功能、或者在进行了a)转换成其它语言、代码或注释和b)以不同材料形式再现中的任一个或这两者之后进行特定功能。
[0041] 尽管已经参考特定实施例说明了本发明,但本领域技术人员应当理解,可以在不背离本发明的范围的情况下进行各种改变并且可以替换等同物。另外,在不背离本发明的范围的情况下,可以进行多种修改以使特定情形或材料适合于本发明的教导。因此,意图是本发明不限于所公开的特定实施例,而且本发明将包括落入所附权利要求书的范围内的所有实施例。