被攻击服务器相关配置:
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.155

server 192.168.0.154
server 192.168.0.155

server 127.127.1.0
fudge 127.127.1.0 stratum 10

driftfile /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服务被利用做流量攻击以及检测预防手段相关推荐

  1. 什么是DDOS流量攻击,DDoS防护手段

    什么是DDOS流量攻击?全称Distributed Denial of Service,中文意思为"分布式拒绝服务",主要是利用大量合法的分布式服务器对目标发送请求,从而导致正常合 ...

  2. 简单利用路由黑洞解决DDOS流量攻击

    黑洞路由,便是将所有无关路由吸入其中,使它们有来无回的路由,一般是admin主动建立的路由条目. 提到黑洞路由就要提一下null0接口. null0口是个永不down的口,一般用于管理,详见null0 ...

  3. 遇到流量攻击怎么办?DDOS防护怎么做

    我们知道DDOS攻击是通过各种手段消耗网络带宽和系统CPU.内存.连接数等资源,直接造成网络带宽耗尽或系统资源耗尽,使得该目标系统无法为正常用户提供业务服务,从而导致拒绝服务.常规流量型的DDOS防护 ...

  4. 如何利用群控做流量,手机群控引流方法有哪些

    罗振宇,我想这个名字凡事做互联网行业的应该都不陌生,2017年"时间的朋友"跨年演讲至今应该都让大家记忆犹新,历时4个多小时的演讲,全程无尿点.听完感触颇多,关于焦虑,关于拳击与拔 ...

  5. 利用ntp服务同步时间(史上最简单)

    说明(文末附XShell下载地址): 本文仅适用于测试环境下,解决集群时间同步问题. 生产环境ntp服务配置一般不能连外网,需要自行指定一台服务器作为ntp服务器,此服务器可以通过手动设置时间并写入c ...

  6. 渗透测试-----9-拒绝服务(黑客其它的攻击方式)

    拒绝服务(黑客其它的攻击方式) Dos(拒绝服务攻击)不是DOOS 利用程序漏洞或一对一资源耗尽的Denialof service 拒绝服务 DDo S(分布式拒绝服务) 一对一的攻击完全拼各自的资源 ...

  7. 【Linux部署】NTP时间服务器搭建及Linux+Windows客户端使用(一篇学会使用NTP服务)

    1.什么是NTP 百度百科:网络时间协议,英文名称:Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同 ...

  8. ntp如何确认与服务器偏差_CentOS 8 启用 NTP 服务

    NTP 服务是什么和为什么我们需要在我们的服务器启用 NTP 服务? 可能很多人都不是非常了解,简单来说就是我们希望我们服务器的时间是准确的没有偏差的.这个的意义在数据插入和你程序取得计算机时间的时候 ...

  9. 扒一扒流量攻击那些事

    首先常见的网站攻击有两种: 1,流量攻击,就是我们常说的DDOS和DOS等攻击,这种攻击属于最常见的流量攻击中的带宽攻击,一般是使用大量数据包淹没一个或多个路由器.服务器和防火墙,使你的网站处于瘫痪状 ...

最新文章

  1. LeetCode简单题之数组序号转换
  2. 蓝桥杯 扑克序列(全排列)
  3. 结合MongoDB开发LBS应用
  4. Crawler Index Page
  5. 正数数组的最小不可组成和
  6. 【51nod - 1108】距离之和最小 V2(曼哈顿距离,中位数性质)
  7. 【R】语言第四课----读取文件
  8. JMG | 基因PRKG2的变异导致骨骼表型异常
  9. 漫步微积分三十八——流体静力学
  10. Android访问瓦片地图 费流量,瓦片地图服务在线资源访问总结
  11. 微信小程序 服务通知之订阅消息授权公共方法
  12. 远程连接mysql失败异常,未配置权限,skip-name-resolve以及防火墙
  13. 程序员开发常用英语词汇
  14. 图标修改器html,Iconoid(桌面图标修改器)
  15. Hexo博客摘要生成方法
  16. 十年之前..., 十年之后...
  17. 「构建企业级推荐系统系列」推荐系统与精细化运营
  18. 三星公司的开会流程--绝对值得一看
  19. 搭建游戏要选什么样的服务器?
  20. Python基础(十八):学员管理系统应用

热门文章

  1. 书籍推荐——一本老书,吴军老师《数学之美》
  2. JVM学习之---了解JIT
  3. 苹果语音输入最新资讯
  4. 《PCL从入门到精通学习》第六章点云滤波
  5. MySQL之InnoDB主键索引的B+树的高度计算
  6. oracle临时表教程,在oracle存储过程中创建临时表
  7. Android 自定义View java.lang.RuntimeException: Unable to start activity ComponentInfo
  8. 财务软件“新物种”来了!唯你科技“精采智能”领势
  9. 计算机专业进铁路工资待遇,本科生刚进铁路局工资待遇汇总,仅供参考!
  10. 很好用的壁纸网站源码分享,仅供学习,请勿商用。