内容简介:Zelos是一款功能强大的代码模拟和测试平台,Zelos英文全称为“Zeropoint Emulated Lightweight Operating System”,即Zeropoint轻量级模拟操作系统,该平台基于Python开发,可帮助广大研究人员快速实现代码行为模拟和测试。Zelos的其中一个强大功能就是能够通过命令行或Python脚本快速对目标代码的动态行为进行模拟、审计和评估。其中,所有的系统调用都会在与目标代码隔离的环境下进行模拟,并且支持Linux x86_64 (32- 和64-bit)、A
Zelos
Zelos是一款功能强大的代码模拟和测试平台,Zelos英文全称为“Zeropoint Emulated Lightweight Operating System”,即Zeropoint轻量级模拟操作系统,该平台基于 Python 开发,可帮助广大研究人员快速实现代码行为模拟和测试。
Zelos的其中一个强大功能就是能够通过命令行或Python脚本快速对目标代码的动态行为进行模拟、审计和评估。其中,所有的系统调用都会在与目标代码隔离的环境下进行模拟,并且支持Linux x86_64 (32- 和64-bit)、ARM和MIPS代码。
工具安装
广大研究人员可以使用下列命令将项目源码克隆至本地:
git clone https://github.com/zeropointdynamics/zelos.git
或者使用 pip 包管理器来下载和安装Zelos:
pip install zelos
当然了,在使用Zelos之前,请确保你的系统已安装好Python环境。
工具使用
命令行
使用默认选项模拟目标代码:
$ zelos my_binary
如需查看已执行的代码指令,请添加-v参数:
$ zelos -v my_binary
你还可以在每一个执行首次被执行时打印输出相关数据,此时需添加–fasttrace参数:
$ zelos -v --fasttrace my_binary
默认配置下,系统调用可以通过stdout发出,如需将系统调用写入至文件,可以使用–strace参数:
$ zelos --strace path/to/file my_binary
可编程处理
import zelos z = zelos.Zelos("my_binary") z.start(timeout=3)
本地开发环境
首先,我们需要创建一个新的Python虚拟环境,这样可以确保不存在数据包所导致的版本冲突:
$ python3 -m venv ~/.venv/zelos $ source ~/.venv/zelos/bin/activate
接下来,克隆代码库,并切换至zelos项目目录中:
(zelos) $ git clone git@github.com:zeropointdynamics/zelos.git (zelos) $ cd zelos
安装可编程版本的Zelos至虚拟环境中,并确保import zelos可用,此时任何针对Zelos的本地修改将会立即生效:
(zelos) $ pip install -e '.[dev]'
此时,通过测试并构建文档:
(zelos) $ pytest (zelos) $ cd docs (zelos) $ make html
构建的文档可以在“docs/_build/html/”路径下找到
接下来,安装Zelos预编译的钩子来确保代码风格兼容:
(zelos) $ pre-commit install (zelos) $ pre-commit run --all-files
Windows开发
我们可以直接在Windows平台中的命令行窗口中执行下列命令:
C:\> python3 -m venv zelos_venv C:\> zelos_venv\Scripts\activate.bat (zelos) C:\> pip install -e .[dev]
工具运行截图
以上所述就是小编给大家介绍的《Zelos:一款功能强大的代码模拟和测试平台》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Qiling:一款功能强大的高级代码模拟框架
- MCExtractor:一款功能强大的微代码分析工具
- ApplicationInspector:一款功能强大的软件源代码分析与审计工具
- 易水组件 5.0.0 发布了,重构大量代码,功能更强大
- 光之翼 Java 通用代码生成器 1.0.0 尝鲜版公布,便携易用,功能强大
- 微软开源一款功能强大的软件源代码分析与审计工具 Application Inspector
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
随机密码生成器
多种字符组合密码
UNIX 时间戳转换
UNIX 时间戳转换