关于Snort

snort有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上。数据包记录器模式把数据包记录到硬盘上。网路入侵检测模式是最复杂的,而且是可配置的。我们可以让snort分析网络数据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。

安装配置Snort

下载安装包及规则:www.snort.org(下面我使用的安装包版本为2.9.16 x86,x64会有抓不到包的问题,规则包为29160)

提前安装Winpcap,因为snort需要基于Winpcap抓包的

安装Snort,默认选项一直单击下一步直至安装完成

在snort\bin目录下执行命令,查看snort信息,snort安装完成

snort -V

实现Snort的IDS功能

配置snort

下载规则库后解压

将preproc_rules,rules,so_rules替换到snort目录下,如下:

修改配置文件snort\etc\snort.conf

var RULE_PATH ../rules
var SO_RULE_PATH ../so_rules
var PREPROC_RULE_PATH ../preproc_rules

修改为你的安装目录:

# path to dynamic preprocessor libraries
dynamicpreprocessor directory /usr/local/lib/snort_dynamicpreprocessor/ # path to base preprocessor engine
dynamicengine /usr/local/lib/snort_dynamicengine/libsf_engine.so # path to dynamic rules libraries
dynamicdetection directory /usr/local/lib/snort_dynamicrules

后两条暂时用不到,所以直接注释掉,修改为:

这里也暂时用不着,注释掉,否则后面会报错:

这里是规则库,对符合过滤规则的进行匹配,我先注释掉,只留一条include $RULE_PATH/local.rules

开始操作

在snort\rules目录下local.rules文件中最下添加一条

alert tcp any any -> 192.168.134.0/24 80 (content:"and"; msg: "SQL inject attack"; sid:1000001)

这句话的意思是发出警告,tcp流量,任何地址的任何端口到目标ip:192.168.134.0/24的80端口的流量做匹配,匹配规则为'and',报警消息为'SQL inject attack',规则编号1000001(自定义规则必须写,且不能重复)

在一台虚拟机上搭起web服务

查看下本机网卡

snort -W

将cmd路径移到bin目录下,执行命令

snort -i2 -dev -l E:\Snort2.9.16\Snort\log -c E:\Snort2.9.16\Snort\etc\snort.conf

选择网卡2(选择哪个,则会抓哪个网卡的包),这里会输出日志文件到log目录,使用snort.conf配置,注意这里如果conf配置有问题的话,执行命令会报错,我曾解决报错问题解决了一整天

如果报错有winpacp,更换snort包为x86,其它配置各种报错都有,只要按照流程就不会报错,最开始我也是按照流程的,还是报错,解决办法:规则文件和安装包版本匹配(我也不知道为什么)反正是不报错了,还是报错的话,把规则包中的etc文件也替换进去,然后重新配置snort.conf(QAQ,这里我也不知道为什么,按说是一样的,但是我记得我是这么做了就不报错了)

成功执行后:

已经开始抓包了,我们看一下日志

没有什么关键信息,我们去刷新网页

这里再查看日志,还是没有任何变化

重新刷新地址

http://192.168.134.135/?id=1%20and%201=1

再次查看日志,攻击匹配并记录下来了

cmd页面也显示出了流量包内容,注意,在真实环境,不建议打印出来,因为这样会增加snort的负荷,可能会丢包

Windows 10 搭键开源IDS-Snort,简单过滤注入的更多相关文章

  1. Windows 10 版本 1507 中的新 AppLocker 功能

    要查看 Windows 10 版本信息,使用[运行]> dxdiag  回车 下表包含 Windows 10 的初始版本(版本 1507)中包括的一些新的和更新的功能以及对版本 1511 的 W ...

  2. [转帖]为微软效力15年的微软前员工解释Windows 10为什么问题这么多

    为微软效力15年的微软前员工解释Windows 10为什么问题这么多 https://www.cnbeta.com/articles/tech/892109.htm . 测试团队已经被裁撤 . 自动化 ...

  3. GitHub 上 10 款免费开源 Windows 工具

    GitHub 上 10 款免费开源 Windows 工具 GitHub 是如今所有开源事物的中央仓库, 这个网站最近发布了一个叫做<2016 Octoverse  状态报告>,详细列出了从 ...

  4. 机甲大师S1机器人编程学习,Windows 10 安装Scratch和简单实例学习

    机甲大师S1支持 Scratch 3.0以上版本. Scratch官方网址:https://scratch.mit.edu/  最新版本为3.4.0 今天在Windows 10上,安装最新版本. 1. ...

  5. [开源中国]Windows 10 全球市场份额正式超越 Windows 7

    Windows 10 全球市场份额正式超越 Windows 7 全球知名科技数据调查公司 Netmarketshare 昨天发布了2018年12月份最新的桌面操作系统份额报告.对于微软来说,这是历史一 ...

  6. Windows 10系统专业精简

    第1页:捆绑应用一键卸载 随着微软彻底放弃win7的更新,win8的弱势,新一代的win10系统则成为了微软着力打造的王牌系统. 作为微软最新的王牌产品,win10系统从功能到外观都有着超过前代产品的 ...

  7. 如何通过官方渠道为Windows 10 添加具有中国特色的字体

    Windows 10的变化细节上个人认为要比Windows 8多很多,而且很多功能找到之后还是小惊喜,就是挺多好用的地方居然都不正经宣传一下,微软真是搞得悄悄地干活? 今天为大家介绍一下通过官方途径添 ...

  8. 《连载 | 物联网框架ServerSuperIO教程》-4.如开发一套设备驱动,同时支持串口和网络通讯。附:将来支持Windows 10 IOT

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  9. 背水一战 Windows 10 (37) - 控件(弹出类): MessageDialog, ContentDialog

    [源码下载] 背水一战 Windows 10 (37) - 控件(弹出类): MessageDialog, ContentDialog 作者:webabcd 介绍背水一战 Windows 10 之 控 ...

随机推荐

  1. 类似-Xms、-Xmn这些参数的含义:

    类似-Xms.-Xmn这些参数的含义: 答: 堆内存分配: JVM初始分配的内存由-Xms指定,默认是物理内存的1/64 JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4 默认空余堆内存小于 ...

  2. Spring 源码学习 - 单例bean的实例化过程

    本文作者:geek,一个聪明好学的同事 1. 简介 开发中我们常用@Commpont,@Service,@Resource等注解或者配置xml去声明一个类,使其成为spring容器中的bean,以下我 ...

  3. 教科书级讲解,秒懂最详细Java的注解

    所有知识体系文章,GitHub已收录,欢迎Star!再次感谢,愿你早日进入大厂! GitHub地址: https://github.com/Ziphtracks/JavaLearningmanual ...

  4. 计算从1到n中,出现某位数字的次数

    出现1-9中某位数字次数的算法 /** * @param input 整数n(1 ≤ n ≤ 1,000,000,000) * @return 1-9中某个数字在数列中出现的次数 */ public ...

  5. HDU-4341 Gold miner 题解

    题目大意 黄金矿工的游戏,不过每个金块可以看做是质点,没有大小,给出每个金块的坐标.抓取所花费的时间(包括返回的时间),以及价值,其中有一些金块可能会共线.求在规定时间内所获得的最大价值. 样例 样例 ...

  6. 使用Volo.Abp.MailKit发送邮件

    Volo.Abp.MailKit封装继承MailKit库,为Abp邮件发送提供了快捷实现. 邮箱配置 qq邮箱支持smtp功能,需要去申请开通.参考qq邮箱设置,最重要的是smtp发送邮件,qq邮箱对 ...

  7. Centos 7 k8s Deployment新副本控制器

    一.概念 Kubernetes提供了一种更加简单的更新RC和Pod的机制,叫做Deployment.通过在Deployment中描述你所期望的集群状态,Deployment Controller会将在 ...

  8. 09.Django-信号

    目录 Django中的信号及其用法 Django中内置的signal 内置信号的使用 自定义信号 Django中的信号及其用法 Django中提供了"信号调度",用于在框架执行操作 ...

  9. String 的格式化

    使用场景 用于生成redis等key-value 结构的key的格式化,方便管理 eg: String.format(RedisKeys.PURCHASE_ADD_BABY_LOCK,form.get ...

  10. webstorm 快捷键 失效问题

    解决方案一:  file->Settings->Keymap->设置为Default 解决方案二:  file->Settings->IdeaVim->取消对勾 重 ...