angr

angr坑迟早要填,这里简单记录两个模板
r100题目

//64位程序 逻辑,输入flag 判断
import angr
proj=angr.Project('./r100')   //要加载的程序
st=proj.factory.entry_state()
sm=proj.factory.simulation_manager(st)
sm.explore(find=0x400844,avoid=0x400855) //find:正确的地址 avoid:错误的地址
print(sm.found[0].posix.dumps(0))

ais3_crackme题目

import angr
import claripy # 处理用户输入
proj=angr.Project('./ais3_crackme')
argv1=claripy.BVS('argv1', 50*8) # 猜测flag长度小于50,乘8是转换为字节
state=proj.factory.entry_state(args=['./ais3_crackme',argv1]) # 传递状态
simgr=proj.factory.simgr(state)
res=simgr.explore(find = 0x400602, avoid=0x40060e)
print(hex(res.found[0].solver.eval(argv1)))

技巧

print(simgr.found[0].solver.eval(argv1,cast_to=bytes))//以字符串形式输出

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值