NIDS——suricata(三)

news2024/11/25 20:18:40

一、监控ICMP流量

1、ICMP流量特征

        四大特征分别为:消息类型(Type)、代码(Code)、校验和(Checksum)、数据字段(Data Field)。这里我们使用 type消息类型。

        ICMP 消息的类型字段标识了消息的类型。常见的类型包括回显请求(Echo Request,类型 8),回显应答(Echo Reply,类型 0),目的不可达(Destination Unreachable,类型 3),超时(Time Exceeded,类型 11)等。

        而 ping 命令就是利用 ICMP 回显请求和回显应答来检查网络连接的连通性。

2、获取ICMP流量

通过ping的方式来获取该流量

ping ip        

ping了四次

锁定特征

 

构造规则

在suricata中与Type* 8对应的是itype: 8,因此无需再写prce或content

 alert icmp $EXTERNAL_NET any <> $HOME_NET any (msg:"icmp流量检测"; itype:8;threshold: type threshold,track by_src,count 10,seconds 20;sid:561011;)

threshold:用于设定和定义基于特定条件的阈值规则。

type threshold:设定规则为阈值类型,还可以是type rate等,限制速率,防止DDOS攻击。

track by_src:根据源 IP 地址来跟踪请求。

count 10,seconds 20:20秒内发生10次.

意思是:在20秒内连续ping10次就触发警告。

添加测试

 添加:

测试:

成功

二、监控TCP流量

1、预警TCP连接过高(全连接)

        所谓的全连接简单来说就是建立TCP连接的过程,确保双方都准备好进行通信。攻击者通过构建大量的全连接使服务器崩溃。

  规则构建:

flow:established,to_server这是关键字

flow:to_client, established:匹配从服务器到客户端的已建立连接的数据包。
flow:to_server, established, only_stream:匹配从客户端到服务器的已建立连接的数据包,并且这些数据包属于单一的数据流。
flow:to_server, not_established, no_frag:匹配从客户端到服务器的数据包,但这些数据包不属于已建立的连接,并且不允许是分片的。

alert tcp $EXTERNAL_NET any <> $HOME_NET any (msg:"tcp连接过高,请及时检测!(全)"; flow:established,to_server;threshold: type threshold,track by_src,count 20,seconds 10;sid:561013;)

写入规则与测试:

写入:

测试:

在kali中使用如下命令安装wrk:
apt install wrk

全连接攻击:

wrk -c 300 -t 4 -d 600 http://192.168.248.134/pikachu
-c, 跟主机保持连接数量
-d, 测试持续时间
-t, 开启线程数

成功 

三、监控SSH流量

1、抓取登录失败流量

分析:

        ssh登录时客户端和服务端会交换密钥然后产生新的密钥New Keys,ssh在爆破时会产生很多次New Keys,这就是ssh爆破的一个特征。

        其中每个New Keys的最后都是如下图这样:

框住的是16进制。

2、构建规则

根据上述的特征,先构建正则表达式,匹配New Keys中的最后的内容

prce:"|15 00 00 00 00 00 00 00 00 00 00|"

构建整个规则:

alert ssh any any <> $HOME_NET 22 (msg:"SSH爆破"; content: "|15 00 00 00 00 00 00 00 00 00 00|"; threshold: type threshold, track by_src, count 2, seconds 20; sid:5622002;)

四、MySql预警

1、登录失败预警

(1)保证系统的mysql可以远程连接

这里我使用的是xampp中的自带的mysql,初始时是没有密码的

修改成如下如这样就可以远程连接了:

测试远程连接


远程连接成功。

(2)抓取流量

 查看wireshark抓取的流量信息

成功时:

既然成功了,也没必要提醒了。

失败时:

查看失败流量:

(3)编写规则

锁定关键点:

Error message: Access denied for user 'root'@'192.168.164.1' (using password: YES)

中的:

Access denied for user

编写规则:

首先要在/etc/suricata/suricata.yaml添加一个MySql端口(3306)的变量:

vi etc/suricata/suricata.yaml 

我这里没有设置,直接填写为3306

Suricata默认并没有提供对MySQL的应用层协议的支持,所以只能使用TCP协议。

规则:

alert tcp any any <> any 3306 (msg:"MySQL登录失败"; content:"Access denied for user"; nocase; sid:5620001;)

(4)添加规则并测试:

添加:

测试:

成功

2、Mysql爆破预警

 1、编写规则

在登录失败的基础上加上阈值来构建MySql爆破的监控规则:

alert tcp any any <> any 3306 (msg:"MySQL爆破攻击"; content:"Access denied for user"; nocase; threshold: type threshold, track by_src, count 5, seconds 10; sid:5620002;)

2、添加规则并测试

 添加:

测试:

成功

3、MySql木马写入

1、锁定语句:

select "<?php eval($_POST['code']); ?>" into outfile "/opt/shell.php";

2、构建规则 

alert tcp any any <> any 3306 (msg:"MySQL木马写入"; content:"into outfile"; nocase; pcre: "/eval|assert|system|_POST|_GET/i"; sid:5620004;)

3、添加规则与测试

 测试:

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Cookie、Web Storage介绍

概述 Cookie、LocalStorage、SessionStorage、IndexDB这些作为浏览器的存储入口&#xff0c;也是经典的八股文了&#xff0c;本文再次冷饭热吃来介绍这些API&#xff0c;主要是因为在其他文章中看到了一些个人感觉有用的小知识点&#xff0c;所以在这记录一下&#xff0c;以便…

招加盟商视频怎么拍效果好?

一定没有人比我更适合分享这篇文章了&#xff0c;我自己曾经就是做宣传片的&#xff0c;而且还有一家酸奶品牌做全国招商。 我来分享下加盟招商视频怎么拍效果好&#xff1f; 一、定脚步 说个题外话&#xff0c;以前我做传媒公司的时候&#xff0c;很多客户找我做宣传片&…

Ubuntu系统Docker部署数据库管理工具DbGate并实现远程查询数据

文章目录 前言1. 安装Docker2. 使用Docker拉取DbGate镜像3. 创建并启动DbGate容器4. 本地连接测试5. 公网远程访问本地DbGate容器5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定公网地址远程访问 前言 本文主要介绍如何在Linux Ubuntu系统中使用Docker部署DbGate数…

Windows安装字体的几种方式

1.选中你要安装的字体&#xff0c;然后右键&#xff0c;点击“为所有用户安装”&#xff0c;这样字体就会安装在C:\Windows\Fonts&#xff1b;如果你点了“安装”&#xff0c;那么就会安装在C:\Users\你电脑用户的名字\AppData\Local\Microsoft\Windows\Fonts。 像电脑自带的字…

strncmp函数的使用

目录 1.头文件 2.strncmp函数的使用 小心&#xff01;VS2022不可直接接触&#xff0c;否则&#xff01;没这个必要&#xff0c;方源面色淡然一把抓住&#xff01;顷刻炼化&#xff01; 1.头文件 strncmp函数的使用需要头文件 #include<string.h> 2.strncmp函数的使用 …

第一篇:教你轻松部署本地大模型(Ollama)

一、前言 搞研发的&#xff0c;想学习大模型的&#xff0c;很多都想本地部署一波&#xff0c;体验一下&#xff0c;部署是学习的第一步&#xff0c;我们不仅仅是要理论的巨人&#xff0c;还要成为实战的专家。不要恐惧&#xff0c;不要恐惧&#xff0c;不要恐惧&#xff0c;重…

【数学建模】典型相关分析

典型相关分析&#xff08;Canonical Correlation Analysis, CCA&#xff09;是一种统计方法&#xff0c;用于寻找两个多变量数据集之间的线性关系。这种分析方法可以用来衡量两个数据集之间的相关性&#xff0c;并找出能够最好地解释这种相关性的变量组合。 典型相关分析的基本…

Android系列基础知识总结

四大组件 Activity Activity生命周期 不同场景下Activity生命周期的变化过程 启动Activity&#xff1a; onCreate()—>onStart()—>onResume()&#xff0c;Activity进入运行状态。Activity退居后台&#xff1a; 当前Activity转到新的Activity界面或按Home键回到主屏&a…

WebGL系列教程二(环境搭建及着色器初始化)

目录 1 前言2 新建html页面3 着色器介绍3.1 顶点着色器、片元着色器与光栅化的概念3.2 声明顶点着色器3.3 声明片元着色器 4 坐标系(右手系)介绍5 着色器初始化5.1 给一个画布canvas5.2 获取WebGL对象5.3 创建着色器对象5.4 获取着色器对象的源5.5 绑定着色器的源5.6 编译着色器…

好看好听的小猪包扩音器,轻巧便携更好用,得胜E10上手

我们以前在学校、景区等地方&#xff0c;都见过教师、讲解员所使用的扩音器&#xff0c;这类设备大多做得笨重粗糙&#xff0c;而且音质一般&#xff0c;声音特别粗糙刺耳&#xff0c;对使用者和旁观者影响都不好。最近我发现了一款得胜E10扩音器&#xff0c;大大提升了这种便携…

HTTPX 与 AIOHTTP 与 Requests:选择哪个?

Python 有三个众所周知的库用于发送 HTTP&#xff08;超文本传输协议&#xff09;请求&#xff1a; HTTPX、AIOHTTP 和 Requests。 所有这些都有其独特的优点和缺点。 通常&#xff0c;您需要对同步 HTTP 请求使用 Requests&#xff0c;在需要同步和异步混合时使用 HTTPX&#…

场景解决方案丨突破成本限制,中小企业如何快速搭建后台管理系统

信息化时代下业务数据量激增&#xff0c;云计算、物联网、人工智能等技术的成本大幅度降低及普及&#xff0c;这些变化推动着市场需求发生改变&#xff0c;使数字化转型成为各行业的共同趋势。在这一背景下&#xff0c;大型企业利用其经济和技术优势巩固市场领导地位&#xff0…

养宠浮毛严重怎么清理?希喂、范罗士、IAM宠物空气净化器真实测评

宠物毛发不等于宠物浮毛&#xff1f;这可真是问到我的知识盲区了。养猫来我已经接受了目光所及之处都是猫毛&#xff0c;可以心平气和的打扫被猫毛占据的屋子。自认为是很勤快的人&#xff0c;家里也一直保持着干净整洁&#xff0c;结果上星期鼻子不舒服去看医生&#xff0c;告…

发现一个有趣的滑动组件样式,并给它实现了

最近在浏览网站的时候看到一个有趣的滑动组件的样式&#xff0c;觉得很有趣。一时有兴趣就去用代码实现了一下&#xff1a; 这里我就不从零开始实现了&#xff0c;借用 Material UI Slider 快速实现&#xff0c;基本上就是重新写样式覆盖。 Material UI 上的 Slider 组件默认样…

面试产品经理,怎样描述过往经历,才能让面试官印象深刻?

金三银四求职季&#xff0c;你是不是也有面试的冲动&#xff01;但面试并不是头脑一热就能取得好结果&#xff0c;在此之前&#xff0c;必须得有周全的准备&#xff0c;才能应对好面试官的“连环问”&#xff01; 所以&#xff0c;给大家分享这篇产品经理面试干货文章&#xf…

【数学建模】相关系数

第一部分&#xff1a;相关系数简介 总体与样本&#xff1a; 总体&#xff1a;指研究对象的全体&#xff0c;比如全国人口普查数据。样本&#xff1a;从总体中抽取的一部分个体&#xff0c;如通过问卷调查收集的学生数据。 皮尔逊相关系数&#xff1a; 总体皮尔逊相关系数&…

GPIO(General Purpose Input/Output)输入/输出

GPIO最简单的功能是输出高低电平&#xff1b;GPIO还可以被设置为输入功能&#xff0c;用于读取按键等输入信号&#xff1b;也可以将GPIO复用成芯片上的其他外设的控制引脚。 STM32F407ZGT6有8组IO。分别为GPIOA~GPIOH&#xff0c;除了GPIOH只有两个IO&#xff0c;其余每组IO有…

cesium.js 入门到精通(5)

现在我们看这个地图是 属于一个平面的 如果我们想把这个弄成 那种真实的高低起伏的 山脉 或者 其他的建筑显示 我们可以使用 添加地形 terrainProvider: new Cesium.CesiumTerrainProvider({url: "./terrains/gz",}), 这是一个参数 配置 地形 整体代码 <templa…

vba发邮件:如何设置自动化发送电子邮件?

vba发邮件的技巧有哪些&#xff1f;VBA如何调用outlook发邮件&#xff1f; VBA发邮件功能是一个非常实用的工具&#xff0c;能够帮助用户自动发送电子邮件&#xff0c;减少手动操作的时间和错误。AokSend将详细介绍如何通过VBA发邮件来实现自动化发送电子邮件的设置。 VBA发邮…

macOS上谷歌浏览器的十大隐藏功能

谷歌浏览器&#xff08;Google Chrome&#xff09;在macOS上拥有一系列强大而隐蔽的特性&#xff0c;这些功能能显著提高您的浏览体验。从多设备同步到提升安全性和效率&#xff0c;这些被低估的功能等待着被发掘。我们将逐步探索这些功能&#xff0c;帮助您最大化利用谷歌浏览…