关于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. Java实现拓扑排序

    1 问题描述 给定一个有向图,求取此图的拓扑排序序列. 那么,何为拓扑排序? 定义:将有向图中的顶点以线性方式进行排序.即对于任何连接自顶点u到顶点v的有向边uv,在最后的排序结果中,顶点u总是在顶点 ...

  2. Java实现最小费用最大流问题

    1 问题描述 在最大流有多组解时,给每条边在附上一个单位费用的量,问在满足最大流时的最小费用是多少? 2 解决方案 下面代码所使用的测试数据如下图: package com.liuzhen.pract ...

  3. java实现串中找数字

    串中找数字 以下的静态方法实现了:把串s中第一个出现的数字的值返回. 如果找不到数字,返回-1 例如: s = "abc24us43" 则返回2 s = "82445ad ...

  4. java实现第五届蓝桥杯李白打酒

    李白打酒 题目描述 话说大诗人李白,一生好饮.幸好他从不开车. 一天,他提着酒壶,从家里出来,酒壶中有酒2斗.他边走边唱: 无事街上走,提壶去打酒. 逢店加一倍,遇花喝一斗. 这一路上,他一共遇到店5 ...

  5. 01.vue-router的基本使用

    Vue前端路由 1. npm install vue-router --save 2.脚手架安装 一.目录结构 二.index.js // 0.导入vue和路由插件 import Vue from ' ...

  6. 【php】 jsonp转数组函数jsonp_decode

    分享一个可以跟json一样用的函数jsonp_decode,能把jsonp格式数据转为php数组或对象. /**  * 把jsonp转为php数组  * @param string $jsonp js ...

  7. MATLAB作图之二

    "平滑"二维图像可以通过对图像进行插值实现.那么对于一条有大量"毛刺"的曲线,是不是也可以通过插值来平滑呢?答案是肯定的. "平滑"前 x ...

  8. MongoDB 基础知识学习笔记

    注意:本文假设您已经安装好 MongoDB 数据库并启动它了. 连接 MongoDB.数据库操作.集合操作 连接 MongoDB mongo ip:port/dbName -u username -p ...

  9. matlab实现梯度下降法(Gradient Descent)的一个例子

    在此记录使用matlab作梯度下降法(GD)求函数极值的一个例子: 问题设定: 1. 我们有一个$n$个数据点,每个数据点是一个$d$维的向量,向量组成一个data矩阵$\mathbf{X}\in \ ...

  10. GestureDetector手势检测

    Android手势检测器GestureDetector,要创建一个GestureDetector需要传入一个监听器GestureDetector.OnGestureListener. 案例(实现手机相 ...