精华内容
下载资源
问答
  • ntp攻击-源码

    2021-03-03 13:09:13
    ntp攻击 请先安装zmap解压缩git 克隆并解压git clone https://github.com/Scholar-m/ntp-attack && cd ntp-attack && unzip ntp.zip 扫描列表zmap -p 123 -M udp --probe-args=file:ntp_123_monlist.pkt -o 1.txt 提...
  • NTP攻击针对一个端口

    2020-03-20 16:04:05
    我的阿里云服务器最近频繁遭到NTP攻击,换成Windows系统后攻击流量翻倍。 禁用了受攻击的端口(在安全组和windows防火墙禁用该端口UDP和TCP),还是能够正常攻击。 广大的CSDN博友们帮忙一下。
  • 转自:http://drops.wooyun.org/tips/4715NTP 漏洞相关的文章在 Drops 已经有过了,并且不止...0x00 简介NTP 放大攻击其实就是 DDoS 的一种。通过 NTP 服务器,可以把很小的请求变成很大的响应,这些响应可以直接指...

    转自:http://drops.wooyun.org/tips/4715

    NTP 漏洞相关的文章在 Drops 已经有过了,并且不止一篇,之所以又翻译了这一片文章,是觉得文章的整体思路很不错,希望对看这篇文章的你有所帮助。

    BTW:本文翻译比较随意,但是并没有破坏原文含义。

    0x00 简介

    NTP 放大攻击其实就是 DDoS 的一种。通过 NTP 服务器,可以把很小的请求变成很大的响应,这些响应可以直接指向到受害者的电脑。

    NTP 放大使用的是 MONLIST 命令。MONLIST 命令会让 NTP 服务器返回使用 NTP 服务的最后 600 个 客户端 IP。通过一个有伪造源地址的 NTP 请求,NTP 服务器会将响应返回给那个伪造的 IP 地址。你可以想象,如果我们伪造受害者的 IP 对大量的 NTP 服务器发送 MONLIST 请求,这将形成 DOS 攻击。

    显然我们不能容忍这样做,但我比较有兴趣的是去发现有多少 NTP 服务器能够发大这种数据。他不是什么新的攻击,所以你希望不会有太多的 NTP 服务器支持 MONLIST 命令。

    0x01 如何去做

    为了确定有多少 NTP 服务器响应 MONLIST 请求,我会通过两个独立的部分去做。

    第一部分

    在第一部分,通过 masscan 工具,对 UDP 的 123 端口进行扫描,扫描结果保存到 ntp.xml 文件中,命令如下:

    ./masscan -pU:123 -oX ntp.xml --rate 160000 101.0.0.0-120.0.0.0

    由于我的服务器带宽比较小,如果选择全网扫描,肯定会较慢,所以我随机的选择了一个 IP 段:101.0.0.0-120.0.0.0。

    扫描完成后,会把 UDP 123 端口开放的设备保存在 XML 文件中。不知道什么原因,我的扫描结果 xml 文件中包含了许多重复的记录,我写了一个 python 脚本用于处理这些重复的记录,去重后的结果会保存到 port123.txt 文件中。

    代码如下:

    from lxml import etree

    port = None

    address = None

    parsedServers = []

    #Opens the file used to store single enteries.

    outputFile = open('port123.txt', 'a')

    #Iterates through the masscan XML file.

    for event, element in etree.iterparse('ntp.xml', tag="host"):

    for child in element:

    if child.tag == 'address':

    #Assigns the current iterations address to the address variable.

    address = child.attrib['addr']

    if child.tag == 'ports':

    for a in child:

    #Assigns the current iterations port to the port variable.

    port = a.attrib['portid']

    #is both port and IP address are present.

    if port > 1 and address > 1:

    #If the IP hasnt yet been added to the output file.

    if address not in parsedServers:

    print address

    #Write the IP address to the file.

    outputFile.write(address + '\n')

    #write the IP to the parsedServers list

    parsedServers.append(address)

    port = None

    address = None

    element.clear()

    outputFile.close()

    print 'End'

    这个脚本运行后,port123.txt 文件中包含开放 UDP 123 端口并且去重后的所有 IP。

    第二部分

    在第二部分中我们主要来确定 port123.txt 中的 IP 的 123 端口是否运行 NTP 服务,如果是 NTP 服务,是否响应 MONLIST 请求。

    我写了一个 python 脚本来实现上面的需求,主要用到 scapy 库。

    首先我导入我脚本需要的所有库,并且定义一些变量:

    from scapy.all import *

    import thread

    然后我构造了发给 NTP 服务器的 MONLIST 请求的原始数据。在这个过程中我发现请求的数据必须达到一定的值服务器才会返回数据,具体原因不清楚。只要请求超过 60 字节,服务器就会返回数据,因此我下面的代码中有 61 个\x00 字符。

    rawData = "\x17\x00\x03\x2a" + "\x00" * 61

    在 python 脚本中我打开了两个文件:port123.txt 是 masscan 发现的开放 UDP 123 端口的 IP 地址,monlistServers.txt 是用于保存支持 MONLIST 命令的 NTP 服务器。

    logfile = open('port123.txt', 'r')

    outputFile = open('monlistServers.txt', 'a')

    然后我定义了一个叫 sniffer 的函数,这个函数的作用主要就是监听在 48769 端口上的 UDP 数据,这个端口是发送 MONLIST 请求的源端口,只要任何 NTP 服务器响应 MONLIST 请求,都将响应到这个端口上。目标网络地址是你的 IP 地址,NTP 服务器的响应将返回到这个 IP 上,在本文中,我讲设置这个 IP 为:99.99.99.99。

    def sniffer():

    sniffedPacket = sniff(filter="udp port 48769 and dst net 99.99.99.99", store=0, prn=analyser)

    任何符合 UDP 端口 48769 的数据包都会被捕获到,并且会放到 analyser 函数中,稍后我讲介绍 analyser 函数。

    sniffer 定义好了,并且会在线程中执行,同时会放到后台运行。

    thread.start_new_thread(sniffer, ())

    接下来,我遍历 masscan 发现的所有 IP 地址。对于每个 IP 地址我都会发送一个源端口为 48769,目的端口是 123 的 UDP 数据包,数据包就是我们前面构造的 rawData。实际上这个就是对所有的 IP 发送 MONLIST 请求。

    for address in logfile:

    send(IP(dst=address)/UDP(sport=48769, dport=123)/Raw(load=rawData))

    只 要有 NTP 服务器响应 MONLIST 请求,这个响应数据将会被运行在线程中 sniffer 抓取,sniffer 会把所有接收到的数据放到 analyser 函数中处理,而 analyser 函数会检查捕获到的数据包,并且确定包的大小超过 200 字节。在实际的测试中我发现,如果 NTP 服务器不响应 MONLIST 请求,响应包的大小通常在 60-90 字节,或者不存在响应包。如果 NTP 服务器响应 MONLIST 请求,响应包就会比较大,一般包含多个响应包,通常每个包为 480 字节。所以只要检查到所接收的响应包是大于 200 字节就表示该 NTP 服务器支持 MONLIST 请求。最后我们会把响应包大约 200 字节的 IP 地址写入到 outputFile。

    if len(packet) > 200:

    if packet.haslayer(IP):

    outputFile.write(packet.getlayer(IP).src + '\n')

    通常如 果 NTP 服务器支持 MONLIST 请求,那么它将会返回多个数据包用于包含使用 NTP 服务的 IP 地址。因为 sniffer 会捕捉所有符合条件的数据包,所以 outputFile 文件中将会有许多重复的数据。我通过 sort 和 uniq 命令来对 outputFile 文件进行去重。

    sort monlistServers.txt | uniq

    这个结果文件中包含所有支持 MONLIST 命令的 NTP 服务器。

    完整的 python 脚本如下:

    from scapy.all import *

    import thread

    #Raw packet data used to request Monlist from NTP server

    rawData = "\x17\x00\x03\x2a" + "\x00" * 61

    #File containing all IP addresses with NTP port open.

    logfile = open('output.txt', 'r')

    #Output file used to store all monlist enabled servers

    outputFile = open('monlistServers.txt', 'a')

    def sniffer():

    #Sniffs incomming network traffic on UDP port 48769, all packets meeting thease requirements run through the analyser function.

    sniffedPacket = sniff(filter="udp port 48769 and dst net 99.99.99.99", store=0, prn=analyser)

    def analyser(packet):

    #If the server responds to the GET_MONLIST command.

    if len(packet) > 200:

    if packet.haslayer(IP):

    print packet.getlayer(IP).src

    #Outputs the IP address to a log file.

    outputFile.write(packet.getlayer(IP).src + '\n')

    thread.start_new_thread(sniffer, ())

    for address in logfile:

    #Creates a UDP packet with NTP port 123 as the destination and the MON_GETLIST payload.

    send(IP(dst=address)/UDP(sport=48769, dport=123)/Raw(load=rawData))

    print 'End'

    0x02 最后

    正如我前面所提到的,我的带宽实在是太小了,所以我只能够选择一个 IP 段:101.0.0.0-120.0.0.0。如果我的数学不是体育老师教的话,那么我应该不会算错,这个 IP 段内包含 318,767,104 个 IP 地址(19256256)。

    masscan 发现 253,994 个设备开放了 UDP 的 123 端口,占了扫描 IP 的 0.08%。

    在 253,994 个设备中,支持 MONLIST 命令的设备有 7005 个,占比为 2.76%。

    如果按照这个比例进行换算的话,那个整个互联网上将有 91,000 台开启 MONLIST 功能的 NTP 服务器。

    over!

    展开全文
  • NTP放大攻击

    2020-11-03 14:15:56
    本节学习NTP放大攻击 1、简介 Network Time Protocol 保证网络设备时间同步电子设备互相干扰导致时钟差异越来越大,影响应用正常运行、日志审计不可信服务端口UDP 123 攻击原理 NTP 服务提monlist (MON_GETLIST...

    前言

    本节学习NTP放大攻击

    1、简介

    Network Time Protocol

    • 保证网络设备时间同步
    • 电子设备互相干扰导致时钟差异越来越大,影响应用正常运行、日志审计不可信
    • 服务端口UDP 123

    攻击原理

    • NTP 服务提monlist (MON_GETLIST) 查询功能,监控NTP 服务器的状况
    • 客户端查询时,NTP服务器返回最后同步时间的600 个客户端IP,每6个IP一个数据包,最多100个数据包(放大约100倍)

    2、攻击尝试

    服务器ubantu
    IP:192.168.1.115

    #安装 ntp
    apt-get install ntp
    netstat -tulnp | grep 123
      

    攻击者kali

    #扫描发现 ntp 服务器
    nmap -sU -p 123 192.168.1.0/24 --open
    nmap -sU -p 123 -sV 192.168.1.115
    #扫描发现漏洞
    ntpdc -n -c monlist 192.168.1.115
    192.168.1.115: timed out, nothing received
    ***Request timed out    # 说明不存在漏洞
      

    服务器ubantu

    #配置 ntp 服务器配置
    vi /etc/ntp.conf
    #注释 38 和 39行
    # restrict -4 default kod notrap nomodify nopeer noquery limited 
    # restrict -6 default kod notrap nomodify nopeer noquery limited #把这两行注释掉
    /etc/init.d/ntp restart
      

    攻击者kali

    #扫描发现漏洞
    ntpdc -n -c monlist 192.168.1.115
    ntpq -c rv 192.168.1.115
    ntpdc -c sysinfo 192.168.1.115
      
      展开全文
    • ntp放大攻击In recent weeks the cyber security community has been stunned by attacks that blow away all previous records of size and strength. The cause? A new DDoSmethod on the scene, called NTP. Read...

      ntp放大攻击

      In recent weeks the cyber security community has been stunned by attacks that blow away all previous records of size and strength. The cause? A new DDoSmethod on the scene, called NTP. Read on to learn how these attacks are leveraging outdated commands to create DDoS attacks of massive proportions.

      最近几周,网络安全社区被攻击破坏了,这些攻击摧毁了以前所有的大小和强度记录。 原因? 场景中出现了一种新的DDoS方法,称为NTP。 继续阅读以了解这些攻击如何利用过时的命令来创建大规模的DDoS攻击。

      NTP和MONLIST (NTP and MONLIST)

      Network Time Protocol or NTP is a handy mechanism on most modern connected devices that communicates between other devices to synchronise time. The useful protocol constantly sends out time requests and confirmations within its network. NTP is so accurate it can maintain time between computers within tens of milliseconds.

      网络时间协议或NTP是大多数现代连接设备上的便捷机制,该设备在其他设备之间进行通信以同步时间。 有用的协议不断在其网络内发出时间请求和确认。 NTP非常精确,可以将计算机之间的时间保持在数十毫秒之内。

      The primary time-keeping function of NTP is not a problem. The issue in the protocol is the MONLIST command – a feature that allows devices to request the previous 600 servers the machine has contacted to sync watches.

      NTP的主要计时功能没有问题。 协议中的问题是MONLIST命令-一种功能,该功能允许设备请求计算机已连接的之前的600台服务器以同步手表。

      Hackers manipulate this command to amplify data requests by a factor of up to 600x with the goal of overwhelming the Network Layer of a target server. To accomplish the DDoS, they send MONLIST request packets to NTP vulnerable servers, who are then instructed to relay the data request to the target. The final result is a deluge of packet requests that are so large an unprotected target server must go offline to recover.

      黑客操纵此命令将数据请求放大多达600倍,目的是压倒目标服务器的网络层。 为了完成DDoS,它们将MONLIST请求数据包发送到NTP易受攻击的服务器,然后由它们指示将数据请求中继到目标。 最终结果是大量的数据包请求,如此之大,不受保护的目标服务器必须脱机才能恢复。

      法国麻烦 (Trouble in France)

      In February an NTP attack targeting a French website hit with approximately 400 Gbps of attack volume. This staggering magnitude was achieved by leveraging processing power from NTP vulnerable devices around the world. The February attack was over 200 percent larger than the previous record holder.

      2月,针对法国网站的NTP攻击命中了大约400 Gbps的攻击量。 这种惊人的规模是通过利用全球NTP易受攻击的设备的处理能力来实现的。 2月的攻击比以前的记录保持者大200%以上。

      Fortunately the attack did not last long – most NTP attacks last between 30 and 60 minutes at most. Once the attacking IPs have been identified, it’s relatively simple for 3rd party security providers to filter out the offenders. Often times the NTP attack is preprogrammed, meaning the assault will continue for a predetermined time period whether or not the requests are being mitigated.

      幸运的是,攻击并未持续很长时间-大多数NTP攻击最多持续30至60分钟。 一旦确定了攻击IP,第三方安全提供商就可以轻松过滤出违规者。 通常,NTP攻击是预先编程的,这意味着无论请求是否得到缓解,攻击都会持续预定的时间。

      NTP; 主流还是过时的时尚? (NTP; Mainstay or Passing Fad?)

      As previously mentioned, NTP is a recent security phenomenon – but is it here to stay? It’s difficult to say. A report recently issued by security provider Incapsula, NTP attacks surpassed Large SYN floods as the most often used method for large scale DDoS attacks.

      如前所述,NTP是最近出现的一种安全现象–但是它会保留吗? 很难说。 安全提供商Incapsula最近发布的一份报告显示 ,NTP攻击已超过大型SYN洪水,成为大规模DDoS攻击最常用的方法。

      But as more NTP vulnerable servers are discovered, we may see a decrease in this form of attack. Cyber security expert Marc Gaffan explains that “crowd sourcing” compromised IP addresses will help the security industry filter out malicious requests. As people learn more about NTP and how to protect their websites, the threat may decrease, but expect the problem to get worse before it gets better.

      但是,随着发现更多NTP易受攻击的服务器,我们可能会发现这种攻击形式有所减少。 网络安全专家马克·加芬(Marc Gaffan)解释说,“众包”受损的IP地址将帮助安全行业过滤恶意请求。 随着人们对NTP以及如何保护其网站的更多了解,威胁可能会减少,但希望问题在变得更好之前变得更糟。

      Check out the Open NTP Project to see if your website is vulnerable.

      查看Open NTP Project,以查看您的网站是否易受攻击。

      翻译自: https://www.eukhost.com/blog/webhosting/ntp-ddos-amplification-attacks-are-on-the-rise/

      ntp放大攻击

      展开全文
    • CentOS上NTP服务的DDOS攻击解决办法

      万次阅读 2016-07-25 13:51:39
      引言: 在网络上,Linux服务器大行其道,但是也备受攻击。本文将描述在实际中碰到的NTP攻击问题以及相应的解决办法。

      引言: 在网络上,Linux服务器大行其道,但是也备受攻击。本文将描述在实际中碰到的NTP攻击问题以及相应的解决办法。

      1. 场景描述

           Aliyun上的ECS一台,过一段时间,频繁报警,说是流量过大,遭到了DDOS攻击,服务将被隔离,并停止响应服务一段时间,进行流量清晰。 总之,服务被DDOS搞挂了,不可用。

      2.  分析

          通过提交工单,获取了访问的日志信息cap文件。打开之后,看到了大量的NTP服务信息:

      19	0.000140	188.162.1.140	115.29.44.161	NTP	482	NTP Version 2, private
       

         经过基于端口和进程的查找,都是基于123端口的连接请求大量占用资源, 而123端口是NTP服务的端口,故基本确定是NTP服务被外部反复请求造成的。

      3.  何为NTP?

          NTP服务器【Network Time Protocol(NTP)】是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。时间按NTP服务器的等级传播。按照离外部UTC源的远近把所有服务器归入不同的Stratum(层)中。

         参考信息; http://baike.baidu.com/link?url=y5y33eP0oLaSRg6pPMGDM6i-KPDxHwAQuHh84SAn_JBayZswqUEt2fWSadUrMn3uu7MeVA-ZCib6wCDCrqSA8K

      4.  如何来解决:

      服务器现象:

      由于您机器上的服务配置不当,导致被黑客利用进行DDOS攻击,表现为机器对外带宽占满,使用抓包工具,可以看到大量同一源端口的包对外发出。

      Linux系统:

      加固NTP服务:

      1、通过Iptables配置只允许信任的IP,访问本机的UDP的123端口,修改配置文件执行echo "disable monitor" >> /etc/ntp.conf,然后重启NTP服务,service ntpd restart。

      2、建议您直接关闭掉NTP服务,执行service ntp stop,并禁止其开机自启动执行chkconfig ntpd off。

       

      加固Chargen服务:

      1、通过Iptables配置中允计信任的IP,访问本机的UDP的19端口。

      2、建议您直接关闭掉chargen服务,编辑配置文件 "/etc/inetd.conf",使用#号注释掉chargen服务,重启inetd。 

      Windows系统:

      加固Simple tcp/ip服务:

      1、通过防火墙配置,只允许信任的IP,访问本机UDP、TCP的19、17端口。

      2、我们建议您直接如下图配置关闭该服务,并禁止自启动。

       

      WEB应用的加固:

      Wordpress的Pingback:

      1、您可以通过增加Wordpress插件来阻止Pinback被利用,加入如下的过滤器:

      add_filter( ‘xmlrpc_methods’, function( $methods ) {
         unset( $methods[‘pingback.ping’] );
         return $methods;
      } );

      2、我们建议您,直接删除文件xmlrpc.php。

      5. 参考资料:

      •     https://help.aliyun.com/knowledge_detail/37527.html
      展开全文
    • NTP DDOS攻击

      2014-04-18 20:59:00
      NTP DDOS攻击 客户端系统会ping到NTP服务器来发起时间请求更换,同步通常每隔10分钟发生; 从NTP服务器发回到客户端的数据包可能比初始请求大几百倍。相比之下,通常用于放大攻击中的DNS响应被限制仅...
    • 前两天以为网友stream(年龄、性别不详)私信我说他在阿里云上的服务器被NTP攻击了,流量超过10G,希望我帮忙一起分析一下,复现一下攻击。我这当代雷锋当然非常乐意了,于是我就和stream联系(勾搭)上了,今天我就...
    • NTP放大攻击研究发现

      2020-12-06 19:04:40
      NTP放大攻击是DDOS的一种形式,它使用NTP服务器将小请求转换为大响应,然后将其定向到受害计算机。 NTP放大使用MONLIST命令。MONLIST命令指示NTP服务器使用使用该服务器的最后600个IP地址进行响应。通过欺骗MONLIST...
    • NTP-Monlist-放大-攻击
    • 摘 要:提出了一种利用NTP反射型放大攻击的特点,通过对中国大陆开放公共NTP服务的主机定期发起主动探测(执行monlist指令),利用返回信息对全球范围NTP反射类DRDoS攻击事件进行长期追踪观察和统计分析。...
    • NTP放大攻击笔记

      2021-06-08 17:21:35
      http://www.idccx.com/help/103.html https://blog.csdn.net/qq_32350719/article/details/88662306
    • NTP反射放大攻击场景搭建 原理 攻击者冒充受害者(NTP客户端)的ip地址,向NTP服务器发送请求消息(很小),ntp服务器收到消息后向受害者返回响应数据包(很大) 安装NTP服务器 一般情况下,选择基本的桌面版安装...
    • Ubuntu 14.04 NTP放大攻击

      千次阅读 2016-11-03 22:00:28
      收到阿里云服务器的短信,遭受到了DDOS攻击,直接导致服务器关闭了40分钟,平时服务器用于校内的OJ服务,日常C语言实验等,所以还是比较紧急的。 然后打开发现有抓包下载,正好wireshark派上用场。 几乎都是...
    • 心伤的胖子 · 2015/01/21 11:38原文:jamesdotcom.com/?p=578NTP 漏洞相关的文章在 Drops 已经有过了,并且不止一篇,之...0x00 简介NTP 放大攻击其实就是 DDoS 的一种。通过 NTP 服务器,可以把很小的请求变成很大...
    • 如果防御NTP反射放大攻击 查看ntp服务器版本,升级到4.2.7p5以上 ntpd -v 关闭现在 NTP 服务器的 monlist 功能,在ntp.conf配置文件末尾增加disable monitor选项 关闭服务器 udp 123端口 firewall-cmd --...

    空空如也

    空空如也

    1 2 3 4 5 ... 20
    收藏数 5,272
    精华内容 2,108
    关键字:

    ntp攻击