第一讲网络攻击概述黑客与入侵者u黑客的定义u喜欢探索软件程序奥秘,并从中增长了其个人才干的人.
他们不象绝大多数电脑使用者那样,只规规矩矩地了解别人指定了解的狭小部分知识.
u骇客u通常将那些利用网络漏洞破坏网络的人称为骇客,u具备广泛的电脑知识,但是是以破坏为目的u往往做一些重复的工作基本概念入侵者u假冒者u指未经授权使用计算机的人或穿透系统的存取控制假冒合法用户账号的人.
u非法者u指未经授权访问数据、程序和资源的合法用户;或者已经获得授权访问,但是错误使用权限的合法用户.
u秘密用户u非法获取系统超级控制权限,逃避系统审计和访问控制,抑制审计记录的人.
u假冒者可能来自于外部使用者,非法者一般是内部人员,秘密用户可能来自于外部也可能来自于内部.
黑客的攻击目标基本概念网络攻击目标u机密性是保护敏感信息不被未授权的泄露或访问u完整性是指信息未经授权不能改变的特性u可用性是指信息系统可被授权人正常使用u可靠性是指系统能够在规定的条件与时间内完成规定功能的特性u可控性是指系统对信息内容和传输具有控制能力的特性u拒绝否认性是指通信双方不能抵赖或否认已完成的操作和承诺.
基本概念网络攻击步骤u攻击前奏u攻击者在发动攻击前,需要了解目标网络的结构,收集各种目标系统的信息u踩点u扫描u查点u实施攻击u根据不同的网络结构、不同的系统情况,攻击者可以采用不同的攻击手段.
u最终目的是控制目标系统,从而可以窃取机密信息,远程操作目标主机.
基本概念网络攻击步骤u巩固攻击u日志清理:通过更改系统日志清除攻击者留下的痕迹,避免被管理员发现.
u安装后门:通过安装后门工具,方便攻击者再次进入目标主机或远程控制目标主机.
u安装内核套件:可使攻击者直接控制操作系统内核,提供给攻击者一个完整的隐藏自身的工具包.
网络攻击发展趋势网络攻击技术手段改变迅速,自动化程度和攻击速度不断提高网络攻击工具智能化安全漏洞的发现和利用速度越来越快有组织的攻击越来越多.
攻击的目的和目标在改变攻击者的数量增加,破坏效果加大防火墙渗透率越来越高越来越不对称的威胁对基础设施的威胁越来越大缓冲区溢出工作原理缓冲区溢出的概念u计算机程序向缓冲区内填充的数据位数超过了缓冲区本身的容量u溢出的数据覆盖在合法数据上u在各个进程之间,指令被临时存储在堆栈当中,堆栈也会出现缓冲区溢出u一小部分数据或者一套指令的溢出就可能导致一个程序或者操作系统崩溃缓冲区溢出工作原理攻击的原理example1.
cvoidfunc1(char*input){charbuffer[16];strcpy(buffer,input);}缓冲区溢出工作原理攻击的原理ustrcpy()将直接把input中的内容copy到buffer中uinput的长度大于16,就会造成buffer的溢出u像strcpy这样的问题的标准函数还有ustrcat()usprintf()uvsprintf(),gets()uScanfu循环内的getc(),fgetc(),getchar()等.
缓冲区溢出工作原理随便溢出只会出现Segmentationfault错误通过制造缓冲区溢出使程序运行一个用户shell,再通过shell执行其他命令u如果该程序属于root且有suid权限的话,攻击者就获得了一个有root权限的shell缓冲区溢出漏洞攻击方式制造缓冲区溢出u程序在内存中通常分为程序段、数据段和堆栈三部分制造缓冲区溢出voidfunc1(char*input){charbuffer[16];strcpy(buffer,input);}voidmain(){charlongstring[256];inti;for(i=0;i<255;i++)longstring[i]='B';func1(longstring);}考虑如下程序:制造缓冲区溢出"Segmentationfault(coredumped)"或类似出错信息.
从buffer开始的256个字节都将被*input的内容'B'覆盖,u包括sfp,ret,甚至*input.
'B'的16进值为0x41,所以函数的返回地址变成了0x41414141,超出了程序的地址空间出现段错误.
攻击方式分类在程序的地址空间里安排适当的代码u对代码传递一些参数,使程序跳转到目标中u攻击代码要求执行"exec('/bin/sh')"u设置libc库中的代码执行"exec(arg)",其中的"arg"是个指向字符串的指针参数u把传入的参数指针修改指向"/bin/sh",然后再跳转到libc库中的响应指令序列就可以u植入法u当向要攻击的程序里输入一个字符串时,程序就会把这个字符串放到缓冲区里u字符串包含的数据是可以在这个所攻击的目标的硬件平台上运行的指令序列.
攻击方式分类控制程序转移到攻击代码的形式uFunctionPointers(函数指针)uActivationRecords(激活记录)uLongjmpbuffers(长跳转缓冲区)攻击方式分类植入综合代码和流程控制u在一个字符串里综合了代码植入和ActivationRecordsu定位在一个可供溢出的自动变量,然后向程序传递一个很大的字符串u引发缓冲区溢出改变ActivationRecords的同时植入代码u权因C在习惯上只为用户和参数开辟很小的缓冲区u植入代码和缓冲区溢出不一定要一次性完成,可以在一个缓冲区内放置代码,然后通过溢出另一个缓冲区来转移程序的指针.
缓冲区溢出的防范强制写正确的代码的方法uC语言那种具有容易出错倾向u这种风格是由于追求性能而忽视正确性引起的u侦错工具不可能找出所有的缓冲区溢出漏洞u侦错技术只能用来减少缓冲区溢出的可能,并不能完全地消除它的存在缓冲区溢出的防范通过操作系统使得缓冲区不可执行u攻击者并不一定要殖入攻击代码来实现缓冲区溢出的攻击u方法还是存在很多弱点缓冲区溢出的防范利用编译器的边界检查实现缓冲区保护u只要保证数组不溢出,那么缓冲区溢出攻击也就只能是望梅止渴u优化技术uCompaqC编译器uJones&Kelly的C的数组边界检查uPurify存储器存取检查u相对而言代价比较大缓冲区溢出的防范在程序指针失效前进行完整性检查u指针被引用之前检测到它的改变u即便是改变了程序的指针,因为系统已经检测到了指针的改变而不会造成指针利用u不能解决所有的缓冲区溢出问题u如果有人使用了其它的缓冲区溢出,那么程序指针完整性检查就不可能检测到u性能上有着很大的优势网络嗅探嗅探器概述u嗅探器简介uSniffer是利用计算机的网络接口截获目的地为其他计算机的数据报文的一种工具u两个条件u嗅探器必须也使用特定的网络协议来分析嗅探到的数据,也就是说嗅探器必须能够识别出哪个协议对应于这个数据片断,只有这样才能够进行正确的解码.
u嗅探器能够捕获的通信数据量与网络以及网络设备的工作方式是密切相关的.
嗅探器概述共享式局域网u3个Hub串联形成的局域网,当主机A需要与主机E通信时,A所发送的数据报通过Hub的时候就会向所有与之相连的端口转发u在一般情况下,不仅主机E可以收到数据报,其余的主机也都能够收到该数据包u每个用户的实际可用带宽随网络用户数的增加而递减嗅探器概述交换式局域网u能够通过检查数据包中的目标物理地址来选择目标端口u将数据只转发到与该目标端口相连的主机或设备中u如果转发设备都采用Switch,在刚才的图中,那么只有主机E会正常收到主机A发送的数据,而其余的主机都不能接收到u交换机供给每个用户专用的信息通道,除非两个源端口企图将信息同时发往同一目的端口,否则各个源端口与各自的目的端口之间可同时进行通信而不发生冲突嗅探器概述嗅探器只能抓取一个物理网段内的包,就是说,你和监听的目标中间不能有路由或其他屏蔽广播包的设备嗅探器分为软件和硬件u软件嗅探器uNetXray、Packetboy、Netmonitoru其优点是物美价廉,易于学习使用,同时也易于交流u缺点是无法抓取网络上所有的传输u某些情况下也就无法真正了解网络的故障和运行情况u硬件嗅探器u通常称为协议分析仪u一般都是商业性的,价格也比较贵u目前主要使用的嗅探器是软件嗅探器的工作原理每个网络接口都还应该有一个48bit的硬件地址表示不同于网络中存在的其他网络接口的物理地址(MAC地址).
物理地址是固化在网卡EPROM中的,且应该保证在全网是唯一的IEEE注册委员会为每一个生产厂商分配物理地址的前三字节,即公司标识后面三字节由厂商自行分配,即一个厂商获得一个前三字节的地址可以生产的16777216块网卡嗅探器的工作原理当网卡处于正常的工作模式时,网卡会将自己的地址与接收帧目的地址比较u匹配成功接收,网卡通过CPU产生一个硬件中断,将帧中所包含的数据传送给系统进一步处理u匹配不成功则抛弃对于共享式网络,虽然所有网络上的主机都能够"听到"全部通过的流量,但如果不是发给本机的数据,会主动的抛弃,不会响应利用这个原理,可以保证在局域网范围内可以有序的接收和发送数据嗅探器的工作原理合法的网络接口应该可以响应两种数据帧u帧的目标物理地址和本地网卡相同u帧的目标区域为广播地址(48bit全部为1,即FFFFFFFFFFFF).
Sniffer通过将网卡的工作模式由正常改变为混杂(promiscuous),就可以对所有听到的数据帧都产生一个硬件中断以提交给主机进行处理嗅探器的工作原理必须需要root权限,才能设置混杂模式如果只是以本地用户的身份进入了系统,不能嗅探到root的密码绝大多数的网卡都可以被设置成混杂的工作方式Sniffer是极其安静的,它是一种被动的安全攻击.
交换式网络上的嗅探交换机MAC地址表溢出u交换机本身维护的一张地址表—转发表u地址表的大小是有上限的,可以通过发送大量错误的地址信息而使SWITCH维护的地址表"溢出"u当交换机被错误的转发表填满后,不能进行正常的数据包的端到端转发,会采取广播的方式将所有的数据包转发出去u相当于集线器的功能,网络也变成了共享式u在任一台计算机上都可以监听到整个网络的数据包.
交换式网络上的嗅探MAC地址伪造u基于Switch是动态更新其转发表uSwitch是动态更新其转发表的u告诉Switch你是要冒充的机器u例子交换式网络上的嗅探ARP欺骗u地址解析协议u将网络层地址解析为数据链路层的物理地址uARP原理u本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的.
u当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中嗅探器的检测与防范ARP广播地址探测u正常情况下,目的以太网址等于FFFFFFFFFFFF,是则认为是广播地址u在混乱模式时,网卡只看收到包的目的以太网址的第一个八位组值,是0xFF则认为是广播地址u发一个目的地址是FF0000000000的ARP包u如果某台主机以自己的MAC地址回应这个包u运行在混杂模式下.
交换式网络上的嗅探PING方法u假设可疑主机的IP地址为192.
168.
10.
10,MAC地址是AABBCCDDEEEE,检测者和可疑主机位于同一网段.
u稍微改动可疑主机的MAC地址,假设改成AABBCCDDEEEF.
u向可疑主机发送一个PING包,包含它的IP和改动后的MAC地址.
u没有运行嗅探器的主机将忽略该帧,不产生回应.
如果看到回应,那么说明可疑主机确实在运行嗅探器程序.
交换式网络上的嗅探DNS方法u嗅探器程序会发送DNS反向查询数据u检测者需要监听DNS服务器接收到的反向域名查询数据u只要PING网内所有并不存在的主机,那么对这些地址进行反向查询的机器就是在查询包中所包含的IP地址,也就是说在运行嗅探器程序u检测工具,如AntiSniff端口扫描端口扫描就是通过连接到目标系统的TCP或UDP端口,来确定什么服务正在运行.
一个端口就是一个潜在的通信通道,也就是一个入侵通道.
端口扫描可以识别目标系统上正在运行的TCP和UDP服务、识别目标系统的操作系统类型和识别某个应用程序或某个特定服务的版本号.
TCP协议概述TCP扫描全TCP连接u最基本的TCP扫描u直接连到目标端口并完成一个完整的三次握手过程uSocketAPI提供的Connect()系统调用u如果端口处于侦听状态,那么Connect()就能成功u否则,这个端口是不能用的,即没有提供服务.
u优点u不需要任何权限,u缺点u容易被目标系统检测到,并且被过滤掉.
u如:TCPWrapper监测程序通常用来进行监测u针对这一缺陷,便产生了TCPSYN扫描,也就是通常说的半开放扫描.
TCP扫描TCPSYN扫描u扫描主机向目标主机的选择端口发送SYN数据段u如果应答是RST,说明端口关闭,按照设定就探听其他端口u如果应答中包含SYN和ACK,说明目标端口处于监听状态.
u由于在SYN扫描时,全连接尚未建立,所以这种技术通常被称为半打开扫描u优点u即使日志中对扫描有所记录,但是尝试进行连接的记录也要比全扫描少得多u缺点u大部分操作系统下,发送主机需要构造适用于这种扫描的IP包u要有超级用户权限才能建立自己的SYN数据包TCP扫描TCPFIN扫描u发送一个TCPFIN数据报给远端主机u没有任何反馈,那么主机正在监听u反馈一个TCPRST,该主机存在,但没有监听u不包含标准的TCP三次握手协议的任何部分,所以无法被记录下来,也称作秘密扫描uFIN数据包能够通过只监测SYN包的包过滤器.
TCP扫描TCPXmas(圣诞树扫描)和TCPNull(空扫描)uXmas扫描打开FIN,URG,PUSH标记uNULL扫描关闭所有标记u目的为了通过对FIN包的过滤u当一个这种数据包达到一个关闭的端口,数据包会被丢掉并且返回一个RST数据包u打开的端口则只是丢掉数据包不返回RST包u缺点跟上面的类似,都是需要自己构造数据包,只适用于UNIX主机.
UDP协议概述与TCP不同,UDP并不提供对IP协议的可靠机制、流控制以及错误恢复功能等UDP头包含很少的字节,比TCP负载消耗少.
UDP扫描UDPICMP端口不可达扫描u问题u打开的端口对扫描探测并不发送一个确认u关闭的端口也并不需要发送一个错误数据包u许多主机在你向一个未打开的UDP端口发送一个数据包时,会返回一个ICMP_PORT_UNREACH错误u由于UDP协议是面向无连接的协议,这种扫描技术的精确性高度依赖于网络性能和系统资源u如果目标主机采用了大量的分组过滤技术,那么UDP扫描过程会变的非常慢u不足uUDP和ICMP错误都不保证能到达u需要具有root权限.
UDP扫描UDPrecvfrom()和write()扫描u当非root用户不能直接读到端口不能到达错误时,Linux能间接地在它们到达时通知用户u比如,对一个关闭的端口的第二个write()调用将失败u在非阻塞的UDP套接字上调用recvfrom()时,如果ICMP出错还没有到达时回返回EAGAIN重试u如果ICMP到达时,返回ECONNREFUSED连接被拒绝.
这就是用来查看端口是否打开的技术.
端口扫描的防范配置防火墙和边界路由器,拒绝使用了伪造IP源地址如内部网络IP的包进入;基于状态的防火墙通过出口过滤来防止有伪造IP地址的IP包流出;去掉关于操作系统和提供网络服务的信息显示拒绝服务攻击概述拒绝服务攻击概念uDoS是DenialofService的简称,即拒绝服务u造成DoS的攻击行为被称为DoS攻击u其目的是使计算机或网络无法提供正常的服务u最常见的DoS攻击有计算机网络带宽攻击和连通性攻击u带宽攻击指以极大的通信量冲击网络,使得所有可用网络资源都被消耗殆尽,最后导致合法的用户请求就无法通过u连通性攻击指用大量的连接请求冲击计算机,使得所有可用的操作系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求拒绝服务攻击概述分布式拒绝服务攻击概念uDDoS:DistributedDenialofServiceu借助于客户/服务器技术,将多个计算机联合起来作为攻击平台u客户端u服务器端u最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应拒绝服务攻击概述被攻击时的现象u被攻击主机上有大量等待的TCP连接u网络中充斥着大量的无用数据包,源地址为假u制造高流量无用数据,造成网络拥塞,使受害主机无法正常和外界通讯u利用受害主机提供的服务或传输协议上的缺陷,反复高速的发出特定的服务请求,使受害主机无法及时处理所有正常请求u严重时会造成系统死机拒绝服务攻击概述对Web站点的影响u当对一个Web站点执行DDoS攻击时,这个站点的一个或多个Web服务会接到非常多的请求,最终使它无法再正常使用u利用许多计算机同时对目标站点发出成千上万个请求u导致正常的页面请求会完全失败,或者是页面下载速度变得极其缓慢攻击原理拒绝服务攻击原理注意:攻击者采用虚假的地址请求信息攻击原理DoS攻击的基本过程u攻击者向服务器发送众多的带有虚假地址的请求,服务器发送回复信息后等待回传信息u由于地址是伪造的,所以服务器一直等不到回传消息u分配给这次请求的资源就始终没有被释放u当服务器等待一定的时间后,连接会因超时而被切断u攻击者会再度传送新的一批请求u在这种反复发送伪地址请求的情况下,服务器资源最终会被耗尽.
分布式拒绝服务攻击原理分布式拒绝服务攻击原理DDoS攻击分为3层u攻击者u攻击者所用的计算机是攻击主控台,可以是网络上的任何一台主机,甚至可以是一个活动的便携机.
攻击者操纵整个攻击过程,它向主控端发送攻击命令.
u主控端u主控端是攻击者非法侵入并控制的一些主机,这些主机还分别控制大量的代理主机.
主控端主机的上面安装了特定的程序,因此它们可以接受攻击者发来的特殊指令,并且可以把这些命令发送到代理主机上.
u代理端u代理端同样也是攻击者侵入并控制的一批主机,它们上面运行攻击器程序,接受和运行主控端发来的命令.
代理端主机是攻击的执行者,真正向受害者主机发送攻击.
IP欺骗攻击IP欺骗原理u信任关系u什么是信任关系u以r*开头的远程调用命令urloginuRcallurshu这里的信任关系是基于IP地址的.
IP欺骗原理Rloginu简单的客户/服务器程序,它利用TCP传输u允许用户从一台主机登录到另一台主机上u如果目标主机信任它,Rlogin将允许在不应答口令的情况下使用目标主机上的资源u安全验证完全是基于源主机的IP地址u能利用Rlogin来从B远程登录到A,而且不会被提示输入口令IP欺骗原理TCP序列号预测uIP是非面向连接的,所以不保持任何连接状态的信息u提供虚假的IP地址u对IP堆栈进行修改u在源地址和目的地址中放入任意满足要求的IP地址uTCP可靠性是由数据包中的多位控制字来提供u最重要的字段uSEQuACKIP欺骗实现过程选定目标主机.
信任模式已被发现,并找到了一个被目标主机信任的主机黑客为了进行IP欺骗,进行以下工作:使得被信任的主机丧失工作能力采样目标主机发出的TCP序列号,猜测出它的数据序列号.
伪装成被信任的主机,同时建立起与目标主机基于地址验证的应用连接如果成功,黑客可以使用一种简单的命令放置一个系统后门,以进行非授权操作序列号取样和猜测与被攻击主机的一个端口建立起正常连接估计主机与被信任主机之间的往返时间u通过多次统计平均计算出来伪装成被信任的主IP向目标主机的513端口(rlogin)发送连接请求目标主机立刻对连接请求作出反应,发更新SYN+ACK确认包给被信任主机攻击者向目标主机发送ACK数据包,该包使用前面估计的序列号加1如果正确,目标主机将会接收该ACK连接就正式建立起了,开始数据传输
DediPath 商家成立时间也不过三五年,商家提供的云服务器产品有包括KVM和OPENVZ架构的VPS主机。翻看前面的文章有几次提到这个商家其中机房还是比较多的。其实对于OPENVZ架构的VPS主机以前我们是遇到比较多,只不过这几年很多商家都陆续的全部用KVM和XEN架构替代。这次DediPath商家有基于OPENVZ架构提供低价的VPS主机。这次四折的促销活动不包括512MB内存方案。第一、D...
优林怎么样?优林好不好?优林 是一家国人VPS主机商,成立于2016年,主营国内外服务器产品。云服务器基于hyper-v和kvm虚拟架构,国内速度还不错。今天优林给我们带来促销的是国内东北地区哈尔滨云服务器!全部是独享带宽!首月5折 续费5折续费!地区CPU内存硬盘带宽价格购买哈尔滨电信2核2G50G1M53元直达链接哈尔滨电信4核4G50G1M83元直达链接哈尔滨电信8核8G50G1M131元直...
Boomer.Host是一家比较新的国外主机商,虽然LEB自述 we’re now more than 2 year old,商家提供虚拟主机和VPS,其中VPS主机基于OpenVZ架构,数据中心为美国得克萨斯州休斯敦。目前,商家在LET发了两款特别促销套餐,年付最低3.5美元起,特别提醒:低价低配,且必须年付,请务必自行斟酌确定需求再入手。下面列出几款促销套餐的配置信息。CPU:1core内存:...
网络攻击为你推荐
支持ipad操作httpaspweb服务器ASP是什么?新iphone也将禁售iPhone停用怎么解锁 三种处理方法详解重庆网站制作重庆网站制作哪家好,重庆做网站制作的公司有谁比较了解的,应该去哪里做好些?重庆网站制作重庆网站制作,哪家专业,价格最优?申请支付宝账户我要申请支付宝账户360防火墙在哪里怎么查找到360防火墙在自己电脑里的位置?并且关闭掉加多宝和王老吉王老吉和加多宝的关系?宜人贷官网我在宜人财富贷款2万元,下款的时候时候系统说银行卡号错误,然 我在宜人财富贷款2万我在宜人财富贷款
北京主机租用 如何查询域名备案号 bluehost dropbox网盘 最好的空间 蜗牛魔方 e蜗 web服务器架设 nerds 亚马逊香港官网 电信虚拟主机 lick 东莞服务器托管 百度云空间 卡巴斯基官网下载 卡巴斯基试用版下载 双十二促销 新疆服务器 中美互联网论坛 comodo 更多