昨天在一个用户现场发现了一个利用UDP19端口对互联网受害者主机进行DOS攻击的真实案例。这个情况是我第一次见到,个人认为对以后遇到此类情况的兄弟具有参考价值。有必要做一个简单的分析记录。

在此次的分析过程中,我主要通过wireshark来抓取相关数据报文的。

数据包分析

1,我们首先通过wireshark的“Summary”功能,查看网络流量统计情况,如下图所示:

我们发现服务器区域的流量较大,平均每秒10M左右的流量,这个流量相对于用户整个30M的互联网出口带宽而言,已经算相当大的流量了。 2,我们再通过wireshark的“Protocal Hierarchy”功能,查看这么大的流量在各个协议之间的分布情况,如下图:

我们看到UDP和IP分片的报文流量占据了总流量的92%以上,而业务应用所使用的TCP流量仅有7.24%!这意味着绝大部分的流量都是垃圾流量,那么这些垃圾流量到底是什么呢? 3,我们接下来分析这些占总流量92%以上的UDP报文和IP分片报文到底是用来干什么的。我们通过wireshark的数据包查看UDP报文都是UDP19端口交互的报文,如下图:

我们使用wireshark的“Follow UDP Stream”功能,将其中任意一个UDP19端口交互的报文进行重组还原,如下图所示:

我们可清晰看到这个UDP19端口交互的内容都是明显填充的内容。 4,UDP19端口是用来做什么的呢?我们百度一下,摘录了百度百科中对UDP19端口的相关描述如下: “端口:19 服务:Character Generator 说明:这是一种仅仅发送字符的服务。UDP版本将会在收到UDP包后回应含有垃圾字符的包。TCP连接时会发送含有垃圾字符的数据流直到连接关闭。HACKER利用IP欺骗可以发动DoS攻击。伪造两个chargen服务器之间的UDP包。同样Fraggle DoS攻击向目标地址的这个端口广播一个带有伪造受害者IP的数据包,受害者为了回应这些数据而过载。” (该段百度百科描述的原始链接为: http://baike.baidu.com/link?url=PVKVjqJ4jUhiI6y9bPnrTiVZwSi8vu6mxIw9LxHVqRpmjKWpPJyboZIUddoLL6m3aYVo_LcwgDwSOnLJcElRU_) 5,我们了解了这个UDP19端口的上述信息,那么用户目前遇到的情况是否正是黑客利用其对外进行DOS攻击呢?我们来一起验证一下。 我们通过抓包发现,跟服务器192.168.1.8的UDP端口交互的主机主要有37.17.173.32、88.190.35.204、97.86.229.87、71.61.231.170、等,我们分别来看一下这些IP与192.168.1.8交互报文的解码:

明显发现,这些报文的TTL都是236,这基本可判定这些报文应该都来自于同一物理位置的机器,换句话说,这些报文都是一台机器伪造的IP报文! 6,至此,我们基本可以将此次异常的原因定位为黑客利用服务器开启的UDP19端口,伪造源IP为互联网某受害者服务器的IP地址向192.168.1.8服务器的UDP19端口发送报文,服务器在收到这个报文后会向互联网受害者服务器IP送填充任意字符的报文,导致受害者服务器带宽被占满,从而达到对受害者服务器DOS攻击的效果,其工作机制大致如下图所示:

更进一步的分析

我们分析清楚了异常的原因,但是UDP19端口并不是服务器的对外提供业务的端口,为什么服务器会开启UDP19端口呢?我们在服务器上通过“netstat –ano”命令,查看UDP19端口是由什么进程开启的,如下图所示:

由上图我们知道该端口由进程ID号为1432的进程开启,查看任务管理器,得知该进程为简单TCPIP服务,进程名为tcpsvcs.exe,该进程是微软Windows网络组件的一部分。这个系统进程用于计算机使用专用的TCP/IP网络服务,例如DHCP,简单TCP和打印服务。 通过百度搜索tcpsvcs.exe、UDP19端口等关键字,如下图所示:

我们发现曾有人遇到过这种问题,当事人反馈“win2003 sp2 近来发现tcpsvcs.exe上传速度太猛了,最高时有2m,都差不多占了全部带宽了…….总是国外IP连接19端口,IP禁了几十个,还是不断有新的” (原始链接为:http://bbs.csdn.net/topics/390496813),这说明我们的用户并不是唯一一个遇到这种情况的:黑客利用服务器对外开放的UDP19端口,伪造受害者IP向服务器发送报文,服务器在收到报文后,会向受害者IP发送填充的字符报文,这些报文大部分都是大报文,需要分为多个分片报文,这会产生较大的网络流量,消耗服务器和互联网受害者的网络带宽资源。

利用UDP19端口实施DOS攻击的真实案例的更多相关文章

  1. DOS攻击和DDOS攻击有啥区别啊

    DDOS是DOS攻击中的一种方法. DoS:是Denial of Service的简称,即拒绝服务,不是DOS操作系统,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务. ...

  2. 安全测试===dos攻击和ddos攻击

    Dos攻击: dos攻击是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务 DoS攻击是指故意的攻击网络协议实现的缺 ...

  3. web攻击之四:DOS攻击

    DDOS是DOS攻击中的一种方法. DoS:是Denial of Service的简称,即拒绝服务,不是DOS操作系统,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务. ...

  4. DoS攻击种类

    DoS攻击有许多种类,主要有Land攻击.死亡之ping.泪滴.Smurf攻击及SYN洪水等. 据统计,在所有黑客攻击事件中,syn洪水攻击是最常见又最容易被利用的一种DoS攻击手法. 1.攻击原理 ...

  5. 真实故事:网站遭遇DOS攻击

     网站遭遇DOS攻击 一个.事件背景 长假对于IT人员来说是个短暂的休整时期,可IT系统却一时也不能停.越是节假日,越可能出大问题,以下要讲述的就是一起遭受DOS攻击的案例. 春节长假刚过完,小李 ...

  6. dos攻击

    概念理解 DoS到底是什么?接触PC机较早的同志会直接想到微软磁盘操作系统的DOS--DiskOperationSystem?不,此DoS非彼DOS也,DoS即DenialOfService,拒绝服务 ...

  7. DHCP server 冒充及DOS攻击处理方案

    一.DHCP服务器在运维上存在的常见问题: 1. DHCP服务器冒充 在DHCP服务器和客户端之间没有认证机制,如果在DHCP server覆盖的网络上随意接入一个DHCP server,就有可能造成 ...

  8. Linux下的DOS攻击

    Linux下的DOS攻击 DOS是Denial of service的简称,即拒绝服务,造成Dos攻击行为被称为Dos攻击,其目的是使计算机或网络无法提供正常的服务.最常见的Dos攻击有计算机带宽攻击 ...

  9. DOS攻击之详解--转载

    源地址没有找到,间接引用地址:http://wushank.blog.51cto.com/3489095/1156004 DoS到底是什么?接触PC机较早的同志会直接想到微软磁盘操作系统的DOS--D ...

随机推荐

  1. 别样的checkbox

    <style type="text/css"> input[type=checkbox] { visibility: hidden; } .slide_check_bo ...

  2. LintCode "Sliding Window Median" & "Data Stream Median"

    Besides heap, multiset<int> can also be used: class Solution { void removeOnly1(multiset<in ...

  3. php安装redis扩展

    1.windows安装redis扩展 php_redis.dll (for windows) 的下载地址:http://windows.php.net/downloads/pecl/snaps/red ...

  4. 228. Summary Ranges

    Given a sorted integer array without duplicates, return the summary of its ranges. For example, give ...

  5. Php检测文件编码方法

    <?php /** * 检测文件编码 * @param string $file 文件路径 * @return string|null 返回 编码名 或 null */ function det ...

  6. 转-android图片降低图片大小保持图片清晰的方法

    http://i.cnblogs.com/EditPosts.aspx?opt=1 android里面对于图片的处理一直是个比较烦人的问题,烦人之处在于一个不小心,就有可能造成OOM. 最近碰到一个关 ...

  7. ADO.NET Entity Framework(EF)

    ylbtech-Miscellaneos: ADO.NET Entity Framework(EF) A,返回顶部 1, ADO.NET Entity Framework 是微软以 ADO.NET 为 ...

  8. android js调试

    http://blog.allenm.me/ 其他平台去这篇文章看 //js调试调试功能支持4.4版本以上的 if(Build.VERSION.SDK_INT >= Build.VERSION_ ...

  9. PHPStorm+XDebug进行调试图文教程以及解析wamp的php.ini设置不生效的原因

    这篇文章主要为大家详细介绍了PHPStorm+XDebug进行调试图文教程,内容很丰富,具有一定的参考价值,感兴趣的小伙伴们可以参考一下   笔者的开发环境如下:Windows8.1+Apache+P ...

  10. 按钮/文本框 disabled

    需求:已登入的,将用户的信息回填,用户文本框内容不能更改. 按钮: <button type="button" id="btnSearch">< ...