![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pwn
文章平均质量分 88
Y_huanhuan
一个在ctf里的小菜鸡
展开
-
CTF PWN特点:入门难、进阶难、精通难
通过第1点中描述,在执行call sum的时候,会将sum 的下一条命令的执行地址0x8048438压入栈中,然后程序进入sum片段进行执行,此时,0x8048438地址就是sum函数的返回地址,即 return address。当执行到ret时,栈空间如下栈地址值0xffffceac0x8048438 # sum的下一条指令0xffffceb01 # a 的值0xffffceb42 # b 的值当执行完ret后,栈空间为。原创 2023-05-24 23:04:20 · 1625 阅读 · 2 评论 -
pwn-随机计算题类型
沙盒机制也就是我们常说的沙箱,英文名sandbox,是计算机领域的虚拟技术,常见于安全方向。一般说来,我们会将不受信任的软件放在沙箱中运行,一旦该软件有恶意行为,则禁止该程序的进一步运行,不会对真实系统造成任何危害。在ctf比赛中,pwn题中的沙盒一般都会限制execve的系统调用,这样一来one_gadget和system调用都不好使,**只能采取open/read/write的组合方式来读取flag。原创 2023-05-25 15:38:42 · 1234 阅读 · 2 评论 -
关于printf函数泄露地址的libc题型
我们在构建ROP链时,应该想我们需要怎样去泄露地址,才能达到我们所希望的程序执行,因为是64位的,我们需要一些 pop|ret 去放我们的参数,printf在执行打印格式化字符串时,有产生一个参数,然后我们还需要一个寄存器,来存放我们got表里所要的真实地址。最后加个main函数,是我们返回到main函数,让程序走一遍,以便我们可以写入接下来的payload去控制程序流。因为这道题,我们首先应该做的是泄露地址,泄露那个地址,我觉得可以是printf或者是read的地址都行,接下来我们就尝试一下吧。原创 2023-05-25 22:08:20 · 576 阅读 · 0 评论 -
格式化字符漏洞
格式化字符串是由普通字符(包括%)和转换规则构成的字符序列。普通字符被原封不动地复制到输出流中。转换规则根据与实参对应的转换指示符对其进行转换,然后将结果写入到输出流中。转换规则由可选的部分和必选部分组成。其中只有转换指示符type是必选部分,用来表示转换类型。用 printf() 为例,它的第一个参数就是格式化字符串 :“Color %s,Number %d,Float %4.2f”然后 printf 函数会根据这个格式化字符串来解析对应的其他参数。原创 2023-05-25 22:24:47 · 1184 阅读 · 3 评论 -
canary??!!
绕过if判断,进入secondwish,在这里面很明显会有一个canary保护,同时也有一个格式化字符串漏洞,利用格式化字符串去泄露canary,然后利用泄露的canary去覆写 thirdwish的s的canary。一个子线程,然后在子线程内进行操作,这里我们需要知道的是,fork操作中子线程和主线程用的是一个canary.并且程序中这一个循环还不会终止,这就跟便于我们对canary的爆破,通过下面的汇编会更清晰的了解子线程和父线程的关系。好,我们所有的大致思路有了,接下来,就是细节上功夫了。原创 2023-06-08 19:12:39 · 376 阅读 · 1 评论 -
新手必看——超详细:[深育杯 2021]find_flag
pie与canary同时开启,并且有格式化字符串。原创 2023-06-09 21:34:50 · 969 阅读 · 3 评论