超越黑名单,运用机器学习检测恶意URL

简介:

山石网科技术团队受邀在Blackhat Asia 2017上发表演讲,以下为论文简介:

许多类型的现代malwares使用基于http的通信。与传统的AV签名,或系统级的行为模型相比,网络级行为签名/建模在恶意软件检测方面有一定的优势。在这里,我们提出一个新颖的基于URL的恶意软件检测方法行为建模。该方法利用实践中常见的恶意软件代码重用的现象。基于大数据内已知的恶意软件样本,我们可以提炼出简洁的功能模型,代表许多不同的恶意软件中常用的相似性连接行为。这个模型可以用于检测有着共同的网络特征的未知恶意软件变种。

我们专注于HTTP连接,因为这个协议是最主要的恶意软件连接类型,用僵尸控制网络连接,得到更新和接收命令后开始攻击。检查在http连接层次的特征已被证明是一种来检测恶意连接的有效方式。

在山石网科的下一代防火墙设备中,我们有算法使用静态黑名单和特征签名来检查连接域名,URL路径和用户代理以确定是否恶意。结合DGA域检测的机器学习算法,我们取得很好的恶意URL检出率。然而,最复杂和富有挑战性的部分是查询URL字符串连接的动态内容。因为这些字符串非常多样化,几乎可以是任何东西,导致静态签名规则变得不那么有效。参数的变种和进化使签名生成费时。它还需要签名库为新连接特性执行频繁的更新。

我们这个演讲谈到的新颖的聚类算法是非常高效的,这个算法不仅可以检测已知的恶意URL,并且也能检测到从未暴露(0-day)的新变种。这个模型对来自于大约每周10 k更新的恶意软件样本的800000 url运用机器学习。


原文发布时间为: 2017年3月31日

本文来自云栖社区合作伙伴至顶网,了解相关信息可以关注至顶网。

相关文章
|
安全 Shell 网络安全
基于Vulnhub靶场—DC4渗透测试过程
Vulhub是一个开源项目,专注于安全漏洞的复现和学习。包括Web应用、容器和操作系统漏洞。项目特点包括丰富的漏洞场景、详细的复现指南、便捷的环境部署和持续更新。通过Vulhub,安全从业者可以学习和研究漏洞利用技术。此外,文章还介绍了如何下载和搭建Vulhub靶机DC-4,并详细描述了利用Burp Suite进行密码爆破和命令执行,最终获取root权限的过程。
1194 0
|
10月前
|
人工智能 边缘计算 安全
《探秘鸿蒙NEXT中的人工智能核心架构》
华为HarmonyOS NEXT将AI与操作系统深度融合,开启智能新时代。其核心架构包括:1) 基础层的全栈硬件和云端协同算力系统,提供强大动力支持;2) 模型层的盘古大模型,赋予小艺智能助手超强能力;3) 框架层的鸿蒙原生智能框架与意图框架,实现多模态个性化场景体验;4) 应用层的开放API和控件,支持第三方应用集成;5) 安全隐私层的星盾安全架构,保障数据安全。各层协同工作,为用户带来智能、便捷、安全的体验,并推动智能生态发展。
637 14
|
域名解析 网络协议 Linux
域名解析类型及dig,nslookup进行Dns解析过程查看
域名解析类型及dig,nslookup进行Dns解析过程查看
455 4
|
12月前
|
关系型数据库 数据库 数据安全/隐私保护
Python Web开发
Python Web开发
479 63
|
11月前
|
SQL 安全 Java
除了Flask框架,还有哪些框架能防止SQL注入攻击?
这些框架都在安全方面有着较好的表现,通过它们的内置机制和安全特性,可以有效地降低 SQL 注入攻击的风险。然而,无论使用哪个框架,开发者都需要具备良好的安全意识,正确配置和使用框架提供的安全功能,以确保应用的安全可靠。同时,持续关注安全更新和漏洞修复也是非常重要的。
313 61
|
存储 资源调度 算法
操作系统的心脏:深入理解内核架构与机制####
【10月更文挑战第16天】 本文旨在揭开操作系统最神秘的面纱——内核,通过剖析其架构设计与关键机制,引领读者一窥究竟。在这篇探索之旅中,我们将深入浅出地讨论内核的基本构成、进程管理的智慧、内存分配的策略,以及那至关重要的系统调用接口,揭示它们是如何协同工作,支撑起现代计算机系统的高效运行。这既是一次技术的深潜,也是对“看不见的手”调控数字世界的深刻理解。 ####
299 3
|
12月前
|
数据采集 监控 安全
动态HTTP代理IP的使用技巧与案例分析
本文介绍了动态HTTP代理IP的使用案例与成功经验,包括网络爬虫、信息安全保护、安全访问站点和市场调研等应用场景,以及选择合适代理服务、合理配置请求频率、监控代理IP状态、使用代理池和结合其他技术等实践经验,帮助用户有效利用动态HTTP代理IP,提升工作效率和数据安全性。
257 4
|
缓存 监控 Linux
在Linux中,如何设计一个高性能的Web服务器?
在Linux中,如何设计一个高性能的Web服务器?
|
存储 数据管理 数据库
理解数据库中的参照完整性
【6月更文挑战第13天】数据库设计旨在创建和维护企业的数据管理系统,确保数据完整性和消除冲突。好的数据库设计应减少冗余,保证信息准确完整,并满足处理和报告需求。设计工具包括E-R图和UML等。
1137 2
理解数据库中的参照完整性
|
机器学习/深度学习 算法 Python
使用Python实现随机森林算法
使用Python实现随机森林算法
644 0
下一篇
开通oss服务