CyberFlood 测试指南:安全评估测试系列应用识别
近年来随着互联网应用的爆炸式增长,网络流量的性质发生了根本性的变化。大量的新兴的应用程序和服务不断涌现,如社交媒体、及时通讯、在线视频以及云存储等。这些应用不仅消耗大量的网络带宽,也带来新的安全威胁。如何对应用流量进行精准控制也是网络管理面临的大问题,在此背景下,应用识别也就应运而生。通过精准识别和分类网络中的应用,可以帮助企业更好的管理网络资源,优化带宽使用,实施更精确的安全策略,及时发现潜在的安全威胁。
1. TestCloud库 2. App profile 3. SmartApps 4. EMIX配置示例
CyberFlood的TestCloud库当前最新提供了3万多种不同类型不同平台的实际应用,且数据库会持续更新最新的应用。该数据库同时也包含且持续最新的恶意病毒以及攻击漏洞库,三者之间可以使用CTA/AMT/EMIX模板根据测试要求单独打,也可以组合打。 图-1 TestCloud库
使用模板测试App流量前,需要创建App profile。在Profile Builder下点击Apps,可以添加库中的各种应用。CyberFlood定义了2种Apps场景: App Scenarios: 基于应用程序模拟流量的单个单元,比如包含了一些VoIP的语音电话,Facebook状态更新,或者是通过互联网上的下载视频。 Predefined App Profiles: 这是Spirent预定义的一些应用场景组,它包含了一组共同特征应用场景的App Scenarios。 图-2 Apps Profile创建入口 Spirent根据应用程序的功能或者内容给做了一下归类,创建Apps Profile的时候,可以先根据测试应用场景的内容到具体分类中查找添加。 Business Systems: 包含了一些比较常用的商业应用场景,比如启动应用程序,更新客户端应用程序,或者执行基本的操作比如搜索新服务等。 Communication: 包含了比如启动或者登录即时消息应用程序,和朋友聊天等应用场景。 Games and Entertainment: 游戏和娱乐的应用场景,比如在线游戏,流行的娱乐网站等。 Miscellaneous: 杂项,包含了像Google工具,Yahoo工具或者一些流行网站。 Network Protocols: 包含一些网络协议和认证的应用场景。 P2P: 包含一些点到点的应用,比如搜索torrent文件,文件下载等。 Productivity: 包含一些比如Google金融,雅虎金融或者其他一些流行的Productivity Web. SmartApps: 可以编辑的应用。 Social Networking: 包含社交网络应用的场景,比如登录社交网站,搜索和添加好友,查看在线消息和资料等。 Streaming Media: 包含一些流媒体的应用场景。如登录媒体网站,浏览和观看视频,收听电台,给好友分享视频等。 图-3 Apps Scenarios分类 Apps的应用场景内容很多,查看每一个应用场景基本包含如下信息: Description: 应用场景的内容的基本描述。 图-4 App Scenario基本信息 同时App Scenarios和Attacks/Malware一样,可以点击每个场景的信息后查看详细的Callflow信息。 图-5 App Callflow信息 App Scenarios同样提供了Search和Filter的功能,可以根据一些关键词如应用的名称,描述或者一些其他信息搜索出自己想要添加的Scenarios。也可以先用Filter过滤出一些特定的Scenarios,比如按Platform,Year,Category等过滤出符合条件的Scenarios,再结合Search添加所需Scenarios到app profile。
SmartApps跟传统的App Scenarios不同的地方是可以编辑其中的内容,这也能满足客户编辑应用内容的测试需求。在App Scenarios的SmartApps下打开所有的Scenarios。 图-6 SamartApps 打开其中具体的一个SmartApp scenarios,在界面上点击Edit Scenario去编辑内容。以如下截图的Airbnb smartapp为例,其中包含了Scenarios的Connections和Transactions信息。 Transport: Scenarios传输所用的协议,比如TCP。 Destination Port: 目的端口号。 Server: Server信息的描述。 SNI: Server Name Indication Crypto Profile: 加密配置文件,默认Default。 图-7 Edit connections Scenario的整个Transactions由Transations Group组成,在这可以Add Transaction loop添加事务执行的次数和或者使用Add Transaction添加新的Transaction。添加loop后,把需要循环执行的transactions拖拽进来就可以。通过Run的开关决定是否执行Transactions。 Transaction Group中的每个Transaction由具体的Actions Group组成,每个Action可以查看和编辑它的Description、Action Name、Server、Payload等信息。同时也可以调节Run的开关决定是否执行某个Action。 图-8 Edit Transactions 编辑完成后Save A Copy,则会生成一个新的编辑过的同名的Smart App。如下图所示: 图-9 编辑保存后的SmartApp
同Malware/Attacks一样,App Profile支持的测试模板为CTA/AMT/EMIX (Throughput With Mixed Traffic)。下面示例为App Profile在EMIX模板中配置及使用方法。 App Profile可以直接添加到Traffic Mix中,当作正常的应用流量来发送。 图-10 添加到Traffic Mix App profile也可以添加到模板的Security Mix中,检查能否被安全设备应用识别并拦截。 图-11 添加到Security Mix 本期介绍了CyberFlood的TestCloud库的应用识别的内容,下面我们会继续介绍有关安全攻击场景和相关使用模板选择的内容。如有其它相关使用问题也欢迎与我们联系。