经典书籍
玉界尺
这个作者很懒,什么都没留下…
展开
-
csapp的实验一 如何使用以及答案(一)
被大学室友安利此书后 现在看到第三章 确是一本好书(缓冲区溢出攻击尤为精彩,而且推荐给我看此书的人绝对没有细看这本书) 那么这本书配套的实验也是十分有意思大部分网上都是答案这里使用方法也说明一下csapp网址 下载后解压解压后bits.c是我们需要解决的内容主要说一下如何编译和测试在readme中那么我这里是使用docker下的...原创 2018-02-28 09:38:11 · 14300 阅读 · 6 评论 -
csapp实验二 ---bomb(第一关)
写在前面,4月24号,微软实习三面失败后,决定继续发奋图强,写在这里给自己一个警醒,也希望以后能更技术能越来越好,以前的博客质量上可能还有欠缺,将在以后的时间里重新编辑准备工作1.环境准备有docker下载我准备好的实验镜像docker pull liutianhao/csapp_bomb没有docker请确保有gdb和gcc等工具2.文件准备前面的博客...原创 2018-05-09 17:23:00 · 920 阅读 · 0 评论 -
csapp实验二 ---bomb(第二关)
解决了第一个问题后来到phase_2gdb bomb disas phase_2输入仍然是input 在 rdi中然后开了40字节的缓冲区接着把栈头地址丢给rsi调用read_six_number 顾名思义但是我们还是看看disas read_six_numbers在read_six_numbsers中我们看到作为sscanf的第二个参数esi...原创 2018-05-09 18:09:11 · 669 阅读 · 0 评论 -
csapp实验二 ---bomb(第三关)
继续来gdb bombdisas phase_3 我们看到 有个诡异的东西放进esi了 先看看x/s 0x4025cf得知”%d %d” 注意到栈顶+8是rdx也就是接受输入的地方然后输入后判断输入数量是否正确然后开始判断第一个数是否减上7后是否还是>0不是立马爆炸接着是*0x402470(,%rax,8)注意rax是我们第一个数的值x/a 0...原创 2018-05-09 19:23:32 · 791 阅读 · 0 评论 -
csapp实验一部分答案
csapp 部分答案/* * CS:APP Data Lab * * <Please put your name and userid here> * * bits.c - Source file with your solutions to the Lab. * This is the file you will hand in to your in...原创 2018-05-03 11:22:14 · 1389 阅读 · 0 评论 -
csapp实验二 ---bomb(第四关)
再接再厉来到第四关gdb bombdisas phase_4看一看到什么东西送到esi并且做为sscanf的第二个输入先看下是什么(gdb) x/s 0x4025cf0x4025cf: "%d %d"那么这题就是输入两个数接下来判断第一个数小于等于14我们才能接着游戏调用func4 入口参数 第一个参数 第一个数 第二个参数...原创 2018-05-10 10:04:22 · 1032 阅读 · 0 评论 -
csapp实验二 ---bomb(第五关)
keep moving来到第五关gdb bomb disas phase_50x0000000000401062 <+0>: push %rbx0x0000000000401063 <+1>: sub $0x20,%rsp0x0000000000401067 <+5>: mov %rdi,%rbx0x00...原创 2018-05-10 10:38:52 · 1135 阅读 · 1 评论 -
小实验证明 (编译器g++)定义在c++类中函数均为内联函数
看bjarne的c++中说明 类中函数均为内联 ,前段时间正好有与同学讨论这点,这里做个实验证明 ,由于鄙人水平浅薄,如有错误,还望摘正第一个实验证明优化为O0时内联是不生效的首先关掉优化 证明当优化为O0时 所有内联均被忽略这里可以学习到两个东西1.c++中的函数 在调用时的符号与c有明显的区别2.编译器优化为O0的时候内联不生效第二个实验证...原创 2018-05-15 12:07:00 · 734 阅读 · 0 评论