计算机网络安全技术(第7版)全套教学课件_第1页
计算机网络安全技术(第7版)全套教学课件_第2页
计算机网络安全技术(第7版)全套教学课件_第3页
计算机网络安全技术(第7版)全套教学课件_第4页
计算机网络安全技术(第7版)全套教学课件_第5页
已阅读5页,还剩563页未读 继续免费阅读

下载本文档

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

文档简介

网络安全的重要性全套可编辑PPT课件共7章,包括计算机网络安全概述、黑客常用的攻击方法、计算机病毒、数据加密技术、防火墙技术、Windows操作系统安全及Web应用安全没有网络安全,就没有国家安全没有网络安全,就没有社会稳定运行没有网络安全,就没有个人信息安全的保障网络安全的重要性网络安全关系到“国计民生”163信息泄露—对个人的影响

2013年12月,支付宝大量用户信息被泄露。信息泄露—对个人的影响2022年6月,万豪酒店用户信息被泄露信息泄露—对个人的影响CashApp是由金融服务公司Block推出的一款移动支付应用,帮助用户发送、接收和存储钱款以及购买理财产品等,2022年4月,美国知名投资公司CashAppInvesting的820万客户数据被泄漏。安全事件对社会的影响2013年4月,美联社官方推特账户遭到黑客入侵,发出“白宫发生两次爆炸、奥巴马总统受伤”的消息,令美股猛然下挫。2020年4月欧洲能源巨头EDP集团遭黑客勒索安全事件对社会的影响重点加强电网设施的安全建设及电力企业内部的安全防护尤为重要对国家安全层面的影响爱德华·斯诺登,前CIA(美国中央情报局)技术分析员棱镜计划是由美国国家安全局自2007年起开始实施的绝密电子监听计划2013年美国“棱镜”计划被

斯诺登曝光斯诺登事件对国家安全层面的影响斯诺登再爆料:美国安局秘密实施“目标挖掘”行动;该计划在2007年的《保护美国法》和2008年的《外国情报监听法》修正案中得到了授权令。2012年,国家安全局持续运作棱镜计划,直到2017年12月被斯诺登曝光。它名义上是对恐怖分子监听计划。实际上它窃取多个国家的机密信息。2020年,继续暴露出美国借“清洁”之名清洁网络。网络系统脆弱性分析网络系统脆弱性的原因开放的系统协议本身的脆弱性操作系统的漏洞应用软件的漏洞人为因素用户身份和位置真假难辨开放性的网络环境在因特网上没有人知道你是一条狗公开的网络协议开放性的网络环境针对TCP/IP协议的攻击协议本身的脆弱性层协议名称攻击类型攻击利用的漏洞网络层ARPARP欺骗ARP缓存的更新机制IPIP欺骗IP层数据包是不需要认证的传输层TCPSYNFlood攻击TCP三次握手机制应用层FTP、SMTP监听明文传输操作系统的安全性操作系统程序本身的Bug操作系统的安全配置不到位操作系统的安全性应用软件的漏洞数据库、中间件、各类应用服务器、应用软件应用软件的漏洞AdobePhotoshop在2022年5月公布了存在高危漏洞,攻击者可通过诱导用户打开恶意文件实现任意代码执行。2022年1-6月,检测出存在高危漏洞的移动应用占比变化应用软件的漏洞网络安全概念涉及网络安全的学科信息论通信技术网络技术计算机科学密码技术应用数学数论信息论法律网络安全发展历程1969年,美国兰德公司首次公开提到计算机安全问题。七八十年代,由于各类计算机管理系统开始发展,“计算机安全”开始逐步演化为“信息系统安全”。二十世纪八十年代后期,“网络安全”和“信息安全”开始被广泛采用。后来出现了信息安全、网络安全、信息网络安全、网络信息安全等概念。2017年,《网络安全法》出台后,“信息安全”调整为“网络安全”,“信息安全等级保护制度”调整为“网络安全等级保护制度”。网络安全概念网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不受偶然的或者恶意的原因,而遭到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。网络:包括网络设施、信息系统、数据资源等。网络安全的要素保密性(confidentiality)完整性(integrity)可用性(availability)可控性(controllability)不可否认性(Non-repudiation)CIA信息安全金三角保密性(confidentiality)保密性又称机密性,指保证信息不能被非授权访问,或者非授权用户得到信息也无法知晓信息的内容。完整性(integrity)只有得到允许的用户才能修改实体或者进程,并且能够判断实体或者进程是否已被修改可用性(availability)授权用户根据需要,可以随时访问所需信息。可控性(controllability)控制授权范围内的信息的流向及行为方式。不可否认性(Non-Repudiation)使用审计、监控、防抵赖等安全机制,使攻击者、破坏者、“逃不脱”网络安全的目的进不来拿不走改不了跑不了看不懂信息安全发展历史信息安全发展历史通信保密阶段(20世纪40-70年代)计算机安全阶段(20世纪70-80年代)信息系统安全阶段(20世纪90年代)信息安全保障阶段(21世纪)信息安全发展历史通信保密阶段(20世纪40-70年代)计算机安全阶段(20世纪70-80年代)信息系统安全阶段(20世纪90年代)信息安全保障阶段(21世纪)通信保密阶段又称通信安全时代主要安全威胁:搭线窃听、密码学分析重点是通过密码技术,保证数据的保密性与完整性。标志事件:1949年Shannon发表的《保密通信的信息理论》1977年美国国家标准局公布的数据加密标准(DES)1976年Diffie和hellman在提出的公钥密码体制计算机安全阶段重点:确保计算机系统中硬件、软件及正在处理、存储、传输信息的保密性、完整性和可用性。主要标志:1983年美国国防部公布的可信计算机系统评估准则(TCSEC)主要保护措施:安全操作系统设计技术(TCB)主要威胁:扩展到非法访问、恶意代码、脆弱口令等。信息系统安全阶段重点:保护信息系统不被破坏。强调信息的保密性、完整性、可控性、可用性。主要威胁:网络入侵、病毒破坏、信息对抗的攻击等。主要保护措施:防火墙、防病毒、漏洞扫描、入侵检测、PKI、VPN、安全管理等。主要标志:1996年美国《信息技术安全性通用评估准则》,简称CC标准。信息安全保障阶段重点:保障国家信息基础设施不被破坏。主要安全威胁:集团、国家的有组织的对信息基础设施进行攻击等。主要保护措施:灾备技术、建设面向网络恐怖与网络犯罪的国际法律秩序与国际联动的网络安全事件的应急响应技术。主要标志是:美国推出的“保护美国计算机空间”(PDD-63)的体系框架国际信息安全标准发展的联系1985年美国国防部TCSEC1991年美国联邦政府评价准则FC1996年国际通用准则CC1999年ISO标准154081990年加拿大CTCPEC1990年欧洲ITSEC2001年GB/T18336我国信息安全的发展历程1994年公安部颁布“中华人民共和国计算机信息系统安全保护条例”2000年启动阶段,成立网络与信息安全协调小组,2001年制定GB183362014年中央网络安全与信息化领导小组成立,“网络安全法”被写入政府工作报告2015年十二届全国人大常委会审议了《网络安全法(草案)》我国信息安全的发展历程2016年12月27日发布并实施《国家网络空间安全战略》2017年6月1日《网络安全法》正式生效2019年5月《信息安全技术网络安全等级保护基本要求》等核心标准正式发布。等保2.0网络安全等级保护制度等保1.0等保2.0标志:《中华人民共和国网络安全法》,《网络安全法》的出台将等级保护工作从政府政令上升到国家法律。我国信息安全的发展历程2016年12月27日发布并实施《国家网络空间安全战略》2017年6月1日《网络安全法》正式生效2019年5月《信息安全技术网络安全等级保护基本要求》等核心标准正式发布。2020年颁布《中华人民共和国个人信息保护法》网络安全涉及的内容网络安全涉及的内容数学编程语言心理学法律计算机通信信息安全等级保护的内容等保2.0通用要求技术管理扩展要求云计算、移动互联、物联网、工业控制系统工、物、移、云信息安全等级保护-通用部分物理和环境安全网络和通信安全设备和计算安全应用和数据安全技术物理安全:免遭地震、水灾、火灾等环境事故,以及人为操作失误、错误或者各种计算机犯罪行为导致的破坏。环境安全:考虑及防范火灾、电力供应中断等,还要考虑环境的温度和湿度是否适宜。信息安全等级保护-通用技术部分物理和环境安全网络和通信安全设备和计算安全应用和数据安全技术信息系统网络建设以维护用户网络活动的保密性、网络数据传输的完整性和应用系统可用性为基本目标。强调对网络整体的安全保护,包括:通信传输、边界防护、访问控制、入侵防范、恶意代码和垃圾邮件防范、安全审计和集中管控。信息安全等级保护-通用技术部分物理和环境安全网络和通信安全设备和计算安全应用和数据安全技术通常指网络设备、安全设备和终端设备等节点设备自身的安全保护能力,一般通过启用防护软件的相关安全配置和策略来实现。包括各设备的操作系统本身的安全以及安全管理与配置内容。信息安全等级保护-通用技术部分物理和环境安全网络和通信安全设备和计算安全应用和数据安全技术指保障应用程序使用过程和结果的安全。包括:1.

数据本身的安全,主要是采用密码算法对数据进行主动保护;2.

数据存储的安全,通过数据备份、异地容灾等手段保证。信息安全等级保护-通用管理部分等保2.0通用要求技术物理和环境安全网络和通信安全设备和计算安全应用和数据安全管理安全策略和管理制度安全管理机构和人员安全建设管量安全运维管理扩展要求云计算、移动互联、物联网、工业控制系统三分的技术,七分的管理木桶理论网络安全不是目标,而是过程没有绝对的安全安全原则信息安全方面法律法规信息安全的要求从国家层面:要制定和完善信息安全法律、法规,宣传信息安全道德规范;从公民的层面:要培养自己职业道德素养,做一个遵纪守法的公民。信息安全法历史瑞典1973年就颁布了《数据法》,世界上首部直接涉及计算机安全问题的法规。1983年美国公布了可信计算机系统评价准则(TCSEC),简称橙皮书。橙皮书为计算机的安全级别进行了分类,分为A、B、C、D级,由高到低。我国信息安全相关的法律、法规时间名称1988年中华人民共和国保守国家秘密法(法律)1991年计算机软件保护条例(法规)1994年中华人民共和国计算机信息系统安全保护条例(法规)1997年计算机信息网络国际联网安全保护管理办法(法规)1999年计算机信息系统安全保护等级划分准则(规范性文件)2004年中华人民共和国电子签名法(法律)2017年中华人民共和国网络安全法(法律)2019年网络安全等级保护制度2.0(规范性文件)2019年中华人民共和国密码法(法律)2021年中华人民共和国数据安全法(法律)2021年中华人民共和国个人信息保护法(法律)2021年关键信息基础设施安全保护条例(法规)《中华人民共和国网络安全法》第一章总则第二章网络安全支持与促进第三章网络运行安全第四章网络信息安全第五章监测预警与应急处置第六章法律责任第七章附则我国信息安全相关的法律、法规法律:在我国专指由全国人民代表大会及其常委会依照立法程序制定,其法律效力仅次于宪法。法规:法律效力相对低于宪法和法律的规范性文件,可以由国务院及其所属政府部门根据宪法和法律规定而制定和颁布的行政法规。2017年6月,《中华人民共和国网络安全法》正式实施,标志着网络安全被提升至国家安全战略的新高度,网络安全保护成为必须遵守的法则和义务。我国信息安全相关的法律、法规2017年6月,《中华人民共和国网络安全法》正式实施,标志着网络安全被提升至国家安全战略的新高度,网络安全保护成为必须遵守的法则和义务。指出:国家支持企业和高等学校、职业学校等教育培训机构开展网络安全相关教育与培训,采取多种方式培养网络安全人才。强调:网络运营者应当按照《网络安全等级保护制度》的要求,履行的安全保护义务,建立健全用户信息保护制度。《中华人民共和国网络安全法》-举例第六十条:有下列行为之一的,由有关主管部门责令改正,给予警告;拒不改正或者导致危害网络安全等后果的,处五万元以上五十万元以下罚款,对直接负责的主管人员处一万元以上十万元以下罚款:设置恶意程序的;对其产品、服务存在的安全缺陷、漏洞等风险未立即采取补救措施,或者未按照规定及时告知用户并向有关主管部门报告的;擅自终止为其产品、服务提供安全维护的。违反本法第三十六条规定,未经主管机关批准向外国司法或者执法机构提供数据的,由有关主管部门给予警告,可以并处十万元以上一百万元以下罚款,对直接负责的主管人员和其他直接责任人员可以处一万元以上十万元以下罚款;造成严重后果的,处一百万元以上五百万元以下罚款,并可以责令暂停相关业务、停业整顿、吊销相关业务许可证或者吊销营业执照,对直接负责的主管人员和其他直接责任人员处五万元以上五十万元以下罚款。《中华人民共和国网络安全法》-举例信息安全的重要性“美国加密技术公司RSA为美国政府在加密算法里安置后门。”——斯诺登信息安全的重要性密码是国家重要战略资源,是保障网络与信息安全的核心技术和基础支撑。《中华人民共和国密码法》规范密码应用和管理,促进密码事业发展,保障网络与信息安全。作为高等院校计算机与信息技术专业学生学习内容涉及:密码理论、黑客攻防、访问控制、等技术层面的内容;目的:保护网络,不能使用某些工具、技术非法入侵他人的计算机或者企业的网络。信息安全领域的职业道德信息安全领域的职业道德一、维护国家、社会和公众信息的安全自觉维护国家信息安全,拒绝并抵制泄露国家机密和破坏国家信息基础设施的行为;自觉维护网络社会安全,拒绝并抵制通过计算机网络谋取非法利益和破坏社会和谐的行为;自觉维护公众信息的安全,拒绝并抵制通过计算机网络系统侵犯公众合法权益和泄露个人隐私信息的行为;作为信息安全从业人员二、诚实守信,遵纪守法不通过计算机网络系统进行造谣、欺诈、诽谤、弄虚作假等违反诚信原则的行为;不利用个人的信息安全技术能力实施或组织各种违法犯罪行为;不在公众网络传播反动、暴力、黄色、低俗信息及非法软件。信息安全领域的职业道德作为信息安全从业人员三、努力工作,尽职尽责热爱信息安全工作岗位;充分认识信息安全专业工作的责任和使命;为发现和消除本单位或雇主的信息系统安全风险做出应有的努力和贡献;帮助和指导信息安全同行提升信息安全保障知识和能力。信息安全领域的职业道德作为信息安全从业人员网络查询黑客攻防渗透步骤信息收集漏洞利用清除痕迹留下后门内网渗透信息收集第一步踩点扫描查点信息收集网络踩点的第一步网络踩点GooglehackingWhois域名IP地址知识点:GooglehackingGooglehacking自动提取网页的程序网页蜘蛛、网络机器人爬虫协议网站根目录下robots.txtUser-agent:GooglebotAllow:/folder1/myfile.htmlDisallow:/folder1/网络爬虫Googlehacking对渗透有帮助的信息管理层重要部门人员系统管理人员重要人物个人信息数据库CMS编程语言系统实现细节目录结构文件系统内容细节敏感信息Googlehacking敏感信息举例标题包含Indexof:暴露网站的内容细节

网站地址中有data/admin/ver.txt:织梦CMS,暴露过大量漏洞敏感信息Googlehacking敏感信息被爬虫扒出搜索时大海捞针高级搜索高级搜索GooglehackingInurl:网址中包含指定字符Intitle:网页标题中包含指定字符

Intext:网页内容中包含指定字符

Inurl:amin查找管理员入口Inurl:php?查找注入或包含漏洞入口Inurl:viewerframe?mode=motion查找在线摄像头Intitle:”indexof”查找文件目录结构Intitle:phpMyAdmin查找PHP数据库管理入口Intitle:管理查找中文网站的管理入口Intext:”poweredbydedecms”查找使用织梦的网站Intext:username&password查找登录页面Intext:登录查找中文网站后台高级搜索GooglehackingSite:搜索指定的网站Filetype:指定搜索文件类型

Cache:缓存里的内容

与其他关键字搭配使用,限定搜索范围搜素二级域名数据库相关文件mdb、sql备份文件bak包含文件inc文档文件docx、xlsx查询指定网页的缓存(快照)高级搜索GooglehackingShodan:

搜索网络在线设备ZoomEys:网络空间节点搜索其他搜索引擎Googlehacking寻找网站的登录入口搜索网上泄漏的个人私隐信息搜索织梦CMS的版本号应用举例知识点:Whois查询网络踩点的第二步网络踩点GooglehackingWhois域名IP地址Whois查询ICANN域名、IP地址、参数端口ASORIRAPNIC、ARIN、LACNIC、RIPE、AfriNICCNNICCCNSO支持ccTLDGNSO支持gTLDCNNIC域名及IP地址管理Whois查询域名WHOIS查询:注册人、电话、邮箱、DNS、地址IP地址WHOIS查询:网段所属网络名称、国家、地区、管理员WHOIS反查:使用邮箱、电话等反查获得更多关联域名信息WHOIS的概念Whois查询SamSpade:SuperScan:NetScanToolsPro:WHOIS的方法命令行在线网站查询工具Whois查询

WHOIS查询获得注册人电话、邮箱

利用电话、邮箱进行WHOIS反查

获得关联域名信息WHOIS反查Whois查询在线查询某域名的联系人在线查询某域名注册人的联系电话在线查询某域名注册人的电子邮件在线查询某域名的域名服务器应用举例Whois查询电话反查邮箱反查联系人反查WHOIS的方法知识点:域名及子域名查询GooglehackingWhois域名IP地址网络踩点的第三步网络踩点域名及子域名查询DNSDomainNameSystem域名IP地址8映射域名查询域名及子域名查询A记录,服务器的IP地址(无CDN)CNAME,别名,将其他名字映射到一个域名MX,邮件交换记录,收件人地址定位邮件服务器NS,指定域名由哪个DNS服务器解析PTR,指针记录,常用于反向地址解析TXT,文本记录,域名相关的文本信息域名查询内容域名及子域名查询NslookupDigdnsdb.io/zh-cn//dnsDNSenumDNSwalkDNAtracer域名查询方法命令行在线网站查询工具域名及子域名查询Nslookup查询ns、ptr反查在线网站查询a记录、mx记录应用举例域名及子域名查询一级域名二级域名二级域名子域名域名及子域名查询主站严防死守子站防护较弱子域名查询拿下子站内网渗透子域名查询作用

http://subdomain.chaxun.la域名及子域名查询从一个入口递归抓取网页的链接并记录,以此类推zone传送漏洞,主DNS服务器与备份DNS服务器传输数据子域名查询方法搜索引擎在线网站传递漏洞域名爆破递归爬取关键字:sitefiercesubDomainsBrute.pylayer域名及子域名查询利用搜索引擎进行子域名查询利用在线网站进行子域名查询应用举例知识点:IP地址查询GooglehackingWhois域名IP地址网络踩点的第四步网络踩点IP地址查询地理位置查询IP地址查询IP地址域名1域名2域名n主站难以攻克,子域名又很少,应考虑旁站旁站查询IP地址查询

http://www.webscan.cc旁站查询IP地址查询192.168.1.10A段B段C段D段C段查询:IP地址A、B、C段相同其他IP地址信息C段查询IP地址查询www.webscan.ccK8_C段C段查询在线网站查询工具IP地址查询利用在线网站进行旁站查询利用工具进行C段查询应用举例口令破解黑客攻防口令认证的优缺点20世纪80年代,当计算机开始在商业公司里广泛应用时,人们很快就意识到需要保护计算机中的信息。仅仅使用一个userID来标识用户身份,容易被冒名登录。基于这一考虑,口令认证要求用户登录时不仅要提供userID来标识自己是谁,还要提供只有自己才知道的口令来向系统证明自己的身份。口令认证的历史口令认证的优缺点口令是一种非常常见的身份认证方式基于用户名口令的身份认证实现简单广泛应用于各种系统登陆认证口令认证的优点口令认证的优缺点单因子的认证,安全性仅依赖于口令;用户往往选择容易记忆,也容易被猜测的弱口令;不同安全级别系统,用户往往采用相同口令,低安全级别系统较容易被攻破,威胁到高安全级别系统;口令认证的缺点口令认证的优缺点用户的口令以文件方式保存在认证方,入侵者容易利用系统漏洞,获取文件进行离线破解;口令在传输过程中容易被截获;口令认证的缺点口令认证的优缺点只能单向认证,系统认证用户,用户无法认证系统;口令认证易遭受重放攻击。口令认证的缺点破解口令的方法常见破解方式字典攻击暴力破解组合攻击破解口令的方法字典攻击字典是根据人们设置自己账号口令的习惯总结出来的常用口令列表文件。使用一个或多个字典文件,利用里面的单词列表进行口令猜测的过程,就是字典攻击。常见破解方式破解口令的方法暴力破解如果有速度足够快的计算机能尝试字母、数字、特殊字符所有的组合,将最终能破解所有的口令。这种攻击方式叫做暴力破解。分布式暴力破解常见破解方式破解口令的方法组合攻击字典攻击虽然速度快,但是只能破解字典单词口令;暴力破解能发现所有口令,但是破解的时间长。组合攻击是在使用字典单词的基础上,在单词的后面串接几个字母和数字进行攻击的攻击方式。常见破解方式破解口令的方法常见攻击方式的比较破解口令的方法社会工程学偷窥口令蠕虫键盘记录类木马网络嗅探重放攻击其他破解方式撞库攻击2014年12月25日上午10:59,乌云网发布漏洞报告称,大量12306用户数据在网络上疯狂传播。本次泄露事件被泄露的数据达131653条,包括用户账号、明文密码、身份证和邮箱等多种信息,共约14M数据。撞库攻击大事件撞库攻击12306回应:泄露的用户信息系经其他网站渠道流出国内安全机构知道创宇确认12306数据泄露事件为“撞库攻击”。撞库攻击大事件撞库攻击2014年,用户账号泄露,京东称遭受撞库攻击。2015年,黑客窃取9900万个淘宝账户,阿里称遭遇撞库。2016年,百度云遭撞库攻击,50万账号被盗。撞库攻击大事件撞库攻击黑客收集互联网已泄露的用户+密码信息黑客生成对应的字典表利用字典表,尝试批量登陆其他网站,得到一系列可以登陆的用户撞库攻击定义撞库攻击建议:不同的站点设置不同的密码对抗撞库撞库攻击的防范口令不出现在黑客字典中口令不能被轻易猜解出来破解口令的防范方式避免选取弱口令选择安全的口令硬盘分区采用NTFS格式正确设置和管理帐户禁止不需要的服务关闭不用的端口禁止建立空连接破解口令的防范方式防止口令猜测攻击密码长度最小值密码必须符合复杂性要求强制密码历史密码最长使用期限密码最短使用期限破解口令的防范方式设置安全策略账户锁定阈值账户锁定时间破解口令的防范方式设置账户锁定策略不要将口令写下来不要将口令存于电脑文件中不要选取显而易见的信息作口令不要让别人知道不要在不同系统上使用同一口令为了防止眼捷手快的人窃取口令,在输入口令时应当确定无人在身边定期更换口令,至少6个月要改变一次破解口令的防范方式保护口令的安全习惯嗅探原理黑客攻防什么是嗅探网络嗅探(NetworkSniffer)是指利用计算机的网络接口截获其他计算机的数据报文的一种手段。网络嗅探的基础是数据捕获,目的是对数据进行分析,挑选出重点关注的数据。网卡的工作原理网卡的工作模式直接模式广播模式混杂模式混杂模式PromiscuousMode嗅探的步骤更改网卡工作模式捕获数据包分析数据包混杂模式协议分析软件人工或智能网络嗅探的工作环境1-HUB集线器(Hub)是物理层设备,它从一个接口收到数据,会把数据位从其他全部接口发送出去。网络嗅探的工作环境2-交换机交换机(switch)是数据链路层设备,正常情况下,交换机只把转发给接收者所在的接口。交换环境下的网络嗅探1-端口镜像如果嗅探者是交换机的管理员,则可以在交换机上配置机端口镜像,把需要嗅探的接口上的收和发的流量,镜像到嗅探器所连接的接口。交换环境下的网络嗅探2-结合ARP欺骗在交换机上配置端口镜像,把需要嗅探的接口上的收和发的流量,镜像到嗅探器所连接的接口。嗅探软件介绍Wireshark(Ethereal)SnifferProIrisEffTechHTTPSniffer……嗅探的防御尽量工作在交换网络中对传输的关键数据加密在网络中布置入侵检测系统(IDS)wireshack的应用黑客攻防wireshack主页wireshack的窗口wireshack的捕获过滤wireshack捕获过滤的语法Logicale­xpressions(逻辑运算符):

wireshack的显示过滤wireshack的案例1ARP欺骗的工作原理黑客攻防ARP协议AddressResolutionProtocol即地址解析协议,解析IP地址与MAC地址的对应关系。ARP协议的基本功能就是:查询目标设备的MAC地址,完成数据封装。ARP工作原理bb:bb:bb:bb:bb:bbcc:cc:cc:cc:cc:ccaa:aa:aa:aa:aa:aaWho

hasWho

hasARP

requestARP

replyisataa:aa:aa:aa:aa:aaARPCache在安装了以太网网络适配器(既网卡)或TCP/IP协议的计算机中,都有ARP

Cache用来保存IP地址以及解析的MAC地址。Windows系统默认的ARP缓存表的生存时间是120秒,最大生命期限是10分钟。ARP缓存的更新bb:bb:bb:bb:bb:bbcc:cc:cc:cc:cc:ccaa:aa:aa:aa:aa:aa收到ARPreply,我会缓存起来!Internet地址物理地址aa:aa:aa:aa:aa:aaInternet地址物理地址

bb:bb:bb:bb:bb:bb这个ARPrequest和我没关系这个ARPrequest和我有关系WhohasWhohasARP协议实现的特点通过ARP缓存保存无需请求可以应答接受ARPrequest单播包ARP欺骗的工作原理基于ARPreply的欺骗bb:bb:bb:bb:bb:bb攻击对象cc:cc:cc:cc:cc:ccaa:aa:aa:aa:aa:aa收到ARPreply,我会缓存起来!Internet地址物理地址

aa:aa:aa:aa:aaARP欺骗的攻击者ARP

replyisatcc:cc:cc:cc:cc:ccInternet地址物理地址cc:cc:cc:cc:cc:ccARP欺骗的工作原理基于ARPrequest的欺骗bb:bb:bb:bb:bb:bbcc:cc:cc:cc:cc:ccaa:aa:aa:aa:aa:aa从ARPrequest里学习Internet地址物理地址aa:aa:aa:aa:aa:aaARP欺骗的攻击者ARP

requestWhohas

Tellcc:cc:cc:cc:cc:ccInternet地址物理地址cc:cc:cc:cc:cc:ccARP欺骗+中间人攻击bb:bb:bb:bb:bb:bbcc:cc:cc:cc:cc:ccaa:aa:aa:aa:aa:aa网关:ARP欺骗的攻击者Internet上网ARP欺骗+中间人攻击(单项欺骗)bb:bb:bb:bb:bb:bbcc:cc:cc:cc:cc:ccaa:aa:aa:aa:aa:aa网关:ARP欺骗+代理InternetInternet地址物理地址cc:cc:cc:cc:cc:cc上网Internet地址物理地址bb:bb:bb:bb:bb:bbARP欺骗+中间人攻击(双项欺骗)bb:bb:bb:bb:bb:bbcc:cc:cc:cc:cc:ccaa:aa:aa:aa:aa:aa网关:ARP欺骗+代理InternetInternet地址物理地址cc:cc:cc:cc:cc:cc上网Internet地址物理地址cc:cc:cc:cc:cc:ccARP欺骗攻击实例黑客攻防利用SwitchSniffer完成ARP欺骗---实验拓扑GW:5400:0f:e2:50:4b:a0被攻击者ARP欺骗的攻击者PC1:0000:0c:29:e1:b4:aePC2:dc:4a:3e:46:45:0e安装:SwitchSniffer

wireshark利用SwitchSniffer完成ARP欺骗---实验拓扑GW:5400:0f:e2:50:4b:a0被攻击者ARP欺骗的攻击者PC1:0000:0c:29:e1:b4:aePC2:dc:4a:3e:46:45:0e安装:SwitchSniffer

wireshark欺骗前PC2的arp缓存SwitchSniffer设置备注:安装在PC1:00上欺骗后PC2的arp缓存后前ping54Wireshark安装在00双向欺骗截获双向数据包ARP欺骗的防御黑客攻防ARP欺骗的防御MAC的静态绑定依靠第三方软件(ARP防火墙)交换机的DAI技术(DynamicARPInspection)防御方法1---MAC的静态绑定在主机的ARP缓存表配置静态记录:C:\>arp-s20-01-e6-b4-55-6c防御方法2---第三方软件交换机上启动DAI功能DAI---DynamicARPInspectionDHCPSnooping+DAI防ARP欺骗方案DAI保证接入交换机只传递“合法的”的ARP请求和应答信息。木马黑客攻防木马特洛伊木马木马

木马(Trojan)是指隐藏在计算机中的一段具有特殊功能的恶意代码,是一种黑客常用远程控制的工具,具有隐蔽性、潜伏性、危害性、非授权性等典型的特征。

木马的概念木马木马与病毒相同:破坏性、隐蔽性等区别:木马没有传染性木马与远控相同:工作原理一样不同:授权性,隐蔽性木马与后门木马(trojan)是后门(backdoor)程序的一种。后门可在软件开发过程故意产生,也可以使用过程中植入。木马在软件使用过程中植入。

木马与病毒、远程控制软件的区别 木马

木马的分类(按照功能)远程控制信息发送代理键盘记录破坏利用CPU木马

木马的分类(按照工作原理)传统木马DLL木马反弹端口网页木马C/S(Client-Server)模式的程序:

Server程序(被控制端)负责打开端口,端口处于监听状态。

Client程序(控制端)主动去连接。控制端被控制端端口监听木马的工作原理

传统木马工作原理木马的工作原理

反弹端口木马的工作原理反弹端口型木马是Client程序(控制端)打开端口,处于监听状态,

Server程序(被控制端)主动发起会话去连接。把Client程序(控制端)的信息(IP+端口)在配置木马时写入。利用反弹端口原理,躲避防火墙拦截。控制端被控制端端口监听木马的工作原理

反弹端口木马与传统木马的区别传统木马反弹端口木马AB攻击者主动连接被攻击者被攻击者主动连接攻击者DLL木马就是把一个实现了木马功能的代码。

DLL是编译好的代码,与一般程序没什么大

差别,只是它不能独立运行,需要可执行程

序调用。特点:隐藏性。

因为DLL运行时是直接挂在调用它的程序的

进程里的,并不会另外产生进程。DLL木马的工作原理DLL木马的工作原理木马

木马的传播途径下载挂马即时通讯工具病毒传播其他

木马的工作过程木马服务器端程序:G-server.exe客户端程序:G-client.exe进行服务器配置远程控制如何清除?控制端被控制端Win-7Win-2003端口:7626木马

冰河木马实验

实验拓扑

反弹端口木马的实验

反弹端口木马的工作原理服务端(被控制端)会主动连接客户端(控制端)目标了解:反弹端口木马(灰鸽子)的危害;熟悉:灰鸽子木马的工作原理;掌握:灰鸽子木马的配置和操作;内容通过灰鸽子木马实际攻击演示操作,掌握灰鸽子木马的攻击原理,为防范灰鸽子木马的学习作准备。木马

灰鸽子木马的实验拓扑控制端被控制端Win-2000Win-2003监听端口:80木马拒绝服务攻击的概述拒绝服务攻击的定义拒绝服务攻击:DenialofService(DoS),能导致服务器不能正常提供服务的攻击,都可以称为DoS攻击。分布式拒绝服务攻击:DistributedDenialofService(DDoS)指借助于客户/服务器模式,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DoS攻击,从而成倍地提高拒绝服务攻击的威力。拒绝服务攻击的典型事件2002年10月21日,全球的13台根域名服务器遭受到了有史以来最严重庞大的一次网络袭击。2009年5月,暴风影音软件引起的ddos事件。2022年拒绝服务攻击的次数2022年拒绝服务攻击的峰值DDoS攻击的对象与工具攻击对象:节点设备、终端设备,还可以针对线路。特点:实时性DoS攻击的分类DoS消耗资源主机资源三层协议死亡之ping、smurf等四层协议SYNflood、UDPflood等应用层协议CC、NTPFlood、DNSFlood等带宽UDPflood等利用漏洞系统漏洞蠕虫病毒等管理策略账户锁定拒绝服务攻击的原理黑客攻防拒绝服务攻击的定义拒绝服务攻击:DenialofService(DoS),能导致服务器不能正常提供服务的攻击,都可以称为DoS攻击。分布式拒绝服务攻击:DistributedDenialofService(DDoS)指借助于客户/服务器模式,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DoS攻击,从而成倍地提高拒绝服务攻击的威力。DoS攻击的分类以消耗目标主机的可用资源为目的(例如:死亡之ping、SYN洪水攻击、Land攻击、泪珠攻击等)以消耗链路的有效带宽为目的(例如:UDP洪水攻击、Smurf攻击)死亡之Ping是由于单个包的长度超过了ICMP协议规范所规定的长度,从而导致操作系统崩溃的攻击。防御:更新操作系统协议栈。ICMP洪水攻击向目标主机长时间、连续、大量的ping包,来减慢主机的响应速度和阻塞目标网络。防御:对防火墙进行配置,阻断icmp协议的ECHO报文。泪珠攻击的原理泪珠攻击(TearDrop):利用IP数据包分片重组时候,数据重叠,操作系统不能恰当处理,而引起的系统性能下降的攻击行为。防御:更新操作系统协议栈。泪珠攻击示意图数据A第一片报文IP头UDP头数据A第二片报文IP头UDP头数据B正常分片报文组合后报文IP头UDP头数据B数据A偏移量=1460偏移量=0IP头UDP头数据AIP头UDP头数据B泪珠攻击分片报文IP头UDP头数据B偏移量=980偏移量=0第一片报文第二片报文组合后报文Smurf攻击原理被攻击者攻击者Ping55Ping55伪造Ping包的源IP:ICMP应答包ICMP请求Smurf攻击的防御路由器接口不允许ping一个广播域。比如cisco路由器的接口默认noipdirected-broadcastSYN洪水攻击的原理黑客攻防TCP三次握手的原理SYN/ACK

SYN客户端服务器SYN_RECV3SYN_SEND

ACK12ESTABLISHEDESTABLISHEDSYN洪水攻击的原理....SYN/ACKSYN/ACKSYN/ACKSYNSYNSYN攻击者目标主机SYNSYN/ACK1nSYN/ACKSYN/ACKSYN/ACKSYN/ACK....等待ACK应答.........不应答不应答重新发送以windows为例SYN攻击花费时间(秒)累计花费时间(秒)第一次,失败33尝试第1次,失败69尝试第2次,失败1221尝试第3次,失败2445尝试第4次,失败4893尝试第5次,失败96189SYN洪水攻击案例Land攻击的原理Land攻击是一种特别SYN攻击,把攻击包的源IP地址和目标IP地址都被设置成被攻击目标的地址。破解口令的防范方式黑客攻防UDP洪水攻击向目标系统发送大量UDP包,造成对方系统资源或者网络带宽资源耗尽。UDP泛洪攻击案例攻击的现象UDP洪水攻击的防御流量限制:可以很快将UDP流量限制在一个合理的范围内。指纹学习:发生攻击后学习数据包的指纹,并产生相应的阻断策略。CC攻击黑客攻防CC攻击的原理攻击者借助代理服务器生成指向受害主机的合法请求,实现DDOS。CC=ChallengeCollapsar这种攻击主要是针对存在ASP、JSP、PHP、CGI等脚本程序,并调用MySQLServer、Oracle等数据库的网站系统而设计的,特征是和服务器建立正常的TCP连接,并不断的向脚本程序提交查询、列表等大量耗费数据库资源的调用。CC攻击现象网站出现serviceunavailable提示CPU占用率很高观察到大量的ESTABLISHED的连接状态;单个IP高达几十条甚至上百条用户无法访问网站页面或打开过程非常缓慢,软重启后短期内恢复正常,几分钟后又无法访问。CC攻击工具CC攻击的防御DDOS防火墙流量清洗使用验证码拒绝服务攻击的防御黑客攻防SYN攻击防范技术SYN攻击防范加固协议栈过滤网关超时设置SYN网关SYN代理加固协议栈Windows可以利用注册表启动SYN攻击保护机制HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters值名称:SynAttackProtect防火墙的网络参数过滤网关—超时设置防火墙设置SYN转发超时参数(状态检测的防火墙可在状态表里面设置),该参数小于服务器的timeout时间。当客户端发送完SYN包,服务端发送确认包后,如果防火墙自身的超时到期时,还未收到客户端的ACK确认包,则往服务器发送RST包,以使服务器从队列中删去该半连接。过滤网关-SYN网关clientserverSYN防火墙SYNSYN+ACKSYNACKACKDATA过滤网关-SYN代理clientserverSYN防火墙SYNSYN+ACKSYNACKACKDATASYN+ACKSYN代理要求过滤网关自身具有很强的防范SYN攻击能力。缓冲区溢出原理【引例】把1升的水注入容量为0.5升的容量中……第一次大规模的缓冲区溢出攻击是发生在1988年的Morris蠕虫,它造成了6000多台机器被瘫痪,利用的攻击方法之一就是fingerd的缓冲区溢出。缓冲区溢出攻击已经占了网络攻击的绝大多数,据统计,大约80%的安全事件与缓冲区溢出攻击有关。缓冲区溢出事件

根据CNNVD2020年以来每周的漏洞报告文档中,缓冲区溢出漏洞的所占总漏洞数量的百分比一直高居前五。缓冲区溢出是最常见的内存错误之一,也是攻击者入侵系统时所用到的最强大、最经典的一类漏洞利用方式。利用缓冲区溢出攻击,可以导致进程运行失败、系统宕机、重新启动等后果。更为严重的是,它可被利用来执行非授权命令,甚至可以取得系统特权,进而进行各种非法操作。Sudo发布安全通告,修复了一个类Unix操作系统在命令参数中转义反斜杠时存在基于堆的缓冲区溢出漏洞(CVE-2021-3156),普通用户可以通过利用此漏洞,而无需进行身份验证,成功获取root权限,据报道这个漏洞已存在十年了,大部分的linux系统都存在这个sudo漏洞。什么是缓冲区、缓冲区溢出?从程序的角度,缓冲区就是应用程序用来保存用户输入数据、临时数据的内存空间如果用户输入的数据长度超出了程序为其分配的内存空间,这些数据就会覆盖程序为其它数据分配的内存空间,形成所谓的缓冲区溢出样例程序1#include"stdafx.h"intmain(intargc,char*argv[]){ charbuffer[8];

printf("Pleaseinputyourname:"); gets(buffer); printf("Yournameis:%s!\n",buffer); return0;}发生溢出样例程序2voidfunc(char*input){ charbuffer[16]; strcpy(buffer,input);}上面的strcpy()将直接把input中的内容复制到buffer中。这样只要input的长度大于16,就会造成buffer的溢出,使程序运行出错C语言存在像strcpy这样问题的标准函数还有strcat(),sprintf(),vsprintf(),gets(),scanf()以及在循环内的getc(),fgetc(),getchar()等缓冲区溢出带来的问题引起程序运行失败严重时可导致系统崩溃可以人为利用缓冲区溢出来执行代码(shellcode),从而取得对系统的控制权最常见的手段是通过制造缓冲区溢出使程序运行一个用户shell,再通过shell执行其他命令。如果该shell程序属于root(或者system)权限的话,攻击者便可以对系统进行任意操作UESTC程序在内存中的映像……文本(代码)段数据段堆栈段内存低地址内存高地址内存递增方向初始化数据段非初始化数据段(BSS)堆(Heap)栈(stack)堆的增长方向栈的增长方向内核数据代码PEB&TEB系统DLL代码段程序在内存中的映像文本区域包括代码(指令)和只读数据.该区域相当于可执行文件的文本段。

这个区域通常被标记为只读。数据区域包含了已初始化和未初始化的数据。

静态变量储存在这个区域中。堆栈可用于给函数中使用的局部变量动态分配空间,给函数传递参数和函数返回值也要用到堆栈。堆往高地址增长,而栈往低地址增长。栈是一块连续的内存空间先入后出生长方向与内存的生长方向正好相反,从高地址向低地址生长每一个线程有自己的栈,提供一个暂时存放数据的区域使用POP/PUSH指令来对栈进行操作使用ESP寄存器指向栈顶,EBP指向栈帧底栈栈内容函数的参数函数返回地址EBP(栈底指针)的值一些通用寄存器(EDI,ESI…)的值当前正在执行的函数的局部变量CPU里的三个重要寄存器ESP:即栈顶指针,随着数据入栈、出栈而发生变化EBP:即基地址指针,用于标识栈中一个相对稳定的位置。通过EBP可以方便地引用函数参数以及局部变量EIP:即指令寄存器,在将某个函数的栈帧压入栈中时,其中就包含当前的EIP值,即函数调用返回后下一个执行语句的地址函数调用过程把参数压入栈保存指令寄存器中(EIP)的内容,作为返回地址放入堆栈当前的基址寄存器(EBP)把当前的栈指针(ESP)拷贝到基址寄存器(EBP)

,作为新的基地址为本地变量留出一定空间,把ESP减去适当的数值函数调用中栈的工作过程调用函数前,压入栈:上级函数传给A函数的参数返回地址(EIP)当前的EBP函数的局部变量调用函数后恢复EBP恢复EIP局部变量不作处理例子intAFunc(inti,intj){ intm=3;

intn=4; m=i; n=j; …………….. return8;}intmain(){ AFunc(5,6); return0;}语句执行前的EBP6当前EBP当前ESPAFunc(5,6);push6push5call_AFuncaddesp+8语句执行前的ESP函数调用中栈的工作过程5EIP_AFuncpushebpmovebp,espsubesp,0D8pushebxpushesipushediEBPd8hEDIESIEBX3(m=3)4(n=4)main(){语句执行前的EBP6当前EBP当前ESPmain(){AFunc(5,6);call_AFuncaddesp+8语句执行前的ESP函数调用中栈的工作过程5EIP_AFunc{……return8;popedipopesipopebxaddesp,0D8…………..popebpret}EBPd8hEDIESIEBX3(m=3)4(n=4)缓冲区溢出利用的思路Fun(char*input){ charszBuf[8]={0}; strcpy(szBuf,input); …}input的内容:用Shellcode函数的地址对EIP的填充6szBuf5EIPEBPEDIESIEBX3(m=3)4(n=4)ShellcodeShellcodeShellcode实际是一段代码,是发生缓冲区溢出后将要执行的代码Shellcode的作用就是实现漏洞利用者想要达到的目的,一般是用来安装木马或者提升权限的Shellcode的功能添加administrators或者root组用户开启远程shell下载程序(Trojan或者Rootkit)执行缓冲区溢出原理【引例】把1升的水注入容量为0.5升的容量中……第一次大规模的缓冲区溢出攻击是发生在1988年的Morris蠕虫,它造成了6000多台机器被瘫痪,利用的攻击方法之一就是fingerd的缓冲区溢出。根据CNNVD2020年以来每周的漏洞报告文档中,缓冲区溢出漏洞的所占总漏洞数量的百分比一直高居前五。Windows系统中与缓冲区溢出相关的病毒:红色代码、Slammer、冲击波、震荡波、永恒之蓝。Sudo发布安全通告,修复了一个类Unix操作系统在命令参数中转义反斜杠时存在基于堆的缓冲区溢出漏洞(CVE-2021-3156),普通用户可以通过利用此漏洞,而无需进行身份验证,成功获取root权限,据报道这个漏洞已存在十年了,大部分的linux系统都存在这个sudo漏洞。2022年共披露安全漏洞23900+枚,其中低风险漏洞占比11.13%,中高风险漏洞占比较约53.82%,高危漏洞占比35.05%。什么是缓冲区、缓冲区溢出?从程序的角度,缓冲区就是应用程序用来保存用户输入数据、临时数据的内存空间。如果用户输入的数据长度超出了程序为其分配的内存空间,这些数据就会覆盖程序为其它数据分配的内存空间,形成所谓的缓冲区溢出。缓冲区溢出后果

缓冲区溢出是最常见的内存错误之一,也是攻击者入侵系统时所用到的最强大、最经典的一类漏洞利用方式。利用缓冲区溢出攻击,可以导致:进程运行失败;系统宕机、重新启动等;它可被利用来执行特定的程序;可以取得系统特权,进而进行各种非法操作(提权)。样例程序1#include"stdafx.h"intmain(intargc,char*argv[]){ charbuffer[8];

printf("Pleaseinputyourname:"); gets(buffer); printf("Yournameis:%s!\n",buffer); return0;}发生溢出样例程序2voidfunc(char*input){ charbuffer[16]; strcpy(buffer,input);}上面的strcpy()将直接把input中的内容复制到buffer中。这样只要input的长度大于16,就会造成buffer的溢出,使程序运行出错C语言存在像strcpy这样问题的标准函数还有strcat(),sprintf(),vsprintf(),gets(),scanf()以及在循环内的getc(),fgetc(),getchar()等缓冲区溢出带来的问题引起程序运行失败严重时可导致系统崩溃可以人为利用缓冲区溢出来执行代码(shellcode),从而取得对系统的控制权最常见的手段是通过制造缓冲区溢出使程序运行一个用户shell,再通过shell执行其他命令。如果该shell程序属于root(或者system)权限的话,攻击者便可以对系统进行任意操作UESTC程序在内存中的映像……文本(代码)段数据段堆栈段内存低地址内存高地址内存递增方向初始化数据段非初始化数据段(BSS)堆(Heap)栈(stack)堆的增长方向栈的增长方向内核数据代码PEB&TEB系统DLL代码段程序在内存中的映像

代码段数据只读,可执行。在代码段一切数据不允许更改。在代码段中的数据是在编译时生成的2进制机器代码,可供CPU执行。

数据段在程序开始运行的时候被加载。可读、写。存储已初始化和未初始化的数据。(全局变量、静态变量)

堆栈段放置程序运行时动态的局部变量,即局部变量的空间被分配在堆栈里面。可读、写。

堆往高地址增长,而栈往低地址增长。栈栈是一块连续的内存空间先入后出生长方向与内存的生长方向正好相反,从高地址向低地址生长每一个线程有自己的栈,提供一个暂时存放数据的区域使用POP/PUSH指令来对栈进行操作使用ESP寄存器指向栈顶,EBP指向栈帧底栈栈内容函数的参数函数返回地址EBP(栈底指针)的值一些通用寄存器(EDI,ESI…)的值当前正在执行的函数的局部变量CPU里的三个重要寄存器ESP:即栈顶指针,随着数据入栈、出栈而发生变化EBP:即基地址指针,用于标识栈中一个相对稳定的位置。通过EBP可以方便地引用函数参数以及局部变量EIP:即指令寄存器,在将某个函数的栈帧压入栈中时,其中就包含当前的EIP值,即函数调用返回后下一个执行语句的地址函数调用过程把参数压入栈保存指令寄存器中(EIP)的内容,作为返回地址放入堆栈当前的基址寄存器(EBP)把当前的栈指针(ESP)拷贝到基址寄存器(EBP)

,作为新的基地址为本地变量留出一定空间,把ESP减去适当的数值函数调用中栈的工作过程调用函数前,压入栈:上级函数传给A函数的参数返回地址(EIP)当前的EBP函数的局部变量调用函数后恢复EBP恢复EIP局部变量不作处理例子intAFunc(inti,intj){ intm=3;

intn=4; m=i; n=j; …………….. return8;}intmain(){ AFunc(5,6); return0;}语句执行前的EBP6当前EBP当前ESPAFunc(5,6);push6push5call_AFuncaddesp+8语句执行前的ESP函数调用中栈的工作过程5EIP_AFuncpushebpmovebp,espsubesp,0D8pushebxpushesipushediEBPd8hEDIESIEBX3(m=3)4(n=4)main(){语句执行前的EBP6当前EBP当前ESPmain(){AFunc(5,6);call_AFuncaddesp+8语句执行前的ESP函数调用中栈的工作过程5EIP_AFunc{……return8;popedipopesipopebxaddesp,0D8…………..popebpret}EBPd8hEDIESIEBX3(m=3)4(n=4)1.早期的C和C++程序语言没有对数组读写数据进行边界检查的机制,导致了这一漏洞常常被攻击者所利用。

例如:标准C程序库中还存在许多不安全的字符串操作函数,包括:strcpy(),sprintf(),gets()等等,从而带来了很多脆弱点,这些脆弱点也便成了缓冲区溢出漏洞。缓冲区溢出产生的原因1.C和C++程序语言没有对数组读写数据进行边界检查的机制,导致了这一漏洞常常被攻击者所利用缓冲区溢出的步骤缓冲区溢出利用的思路Fun(char*input){ charszBuf[8]={0}; strcpy(szBuf,input); …}input的内容:用Shellcode函数的地址对EIP的填充6szBuf5EIPEBPEDIESIEBX3(m=3)4(n=4)ShellcodeShellcodeShellcode实际是一段代码,是发生缓冲区溢出后将要执行的代码Shellcode的作用就是实现漏洞利用者想要达到的目的,一般是用来安装木马或者提升权限的Shellcode的功能添加administrators或者root组用户开启远程shell下载程序(Trojan或者Rootkit)执行强制程序开发人员书写正确的、安全的代码。可以借助安全的开发工具帮助开发人员发现程序中的安全漏洞。通过对数组的读写操作进行边界检查来实现缓冲区的保护。缓冲区溢出产生的防御微软的DEP(数据执行保护)技术通过操作系统设置缓冲区的堆栈段为不可执行,从而阻止攻击者向其中植入攻击代码。

DEP的基本原理就是将数据所在内存页标识为不可执行,当程序溢出成功转入shellcode时,程序会尝试在数据页面执行指令,此时CPU就会抛出异常,而不是去执行恶意指令。缓冲区溢出原理验证函数调用的过程#include"stdafx.h"#include"stdio.h"intBFunc(inti,intj){ intm=1; intn=2; m=i; n=j; return7;}intAFunc(inti,intj){ intm=3; intn=4; m=i; n=j; BFunc(3,4); return8;}intmain(){ AFunc(5,6); return0;}验证函数调用的过程用VisualStudio2005编译用ImmunityDebugger进行反编译Main函数AFunc函数缓冲区溢出样例程序(VisualC++6.0)#include"stdio.h"#include"string.h“intk;voidfun(constchar*input){ charbuf[8]; inta,b; strcpy(buf,input); a=(int)&input; b=(int)buf; k=a-b; printf("%d\n",a); printf("%d\n",b);}voidshellcode(){ printf("\nOK!success\n");}intmain(intargc,char*argv[]){ printf("Addressoffun=%p\n",fun); printf("Addressofshellcode=%p\n",shellcode); voidshellcode(); intaddr[4]; chars1[]=“hello"; fun(s1); intshellcode_addr=(int)&shellcode; //由于EIP地址是倒着表示的,所以首先把shellcode()函数的地址分离成字节

addr[0]=(shellcode_addr<<24)>>24; addr[1]=(shellcode_addr<<16)>>24; addr[2]=(shellcode_addr<<8)>>24; addr[3]=shellcode_addr>>24; chars2[]="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; for(intj=0;j<4;j++){ s2[k-j-1]=addr[3-j]; } fun(s2); return0;}缓冲区溢出样例程序运行结果1244876:buf[00]1244877:buf[01]1244878:buf[02]1244879:buf[03]1244880:buf[04]1244881:buf[05]1244882:buf[06]1244883:buf[07]1244884:1244885:1244886:1244887:1244888:eip11244889:eip21244890:eip31244891:eip41244892:input11244893:input21244894:input31244895:input4缓冲区和堆栈情况思路:用shellcode函数的地址来覆盖eip1-eip4计算机病毒概述计算机病毒分类计算机病毒概述计算机病毒特征和传播途径计算机病毒的防治计算机病毒概述

1994年2月18日,我国正式颁布实施了《中华人民共和国计算机信息系统安全保护条例》,在《条例》第二十八条中明确指出:“计算机病毒,指编制或者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码”。病毒:Virus一、计算机病毒的定义1、计算机病毒的产生的思想基础和病毒发展简介2、实验室中产生——病毒的祖先(磁芯大战)3、计算机病毒的出现(1983年)4、我国计算机病毒的出现(1989年)二、计算机病毒的发展史(1)编制人员出于一种炫耀和显示自己能力的目的(2)某些软件作者出于版权保护的目的而编制(3)出于某种报复目的或恶作剧而编写病毒(4)出于政治、战争的需要病毒的产生原因1.DOS引导阶段2.DOS可执行阶段3.伴随阶段4.多形阶段5.生成器、变体机阶段6.网络、蠕虫

温馨提示

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

评论

0/150

提交评论