2第二章 入侵方法与手段_第1页
2第二章 入侵方法与手段_第2页
2第二章 入侵方法与手段_第3页
2第二章 入侵方法与手段_第4页
2第二章 入侵方法与手段_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

入侵方法与手段1第2章

入侵方法与手段入侵方法与手段2第2章入侵方法与手段入侵方法与手段:黑客入侵模型与原理漏洞扫描口令破解拒绝服务攻击缓冲区溢出攻击格式化字符串攻击跨站脚本攻击SQLInjection攻击入侵方法与手段3黑客入侵的步骤确定目标信息收集攻击网络攻击系统留下后门漏洞挖掘清除日志结束攻击入侵方法与手段4常见的安全威胁口令破解拒绝服务(DoS)攻击缓冲区溢出攻击格式化字符串攻击特洛伊木马网络监听等等入侵方法与手段5主要入侵攻击方法网络信息丢失、篡改、销毁内部、外部泄密拒绝服务攻击逻辑炸弹黑客攻击计算机病毒后门、隐蔽通道蠕虫特洛伊木马入侵方法与手段6主机渗透攻击方法口令破解漏洞攻击特洛伊木马攻击自己姓名的中文拼音37%常用英文单词23%计算机的中经常出现的单词18%自己的出生日期7%良好的密码15%入侵方法与手段7网络攻击方法拒绝服务攻击IP地址欺骗网络监听入侵方法与手段8其他攻击方法病毒攻击随着蠕虫病毒的泛滥以及蠕虫、计算机病毒、木马和黑客攻击程序的结合,病毒攻击成为了互联网发展以来遇到的巨大挑战。社会工程攻击社会工程学其实就是一个陷阱,黑客通常以交谈、欺骗、假冒或口语等方式,从合法用户中套取用户系统的秘密,

入侵方法与手段9漏洞扫描扫描器:扫描器是一种通过收集系统的信息来自动监测远程或本地主机安全性弱点的程序,通过使用扫描器,可以发现远程服务器的各种TCP端口的分配及提供的服务和它们的软件版本。这就能让黑客或管理员间接或直接的了解到远程主机存在的安全问题。

扫描器有三项功能:1、发现一个主机或网络;2、一旦发现一台主机,可以发现有什么服务程序正运行在这台主机上;3、通过测试这些服务,发现漏洞。入侵方法与手段10TCPConnect扫描SYN:同步序列编号

是TCP/IP建立连接时使用的握手信号。在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN+ACK应答表示接收到了这个消息,最后客户机再以ACK消息响应。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在客户机和服务器之间传递入侵方法与手段11TCPSYN扫描这种扫描方法没有建立完整的TCP连接,有时也被称为“半打开扫描(half-openscanning)”。其步骤是先往端口发送一个SYN分组。如果收到一个来自目标端口的SYN/ACK分组,那么可以推断该端口处于监听状态。如果收到一个RST(TCP连接异常终止)/ACK分组,那么它通常说明该端口不在监听。入侵方法与手段12TCPFIN扫描这种扫描方法是直接往目标主机的端口上发送FIN(关闭连接)分组。按照RFC793,当一个FIN分组到达一个关闭的端口,数据包会被丢掉,并且回返回一个RST分组。否则,当一个FIN分组到达一个打开的端口,分组只是简单地被丢掉(不返回RST分组)。入侵方法与手段13TCPXmas扫描无论TCP全连接扫描还是TCPSYN扫描,由于涉及TCP三次握手很容易被远程主机记录下来。Xmas扫描由于不包含标准的TCP三次握手协议的任何部分,所以无法被记录下来,从而比SYN扫描隐蔽得多。这种扫描向目标端口发送一个FIN、URG和PUSH分组。按照RFC793,目标系统应该给所有关闭着的端口发回一个RST分组。。入侵方法与手段14TCP空扫描这种扫描发送一个关闭掉所有标志位的分组,按照RFC793,目标系统应该给所有关闭着的端口返回一个RST分组。入侵方法与手段15TCPACK扫描这种扫描一般用来侦测防火墙,他可以确定防火墙是否只是支持简单的分组过滤技术,还是支持高级的基于状态检测的包过滤技术。入侵方法与手段16UDP扫描这种扫描往目标主机的端口发送UDP数据分组,如果目标端口是关闭状态,则返回一个“ICMP端口不可达(ICMPportunreachable)”消息。否则,如果没有收到上述返回信息,可以判断该端口是开启的。入侵方法与手段17OSFingerprint技术许多漏洞是系统相关的,而且往往与相应的版本对应,同时从操作系统或者应用系统的具体实现中发掘出来的攻击手段都需要辨识系统,因此操作系统指纹探测成为了黑客攻击中必要的环节。如何辨识一个操作系统是OSFingerprint技术的关键,常见的方法有:l

一些端口服务的提示信息,例如,telnet、http、ftp等服务的提示信息;l

TCP/IP栈指纹;l

DNS泄漏出OS系统等等。入侵方法与手段18口令破解帐户是一种参考上下文,操作系统在这个上下文描述符运行它的大部分代码。换一种说法,所有的用户模式代码在一个用户帐户的上下文中运行。即使是那些在任何人都没有登录之前就运行的代码(例如服务)也是运行在一个帐户(特殊的本地系统账户SYSTEM)的上下文中的。如果用户使用帐户凭据(用户名和口令)成功通过了登录认证,之后他执行的所有命令都具有该用户的权限。口令破解是获得系统最高权限帐户的最有效的途径之一。入侵方法与手段19Windows口令文件的格式及安全机制

WindowsNT及Windows2000中对用户帐户的安全管理使用了安全帐号管理器(SAM,SecurityAccountManager)的机制,SAM是组成注册表的5个配置单元之一,口令在SAM中通过单向函数(One-wayFunction,OWF)加密,SAM文件存放在“%systemroot%\system32\config\sam”(在域服务器中,SAM文件存放在活动目录中,默认地址“%system32%\ntds\ntds.dit”)。入侵方法与手段20Unix口令文件的格式及安全机制

Unix系统中帐户信息存放在passwd文件中,口令使用DES或MD5加密后存放在shadow文件中。passwd使用的是纯文本的格式保存信息。UNIX中的passwd文件中每一行都代表一个用户资料,每一个账号都有七部分资料,不同资料中使用“:”分割。入侵方法与手段21破解原理及典型工具工具一:PasswordCrackers

工具二:L0phtCrack

入侵方法与手段22拒绝服务攻击拒绝服务攻击的主要目的是使被攻击的网络或服务器不能提供正常的服务。有很多方式可以实现这种攻击,最简单的方法是切断网络电缆或摧毁服务器;当然利用网络协议的漏洞或应用程序的漏洞也可以达到同样的效果。DoS的攻击方式有很多种。最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,致使服务超载,无法响应其他的请求。这些服务资源包括网络带宽,文件系统空间容量,开放的进程或者向内的连接。这种攻击会导致资源的匮乏,无论计算机的处理速度多么快,内存容量多么大,互连网的速度多么快都无法避免这种攻击带来的后果。因为任何事都有一个极限,所以,总能找到一个方法使请求的值大于该极限值,因此就会使所提供的服务资源匮乏,达到拒绝服务攻击的目的。入侵方法与手段23SYN湮没

SYN

(同步序列编号)是TCP/IP协议建立连接时使用的握手信号。在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN-ACK应答表示接收到了这个消息,最后客户机以再ACK消息响应。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在客户机和服务器之间传递。这种攻击向一台服务器发送许多SYN消息,该消息中携带的源地址根本不可用,但是服务器会当真的SYN请求处理,当服务器尝试为每个请求消息分配连接来应答这些SYN请求时,服务器就没有其它资源来处理来真正用户的合法SYN请求了。这就造成了服务器不能正常的提供服务。入侵方法与手段24Land攻击

Land攻击和其它拒绝服务攻击相似,也是通过利用某些操作系统在TCP/IP协议实现方式上的漏洞来破坏主机。在Land攻击中,一个精心制造的SYN数据包中的源地址和目标地址都被设置成某一个服务器地址,这将导致接收到这个数据包的服务器向它自己发送SYN-ACK消息,结果又返回ACK消息并创建一个空连接……每个这样的连接都将一直保持到超时。不同的操作系统对Land攻击反应不同,多数UNIX操作系统将崩溃,而WindowsNT会变的极其缓慢(大约持续五分钟)。入侵方法与手段25Smurf攻击

Smurf【smɜrf】(蓝精灵)攻击是以最初发动这种攻击的程序名Smurf来命名。这种攻击方法结合使用了IP欺骗和ICMP(InternetControlMessageProtocol)Internet控制报文协议,回复方法使大量数据充斥目标系统,引起目标系统不能为正常系统进行服务。简单的Smurf攻击将ICMP应答请求(ping)数据包的回复地址设置成受害网络的广播地址,最终导致该网络的所有主机都对此ICMP应答请求作出答复,从而导致网络阻塞。因此它比pingofdeath攻击的流量高出一到两个数量级。复杂的Smurf攻击将源地址改为第三方的受害者,最终导致第三方崩溃。入侵方法与手段26Teardrop攻击

Teardrop(泪珠)是一种拒绝服务攻击,可以令目标主机崩溃或挂起。目前多数操作系统已经升级或有了补丁程序来避免受到这种攻击。Teardrop攻击和其他类似的攻击发出的TCP或UDP包包含了错误的IP重组信息,这样主机就会使用错误的信息来重新组合成一个完整的包。结果造成崩溃、挂起或者执行速度极其缓慢。入侵方法与手段27PingofDeath攻击

PingofDeath攻击是利用网络操作系统(包括UNIX、windows和MacOS等)的缺陷,当主机接收到一个大的不合法的ICMP(Internet控制报文协议)回应请求包(大于64KB)时,会引起主机挂起或崩溃。入侵方法与手段28分布式拒绝服务攻击入侵方法与手段29缓冲区溢出攻击缓冲区溢出攻击是利用缓冲区溢出漏洞所进行的攻击行动。缓冲区溢出是一种非常普遍、非常危险的漏洞,在各种操作系统、应用软件中广泛存在。利用缓冲区溢出攻击,可以导致程序运行失败、系统关机、重新启动等后果。入侵方法与手段30缓冲区溢出攻击通过往程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。造成缓冲区溢出的原因是程序中没有仔细检查用户输入的参数。入侵方法与手段31缓冲区溢出攻击voidfunction(char*str){ charbuffer[16]; strcpy(buffer,str);}上面的strcpy()将直接把str中的内容copy到buffer中。这样只要str的长度大于16,就会造成buffer的溢出,使程序运行出错。存在像strcpy这样的问题的标准函数还有strcat()、sprintf()、vsprintf()、gets()、scanf()等。入侵方法与手段32缓冲区溢出攻击随便往缓冲区中填东西造成它溢出一般只会出现分段错误(Segmentationfault),而不能达到攻击的目的。最常见的手段是通过制造缓冲区溢出使程序运行一个用户shell,再通过shell执行其它命令。如果该程序属于root且有suid权限的话,攻击者就获得了一个有root权限的shell,可以对系统进行任意操作了。入侵方法与手段33缓冲区溢出攻击缓冲区溢出攻击之所以成为一种常见安全攻击手段其原因在于缓冲区溢出漏洞太普遍了,并且易于实现。而且,缓冲区溢出成为远程攻击的主要手段其原因在于缓冲区溢出漏洞给予了攻击者他所想要的一切:植入并且执行攻击代码。被植入的攻击代码以一定的权限运行有缓冲区溢出漏洞的程序,从而得到被攻击主机的控制权。入侵方法与手段34格式化字符串攻击普通的缓冲区溢出就是利用了堆栈生长方向和数据存储方向相反的特点,用后存入的数据覆盖先前压栈的数据,一般是覆盖返回地址,从而改变程序的流程,这样子函数返回时就跳到了黑客指定的地址,就可以按照黑客意愿做任何事情了。所谓格式化串,就是在*printf()系列函数中按照一定的格式对数据进行输出,可以输出到标准输出,即printf(),也可以输出到文件句柄,字符串等,对应的函数有fprintf,sprintf,snprintf,vprintf,vfprintf,vsprintf,vsnprintf等。能被黑客利用的地方也就出在这一系列的*printf()函数中入侵方法与手段35格式化字符串攻击普通的缓冲区溢出就是利用了堆栈生长方向和数据存储方向相反的特点,用后存入的数据覆盖先前压栈的数据,一般是覆盖返回地址,从而改变程序的流程,这样子函数返回时就跳到了黑客指定的地址,就可以按照黑客意愿做任何事情了。所谓格式化串,就是在*printf()系列函数中按照一定的格式对数据进行输出,可以输出到标准输出,即printf(),也可以输出到文件句柄,字符串等,对应的函数有fprintf,sprintf,snprintf,vprintf,vfprintf,vsprintf,vsnprintf等。能被黑客利用的地方也就出在这一系列的*printf()函数中入侵方法与手段36格式化字符串攻击因为类printf函数中省略号参数表中参数的个数和类型都是由类printf函数中的那个格式化字符串来决定的,所以攻击者可以利用编程者的疏忽或漏洞,巧妙构造格式化字符串,达到攻击目的。如果一个程序员的任务是:打印输出一个字符串或者把这个串拷贝到某缓冲区内。他可以写出如下的代码:printf("%s",str);但是为了节约时间和提高效率,并在源码中少输入6个字节,他会这样写:printf(str);入侵方法与手段37格式化字符串攻击为什么程序员写的是错误的呢?他传入了一个他想要逐字打印的字符串。实际上该字符串被printf函数解释为一个格式化字符(formatstring),printf就会根据该字符串来决定printf函数中省略号参数表中参数的格式和类型,如果这个程序员想要打印的字符串中刚好有“%d”,“%x”之类的格式化字符,那么一个变量的参数值就从堆栈中取出。入侵方法与手段38格式化字符串攻击#include

<stdio.h>

#include

<stdlib.h>

int

main(int

argc,

char*

argv[])

{

if(argc

!=

2)

return

0;

printf(argv[1]);

return

0;

}

入侵方法与手段39格式化字符串攻击当./a.out“helloworld”时一切正常,但是当./a.out

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论