《网络攻击与防御》课件第四章 基于系统的攻击与防御.pptx
《《网络攻击与防御》课件第四章 基于系统的攻击与防御.pptx》由会员分享,可在线阅读,更多相关《《网络攻击与防御》课件第四章 基于系统的攻击与防御.pptx(167页珍藏版)》请在文库网上搜索。
1、第四章 基于系统的攻击与防御第四章 基于系统的攻击与防御4.1 基于基于Windows的系统攻击与防御的系统攻击与防御4.2 Linux系统的攻击与系统的攻击与防御防御第四章 基于系统的攻击与防御 4.1 基于基于Windows的系统攻击与防御的系统攻击与防御4.1.1 系统口令攻击系统口令攻击 1.口令攻击概述口令攻击概述 口令是网络系统的第一道防线。当前的网络系统都是通过口令来验证用户身份、实施访问控制的。口令攻击是指黑客以口令为攻击目标,破解合法用户的口令,或避开口令验证过程,然后冒充合法用户潜入目标网络系统,夺取目标系统控制权的过程。在典型的计算机系统中,每个用户都有一个固定的口令,除
2、非用户决定进行更改。当口令通过键盘输入时,系统的身份认证内核模块会对它进行加密运算,经过运算后的加密字符串同系统的密码表进行逐项比较,通常密码表是一个存储在计算机上的密码文件,如果认证模块发现某项与输入的加密串等同,则允许登录。基于这种密码验证原理,攻击者攻击目标时常常把破译用户的口令作为攻击的开始。如果口令攻击成功,黑客进入了目标网络系统,他就能够随心所欲地窃取、破坏和篡改被侵入方的信息,直至完全控制被侵入方。所以,口令攻击是黑客实施网络攻击最基本、最重要、最有效的方法之一。第四章 基于系统的攻击与防御 进行口令攻击的前提是必须先得到该主机上的某个合法用户的账号,获得普通用户账号的方法很多,
3、例如:(1)利用目标主机的Finger功能。使用finger options useraddress格式的命令,可以让使用者查询一些其他使用者的资料,如用户名、登录时间等。例如:在Linux下使用Finger指令查询本机管理员的资料:其操作方法如下:Finger root其结果如下:Login:root Name:root Directory:/root Shell:/bin/bash Never logged in.No mail.No Plan.第四章 基于系统的攻击与防御(2)从电子邮件地址中收集。有些用户的电子邮件地址常会透露其在目标主机上的账号。(3)查看主机是否有习惯性的账号。有经
4、验的用户都知道,很多系统会使用一些习惯性的账号,造成账号的泄露。第四章 基于系统的攻击与防御2.口令攻击的方法口令攻击的方法口令攻击主要采用以下几种方法。(1)猜测攻击。也就是使用口令猜测程序进行攻击。口令猜测程序往往根据用户定义口令的习惯来猜测用户口令,像姓名缩写、生日、宠物名、部门名等。在详细了解用户的社会背景之后,黑客可以列举出几百种可能的口令,并在很短的时间内完成猜测攻击。(2)字典攻击。如果猜测攻击不成功,攻击者可以继续扩大攻击范围,对所有英文单词进行尝试,程序将按序取出一个又一个的单词,进行一次又一次尝试,直到成功。对于一个有8万个英文单词的集合来说,入侵者不到一分半钟就可以试完。
5、所以,如果用户的口令不太长或是单词、短语,那么很快就会被破译出来。第四章 基于系统的攻击与防御(3)穷举攻击。如果字典攻击仍然不能够成功,攻击者可以采取穷举攻击。一般从长度为1的口令开始,按长度递增进行尝试攻击。由于人们往往偏爱简单易记的口令,因此穷举攻击的成功率很高。如果每千分之一秒检查一个口令,那么86%的口令可以在一周内破译出来。(4)混合攻击。该种攻击方法结合了字典攻击和穷举攻击的特点,先字典攻击,再进行海量连续测试口令的方法进行攻击。第四章 基于系统的攻击与防御(5)直接破解系统口令文件。所有的攻击都不能够奏效时,入侵者会寻找目标主机的安全漏洞和薄弱环节,伺机偷走存放系统口令的文件,
6、然后破译加密的口令,以便冒充合法用户访问这台主机。(6)网络嗅探(sniffer)。通过嗅探器在局域网内嗅探明文传输的口令字符串。(7)键盘记录。在目标系统中安装键盘记录后门,记录操作员输入的口令字符串,如很多间谍软件、木马等都可能会盗取用户的口令。第四章 基于系统的攻击与防御(8)其他攻击方式。中间人攻击(Man-in-the-Middle Attack,简称“MITM攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。然后入侵者把这台计算机模拟为一台或两台原始计算机,使“中间人”能够
7、与原始计算机建立活动连接并允许其读取或篡改传递的信息,然而两个原始计算机用户却认为他们是在互相通信,因而这种攻击方式并不很容易被发现,通过这种方式可以顺利进入网络获取口令。(9)社会工程学(Social Engineering)。通过人际交往这一非技术手段以欺骗、套取的方式来获得口令。第四章 基于系统的攻击与防御3.Windows操作系统的口令破解技术操作系统的口令破解技术在Windows系统中,以Windows XP为例,由于系统本身保存密码的特点和缺陷,以及系统管理员的疏忽,可以对系统口令进行本地的破解。下面介绍利用SAMInside工具实现针对Windows XP系统口令的本地破解。1)
8、破解Syskey加密过的密码文件在Windows 2003及后续系统中,本地的用户名和密码一般是保存在SAM密码文件中的,SAM文件位于Windows目录下的“system32config”或“repair”文件夹中。用LC5之类的工具,可以直接从SAM文件中还原破解出登录密码。但是如果用户运行位于“system32”文件夹下的“syskey.exe”程序时,将会出现一个账户数据库加密提示界面,如图4-1所示。第四章 基于系统的攻击与防御图4-1 运行syskey.exe文件第四章 基于系统的攻击与防御图4-2 设置启动密码第四章 基于系统的攻击与防御2)导入SAM密码文件图4-3 运行SAM
9、Inside工具第四章 基于系统的攻击与防御图4-4 选择菜单第四章 基于系统的攻击与防御小提示:破解方式下拉选择菜单中的“从SAM和SYSKEY注册表文件导入”命令是常见的密码破解方式,用于破解经过Syskey加密的SAM文件。运行该命令后选择相应的SAM文件及System文件后,即可像LC5一样快速还原破解出登录密码。如果是破解远程入侵主机的密码,切记需要将主机上与SAM文件同一文件夹下的“Syskey”文件下载到本地进行破解。另外的几个菜单选项命令是用来破解其他格式的密码文档的,比如.LCP、.LCS、.LC格式密码文件或PWDUMP文件等。第四章 基于系统的攻击与防御图4-5 选择SA
10、M文件第四章 基于系统的攻击与防御图4-6 打开SYSKEY文件第四章 基于系统的攻击与防御3)导入SYSKEY加密文件在SAMInside目录下的tools子目录下选择GetSyskey工具,运行该工具可以生成SYSKEY文件,如图4-7所示。图4-7 选择Getsyskey文件第四章 基于系统的攻击与防御此工具是一个DOS命令行下使用的程序,格式如下:GetSyskey Output SYSKEY-file其中SYSTEM-file表示系统中与SAM文件放在同一目录下经过Syskey加密过的“System”文件路径,一般位于“C:WINDOWSsystem32config”或“C:WIND
11、OWSrepair”下。运行命令“GetSyskey C:WINDOWSrepairsystem syskey.key”。命令执行后,提示“The system key file“syskey”is created.”,即可在DOS的运行目录(笔者的运行目录是C:Documents and Settingstest)中生成一个16个字节的二进制代码文件“syskey”,如图4-8所示,将其导入SAMIniside中即可,如图4-9所示。第四章 基于系统的攻击与防御图4-8 生成syskey文件第四章 基于系统的攻击与防御图4-9 导入syskey文件第四章 基于系统的攻击与防御小提示:在破解的
12、时候,要求SAM文件和SYSKEY-file未被使用中,也就是说假如我们要破解当前登录的Windows系统的密码的话,首先应该在DOS下或其他Windows系统中将SAM密码文档复制保存到其他的文件夹中,然后再从SAMinside中导入进行破解。否则将会出现“共享违例”的错误提示对话框,如图4-10所示。图4-10 共享违例第四章 基于系统的攻击与防御4)选择破解方式将SAM文件和SYSKEY加密文档导入后,在SAMIniside程序窗口中点击工具栏上的“Attack Options”按钮,在弹出菜单中可以看到当前可使用的密码破解方式。首先选择使用“LMHash attack”或“NTHash
13、 attack”破解方式,其中LMHash只能破解长度为14位字符的密码,而NTHash可以破解长度为32位字符的密码。由于这里是在本机测试,知道密码长度为7,因此选择了“LMHash attack”破解方式。设置完密码破解方式后,点击“审计”菜单,选择“开始攻击”,即可开始破解选中用户的登录密码了。很快就可以看到破解结果了,如图4-11所示。第四章 基于系统的攻击与防御图4-11 破解结果第四章 基于系统的攻击与防御4.Windows操作系统的口令保护技术操作系统的口令保护技术Windows系统对口令的安全性做了很多设计,使用128位以上的加密技术,并支持Windows中几乎所有的加密服务,
14、如Kerberos、加密文件系统以及IPSec等。表4-1提供了Windows 2003支持的多种不同的标准身份验证协议,而这些方式使得Windows 2003在口令安全上有了很大的选择性。第四章 基于系统的攻击与防御第四章 基于系统的攻击与防御图4-12 注册表中的SAM文件第四章 基于系统的攻击与防御保持口令安全的措施包括以下几点:口令长度不要小于8位,并应同时包含大小写字母、数字以及标点符号和控制字符。口令中不要使用常用单词(避免字典攻击)、英文简称、个人信息(如生日、名字、系统登录名等)、年份以及机器中的命令等。不要将口令写下来,不要将口令存于电脑文件中。不要在不同系统上,特别是不同级
15、别的用户上使用同一口令。为防止旁人窃取口令,输入口令时应确认无人在身边。第四章 基于系统的攻击与防御 定期改变口令;至少6个月改变一次。对口令文件进行隐藏。对用户口令设置情况进行检测,并强制用户定期改变口令。任何一个脆弱的口令,都可能影响整个系统的安全。作为系统管理员应该定期运行破解口令的工具,来尝试破解口令文件,若用户的口令密码轻易被破译,说明用户的密码取得过于简单或有规律可循,应尽快地更换密码,以防止黑客的入侵。第四章 基于系统的攻击与防御保护好系统口令的另一个重要的方面就是合理地对系统的策略进行设置。以下介绍几个策略设置的例子,系统策略的合理设置也有助于口令的保护。(1)连接策略:默认情
16、况下系统没有设置登录的失败次数限制,导致可以被无限制地尝试连接系统管理的共享资源。利用这个问题攻击者可以进行口令的暴力猜测。解决这个问题的方法是设置用户的访问策略,定义用户登录失败达到一定次数时锁定账号,并限制管理员远程访问。账户锁定的策略在活动目录中进行设定,设定的方法如下:在“开始”菜单中的“程序”中的“管理工具”中,选择“本地安全策略”,如图4-13所示。第四章 基于系统的攻击与防御 在“本地安全策略”中选择“账户策略”,如图4-14所示,其中的“密码策略”可以对密码的长度、密码的存留时间等进行设置。比如:在“密码必须符合复杂性要求”的选项中,系统默认是停用该功能,但推荐用户在使用时将该
17、功能开启。图4-13 本地安全策略位置第四章 基于系统的攻击与防御 在“本地安全策略”中选择“账户策略”,如图4-14所示,其中的“密码策略”可以对密码的长度、密码的存留时间等进行设置。比如:在“密码必须符合复杂性要求”的选项中,系统默认是停用该功能,但推荐用户在使用时将该功能开启。图4-14 本地安全设置第四章 基于系统的攻击与防御图4-15 账户锁定策略第四章 基于系统的攻击与防御图4-16 账户锁定阈值设定第四章 基于系统的攻击与防御图4-16 账户锁定阈值设定第四章 基于系统的攻击与防御图4-17 阈值修改界面第四章 基于系统的攻击与防御(2)管理员无法设置账号锁定:为抵御对用户口令的
18、暴力猜解,Windows 2003提供了账号策略,允许在某个账号登录失败次数达到一定阈值时,将账号锁定。由于Administrator账号的特殊性,Administrator账号无法设置账号锁定,即使登录失败的次数达到阈值时,该账号也不可能被锁定。这是为了避免由于入侵者对管理员口令进行猜解而使得管理员账号被锁,管理员自己都无法登录维护系统,这个设计使得管理员账号无法受到账号策略的保护。因此除了系统默认创建的Administrator账号,还应该创建至少一个具有管理员特权的账号,并且,把默认账号Administrator改成另外一个名字。修改Administrator的名字,可以使得入侵者进行密
19、码猜解的难度加大,入侵者不仅要猜管理员的密码,还必须首先知道管理员的用户名。第四章 基于系统的攻击与防御4.1.2 SMB/NetBIOS协议攻击协议攻击1.SMB/NetBIOS原理原理SMB(Server Message Block,服务器消息块)是一种通过网络在共享文件、设备、命名管道和邮槽之间操作数据的协议。CIFS(Common Internet File System)是SMB的一个公共版本。SMB中有两种安全模式:共享级安全模式和用户级安全模式。共享级安全模式把一个网络上的共享资源同一个口令关联起来,用户通过这个正确的口令来访问网络资源;用户级安全模式是对共享级模式的增强,它把一
20、对用户名/口令同共享资源关联起来,所以如果某一个用户需要访问这种类型的共享资源,必须同时提供用户名和口令。第四章 基于系统的攻击与防御NetBIOS(Network Basic Input Output System,网络基本输入输出系统)是一种应用程序接口(API),作用就是为局域网(LAN)添加特殊功能,几乎所有的局域网电脑都是在NetBIOS基础上工作的。Windows系统下的SMB可以运行在TCP/IP、DECnet和IPX/SPX协议之上,目前运行在端口TCP/139或端口TCP/445上,这主要依赖于NetBIOS是否运行在TCP/IP协议之上。Windows 2003中SMB可以
21、直接运行在TCP/IP协议上,端口是445(TCP)。Windows 2003的NetBIOS通讯协议本身存在大量的安全漏洞,使得入侵者很容易收集到目标网络的大量信息,当入侵者攻击类似Windows 2003、NT系统时,NetBIOS往往是首选的攻击对象。针对SMB/BIOS协议进行攻击的方法有很多种,下面我们将介绍一种具有代表性的空会话攻击。第四章 基于系统的攻击与防御2.空会话空会话(Null Session)攻击攻击Windows 2003可以使用协议同远程主机建立一个会话。会话是通信双方交换信息的安全通道,每次会话都包含了访问资源所需的认证信息。而同远程服务器建立的空会话则没有用户认
22、证。换句话说,就好比是一个匿名访问。在会话建立时用户不提供用户和口令凭证,所以令牌中不会包含用户信息,因此建立会话双方没有密匙的交换,也不能在系统间发送加密信息和签名信息。由于NULL会话没有用户的认证信息,攻击者可以轻而易举地通过空连接取得目标主机上的账号信息。访问令牌包含用户的SID:“S-1-5-7”,以及用户名“ANONYMOUS LOGON”。这个用户名可以在用户列表中看到,但不能在SAM数据库中找到,属于系统内置的账号。第四章 基于系统的攻击与防御1)空会话的建立从用户的角度来看,在登录系统或者访问服务器的某些资源时需要同服务器建立会话。例如:名为“BOB”的用户希望访问名为“DA
23、TASTORE”的服务器上的共享资源“DATA”,那么它可以发布以下命令:net use*DATASTROEDATA*/user:BOB。另一方面,如果允许空会话,即“DATA”共享是一个空共享,那么它只要输入:net use*DATASTOREDATA“”/user:,BOB将作为匿名用户获得DATA共享的访问权,而不需要提供用户名和口令。空会话可以把连接建立成空会话管道(Null Session Pipes),如果服务器许可的话,管道是另一种工具,允许不同系统之间的进程相互通信。空会话还可以用来建立共享连接。包括servernameIPC$这类系统级共享,IPC$是一种特殊的隐藏的共享,它
24、给用户提供了一个同服务器进程通信的接口,可以从远程访问。第四章 基于系统的攻击与防御2)空会话的攻击方法在默认的安全设置下,借助空会话可以列举目标用户和共享资源,访问everyone权限的共享,访问部分注册表等。最简单的方法就是用net use 命令建立空会话,然后利用net view命令获取目标系统的共享资源名列表。同时利用其他一些专用工具如enum还可以获得用户、机器名、口令、LSA策略信息等,甚至进行穷举口令攻击。第四章 基于系统的攻击与防御在此我们来看一个例子说明空会话的隐患:Net userserverIPC$“”/user:“”/建立一个空会话Net viewserver /查看远
25、程服务器的共享资源服务器名称 注释pc1pc2命令成功完成。Net timeserver /得到一个远程服务器的当前时间Nbtstat-A server /得到远程服务器的NetBIOS用户名列表第四章 基于系统的攻击与防御Netbios Remote machine name tableName type statusNULL UNIQUE RegisteredNULL UNIQUE RegisteredINTERNET GROUP RegisteredXIXIUNIQUE RegisteredISNULL UNIQUE RegisteredINTERNET GOURP Registered
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络攻击与防御 网络攻击与防御课件第四章 基于系统的攻击与防御 网络 攻击 防御 课件 第四 基于 系统