NTP服务被利用做流量攻击以及检测预防手段
被攻击服务器相关配置:
ip:
eth0: 172.28.9.2
eth1: 192.168.0.2
eth3: 外网IP
某一天发现这台WEB服务器流量一直很高。
开始一直以为是WEB服务的流量很高,根本没往NTP服务那方面想。
因为我设置NTP服务的时候就有考虑到安全问题。
检测过程:
#dstat -N eth3
可以发现发送流量非常大。
后面还用了nethogs和iptraf两个流量分析软件进行了分析。
nethogs是检测进程的流量,但是检测不到UDP的流量,所以一开始也没想到是ntp的引起的。因为ntp用的是123的UDP端口。
iptraf是检测连接到服务器某个端口的流量
这里需要注意了:默认执行iptraf在上面窗口中只会显示TCP流量,而不会显示UDP流量,UDP流量会在下面快速闪现。所以一开始也没注意到是ntp引起的,因为UDP流量没排在上面。后面会讲怎么查看UDP流量。
可以先设置一下iptraf,开启按服务名显示,而不是显示端口号,比较直观。
#iptraf
configure
#iptraf -s eth3
这里一定要加上-s,才能显示UDP流量
这样就会看到ntp的流量非常高,从而可以判断是ntp服务而引起的。
再用#ntpdc -n -c monlist 外网IP
能查看到一堆IP同步过我的ntp服务。
查了一下ntp.conf,发现并没有什么不合理的地方。
ntp.conf
restrict default ignore
restrict 127.0.0.1
restrict -6 ::1
restrict 192.168.0.154
restrict 192.168.0.155server 192.168.0.154
server 192.168.0.155server 127.127.1.0
fudge 127.127.1.0 stratum 10driftfile /var/lib/ntp/drift
broadcastdelay 0.008
authenticate no
keys /etc/ntp/keys
只开放了上一级提供NTP服务的IP地址。
后来回忆了一下,以前的配置文件没有这么严谨,所以当时我对这个配置文件做了修改了。但是当时为了不影响业务,并没有立即重启服务。
所以这次我立即重启ntp服务后,流量就恢复了正常。
注意:
如果有外网IP的服务器,有开ntp服务,restrict开放只能开放内网IP。
或者用iptables防火墙来做限制,比如拒绝从eth3外网访问ntp服务。
配置完ntp后,可以执行
#ntpdc -n -c monlist 外网IP
来检测,如果说超时,得不到数据,说明没问题。
知识点:
什么是NTP服务放大攻击?
标准NTP 服务提供了一个 monlist查询功能,也被称为MON_GETLIST,该功能主要用于监控 NTP 服务器的服务状况,当用户端向NTP服务提交monlist查询时,NTP 服务器会向查询端返回与NTP 服务器进行过时间同步的最后 600 个客户端的 IP,响应包按照每 6 个 IP 进行分割,最多有 100 个响应包。由于NTP服务使用UDP协议,攻击者可以伪造源发地址向NTP服务进行monlist查询,这将导致NTP服务器向被伪造的目标发送大量的UDP数据包,理论上这种恶意导向的攻击流量可以放大到伪造查询流量的100倍。
如何查看是否遭受NTP放大攻击?
如果网络上检测到大流量的UDP 123端口的数据,就可以确认正在遭受此类攻击。
如何防范NTP放大攻击?
1、linux系统升级办法:
升级服务程序版本
将系统中的NTP服务升级到 ntpd 4.2.7p26 或之后的版本,因为 ntpd 4.2.7p26 版本后,服务默认是关闭monlist查询功能的。
关闭服务的monlist查询功能:
首先查询问题主机的REQ_MON_GETLIST和REQ_MON_GETLIST_1请求是否可用。具体操作方法:
ntpq -c rv<localhost/remotehost>
ntpdc -c sysinfo<localhost/remotehost>
ntpdc -n -c monlist<localhost/remotehost> 能查询出同步过时间的主机
如果上述功能可用,可尝试通过修改ntp.conf文件解决问题,具体操作建议是在上述配置文件中增加下面的配置:
IPV4: restrict default ignore
IPv6: restrict -6 default ignore
/*允许发起时间同步的IP,与本服务器进行时间同步,但是不允许修改ntp服务信息,也不允许查询服务器的状态信息(如monlist)*/
另外,还可以配置限制访问命令,如:
restrict default noquery /*允许普通的请求者进行时间同步,但是不允许查询ntp服务信息*/
修改并保存配置文件之后,请重启ntpd服务。
2、windows系统的解决办法:
在ntp.conf配置文件中增加(或修改)“disable monitor”选项,可以关闭现有NTP服务的monlist功能。修改并保存配置文件之后,请重启ntpd服务。
3、网络防范:
在攻击发生时,通过网络设备的ACL丢弃UDP 123端口的数据包。
放大反射 Dos 攻击由 CVE-2013-5211 所致。且这漏洞是与 molist 功能有关。ntpd 4.2.7p26 之前的版本都会去响应 NTP 中的 mode7 monlist 请求。ntpd-4.2.7p26 版本后, monlist 特性已经被禁止,取而代之的是 mrulist 特性,使用 mode6 控制报文,并且实现了握手过程来阻止对第三方主机的放大攻击。
因为 Ubuntu 14.04 默认的 ntpd 版本是 4.2.6p5 ,所以我们可以用禁止 monitor 的方法,直接修改 /etc/ntp.conf 即可
echo “disable monitor” >> /etc/ntp.conf
NTP服务被利用做流量攻击以及检测预防手段相关推荐
- 什么是DDOS流量攻击,DDoS防护手段
什么是DDOS流量攻击?全称Distributed Denial of Service,中文意思为"分布式拒绝服务",主要是利用大量合法的分布式服务器对目标发送请求,从而导致正常合 ...
- 简单利用路由黑洞解决DDOS流量攻击
黑洞路由,便是将所有无关路由吸入其中,使它们有来无回的路由,一般是admin主动建立的路由条目. 提到黑洞路由就要提一下null0接口. null0口是个永不down的口,一般用于管理,详见null0 ...
- 遇到流量攻击怎么办?DDOS防护怎么做
我们知道DDOS攻击是通过各种手段消耗网络带宽和系统CPU.内存.连接数等资源,直接造成网络带宽耗尽或系统资源耗尽,使得该目标系统无法为正常用户提供业务服务,从而导致拒绝服务.常规流量型的DDOS防护 ...
- 如何利用群控做流量,手机群控引流方法有哪些
罗振宇,我想这个名字凡事做互联网行业的应该都不陌生,2017年"时间的朋友"跨年演讲至今应该都让大家记忆犹新,历时4个多小时的演讲,全程无尿点.听完感触颇多,关于焦虑,关于拳击与拔 ...
- 利用ntp服务同步时间(史上最简单)
说明(文末附XShell下载地址): 本文仅适用于测试环境下,解决集群时间同步问题. 生产环境ntp服务配置一般不能连外网,需要自行指定一台服务器作为ntp服务器,此服务器可以通过手动设置时间并写入c ...
- 渗透测试-----9-拒绝服务(黑客其它的攻击方式)
拒绝服务(黑客其它的攻击方式) Dos(拒绝服务攻击)不是DOOS 利用程序漏洞或一对一资源耗尽的Denialof service 拒绝服务 DDo S(分布式拒绝服务) 一对一的攻击完全拼各自的资源 ...
- 【Linux部署】NTP时间服务器搭建及Linux+Windows客户端使用(一篇学会使用NTP服务)
1.什么是NTP 百度百科:网络时间协议,英文名称:Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同 ...
- ntp如何确认与服务器偏差_CentOS 8 启用 NTP 服务
NTP 服务是什么和为什么我们需要在我们的服务器启用 NTP 服务? 可能很多人都不是非常了解,简单来说就是我们希望我们服务器的时间是准确的没有偏差的.这个的意义在数据插入和你程序取得计算机时间的时候 ...
- 扒一扒流量攻击那些事
首先常见的网站攻击有两种: 1,流量攻击,就是我们常说的DDOS和DOS等攻击,这种攻击属于最常见的流量攻击中的带宽攻击,一般是使用大量数据包淹没一个或多个路由器.服务器和防火墙,使你的网站处于瘫痪状 ...
最新文章
- LeetCode简单题之数组序号转换
- 蓝桥杯 扑克序列(全排列)
- 结合MongoDB开发LBS应用
- Crawler Index Page
- 正数数组的最小不可组成和
- 【51nod - 1108】距离之和最小 V2(曼哈顿距离,中位数性质)
- 【R】语言第四课----读取文件
- JMG | 基因PRKG2的变异导致骨骼表型异常
- 漫步微积分三十八——流体静力学
- Android访问瓦片地图 费流量,瓦片地图服务在线资源访问总结
- 微信小程序 服务通知之订阅消息授权公共方法
- 远程连接mysql失败异常,未配置权限,skip-name-resolve以及防火墙
- 程序员开发常用英语词汇
- 图标修改器html,Iconoid(桌面图标修改器)
- Hexo博客摘要生成方法
- 十年之前..., 十年之后...
- 「构建企业级推荐系统系列」推荐系统与精细化运营
- 三星公司的开会流程--绝对值得一看
- 搭建游戏要选什么样的服务器?
- Python基础(十八):学员管理系统应用
热门文章
- 书籍推荐——一本老书,吴军老师《数学之美》
- JVM学习之---了解JIT
- 苹果语音输入最新资讯
- 《PCL从入门到精通学习》第六章点云滤波
- MySQL之InnoDB主键索引的B+树的高度计算
- oracle临时表教程,在oracle存储过程中创建临时表
- Android 自定义View java.lang.RuntimeException: Unable to start activity ComponentInfo
- 财务软件“新物种”来了!唯你科技“精采智能”领势
- 计算机专业进铁路工资待遇,本科生刚进铁路局工资待遇汇总,仅供参考!
- 很好用的壁纸网站源码分享,仅供学习,请勿商用。