[网鼎杯 2020 青龙组]singal

记录下angr初使用

这道题是很简单的逻辑

32位

我们提取opcode

(你可以用convert)

我是用的IDApython\

import idc
adr=0x00403040
step=4#距离
op=[]
n=10#多少个数据
while(n):op.append(hex(idc.get_wide_dword(adr)))adr+=stepn-=1
print(op)

然后我又下断点,提取每个"i"的值

import idaapi  # 假设我们有一个eax的值  
eax_val = idaapi.get_reg_val("eax")  # 获取AL的值(eax的最低8位)  
al_val = eax_val & 0xFF  # 打印AL的值  
print(hex(al_val), end=',')

正向的话

对着操作就可以了

0x4,0x8,0x3,0x1,0x4,0x8,0x5,0x1,0x3,0x8,0xb,0x1,0xc,0x8,0x4,0x1,0x5,0x8,0x3,0x1,0xb,0x8,0xb,0x1,0x4,0x8,0x3,0x1,0x2,0x8,0x4,0x1,0xc,0x8,0xb,0x1,0x5,0x8,0x2,0x1,0x2,0x8,0x4,0x1,0x2,0x8,0x5,0x1,0x5,0x8,0x2,0x1,0x4,0x8,0x3,0x1,0x2,0x8,0xc,0x1,0x7,0x7,0x7,0x7,0x7,0x7,0x7,0x7,0x7,0x7,0x7,0x7,0x7,0x7,0x7

(只用15个就行)

_________________

angr方法::

[re]符号执行一把梭:2020网鼎杯青龙组re_signal_wp_网鼎杯re-signal真题-CSDN博客

我是看这个哥的博客学习的

这是我们想得到的

这是我们想避免的(加上比较有帮助,没有也行)

python脚本

import angrp = angr.Project(r'C:\Users\ASUS\Desktop\signal.exe')  
state = p.factory.entry_state()  
simgr = p.factory.simgr(state)  
simgr.explore(find=0x004017A5 ,avoid=0x004016E6)  
flag = simgr.found[0].posix.dumps(0)[:15]    
print(flag)

这是window上跑的,我window没完成

import angrp = angr.Project('./signal.exe')   #指定angr跑的程序
state = p.factory.entry_state()    #新建一个SimState的对象,得到一个初始化到二进制入口函数的SimState对象。
simgr = p.factory.simgr(state)   #创建simulation manager,angr的主要入口simgr.explore(find=0x004017A5 ,avoid=0x004016E6)  #争取跑到输出成功的地址,避免跑到输出wrong的地址
flag = simgr.found[0].posix.dumps(0)[:15]     #得到flag
print(flag)

这是我在ubutu上用的

# 创建一个名为myenv的虚拟环境 python3 -m venv myenv

# 激活虚拟环境 source myenv/bin/activate

# 现在,在这个虚拟环境中安装angr pip install angr

这是配置的命令

就ok了

这个我理解的原来

应该就是爆破吧

我也看不懂,反正就是高级

_

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/23677.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

持续总结中!2024年面试必问 20 道 Kafka面试题(十)

上一篇地址:持续总结中!2024年面试必问 20 道 Kafka面试题(九)-CSDN博客 十九、Kafka的ACK机制是什么? Kafka的ACK(Acknowledgement,确认)机制是确保消息被成功发送和接收的重要部分…

MySQL—多表查询—内连接

一、引言 (1)内连接查询语法 内连接查询的是两张表的交集部分的数据。(也就是绿色部分展示的数据) (2)内连接有两种形式: 1、隐式内连接 语法结构: 2、显示内连接 语法结构&#xf…

pycharm FuncAnimation画动态图不显示, 以及画图

网上的一些方法给出了解决措施,如:https://blog.csdn.net/qq_41725313/article/details/122048864?spm1001.2101.3001.6650.2&utm_mediumdistribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogOpenSearchComplete%7ERate-2-122048864-blog-139…

红酒:如何避免红酒过度氧化

红酒过度氧化是影响其品质的重要因素,尤其是在储存和运输过程中。过度氧化的红酒会失去原有的果香和口感,变得平淡无味。因此,避免红酒过度氧化至关重要。以下是一些进一步的措施,可以帮助您保护云仓酒庄雷盛红酒的品质&#xff1…

QT学习过程中遇到的问题自记

文章目录 前言问题1问题2问题3 前言 学习QT嵌入式实战开发(从串口通信到JSON通信微课视频版)的过程中遇到的几个小问题 问题1 1.将书中的示例代码导入自己的电脑,然后点击工程进去,不能运行,报错 no kits are enabled for this project… 我…

LangChain :构建个人AI代理从这里开始

LangChain,一个强大的工具,允许根据用户输入创建对语言模型和其他工具的复杂调用链。就像拥有一个私人助理,可以根据手头的任务做出决定。本文来分享一下在 LangChain 中使用 Agents 的心路历程。 LangChain中代理的概念 在 LangChain 中&a…

指针还是学不会?跟着小代老师学,进入深入理解指针(4)

指针还是学不会?跟着小代老师学,进入深入理解指针(4) 1回调函数2qsort使用举例2.1使用qsort函数排序整行数据2.2使用qsort排序结构体数据 3qsort函数的模拟实现 1回调函数 回调函数就是一个通过函数指针调用的函数。 如果你把函数…

小球的种类(ball)

小球的种类 题目描述 小红有 n n n种不同颜色的小球,第 i i i种颜色的小球有 a i a_i ai​个,放在同一个盒子中。 小红每次任意取出 k k k个小球并丢弃,直到盒子中剩余的球数小于 k k k个为止。 小红希望最终盒子里的小球颜色种类尽可能少…

荧光标记Avidin与特定生物分子的靶向结合-星戈瑞

亲和素Avidin是一种具有生物学特性的蛋白质,能够与生物素(biotin)进行高亲和力结合。通过荧光标记技术,我们可以将荧光基团与Avidin结合,形成荧光标记Avidin,从而实现对特定生物分子的靶向结合和可视化。 …

LeetCode-239.滑动窗口最大值

给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 示例 1: 输入:nums [1,3,-1,-3,5,3,6,7], k 3 输…

【无标题】2024.6.6

2024.6.6 【一天高考&#xff01;&#xff01;&#xff01; “夏天周而复始、该相逢的人会再相逢”】 Thursday 五月初一 <theme oi-“DP”> 来学习一下DP的优化 其实考试时我应该很难用到优化的 P2569 [SCOI2010] 股票交易 DP柿子比较好推&#xff0c; T&#xff0…

I2C通信外设

I2C外设介绍 主机&#xff0c;就是拥有主动控制总线的权利。从机&#xff0c;只能在从机允许的情况下&#xff0c;才能控制总线。 多主机模型可分为固定多主机和可变多主机。固定多主机就是总线上&#xff0c;有2个或2个以上固定的主机&#xff0c;上面固定为主机&#xff0c;下…

【Unity | Editor强化工具】资产快速访问工具

经常在Project窗口中翻找资产相对麻烦&#xff0c;Unity自带的Favorite功能又和Project窗口强绑定&#xff0c;且只能在双列视图下使用&#xff0c;故制作了一个可以在独立窗口中列举常用资产的小工具&#xff1a; Unity Asset Quick Access 。 CSDN弄了个Github加速计划&…

在敏捷项目中如何使用WBS?

工作分解结构 (WBS) 是管理规划、监控和控制项目或计划范围的关键要素&#xff0c;在项目管理的许多不同分支中都有应用。它的主要目的是将复杂的项目分解成更易于管理的小块&#xff0c;通常以简单的流程图形式呈现。 WBS 通常与瀑布法等传统项目管理方法相关联&#xff0c;在…

教你申请永久免费的 us.kg 域名 支持接入 Cloudflare

本文首发于只抄博客&#xff0c;欢迎点击原文链接了解更多内容。 前言 之前的永久免费域名 eu.org 已经很久没有审批新的域名了&#xff0c;今天给大家推荐的 us.kg 不需要审批&#xff0c;注册账号申请域名后直接可以使用&#xff0c;并且它也可以像 eu.org 一样接入 Cloudfl…

2024中国机器人开发大会

具身智能 『 具有身体的智能 』 忘了是谁 小脑大模型&#xff1a;运动&#xff1b;大脑大模型&#xff1a;认知&#xff1b; 机器人操作系统 | 黄晓庆 云端&#xff0c;机器人的大脑&#xff0c;每个人的数字化&#xff0c;人类的第三台计算机&#xff1b;每个人生产力的提…

联合(union)和枚举(enum)学习(c语言)

前言 Hello,亲爱的小伙伴们&#xff0c;好久不见&#xff0c;今天我们继续来学习新的内容-----联合和枚举 如果喜欢作者菌的文章的话&#xff0c;就不要吝啬手中的三连呀&#xff0c;万分感谢&#xff01;&#xff01; 联合&#xff08;共用体&#xff09;&#xff08;union&…

【计算机网络】计算机网络的组成与功能

计算机网络的组成与功能 导读一、计算机网络的组成1.1 从组成方式上1.1.1 硬件1.1.2 软件1.1.3 协议 1.2 从工作方式上1.3 从功能组成上 二、计算机网络的功能2.1 数据通信2.2 资源共享2.3 分布式处理2.4 提高可靠性2.5 负载均衡2.6 其它 结语 导读 大家好&#xff0c;很高兴又…

【python基础篇】 5. python 异常、文件与流

1 异常 错误&#xff1a;语法错误&#xff08;一般IDE能够发现&#xff09;&#xff0c;逻辑错误&#xff08;很难发现&#xff0c;提示起来比较麻烦&#xff09; 异常&#xff1a;当python检测到一个错误时&#xff0c;解释器无法继续执行下去&#xff0c;于是抛出相应的信息…

Web3开发框架分析

Web3开发框架旨在简化区块链和去中心化应用&#xff08;DApp&#xff09;的开发过程&#xff0c;为开发者提供必要的工具和库。以下是一些主要的Web3开发框架。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1.Truffle Suite Truffl…