第3章黑客攻击技术主要内容3.1黑客技术3.2基于Windows的踩点扫描查点3.3基于Windows的远程攻击3.4网络攻击与防御3.5计算机病毒3.1黑客技术3.1.1黑客攻击的动机从黑客行为上划分,黑客有“善意”和“恶意”两种,即白帽(WhiteHat)和黑帽(BlackHat)。3.1.2黑客攻击的流程☻踩点因特网网络域名、网络地址分配、域名服务器、邮件交换主机和网关等关键系统的位置及软硬件信息①开放信息源搜索②whois查询③DNS区域传送☻扫描入侵者掌握目标系统所使用的操作系统①Ping扫射②端口扫描③操作系统检测④旗标获取⑤安全措施探查☻查点搜索特定系统上用户和用户组名、路由表、SNMP信息、共享资源、服务程序及旗标等信息①Windows系统命令②第三方软件☻获取访问权☻权限提升☻窃取☻掩盖踪迹☻创建后门☻拒绝服务攻击3.2基于Windows的踩点扫描查点3.2.1踩点网页搜寻争取授权链接搜索勘察网络3.2.2扫描☻确定系统是否在活动☻确定哪些服务正处于监听状态①端口扫描技术②端口扫描工具③端口扫描检测程序☻确定被扫描系统的操作系统类型①主动协议栈指纹鉴别②被动协议栈指纹鉴别3.2.3查点1.旗标抓取基础2.常用网络服务查点3.3基于Windows的远程攻击3.3.1获取访问权☻远程口令猜测☻针对IIS的攻击3.3.2权限提升Adminstrator权限,利用Windows计划任务服务打开一个命令shell去获得System权限C:\at16:33/INTERACTIVEcmd.exe3.3.3窃取口令获得Adminstrator权限,攻击者必须得到账户的口令3.3.4掩盖踪迹☻关闭审计功能☻清理事件日志☻隐藏文件3.3.5创建后门☻命令行远程控制工具☻c:\nc-L-d-ecmd.exe-p8080☻图形化远程控制工具3.4网络攻击与防御3.4.1口令攻击与防御☻口令攻击常用手段社会工程学网络嗅探口令破解字典攻击穷举攻击组合攻击☻口令攻击的防范不要将口令写下来不要将密码保存在计算机文件中不要选取显而易见的信息作密码不要让别人知道不要在不同系统上使用同一口令定期改变口令,至少6个月要改变一次3.4.2拒绝服务攻击☻拒绝服务攻防传送众多要求确认的信息到服务器,使服务器里充斥着这种无用的信息。所有的信息都有需要回复的虚假地址,以至于当服务器试图回传时,却无法找到用户。服务器于是暂时等候,有时超过一分钟,然后再切断连接。服务器切断连接时,黑客再度传送新一批需要确认的信息,这个过程周而复始,最终导致服务器瘫痪。☻拒绝服务攻击分类资源消耗型DoS攻击配置修改型DoS攻击物理破坏型DoS攻击服务利用型DoS攻击☻分布式拒绝服务攻击☻分布式拒绝服务攻击防范3.4.3缓冲区溢出攻击☻缓冲区溢出攻击原理通过往程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。voidfunction(char*str){charbuffer[16];strcpy(buffer,str);}☻缓冲区溢出的漏洞和攻击①在程序的地址空间里安排适当的代码②通过适当的初始化寄存器和内存,让程序跳转到入侵者安排的地址空间执行。③对代码安排和控制程序执行流程两种技术的综合分析。☻缓冲区溢出攻击的防范强制编写正确的代码非执行的缓冲区数组边界检查程序指针完整性检查3.4.4木马攻击与防御一个完整的木马系统由硬件部分,软件部分和具体连接部分组成。☻硬件部分:建立木马连接所必须的硬件实体。控制端:对服务端进行远程控制的一方。服务端:被控制端远程控制的一方。INTERNET:控制端对服务端进行远程控制,数据传输的网络载体。☻软件部分:实现远程控制所必须的软件程序。控制端程序:控制端用以远程控制服务端的程序。木马程序:潜入服务端内部,获取其操作权限的程序。木马配置程序:设置木马程序的端口号,触发条件,木马名称等,使其在服务端藏得更隐蔽的程序。☻具体连接部分:通过INTERNET在服务端和控制端之间建立一条木马信道所必须的元素。控制端IP,服务端IP:即控制端,服务端的网络地址,也是木马进行数据传输的目的地。控制端端口,木马端口:即控制端,服务端的数据入口,通过这个入口,数据可直达控制端程序或木马程序。☻特洛伊木马攻击原理⑴配置木马⑵传播木马⑶运行木马⑷泄露信息⑸建立连接⑹远程控制①触发条件激活木马●注册表:打开HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\下的五个以Run和RunServices主键,在其中寻找可能是启动木马的键值。●打开HKEY_CLASSES_ROOT\文件类型\shell\open\command主键,查看其键值。●WIN.INI:C:\WINDOWS目录下有一个配置文件win.ini,用文本方式打开,在Windows字段中有启动命令load=和run=,在一般情况下是空白的,如果有启动程序,可能是木马。●SYSTEM.INI:C:\WINDOWS目录下有个配置文件system.ini,用文本方式打开,在386Enh、mic、drivers32中有命令行,在其中寻找木马的启动命令。●Autoexec.bat和Config.sys:在C盘根目录下的这两个文件也可以启动木马。这种加载方式一般都需要控制端用户与服务端建立连接,将已添加木马启动命令的同名文件上传到服务端覆盖这两个文件。●*.INI:即应用程序的启动配置文件,控制端利用这些文件能启动程序的特点,将制作好的带有木马启动命令的同名文件上传到服务端覆盖这同名文件,就可以启动木马。●捆绑文件:实现这种触发,首先控制端和服务端通过木马建立连接,然后控制端用工具软件将木马文件和某一应用程序捆绑在一起,然后上传到服务端覆盖原文件。●启动菜单:在“开始—程序—启动”选项下也可能有木马的触发条件。②木马运行过程木马激活后,进入内存,开启定义的木马端口,与控制端进行连接,我们就可以通过进入MS-DOS方式下,用netstat命令的-a、-n来查看端口的状态来查看是否有可疑端口开放,来进一步判断是否感染了木马。●1---1024之间的端口:这些端口叫保留端口,是专给一些对外通讯的程序用的,如FTP使用21,SMTP使用25,POP3使用110等。只有很少木马会用保留端口作为木马端口的。●1025以上的连续端口:在浏览网站时,浏览器会打开多个连续的端口下载文字,图片到本地硬盘上,这些端口都是1025以上的连续端口。●4000端口:这是OICQ的通讯端口。●6667端口:这是IRC的通讯端口。除上述的端口基本可以排除在外,如发现还有其它端口打开,尤其是数值比较大的端口,那就要怀疑是否感染了木马,当然如果木马有定制端口的功能,那任何端口都有可能是木马端口。☻特洛伊木马程序的防范①提高防范意识②多读readme.txt③使用杀毒软件④立即挂断⑤监测系统文件和注册表的变化