[CCTF] pwn350】的更多相关文章

0x00: 之前打了CCTF,在CCTF的过程中遇到一个比较有意思的思路,记录一下. 0x01: 可以看到,这是一个 fmt 的漏洞,不过很简单,接收的输入都在stack中,可以确定输入在栈中的位置,可以做到 任意地址读写. 一般来说,对于这种类型的漏洞,写shellcode到合适的地址然后跳转过去,或者leak 出 system地址,改其他函数的got,都是可以拿一个shell的. 本来,我的思路很窄,想的是构造一个循环,去leak我需要的函数,然后改got去拿shell. 之后joker师傅…
这次算是跟着师傅们全程打完了CCTF的线上赛,一些强队的WriteUp也放了出来.这篇文章主要是想跟着大牛的思路把那些题重新再过一遍. PWN3 这个是格式化字符串漏洞的题.printf的格式化串直接来自用户输入. 操作流程 用格式化字符串"%7$x"泄漏libc的地址.(由调试知这个地址已在栈中) 用泄漏出来的地址找出libc的版本 用得到的版本推算出system()函数的偏移 用格式化字符串修改got表的一个为system函数地址 调用被修改的函数 system()的参数"…
java基础学习总结——基础语法1 一.标识符…
一.标识符 二.关键字 三.JAVA基础数据类型 3.1. java常量 3.2. java变量 从本质上来讲,变量其实是内存里面的一小块区域,一个程序在运行的时候,实际上这个程序是位于内存里面,然后才开始运行.一个.exe文件存放在硬盘上是无法运行的,在硬盘上看到的.exe文件无非就是一个文件而已,当我们双击这个.exe文件时,运行起来的时候实际上是整个.exe文件被放在了在内存里面,然后操作系统找到main方法,也就是程序的入口,然后就开始执行了.执行的过程之中,会不断地在内存里面分配一些区…
做cctf pwn printf题目的时候 疑问为什么dir函数会将之前out的name倒叙输出 调试了一下发现当malloc(0xf4)大小时候,例如 第一次分配0x1000的地址,将名字输入到0x1000后 第二次malloc(0xf4)时,本题申请到的地址为0x10f8 而dir中判断完第一次传进来的file_head不为空之后将这个file--head的内容拷贝到s,然后将将申请地址 + 0xf0 之后的内容取出来 再比较 拷贝 PS:在ida分析时一定要注意 f5之后指针的类型 我真是…
接上一篇的Sql Server约束学习一(主键约束.外键约束.唯一约束) 4.检查约束 1)检查约束的定义 检查约束可以和一个列关联,也可以和一个表关联,因为它们可以检查一个列的值相对于另一个列的值,只有这些列都在同一个表中,以及值是在更新或插入的同一行中.检查约束还可以用于检查列值组合是否满足某一个标准.可以使用where子句一样的规则来定义检查约束. 检查约束条件示例如下:…
前边的都是些无关紧要,只要有点网络的基础我想应该都能懂,往下看,一直到NO104,这是在干什么? 源ip138一直向目标ip159发送syn握手包,想要建立连接,其实就是端口扫描,原理就是,想和你某个端口建立连接,然后看这个端口的回复的类型来看下是否开放了此端口.我们现在就可以知道138是客户端,159是服务器端了.红色的包是服务器向客户端回复的信息,代表此端口没有开放. 再往下看,服务器的3389端口号一直和客户端在联系,说明3389端口是开放着的. 跟踪了几个不同的端口对应着的tcp流,没有…
一.标识符…
IDA动态调试技术及Dump内存 来源 https://blog.csdn.net/u010019468/article/details/78491815 最近研究SO文件调试和dump内存时,为了完整IDA调试起来,前后摸索了3天才成功,里面有很多坑和细节,稍微不注意,就一直排行,需要理解每步骤的作用意义,否则就会觉得教程不对,要详细的教程可能找不到,大部分都是简单介绍,没有提醒细节和易忽视的点 动态调试步骤,顺序严格如下 事先准备工作 1.要求root手机或者直接用模拟器 否则没有权限启动a…