网络安全 | 使用人工智能阻止网络攻击

全球范围内分布式拒绝服务 (DDoS) 网络攻击急剧增加,这种数字攻击可以通过大量的互联网流量压垮目标服务器,从而使网站瘫痪。这种攻击每年都会发生数百万起,而且数量和规模都在不断增加。大约三分之一的网站宕机是由于 DDoS 攻击所致。

计算机科学家兼波兰国家网络安全和人工智能研究所 (NASK) 研究总监 Michał Karpowicz 说,“DDoS 网络攻击的目的是制造混乱,扰乱组织,当然还有造成经济损失。这种攻击非常常见,因为它们很容易生成。”

在典型 DDoS 攻击中,罪犯会利用多台感染了专门设计的恶意软件的计算机和在线设备。这些设备可能包括厨房电器、安全摄像头和恒温器等物联网 (IoT) 设备,而且数量在与日俱增。目前,物联网涵盖的设备超过 100 亿台,是一支庞大的可被利用的队伍。DDoS 攻击通常会采用以下两种类型中的一种,或是两种类型的组合。在容量耗尽攻击中,受感染的设备会以极大的流量一次性涌入目标网络,致使其过载而无法为普通用户提供服务。在应用程序攻击中,发出的请求会要求服务器执行大量计算,这同样会导致服务器过载。

Karpowicz 使用了一个大家熟悉的场景来描述这个问题。想象你正开车去银行。沿途车辆稀少,一路畅通,直到你抵达最后一个十字路口。这时道路突然发生拥堵,你只能等待。这就是容量耗尽攻击。现在再想象一下,你终于到了银行,正排队等候柜台员工为你办理业务。你发现排在你前面的客户出现了不同寻常的问题,需要银行所有员工的帮助。同样,你还是只能等待。这就是应用程序攻击。

图片

在容量耗尽攻击中,网络一次涌入大量流量,致使网络过载,就像汽车拥堵会导致城市道路过载一样。

恶意软件可以隐藏请求的来源,使得攻击难以抵挡。有些服务还会提供雇佣攻击服务,使得攻击更加容易使用。这些服务的发起方通常是心怀不满的员工、激进分子、市场竞争对手和国家。Karpowicz 指出,在疫情居家期间,NASK 在网课开始时检测到来自学生网络发起的攻击,其目的是试图让在线测试无法进行。

但最近 Karpowicz 开发了数学方法来检测这种恶意请求,以对其进行阻止或重定向。他说,“当你面临一个来自现实的问题时,它会给你许多的灵感。”

图片

应用程序攻击通过要求进行大量计算而使服务器过载,从而迫使所有其他活动停止。

动态指纹

互联网上的信息,包括来自网站的请求,均由数据包组成。每个数据包都有一个作为唯一标识符的标头,描述了数据包的大小、来源和目的地。典型防御会查看这些标头,看它们是否在禁止列表中。然后,防御将坏数据包重定向到无害的目的地。

问题是他们必须事先就拥有这个列表,并且攻击者经常会更改标头以逃避检测。与此相反,Karpowicz 的解决方案采取的是实时检测网络流量模式。

想象一下城市的十字路口有一系列交通摄像头。如果你观看随机采集的一些视频片段,你发现突然之间有大量的蓝色敞篷车聚集在某个位置。很可疑。接下来,你可以密切观察这些车辆,了解更多信息,并且可以让其中更多的车辆靠边停下。

这种方法可以将网络数据转换为信号数据。于是任务就变成了分离不同的信号源。Karpowicz 认为这跟“鸡尾酒会问题”差不多。“鸡尾酒会问题”说得是你参加了一个派对,周围的人都在交谈,你必须从中辨别出跟你交谈的人所说的那些话。

这里,他采用了线性代数。他用信号,也就是数据包标头,填充矩阵。在矩阵中,每一行代表一段时间内特定类型(由数据包大小、来源或某个其他因素定义)的数据包。

在车辆交通的类比中,你可能有表示蓝色车辆、小型货车和来自加州的车辆的行。在给定矩阵中填充单元格的值表示的是可能与攻击识别相关的内容。在一个矩阵中,每个单元格包含的可能是标志数,而在另一个矩阵中,它可能表示每秒比特数。接下来,Karpowicz 将破译这些指标中哪些属性组合出现频率特别高。不单单是蓝色汽车或敞篷车,而是蓝色敞篷车。

图片

FLDX 系统中检测到的容量耗尽攻击。(图片所有权:Michal Karpowicz)

一旦找到这些特征组合,他便将其转换回网络领域,形成防火墙规则。在车辆交通的类比中,如果他知道了是某个品牌和型号的蓝色汽车造成的问题,他便会创建摄像头滤镜,立即找到这些车辆。他将这种基于线性代数的方法称为元因式分解。一篇关于元因式分解的论文正在审查中。

Karpowicz 在 MATLAB® 中实现了这些计算。他说,“线性代数算法是科学界已知最快的算法,这使得这种方法非常高效。”

交通拦截

检测恶意数据包只是问题的一部分;防御者还必须对其进行控制。Karpowicz 说,他偶然得到了一个解决方案。大约十年前,他做过一个提高网络设备能源效率的项目。该项目的目的之一是预测流量,并将数据包流重定向到能够进行处理的路由。在与从事网络安全工作的一位同事讨论该项目时,这位同事表示可以使用该项目对抗 DDoS 攻击。Karpowicz 说,“我们一直在研究这个想法,经过一点一滴的努力,一项新技术逐渐成形。”

在去年《European Journal of Control》上发表的一篇论文中,Karpowicz 描述了这项称为自适应调节的新技术。典型网络流量控制系统不会收到对其性能的反馈。它们是通过阻止与攻击有某种关系的所有流量来防御攻击。这往往会矫枉过正,因为可能会阻止合法的流量。Karpowicz 建议使用融入了反馈机制的流量控制器,这样它们便会知道是否在重定向正确的数据包。

他说,“网络安全给我带来了巨大的科学研究挑战,尤其是在数学方面”。理论与实际相辅相成。“这就是让我坚持下去的动力。我有种预感,这里面有点东西,而且有个需要解决方案的问题。”这些检测和控制系统共同构成了 NASK 提供的 FLDX 服务的基础,他们现在拥有这项服务的专利。它可以在 5 秒内检测到攻击,并在 10 秒内开始缓解攻击。

图片

实时检测 DDoS 攻击的 FLDX 系统。(图片所有权:Michal Karpowicz)

NASK 在波兰各地部署了 FLDX,使用分布式虚拟机集群保护全国网络。Karpowicz 说,“整个解决方案的独特之处在于,它不仅是一个网络安全系统,而且是一个研究平台。它让你可以在 MATLAB 中编写自己的算法来检测和抑制攻击。它还可以让你访问我们在 MATLAB 中收集的数据,并且你可以利用这项技术的所有好处,基于我们提供的流量样本使用数据处理、信号处理和机器学习人工智能 (AI)。”

检测和自适应调节算法都使用机器学习,具体说是一种被称为半监督学习的方法。它不需要太多手工标记的数据即可进行训练。Karpowicz 说,“我们在学习算法中编码了一些专业知识,然后让它们自己完成工作。它们的工作是发现世界上正在发生的事情。

他们能在大量的数据中发现统计规律,比如发现某一类型汽车的集群。他说,“这是机器学习的最佳使用场景。在系统投入运行之前,我们不需要先行收集大量数据集对系统进行调节。在安装好的那一刻系统就可开始工作。”

检测器使用“投票”系统来识别异常数据流。它还通过求解方程组来优化矩阵。即使网络行为非线性(其中一些因素的影响不成比例),线性方程也可以捕获到大部分的模式。

研究人员和工程师可以使用 MATLAB 来访问 NASK 的数据集,而且因为许多科技大学都已在使用该数据集,这使得“这种访问非常方便”。NASK 的数据集可谓独一无二,因为其中不仅包含了来自全国各地的流量数据,而且数据采样率非常高。

图片

FLDX 显示不同的流量。(图片所有权:Michal Karpowicz)

NASK 的研究着眼于流量动态、目标漏洞及攻击的源、频率和方法。他们使用 FLDX 来保护公共和商业客户,包括学校和疫苗接种登记服务。赢得网络安全部门同事的信任是一个“巨大的惊喜”。Karpowicz 说道,“在网络安全工程部,科学家需要一定的时间才会赢得尊重。你得显示出你理解他们在做什么,而且你也在做有用的事情。”但凭借 FLDX,“你可以直接进入前线战场。这就是 NASK 的特别之处。我们从实验室到技术和部署的路线极其简短。”

 免费分享一些我整理的人工智能学习资料给大家,整理了很久,非常全面。包括一些人工智能基础入门视频+AI常用框架实战视频、图像识别、OpenCV、NLP、YOLO、机器学习、pytorch、计算机视觉、深度学习与神经网络等视频、课件源码、国内外知名精华资源、AI热门论文等。

下面是部分截图,加我免费领取

目录

一、人工智能免费视频课程和项目

二、人工智能必读书籍

三、人工智能论文合集

四、机器学习+计算机视觉基础算法教程

最后,我想说的是,自学人工智能并不是一件难事。只要我们有一个正确的学习方法和学习态度,并且坚持不懈地学习下去,就一定能够掌握这个领域的知识和技术。让我们一起抓住机遇,迎接未来!

上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以点击链接领取 

二维码详情

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/230894.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ消息的应答

消息的应答机制 消费者完成一个任务可能需要一段时间,如果其中一个消费者处理一个长的任务并仅只完成了部分突然它挂掉了,会发生什么情况。RabbitMQ 一旦向消费者传递了一条消息,便立即将该消息标记为删除。在这种情况下,突然有个…

机器学习:领域自适应学习

训练一个分类器是小问题 上难度 训练数据和测试数据不一致,比如训练数据是黑白的,测试时彩色的,结果准确率非常低。 训练数据和测试数据有点差距的时候,能不能效果也能好呢?这就用到了领域自使用domain adptation 用一…

一款LED段码显示屏驱动芯片方案

一、基本概述 TM1620是一种LED(发光二极管显示器)驱动控制专用IC,内部集成有MCU数字接口、数据锁存器、LED驱动等电路。本产品质量可靠、稳定性好、抗干扰能力强。 二、基本特性 采用CMOS工艺 显示模式(8段6位~10段4位&#xff…

【人工智能Ⅰ】实验2:遗传算法

实验2 遗传算法实验 一、实验目的 熟悉和掌握遗传算法的原理、流程和编码策略,理解求解TSP问题的流程并测试主要参数对结果的影响,掌握遗传算法的基本实现方法。 二、实验原理 旅行商问题,即TSP问题(Traveling Salesman Proble…

Spark on yarn 模式的安装与部署

任务描述 本关任务: Spark on YARN 模式的安装与部署。 相关知识 为了完成本关任务,你需要掌握: Spark 部署模式的种类;Spark on YARN 模式的安装。 Spark 部署模式 Spark 部署模式主要分为以下几种,Spark Stand…

Linux高级IO

文章目录 一.IO的基本概念二.钓鱼五人组三.五种IO模型四.高级IO重要概念1.同步通信 VS 异步通信2.阻塞 VS 非阻塞 五.其他高级IO六.阻塞IO七.非阻塞IO 一.IO的基本概念 什么是IO? I/O(input/output)也就是输入和输出,在著名的冯诺…

MySQL 中的锁(三)

8.7. 死锁和空间锁 一般来说,只要有并发和加锁这两种情况的共同加持下,都会有死锁的身影。 死锁的具体成因,借用我们在并发编程中的内容: 8.7.1. 死锁 8.7.1.1. 概念 是指两个或两个以上的进程在执行过程中,由于竞…

LeetCode(42)有效的字母异位词【哈希表】【简单】

目录 1.题目2.答案3.提交结果截图 链接: 有效的字母异位词 1.题目 给定两个字符串 *s* 和 *t* ,编写一个函数来判断 *t* 是否是 *s* 的字母异位词。 **注意:**若 *s* 和 *t* 中每个字符出现的次数都相同,则称 *s* 和 *t* 互为字…

Matlab下载许可证文件 教程(在账号有许可证的前提下)

文章目录 Part.I IntroductionPart.II 许可证文件过期解决方案Chap.I 使用 Internet 自动激活Chap.II 在不使用 Internet 的情况下手动激活 Part.I Introduction 本文主要介绍,在 Mathwork 账号有许可证的前提下,下载许可证的操作流程。 好久没有用 Mat…

Linux小程序之进度条

> 作者简介:დ旧言~,目前大二,现在学习Java,c,c,Python等 > 座右铭:松树千年终是朽,槿花一日自为荣。 > 目标:自己能实现进度条 > 毒鸡汤: > …

【hacker送书第5期】SQL Server从入门到精通(第5版)

第5期图书推荐 内容简介作者简介图书目录参与方式 内容简介 SQL Server从入门到精通(第5版)》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了SQL Server开发所必需的各方面技术。全书分为4篇共19章,…

觉得可视化地图太难做?那你是没用过它!

后台一直有粉丝私信老李,问到现在各大企业对数据可视化越来越看重,但是感觉那些高大上的图表做起来一定很复杂甚至可能还需要一些编程基础,希望老李可以推荐一些简单好上手的数据可视化工具。   作为一名数据分析爱好者,我也尝试…