网络攻防技术概述与课程_chat缓冲区溢出分析.ppt

网络攻防技术概述与课程_chat缓冲区溢出分析.ppt

ID:50011323

大小:325.50 KB

页数:41页

时间:2020-03-07

网络攻防技术概述与课程_chat缓冲区溢出分析.ppt_第1页
网络攻防技术概述与课程_chat缓冲区溢出分析.ppt_第2页
网络攻防技术概述与课程_chat缓冲区溢出分析.ppt_第3页
网络攻防技术概述与课程_chat缓冲区溢出分析.ppt_第4页
网络攻防技术概述与课程_chat缓冲区溢出分析.ppt_第5页
资源描述:

《网络攻防技术概述与课程_chat缓冲区溢出分析.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ICST-ERCIS1北京大学网络攻防技术与实践课程chat缓冲区溢出分析讲解ICST-ERCIS2内容安排问题背景知识调试分析触发漏洞分析漏洞原因构造攻击代码分析攻击原理问题回答ICST-ERCIS3内容安排问题背景知识调试分析触发漏洞分析漏洞原因构造攻击代码分析攻击原理问题回答ICST-ERCIS4问题RedHat7.3下的程序/usr/sbin/chat存在缓冲区溢出漏洞问题:1.从中分析查找缓冲区溢出漏洞位置2.编写本地缓冲区溢出渗透攻击代码,并进行攻击确认是否可获得root权限,如否,为什么,前提条件是什么?3.

2、针对发现的漏洞,给该程序编写一个补丁程序,使之修补所发现漏洞。ICST-ERCIS5内容安排问题背景知识调试分析触发漏洞分析漏洞原因构造攻击代码分析攻击原理问题回答ICST-ERCIS6背景知识gdbgccrpmIDAPropatchdiffICST-ERCIS7gdb常用指令—运行启动gdb调试普通程序:$gdb--argsyour_progyour_prog_args$gdbyour_prog然后(gdb)setargsyour_prog_args调试进程:$gdb--pid=your_pid_num$gdb然后(gd

3、b)attachyour_pid_num开始调试r(un).从开始执行。没有断点的话,会执行到程序结束runyour_prog_args,用之作为命令行参数启动执行逐步调试:s(tep),逐(源码)语句执行,语句函数调用能跟进去的话就跟进去n(ext),逐(源码)语句执行,函数调用不跟进去继续执行c(ontinue),从目前停止的位置开始继续前行设置变量set$var_name=val内存值,set*mem_addr=valICST-ERCIS8gdb常用指令—断点下断点(breakpoints):b(reak)[file

4、:]line_no(有源码,-g编译,才可用)bfunc_nameb*inst_addr下监视点(watchpoints):wa(tch)watch*(int*)0xbbffffff监视0xbbffffff处四个字节,内容发生改变时触发查看断点和监视点:infobr删除断点和监视点delbr_numberICST-ERCIS9gdb常用指令—查看变量等,p(rint)/ff是输出格式示例:p*0xffffffffp/x$esppa_var_in_prog源码,l(ist)堆栈infost(ack)b

5、t(backtrace)内存,x/nfumem_addrn,是想显示的unit的个数f,是输出格式(x代表16进制输出)u,是unit的大小(字节、字、……)寄存器,inforegister指令:默认的每次停止时会自动显示下一句源代码(无源码或调试信息时不显示)无调试信息时只能查看机器指令,需要自动显示下一句机器指令display/i$pc(pc就是eip)ICST-ERCIS10gdb常用指令—机器指令相关逐指令调试stepi,缩写si,逐(机器)指令执行,call指令跟进去nexti,缩写ni,逐(机器)指令执行,ca

6、ll指令不跟进去反汇编机器指令dias(semble)从当前函数的第一条指令开始反汇编并显示diasaddr1addr2从addr1到addr2之间的指令进行反汇编并且显示示例:dias$pc$pc+0x10查看接着即将执行的16个字节处的指令是什么?ICST-ERCIS11rpm使用查询一个已安装软件所属软件包rpm–qf软件名查询软件包的依赖关系rpm–qpR软件包名查询软件包中的文件rpm–qpl软件包名在指定目录安装软件包rpm–ivh软件包名–relocate/=/root把软件包安装到/root下面ICST-E

7、RCIS12内容安排问题背景知识调试分析触发漏洞分析漏洞原因构造攻击代码分析攻击原理问题回答ICST-ERCIS13准备工作源代码tar–xvf(exercise8)ppp-2.4.1.tar.gz源文件位置:ppp-2.4.1/chat/chat.c可执行文件:rpm–ivhppp-2.4.1-3.i386.rpm--relocate/=/root/pppchat文件位置:ppp/usr/sbin/chat取消Linux系统对栈溢出的保护措施#echo0>/proc/sys/kernel/exec-shield取消“栈上

8、数据不可执行”的保护措施(DEP)#echo0>/proc/sys/kernel/randomize_va_space取消“进程映射虚拟地址空间随机化”的保护措施(ASLR)使用的工具:gdbIDAPro(Windows平台)diff和patch(Linux打补丁)ICST-ERCIS14第一轮:触发漏

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。