作者:hacker 日期:2022-07-18 分类:网站入侵
ICMP的全称是 Internet Control Message Protocol 。从技术角度来说icmp泛洪攻击软件,ICMP就是一个“错误侦测与回报机制”,其目的就是让icmp泛洪攻击软件我们能够检测网路的连线状况,也能确保连线的准确性,其功能主要有:
· 侦测远端主机是否存在。
· 建立及维护路由资料。
· 重导资料传送路径。
· 资料流量控制。
ICMP常用类型
ICMP常用类型 ICMP在沟通之中,主要是透过不同的类别(Type)与代码(Code) 让机器来识别不同的连线状况。常用的类别如下表所列:
ICMP 是个非常有用的协定,尤其是当我们要对网路连接状况进行判断的时候。下面让我们看看常用的 ICMP 实例,以更好了解 ICMP 的功能与作用.
TCP/IP协议介绍
TCP/IP的通讯协议
这部分简要介绍一下TCP/IP的内部结构,为讨论与互联网有关的安全问题打下基础。TCP/IP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T1和X.25、以太网以及RS-232串行接口)之上。确切地说,TCP/IP协议是一组包括TCP协议和IP协议,UDP(User Datagram Protocol)协议、ICMP(Internet Control Message Protocol)协议和其他一些协议的协议组。
TCP/IP整体构架概述
TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层、数据链路层、网路层、传输层、话路层、表示层和应用层。而TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:
应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。
传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。
互连网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)来传送数据。
TCP/IP中的协议
以下简单介绍TCP/IP中的协议都具备什么样的功能,都是如何工作的:
1. IP
网际协议IP是TCP/IP的心脏,也是网络层中最重要的协议。
IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层---TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。
高层的TCP和UDP服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP确认包含一个选项,叫作IP source routing,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCP和UDP的服务来说,使用了该选项的IP包好象是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。那么,许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。
2. TCP
如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向‘上’传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。
TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。
面向连接的服务(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。
3.UDP
UDP与TCP位于同一层,但对于数据包的顺序错误或重发。因此,UDP不被应用于那些使用虚电路的面向连接的服务,UDP主要用于那些面向查询---应答的服务,例如NFS。相对于FTP或Telnet,这些服务需要交换的信息量较小。使用UDP的服务包括NTP(网落时间协议)和DNS(DNS也使用TCP)。
欺骗UDP包比欺骗TCP包更容易,因为UDP没有建立初始化连接(也可以称为握手)(因为在两个系统间没有虚电路),也就是说,与UDP相关的服务面临着更大的危险。
4.ICMP
ICMP与IP位于同一层,它被用来传送IP的的控制信息。它主要是用来提供有关通向目的地址的路径信息。ICMP的‘Redirect’信息通知主机通向其他系统的更准确的路径,而‘Unreachable’信息则指出路径有问题。另外,如果路径不可用了,ICMP可以使TCP连接‘体面地’终止。PING是最常用的基于ICMP的服务。
5. TCP和UDP的端口结构
TCP和UDP服务通常有一个客户/服务器的关系,例如,一个Telnet服务进程开始在系统上处于空闲状态,等待着连接。用户使用Telnet客户程序与服务进程建立一个连接。客户程序向服务进程写入信息,服务进程读出信息并发出响应,客户程序读出响应并向用户报告。因而,这个连接是双工的,可以用来进行读写。
两个系统间的多重Telnet连接是如何相互确认并协调一致呢?TCP或UDP连接唯一地使用每个信息中的如下四项进行确认:
源IP地址---发送包的IP地址。
目的IP地址---接收包的IP地址。
源端口---源系统上的连接的端口。
目的端口---目的系统上的连接的端口。
端口是一个软件结构,被客户程序或服务进程用来发送和接收信息。一个端口对应一个16比特的数。服务进程通常使用一个固定的端口,例如,SMTP使用25、Xwindows使用6000。这些端口号是‘广为人知’的,因为在建立与特定的主机或服务的连接时,需要这些地址和目的地址进行通讯。
ICMP校验和算法】
以下代码在Visual Studio 2008 + Windows 7下调试通过。
lpsz指定要计算的数据包首地址,_dwSize指定该数据包的长度。
int CalcCheckSum(char* lpsz,DWORD _dwSize)
{
int dwSize;
__asm // 嵌入汇编
{
mov ecx,_dwSize
shr ecx,1
xor ebx,ebx
mov esi,lpsz
read: //所有word相加,保存至EBX寄存器
lodsw
movzx eax,ax
add ebx,eax
loop read
test _dwSize,1 //校验数据是否是奇数位的
jz calc
lodsb
movzx eax,al
add ebx,eax
calc:
mov eax,ebx //高低位相加
and eax,0ffffh
shr ebx,16
add eax,ebx
not ax
mov dwSize,eax
}
return dwSize;
}
ICMP是完成IP层主要控制功能的辅助协议,它可弥补IP在网络控制方面的不足;而端口通信则是由集成到操作系统内核中的TCP/IP协议,通过软件形式与任何一台具有类似接口计算机进行通信的方式。一台安装有防病毒、网络防火墙的个人电脑,如果还频频受到来自网络上的攻击,除了没有经常更新相应病毒库和网墙数据库,其症结一般都出自操作系统中诸多可随意被打开但并不常用的端口。为了避免恶意者通过网络对你的计算机进行扫描和进一步的入侵动作,关闭ICMP协议及多余的端口是简单并切实有效的解决方法,足以应付大多数恶作剧式的网络攻击。其中后者不仅可以通过Win2000及以上操作系统内部设置进行调整,更能够依靠相应网络防火墙进行关闭工作。
关闭ICMP协议的步骤如下:开始→设置→控制面板→管理工具→本地安全策略→右击“IP安全策略在本地计算机”→管理IP筛选器表和筛选器操作→所有ICMP通讯量→添加→起任意名称后点击“添加”→下一步→任何IP地址→下一步→我的IP地址→协议类型选择“ICMP”→完成。
而要关闭非信任主机对135、TCP4444、UDP69等计算机端口的访问,则有两种方法:其一是通过“管理IP筛选器表和筛选器操作”→添加→起任意名称后点击“添加”→下一步→任何IP地址→下一步→我的IP地址→协议类型选择“TCP”→“从任意端口”到“此端口”并填入相应端口号→完成,这样就成功对一个端口进行了封堵,重复上述步骤即可对其它端口进行相关设置;
另一种方法则是利用目前多数网络防火墙提供的规则设置,对端口号、各IP地址、协议类型、传输方向等选项进行一一添加或更改,同样能够达到封阻可疑端口的目的。
此外,通过关闭DCOM协议也能达到预防部分蠕虫病毒的效能,只是由于禁用该协议会截断一切本地计算机与网络上其余计算机相同对象间的通信,因此运用起来具有一定的风险。预防胜于治疗,良好的用机及上网习惯仍旧是杜绝黑客程序感染的最好方法,毕竟砖石结构的城堡是最容易由内部被攻破的
如果你不想关掉ICMP ,建议你安装一个防火墙,比如下面这款:BitDefender,Jetico Personal Firewall,等等,都能抵御洪水攻击
网速慢原因
1.病毒木马原因导致导致网速慢。
2.使用了p2p下载软件(如pps、pplive等)导致占用带宽资源很大,导致网速变慢
3.多台电脑共享上网,可能共享网络中icmp泛洪攻击软件的电脑有arp病毒 ,解决办法就是找到攻击源,使用360对该电脑杀毒(解决方法第6点)
4. 宽带线路老化,或路由器坏了或质量差(电路板品质),导致网速变慢
5. 电脑和网站处在不同网络环境 ,例如网通用户与电信网站之间icmp泛洪攻击软件的访问,也会出现网速变慢。
6.网站自身的问题,网站所在的服务器很差,带宽有限导致的网速变慢。
7.系统效率或硬件问题
网速慢的解决办法
首先排除是不是外部因素造成的网速变慢了,例如网站自身的问题,宽带环境设备老化或者破损。如果排除外部因素,那就解决内部因素造成的。
提高网速:
1、禁用电脑一些无用或不用的系统服务,百度上很多参考资料
2、优化大师的清理(注册项、文件,DLL,Acxtive X,痕迹)与网路优化,及时清理垃圾(网路缓存),清除或禁用不必要的插件
3、程序尽量不要装在C盘(用360的C盘搬家), 设置适当虚拟内存
4、设定所在区域的dns(问营运商),突破TCP连接数限制(打开迅雷-工具-系统优化-修改连接数为1024
5、磁盘碎片整理虽然影响不大,但如果太长都没整理过,那也会影响系统效率,甚至死机
6、360的功能大全中的网路优化中的流量监控器,可以看到流量是分配在那些程序,又有那些连接了网路, 管理一下,不必要的就禁用了,有些是系统服务,也是手动就可以了,所以在我的电脑右键--管理--服务和应用程序--服务中把它改禁用或手动
小红山的设计并不是太合理icmp泛洪攻击软件,它只要发现有大量的ICMP包icmp泛洪攻击软件,它就会报警的。使用一些P2P软件可能会引起它报警,例如:迅雷,PPS,PPTV等但是如果小红伞不报警的话,过度使用这些P2P软件可能会引起死机、断网的。p2p软件少使用为妙!
看了你提问,下面我就用比较通俗的方式进行解答,我的解答主要是为了提高你的网络安全的基础认识,而不是应答这个题目
首先局域网是什么?局域网是由服务器或者多台计算机组成的小范围内的互联网络,它的最大好处是:1可以实现局域网内共享 2局域网内各台计算机的传输速度快,所以是现代最为流行的组网方式
局域网的安全威胁个人认为分为两大类:来自internet(外网)的威胁和来自内部的威胁,但是内外的攻击方式可能一样,譬如外部的人可以发一封携带病毒的邮件到内网的邮箱,内部那个人点击了邮件,同样,内网某个用户也可以发一封邮件到另外一个内网人的电子邮箱,而且来自内部的攻击往往难以防范。
下面列举一个攻击的例子让你有个大概的网络攻击的认识:
(1)ICMP协议(icmp协议主要用来主机之间,主机与路由器之间实现信息查询和错误通告的),攻击者可以利用echo reply原理进行ICMP泛洪攻击,他只要想目标一个广播网络发送echo请求,讲源地址伪装成受害者的ip地址,广播网络就会不停的对受害者发送echo应答,导致带宽耗尽,形成Dos(拒绝服务)攻击
其次攻击者还可以利用ICMP隧道机制达到绕过防火墙的目的,如下图:
这种攻击利用 客户端一服务器的模式工作,服务器驻留在防火墙内部被安装了木马程序
(一般通过电子邮件传送的主机上)一旦运行,就可以接收来自驻留在攻击者机器上的客户端的echo请求包,客户端把要执行的命令包裹在echo数据包中,服务器(受害者主机)接收到该数据包,
解出其中包裹的命令,并在受害者的机器上执行它,然后,将结果放人 echo rely数据包中回送给攻击者,一般来说防火墙的具备的功能如下:
a内外网数据必须通过防火墙
b只有被防火墙认可的数据才能通过
c防火墙本身具备抵抗攻击的能力
但是一般防火墙对echo报数据都是“宽大处理”,攻击者通过这种模式可以完全越过没有禁止echo requset 和echo reply数据包的防火墙!!!
(2)TCP/IP规范要求IP报文的长度在一定范围内(比如,0-64K),但有的攻击计算机可能向目标计算机发出大于64K长度的PING报文,导致目标计算机IP协议栈崩溃,不过现在这个bug已经修改了(所以更新操作系统很重要~)
(3)SMTP是目前最常用的邮件协议,也是隐患最大的协议之一。在SMTP中,发件人的地址是通过一个应用层的命令"MAIL FROM”来传送的,协议本身没有对其作任何验证,这导致了垃圾邮件的发送者可以隐藏他们的真实地址,同时发送的电子邮件可以携带各种病毒文件
(4)ARP(地址解析)协议漏洞,ARP用来将IP地址映射成MAC地址的(以太网中传送数据需要用MAC地址进行寻址),在TCP/IP协议中,A给B发送IP包,在报头中需要填写B的IP为目标地址,但这个IP包在以太网上传输的时候,还需要进行一次以太包的封装,在这个以太包中,目标地址就是B的MAC地址.
计算机A是如何得知B的MAC地址的呢?解决问题的关键就在于ARP协议。
在A不知道B的MAC地址的情况下,A就广播一个ARP请求包,请求包中填有B的IP(192.168.1.2),以太网中的所有计算机都会接收这个请求(因为是一个广播域,所有主机都可以收到),而正常的情况下只有B会给出ARP应答包,包中就填充上了B的MAC地址,并回复给A。
A得到ARP应答后,将B的MAC地址放入本机缓存,便于下次使用。
本机MAC缓存是有生存期的,生存期结束后,将再次重复上面的过程。
ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。因此,当局域网中的某台机器A向B发送一个自己伪造的ARP应答,而如果这个应答是A冒充C的,即IP地址为C的IP,而MAC地址是伪造无效的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来C的IP地址没有变,而它的MAC地址已经不是原来那个了。由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。所以,那个伪造出来的MAC地址在A上被改变成一个不存在的MAC地址,这样就会造成网络不通,导致A不能Ping通C!这就是一个简单的ARP欺骗。通理,如果攻击者A将MAC地址设为自己的MAC,那么每次B跟C通信的时候,其实都是在跟A通信,那么A就达到了获取B的消息的目的,而B全然不觉- -!!
以上只是从底层原理让你大概了解攻击者到底是如何进行攻击的,不是什么神秘的事情,其实攻击很简单,无非就是利用系统漏洞或者说钻空子来达到获取信息,破坏的目的,为什么经常要进行系统升级?
举个例子,有人钻法律的空子做一些事,有了这个先例,然后司法机构才补充一条新的法律条文,而并不是说原来的法律就是错误的,而是没有注意到那一点,系统升级也一样,就是根据最新发现的攻击进行一些规则的补充,让攻击者不能再钻这个空子,但是攻击者会去发现新的空子,其实攻击者对我们的网络发展贡献了很大的力量,为我们提供了许多思路,如果没有那些病毒或者攻击,网络安全的发展也停滞不前了。所以作为一个网络管理员,要解决局域网安全问题要注意一下几点:
(1)内外网根据局域网内部的安全等级需要选择适当的防火墙
(2)处于局域网的服务器要进行隔离,局域网内计算机的数据快速、便捷的传递,造就了病毒感染的直接性和快速性,如果局域网中服务器区域不进行独立保护,其中一台电脑感染病毒,并且通过服务器进行信息传递,就会感染服务器,这样局域网中任何一台通过服务器信息传递的电脑,就有可能会感染病毒。虽然在网络出口有防火墙阻断对外来攻击,但无法抵挡来自局域网内部的攻击。
(3)及时安装杀毒软件,更新操作系统,由于网络用户不及时安装防病毒软件和操作系统补丁,或未及时更新防病毒软件的病毒库而造成计算机病毒的入侵。许多网络寄生犯罪软件的攻击,正是利用了用户的这个弱点。
(4)对一个局域网的机器进行vlan分割,实现广播域的隔离
(5)封存所有空闲的IP地址。启动IP地址绑定采用上网计算机IP地址与MCA地址一一对应,网络没有空闲IP地址的策略。由于采用了无空闲IP地址策略,可以有效防止IP地址引起的网络中断和移动计算机随意上内部局域网络造成病毒传播和数据泄密
(6)数据库的备份与恢复。数据库的备份与恢复是数据库管理员维护数据安全性和完整性的重要操作。备份是恢复数据库最容易和最能防止意外的保证方法。恢复是在意外发生后利用备份来恢复数据的操作。譬如一个网吧内,必须安装一个还原系统,机器重启就还原
(7)加强安全意识,往往引起的攻击不是外部网络攻击,而是来自内部一些别有用心的人破坏
平时要多学习网络的一些基础知识和网络的一些常见攻击手段以达到反侦察的目的,纯手打,希望对你有用,QQ137894617
已有4位网友发表了看法:
访客 评论于 [2022-07-18 05:55:34] 回复
没有禁止echo requset 和echo reply数据包的防火墙!!!(2)TCP/IP规范要求IP报文的长度在一定范围内(比如,0-64K),但有的攻击计算机可能向目标计算机发出大于64K长度的PING报文,导致目标计算机IP协议栈崩溃,不过现在这个bug已经修改了(所以更新操作系统很重要
访客 评论于 [2022-07-18 08:39:51] 回复
,SMTP使用25、Xwindows使用6000。这些端口号是‘广为人知’的,因为在建立与特定的主机或服务的连接时,需要这些地址和目的地址进行通讯。ICMP校验和算法】 以
访客 评论于 [2022-07-18 03:34:33] 回复
频受到来自网络上的攻击,除了没有经常更新相应病毒库和网墙数据库,其症结一般都出自操作系统中诸多可随意被打开但并不常用的端口。为了避免恶意者通过网络对你的计算机进行扫描和进一步的入侵动作,关闭ICMP协议及多余的端口是简单并切实有效的
访客 评论于 [2022-07-18 02:57:53] 回复
流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。 面向连接的服务(例如Telnet、FTP、rlogin、X Windows和SMTP)需要