Angr 01 avoid 忽略的条件

article/2025/11/8 10:33:59

01_angr_avoid无法反编译主函数,模块比较多,加上avoid过滤条件之后,就没那么慢了。
1

import angr                                                                                                                                                                                                                                      
project = angr.Project("./01_angr_avoid")                                                                                                                                                                                            
initial_state = project.factory.entry_state()                                                                                                                                                                                        
simulation = project.factory.simgr(initial_state)                                                                                                                                                                                    
print_good_address = 0x080485E0                                                                                                                                                                                                      
will_not_succeed_address = 0x080485F2                                                                                                                                                                                                
simulation.explore(find=print_good_address, avoid=will_not_succeed_address)
solution_state = simulation.found[0]                                                                                                                                                                                                 
print(solution_state.posix.dumps(0))

1

1


http://chatgpt.dhexx.cn/article/EHqFiEyL.shtml

相关文章

图解angr中两种CFG的区别

angr里提供两种CFG的生成,一种是CFGFast,一种是CFGEmulated。这两种究竟有什么不同呢? 本文主要是用图来说明下这个问题。可能回答的不是很完整。 CFGFast这种CFG生成的比较快,但是没有考虑上下文关系。比如函数A调用了printf函…

Angr 02_angr_find_condition 根据输出状态条件搜索正确输入

explore的find和avoid支持函数作为参数,根据函数返回值来判断是否成功。Angr把状态传入了函数,从而判断成功与否。 import angr import sysdef main(argv):path_to_binary argv[1]project angr.Project(path_to_binary)initial_state project.factor…

angr的安装

ubuntu要先安装pip,ANGR官方给出的为pip命令pip install angr; 就算将pip改为apt-get 也不行。 借鉴Ubuntu安装pip的安装方式,安装pip,然后运行pip install angr,结束。 angr安装完后,要安装图形生成插件…

angr 学习笔记

附件,参考1,参考2 符号执行原理 基本概念 即初始参数用变量代替,模拟程序执行过程,维护执行到各个位置时的状态(用各个变量之间的代数关系表示)。 符号状态(Symbolic State) 当前…

利用angr获取CFG

静态二进制分析中,对于程序控制流图CFG的计算是很基础且重要的一步,很多的分析是要建立在CFG的基础上。angr作为二进制分析工具,当然提供了CFG功能,下面我们就来探索下要如何使用angr计算CFG,以及其中的坑。 angr中的…

Angr 内存符号化 05_angr_symbolic_memory

说明 通过查看下面的源码或IDA汇编&#xff0c;可知此例需要输入4个输入字符串&#xff0c;给每个输入字符串赋值给了user_input数组这块已经开辟的内存空间&#xff0c;我们可以监测user_input在内存中的值来获取最终的答案。 随机生成的源码 #include <stdio.h> #in…

Angr学习笔记

Angr学习笔记 前言 本文记录一下Angr的基本使用方法&#xff0c;主要是基于Github上的开源项目以及笔记AngrCTF_FITM整理&#xff0c;Angr在逆向方面确实用处比较大&#xff0c;特此记录一下。 什么是Angr angr是一个用于分析二进制文件的python框架。它专注于静态和符号分…

angr纠错和易错点

现在环境已经没有问题了。我运行了几个代码&#xff08;使用python3&#xff09;&#xff0c;都会出现不同的问题。 运行报错 解决方法&#xff1a; 添加b 运行报错&#xff1a; 解决方法&#xff1a; 删掉cast_to; 因为python2中str就是字节流 python3中不一样&#xff0c…

git本地分支管理

文章目录 一、master分支没有改变&#xff0c;合并其他分支二、master分支有改变&#xff0c;合并其他分支 作为开发人员&#xff0c;我们应该尽可能多地建立分支&#xff0c;在分支上进行开发&#xff0c;功能测试稳定后&#xff0c;再将分支上地代码合并到指定的分支 git bra…

Git 分支管理

Git 分支管理 一、主分支Master 首先&#xff0c;代码库应该有一个、且仅有一个主分支。所有提供给用户使用的正式版本&#xff0c;都在这个主分支上发布。 Git主分支的名字&#xff0c;默认叫做Master。它是自动建立的&#xff0c;版本库初始化以后&#xff0c;默认就是在主分…

git分支管理策略

git分支管理策略 1 总览 git 的分支整体预览图如下&#xff1a; 从上图可以看到主要包含下面几个分支&#xff1a; master&#xff1a;git默认主分支&#xff08;这里不作操作&#xff09;。 stable&#xff1a;稳定分支&#xff0c;替代master&#xff0c;主要用来版本发布。…

IDEA中使用Git功能和IDEA中的Git分支管理

IDEA中使用Git功能 IDEA中创建Git仓库 1、设置Git程序的路径 2、设置编译器的GitHub账号 3、新建项目 4、发布项目到GitHub IDEA向Git提交修改后的代码 1、实现git add 2、开始commit 3、实现git commit -m 4、实现git push origin master 项目成员使用IDEA的Git功…

【Git-10】Eclipse中Git分支管理

分支管理&#xff0c;是 Git 开发中的一个非常有效的团队开发策略。多个程序员并行开发&#xff0c;每个程序员可以定义各自的分支&#xff0c;在自己的分支上开发工程。再开发结束测试完毕后&#xff0c;再合并到主干工程中&#xff0c;一次性提交到远程。由其他程序员使用。 …

Git 分支管理最佳实践

Git 是目前最流行的源代码管理工具。大量的软件项目由 GitHub、Bitbucket 和 GitLab 这样的云服务平台或是私有的 Git 仓库来管理。在使用 Git 时通常会遇到的一个问题是采用何种分支管理实践&#xff0c;即如何管理仓库中作用不同的各类分支。和软件开发中的其他实践一样&…

Git分支管理办法,每个团队不一样,仅供参考!

原创不易&#xff0c;转载注明出处&#xff0c;喜欢就点个赞吧&#xff01; 网上有很多文章&#xff0c;很少有实际具体的流程图说明&#xff0c;我根据我们团队的情况&#xff0c;画了几张简图&#xff0c;仅供参考。 每个公司的代码管理方式都不一样 主要有两种 1.TrunkB…

Git分支管理与常用命令

一、分支管理 Git在创建分支仅是生成了一个指针又称快照&#xff08;有的工具则进行了物理拷贝&#xff09;&#xff0c;这样在使用起来就非常的方便。方便的同时问题随之而来&#xff0c;如果不加管理&#xff0c;那么就会到处开枝散叶&#xff0c;完全看不出主干。因此&…

复杂项目的版本管理及git分支管理建议

在复杂项目中&#xff0c;特别是多团队的快速迭代中&#xff0c;版本管理与分支管理&#xff0c;总是我们难以回避的问题&#xff0c;这里分享一下我们在团队中使用的规范&#xff0c;以及对应的每一步的步骤。 为什么需要GIT使用建议 团队开发中&#xff0c;遵循一个合理、清…

2022新版Git教程 从入门到实战(三)Git分支管理

&#x1f41f; 个人主页 &#xff1a;https://blog.csdn.net/qq_52007481⭐个人社区&#xff1a;【小鱼干爱编程】&#x1f4f0;最近专栏&#xff1a;Git教程专栏 文章目录 分支工作的工作流程Git分支管理分支的好处 前期准备查看分支分支创建分支转换在新分支中添加记录切换回…

Git 分支管理最佳实践(转载)

前言 Git 是目前最流行的源代码管理工具。大量的软件项目由 GitHub、Bitbucket 和 GitLab 这样的云服务平台或是私有的 Git 仓库来管理。在使用 Git 时通常会遇到的一个问题是采用何种分支管理实践&#xff0c;即如何管理仓库中作用不同的各类分支。和软件开发中的其他实践一样…

Git 分支管理策略汇总

原文链接&#xff1a; Git 分支管理策略 最近&#xff0c;团队新入职了一些小伙伴&#xff0c;在开发过程中&#xff0c;他们问我 Git 分支是如何管理的&#xff0c;以及应该怎么提交代码&#xff1f; 我大概说了一些规则&#xff0c;但仔细想来&#xff0c;好像也并没有形成…