Advertisement

AFLPIN: 利用 PIN 工具辅助 AFL 对黑盒二进制文件进行模糊测试并追踪执行路径

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
AFLPIN是一种创新技术,它结合了PIN工具与AFL框架,以增强对黑盒二进制程序的模糊测试能力,并能有效追踪和分析其执行路径。 AFLPIN 使 AFL 模糊器能够使用英特尔的 PIN 对非检测二进制文件进行模糊测试。通过插入与 Afl 添加到检测二进制文件中的相同类型的分支检测和共享内存映射,实现这一功能。然而,这样做会大大降低 AFL 的性能,因此预计执行时间较长。 构建过程首先从下载当前版本的 PIN 库开始,然后使用以下命令来构建 AFLPIN 工具的 .so 文件以用于 pin: ``` $ PIN_ROOT=/path/to/pin/root/ make obj-intel64/aflpin.so $ PIN_ROOT=/path/to/pin/root/ make TARGET=ia32 obj-ia32/aflpin.so ``` 接下来,需要执行一个命令(需以 root 身份运行),使 pin 从用户态运行: ```bash echo 0 > /proc/sys/kernel/yama/ptrace_scope ``` 使用方法如下:

全部评论 (0)

还没有任何评论哟~
客服
客服
  • AFLPIN: PIN AFL
    优质
    AFLPIN是一种创新技术,它结合了PIN工具与AFL框架,以增强对黑盒二进制程序的模糊测试能力,并能有效追踪和分析其执行路径。 AFLPIN 使 AFL 模糊器能够使用英特尔的 PIN 对非检测二进制文件进行模糊测试。通过插入与 Afl 添加到检测二进制文件中的相同类型的分支检测和共享内存映射,实现这一功能。然而,这样做会大大降低 AFL 的性能,因此预计执行时间较长。 构建过程首先从下载当前版本的 PIN 库开始,然后使用以下命令来构建 AFLPIN 工具的 .so 文件以用于 pin: ``` $ PIN_ROOT=/path/to/pin/root/ make obj-intel64/aflpin.so $ PIN_ROOT=/path/to/pin/root/ make TARGET=ia32 obj-ia32/aflpin.so ``` 接下来,需要执行一个命令(需以 root 身份运行),使 pin 从用户态运行: ```bash echo 0 > /proc/sys/kernel/yama/ptrace_scope ``` 使用方法如下:
  • Fuzz-With-Wine-Demo: AFL++ QEMU的Win32与实例
    优质
    Fuzz-With-Wine-Demo是一款专为AFL++ QEMU设计的辅助工具,旨在支持Win32二进制文件的模糊测试。通过集成WINE环境,它提供了高效的漏洞检测能力。 WINE 和 AFL++ 的模糊测试演示 请注意:基于 WINE 的模糊测试与 AFL++ 中的 -W 命令行开关集成在一起,因此此存储库中的脚本是旧式的,但示例仍然有效。 这里提供了一组使用 AFL++ QEMU 模糊化 Win32 二进制文件的帮助程序和示例。要使用 AFL++ QEMU 对 Win32 PE 应用程序进行模糊测试,请确保您的 Linux 发行版能够在没有预加载器的情况下运行 WINE。可以通过以下命令检查: ``` $ WINELOADERNOEXEC=1 wine cmd ``` 此外,您还需要 Python 3 和 pefile 包。 接下来,克隆 master 分支并构建 qemu_mode(对于本示例,请使用 CPU_TARGET = i386)。然后将 afl-wine-trace 脚本复制到 AFL++ 的路径中或导出 AFL_PATH。WINE 安装了一些信号处理程序来处理异常情况,但为了进行模糊测试,我们需要禁用这些处理程序以使被测程序在遇到错误时崩溃。
  • 使AFL生成GCOV代码覆盖率结果的AFL-CAOV.zip
    优质
    本资料包提供了一个名为AFL-CAOV的工具,它集成了AFL模糊测试器与GCOV代码覆盖率分析功能,帮助开发者高效检测软件漏洞并评估修复效果。 afl-cov 使用 AFL 模糊测试生成的测试用例文件为目标二进制文件生成 gcov 代码覆盖率结果。通过使用 afl-fuzz 命令,可以为特定目标生成大量测试案例,并利用这些案例来评估新功能和代码行的覆盖情况。
  • PYTHON人检及轨迹
    优质
    本项目旨在利用Python编程语言开发一套高效的人行检测与轨迹追踪系统,结合先进的计算机视觉算法和机器学习模型,以实现对行人的精准识别与动态监控。 行人检测追踪系统采用OpenCV中的HOG(定向梯度直方图)与线性SVM模型对视频中的行人进行识别,该模型可以使用预训练的版本或自行训练。系统通过追踪算法来绘制行人的移动路径,并且整个项目是用Python语言开发的,同时利用wxpython框架实现了用户界面。
  • MinIO
    优质
    MinIO是一款高性能的对象存储系统,采用Amazon S3兼容API,提供极高的数据访问速度和大规模横向扩展能力。此资源为MinIO的二进制可执行版本。 Minio 二进制可执行文件提供了便捷的命令行接口来管理对象存储服务。用户可以通过该工具轻松地上传、下载以及管理和操作云存储中的数据。它支持多种常见的云计算环境,并且易于集成到现有的开发流程中,适用于需要高效处理大量数据的应用场景。
  • MinIO Linux
    优质
    MinIO Linux二进制可执行文件是专为Linux系统设计的高度优化的对象存储解决方案,提供高效的数据存取和管理功能。 MinIO 的二进制可执行文件适用于 Linux 系统,添加权限并带参数执行即可。
  • JUnit4个人所得税计算的等价类、边界值覆盖白
    优质
    本研究采用JUnit4框架,对个人所得税计算器进行了全面的测试,包括等价类划分、边界值分析和路径覆盖技术,确保了软件质量与可靠性。 本段落档中的源码涉及软件测试课程实验的相关内容,并附有压缩包内的详细需求说明。其主要功能是对一个输入为税前工资输出为税后工资的方法进行单元测试。通过设计的测试用例来实现等价类划分、边界值分析以及路径覆盖等方面的测试。
  • Helix Toolkit实时3D的绘
    优质
    本项目运用Helix Toolkit框架实现实时三维空间中机器人的动态路径规划与展示,为工业自动化提供直观高效的解决方案。 基于WPF Helix Toolkit的绘图控件用于可视化3D位置的实时流。
  • Python和OpenCV眼动
    优质
    本项目旨在使用Python编程语言结合OpenCV库实现眼动追踪技术。通过视频捕捉与图像处理算法分析眼部运动,为研究及人机交互应用提供技术支持。 项目详情如下: 该项目旨在详细介绍一个特定的技术或产品(具体内容请参阅原链接)。文中详细阐述了项目的背景、目标以及实现方法,并提供了相关的技术细节和实施方案。 请注意,原文中包含的联系信息和个人资料已被移除以保护隐私并遵守平台规则。
  • Python和OpenCV人脸检
    优质
    本项目运用Python编程语言结合OpenCV库,实现高效的人脸检测及动态追踪功能,适用于安全监控、人机交互等领域。 在模式识别课上老师布置了一个实验任务,在VC++环境下使用OpenCV库编程实现人脸检测与跟踪功能。然而,我在配置过程中遇到了一些困难:下载了opencv和vs2012之后,尝试多次进行环境设置但都没有成功,这让我对微软产品的复杂性和难用性产生了质疑。 于是决定转而采用Python来完成实验任务。具体步骤如下: 首先需要搭建运行环境:安装最新版本的OpenCV(建议使用2.4.x系列)和Python 2.7.X。从官方网站下载相应的文件后,按照提示进行安装即可。对于Opencv库,则通过执行下载得到的.exe文件来进行解压操作,并选择一个合适的路径存放这些文件(尽量避免包含中文字符)。等待一段时间直至完成整个过程。 接下来就可以开始编写代码并实现实验要求了。