您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 第十二讲 网络入侵技术介绍
第十一讲网络攻击技术介绍目录10.1攻击方法概述10.2典型攻击方法剖析10.1攻击方法概述内容:黑客常用入侵方法攻击的一般步骤黑客常用入侵方法口令入侵用软件解开已经得到但加密的口令文档(高级:绕开或屏蔽口令保护程序)特洛伊木马术典型做法是把一个能帮助黑客完成某一特定功能的程序依附在某一合法用户的正常程序中,这时合法用户的程序代码已被改变。一般的系统管理员很难发现。黑客常用入侵方法(续)监听法:很实用但风险也很大的入侵方法E-mail技术病毒技术隐藏技术端口扫描技术缓冲区溢出攻击方法WEB攻击网络炸弹欺骗攻击……攻击的准备阶段1)确定攻击的目的:进行破坏型攻击还是入侵型攻击破坏型只破坏攻击目标,不能随意控制目标系统。入侵型是为了获得目标系统的一定权限,达到控制攻击目标的目的。2)目标系统的信息收集O.S类型与版本;提供了哪些服务;服务程序的类型与版本;……攻击的实施阶段1)获取权限:破坏型攻击:利用工具发动攻击入侵型攻击:利用系统漏洞进行攻击。漏洞包括了软件漏洞和系统安全配置不当而造成的漏洞。2)权限的扩大远程获取到一定权限后,再利用系统的本地漏洞进行权限的扩大。或安装木马程序攻击的善后工作1)隐藏踪迹:清除(修改)日志文件替换部分系统程序隐藏指定的文件2)后门目的是便于下一次进入10.2典型攻击方法剖析10.2.1缓冲区溢出攻击与防护10.2.2拒绝服务攻击与防护10.2.3其它攻击方法与防护缓冲区溢出(bufferflow)是指一种系统攻击的手段,通过往程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。据统计:对三种系统:RedhatLinux,Solaris,NT的攻击总数缓冲区溢出攻击>70%本地溢出远程溢出(危害大)重点:堆栈溢出10.2.1缓冲区溢出攻击缓冲区溢出原因:程序没能仔细检查用户输入的参数测试环境:操作系统:WindowsProfessional2000版本为:5.00.2195编程工具:VisualStudio-VisualC++6.0及2000下的Debug缓冲区溢出溢出的样例函数:voidoverflow(char*s,intsize){charbuffer[80];s[size]=0;strcpy(buffer,s);}该函数的不妥在于strcpy函数的调用头文件string.h中strcpy的语法描述:char*strcpy(char*,constchar*)缓冲区溢出执行strcpy()之前执行strcpy()之后压入栈中传递的参数返回地址少量存贮单元Buffer80字节空间AA…AAAAA…A80个A地址高端地址低端缓冲区溢出主程序:voidmain(intargc,char*argv[]){FILE*file;charbuf[300];if(argc2){printf(Usage:%sinput-file\n,argv[0]);exit(1);}file=fopen(argv[1],rb);if(file!=NULL){fread(buf,sizeof(char),255,file);overflow(buf,255);fclose(file);}}缓冲区溢出主程序执行到函数overflow时的堆栈:内存高端内存低端返回地址SP指针缓冲区buffer数据区栈的增长方向缓冲区溢出正常情况下(输入文件中内容长度不超过80个字节),程序可以正常运行。如果输入文件中内容(共96个字节)为:“1111111111111111222222222222222233333333333333334444444444444444555555555555555501234566666666666”???程序运行结果缓冲区溢出程序报错缓冲区溢出缓冲区溢出有了缓冲区溢出后,下一步就是该如何利用缓冲区溢出进行攻击了。攻击者必须达到如下两个目标:1.在程序的地址空间里安排适当的代码。2.通过适当地初始化寄存器和存储器,让程序跳转到我们安排的地址空间执行。(1)植入法(2)利用已经存在的代码(2)函数指针(FunctionPointers)最简单和常见的缓冲区溢出攻击类型:植入法+激活纪录(1)激活纪录(ActivationRecords)(3)长跳转缓冲区(Longjmpbuffers)`准备shellcode准备数据结构执行execl缓冲区溢出攻击程序一般结构相当于在执行命令为有溢出漏洞的程序准备一个参数执行有溢出漏洞的程序缓冲区溢出缓冲区溢出漏洞:实例1漏洞名称:(Sun003)Solarisadmintool缓冲区溢出漏洞受影响的系统:Solaris2.6漏洞描述:admintool存在缓冲区溢出漏洞,用户可通过一系列操做获得root权限。10.2.2拒绝服务攻击与防护远程攻击一览表:Datadidding(未授权删改文档)----15.5%Scanner(利用工具找漏洞)----15.8%DenialofService(使系统瘫痪)----16.2%Sniffer(监听加密数据包)----11.2%IPspoofing(IP欺骗)----12.4%Other(其它)----13.9%拒绝服务(DenialofService,DoS),是一种简单的破坏性攻击,通常攻击者利用TCP/IP协议中的某个弱点,或者系统存在的某些漏洞,对目标系统发起大规模的攻击,导致攻击目标无法对合法的用户提供正常的服务,甚至瘫痪。“损人不利己”.原因:系统配置不当:日志文件空间太小,…...软件漏洞:检查不严格的资源申请,…...协议漏洞:碎片包,…..……拒绝服务分布式拒绝服务(DistributedDenialofService,DDoS),是一种利用多台主机对同一目标机进行攻击的攻击方法。这些攻击将耗尽网络带宽以及路由器的处理能力,切断目标机同网络的连接。常用的4种分布式拒绝服务攻击程序:Trinoo、TFN、TFN2K和Stacheldraht。拒绝服务拒绝服务典型的拒绝服务攻击方式1)UDP攻击:两个或两个以上的系统之间产生巨大的UDP数据包,循环通信,最终将导致整个网络瘫痪2)Land由黑客组织rootshell发现.原理:向目标机发送大量源地址和目标地址相同的包,造成目标主机解析Land包时占用大量的系统资源,从而使网络功能完全瘫痪。3)TCP/SYNflooding攻击:短时间内大量的SYN报文使目标主机系统资源耗尽以至瘫痪。对NT系统攻击效果最好。典型的拒绝服务攻击方式3)TCP/SYNflooding攻击过程客户方服务器方1.SYN2.ACK=SYN+13.ACK=SYN+13)TCP/SYN的攻击“半开连接”攻击:被攻击服务器发送等待确认包后,等待回答。等待任务加入等待队列。等待队列填满后,正常用户的连接请求将被丢弃。4)ICMP/PING攻击:利用一些系统不能接受超大的IP包或需要资源处理的特性攻击方式:Ping–l65527–s1攻击目标Ping是用于检测网络连接性、可到达性和名称解析的疑难问题的主要TCP/IP命令。典型的拒绝服务攻击方式4)ICMP/SMURF攻击:利用网络广播的原理发送报文给大量的地址,而包的源地址就是要攻击的机器本身的地址。5)TARGA3攻击(IP堆栈突破):基本原理是发送TCP/UDP/ICMP的碎片包,其大小、标记、包数据等都是随机的。一些有漏洞的系统内核由于不能正确处理这些极端不规范数据包,便会使其TCP/IP堆栈出现崩溃,从而导致无法继续响应网络请求(即拒绝服务)。典型的拒绝服务攻击方式6)OOB攻击:OOB(OutOfBand)是TCP/IP的一种传输模式。当向Windows系统的139口发送0字节包时,系统会想办法恢复这个碎片包,导致资源耗尽,最后完全死机。工具:对Win95攻击的Wunnuke典型的拒绝服务攻击方式7)特殊设备驱动器攻击:目标:Windows98解释路径c:\[device][device]时有问题。攻击用的设备名有:CON,NUL,AUX,CLOCK$,CONFIG$,有效的攻击有:CON\NUL,NUL\CON,AUX\NUL等。典型的拒绝服务攻击方式10.2.3其它攻击方法与防护1、口令攻击2、欺骗攻击3、扫描器4、Sniffer5、入侵之后的恢复6、UNIX安全管理口令是系统的第一道防线,也是攻击者首先试图突破的地方。口令攻击程序是对原来加密的口令进行解密使口令显露出来的程序。口令攻击口令的存放口令明文加密(密钥)口令密文口令密文文件(可能包含Shadow)口令攻击方法主要是猜测法:1、枚举法2、字典攻击法口令攻击口令明文加密(密钥)口令密文口令文件中的口令密文枚举或从字典中取一个口令明文口令攻击难度:UNIX口令中可用的字符数:[0x00-oxff]中只95个即,10个数字+33个标点符号+26*2个字母若口令取5个字母加一个数字,可能性为:52*52*52*52**52*43=16348773000破解时间为分钟的数量级!网络邻居共享口令的破解网络邻居共享有如下一个函数(可以参考MSDN)DWORDWNetAddConnection3(HWNDhwndOwner,LPNETRESOURCElpNetResource,LPTSTRlpPassword,LPTSTRlpUserName,DWORDdwFlags);lpPassword,lpUserName则分别为密码和用户名。可以设定用户名,然后穷举密码反复调用上面的函数,直到函数返回成功值。破98共享目录密码时可以不需指定用户名。口令破解的典型工具UNIX:JohntheRopper破解的加密算法:DES,MD5运行的平台:Linuxx86FreeBSDx86Solaris2.xSPARCOSF/1AlphaDOSWindowsNT/95/98网址:口令破解的典型工具WindowsNT用户口令l0phtcrack邮件系统的口令破解EmailcrkZIP文档密码的破解……即使主机没有明显漏洞,攻击者仍可使用各种欺骗手段来达到攻击的目的。欺骗是纯技术性的,一般利用了TCP/IP协议本身存在的一些缺陷。IP欺骗DNS欺骗WEB欺骗欺骗攻击信任关系IP欺骗是利用了主机间的正常信任关系来发动的。基于IP的信任关系的建立UNIX主机中存在一种特殊的信任关系.假设主机A和B都有admin账户,实际上是相互独立的。主机A执行:echo“Badmin”~/.rhosts从主机B则可直接通过r开头的远程调用命令直接登录到主机A。以IP地址为基础的验证。IP欺骗攻击/etc/hosts.equiv文件“+”:任意主机可直接登录而不用口令验证$HOME/.rhosts文件“++”:任意主机可直接登录而不用口令验证IP欺骗攻击IP欺骗攻击IP欺骗的理论依据由于主机A和B间的信任关系是基于IP地址的,只要能冒充B的IP地址,就可使用rlogin登录上主机A。TCP/IP的会话过程客户方服务器方1.SYN2.SYN+ACK3.ACKIP欺骗攻击会话过程说明攻击必须解决1、要冒充B的IP地址发SYN包2、让A的ACK包不能回到真正的主机B上3、必须知道A的ISN序列号4、回一个正确的ISN序号的ACK包给B关键:ISN是一个32位的计数器每一个TCP连接都有一个初始的ISN序列号IP欺骗攻击一般地,ISN每秒增加128000,每次连接增加64000在无连接情况下计数器每9.32小时复位一次正常连接估算往返时间(多次的平均值)记录最后一次的目标主机的ISN号开始冒充攻击如果序列号小于正确值,将被弃掉如果序列号大于正确值,但在缓冲大小之内,进入等待状态如果太大,目标主机返回一个期望获得的数据序列号IP欺骗攻击攻击:向目标机513口(rlogin)发送连接请求原主机无法收到目标机的SYN+ACK包接着发送ACK包
本文标题:第十二讲 网络入侵技术介绍
链接地址:https://www.777doc.com/doc-3822180 .html