返回更新列表
新发布Sep 3, 2026

lure v0.7.1

本地 Linux 二进制分析工具。零云端。零 root。在运行之前,准确了解二进制文件的行为。

分享

lure

本地 Linux 二进制分析。零云端。零 root。零成本。

lure 是一款面向安全研究人员、逆向工程师和 CTF 玩家的本地 Linux ELF 分析与沙箱工具。版本 0.7.1 通过 QEMU 用户态模拟增加了 ARM64 二进制支持。

Lure demo

它提供三种互补的工作流程:

  • 静态分析,使用 lure inspect — 在不执行的情况下检查 ELF。
  • 行为分析,使用 lure run — 在 Linux 命名空间、strace 和 seccomp-bpf 策略下执行 ELF,然后生成可读报告。
  • 报告对比,使用 lure diff — 比较两份已保存的行为报告。

所有处理均在本地完成。不会将任何样本或报告上传到云服务。

Alpha 软件: lure 仍在积极开发中。请在适合安全研究的环境中进行测试,不要将此沙箱视为专用恶意软件分析虚拟机的替代品。

Lure dangerous verdict

功能概述

Lure 将静态 ELF 检查与行为执行分析相结合。它可以显示二进制访问了哪些内容、尝试了哪些网络连接、生成了哪些进程,以及运行结果如何被分类为 CLEANSUSPICIOUSDANGEROUS

为什么选择 lure

  • 隐私 — 样本和报告保留在您的机器上。
  • 可读性 — 结构化报告,而非原始的 strace 噪音。
  • 简单的工作流程 — 从同一个 CLI 进行检查、运行、保存和对比。
  • 免费 — MIT 许可,基于标准 Linux 工具构建。
  • 多架构 — x86-64 原生 + 通过 QEMU 用户态模拟支持 ARM64。

功能特性

静态 ELF 检查

lure inspect 报告:

  • ELF 架构和类型(x86-64、ARM64 等)
  • 字节序
  • 文件大小
  • MD5 和 SHA-256 哈希
  • NX
  • PIE
  • RELRO 状态
  • 栈金丝雀(stack canary)存在性
  • 链接的库
  • 使用 --sections 查看 ELF 节头
  • 使用 --strings 查看可打印 ASCII 字符串

被检查的文件不会被执行。

lure inspect /bin/ls
lure inspect ./arm64_binary   # ARM64 ELF — 检查时无需 QEMU

inspect

沙箱执行

lure run 结合了:

  • Linux 用户命名空间
  • 网络命名空间
  • 挂载命名空间
  • PID 命名空间
  • strace 系统调用跟踪
  • 应用于客户机的 seccomp-bpf 系统调用策略
  • 最小化沙箱文件系统
  • 超时(默认 30 秒)
  • 使用 --allow-net 可选网络访问
  • 可选的原始 strace 输出
  • 可选的 TXT + JSON 报告
  • 可用时的尽力而为 cgroups v2 资源限制
  • 通过 qemu-aarch64 进行 ARM64 二进制模拟(v0.7.1+)

默认情况下网络访问被阻止。

lure run ./suspicious_binary
lure run ./arm64_binary          # ARM64:qemu-aarch64 自动包装二进制

当检测到 ARM64 二进制时,lure:

  1. 检查 qemu-aarch64 是否在 PATH 中(如果不在,则退出并显示清晰的安装提示)。
  2. qemu-aarch64 前置到执行命令中 — strace 跟踪整个 QEMU 链。
  3. 在执行摘要面板中显示 Architecture: ARM64 (QEMU emulated)

报告对比

lure diff 比较两份已保存的 .json 报告:

lure run --save ./binary_v1
lure run --save ./binary_v2
lure diff ~/.lure/reports/binary_v1_*.json ~/.lure/reports/binary_v2_*.json

安装

从 PyPI 安装

pip install lure-analyze

系统依赖(必需)

工具软件包用途
stracesudo pacman -S strace系统调用跟踪
unshareutil-linux 的一部分(预装)命名空间隔离
gcc / ccsudo pacman -S gcc运行时编译 seccomp 包装器

系统依赖(可选)

工具软件包用途
qemu-aarch64sudo pacman -S qemu-userARM64 二进制模拟

安装 qemu-user 以使用 lure run 分析 ARM64 ELF 二进制。使用 lure inspect 进行静态检查无需任何额外工具即可处理 ARM64 ELF。

cgroups v2 资源限制(可选)

要启用内存和 PID 限制,请将 cgroup 子树委派给您的用户:

sudo mkdir -p /sys/fs/cgroup/lure
sudo chown "$USER" /sys/fs/cgroup/lure

用法

lure inspect BINARY [--json] [--sections] [--strings]
lure run BINARY [--timeout SECS] [--args 'ARG ...'] [--allow-net] [--out FILE] [--save]
lure diff REPORT1 REPORT2

更新日志

v0.7.1

  • 通过 qemu-aarch64 用户态模拟支持 ARM64 二进制
  • lure inspect 正确显示 AArch64 ELF 的 ARM64
  • lure run 自动检测 ARM64 ELF 并使用 qemu-aarch64 包装执行
  • 执行摘要为 ARM64 运行显示 Architecture: ARM64 (QEMU emulated)
  • qemu-aarch64 缺失时显示清晰的错误和安装提示
  • 新增 4 个测试,涵盖 ARM64 inspect(显示 + JSON)和 run(缺少 qemu + QEMU 成功)

v0.6.0

  • cgroups v2 资源限制(512 MB 内存,最大 64 个 PID)
  • 通过编译的 C lure-wrapper 实现 seccomp-bpf 白名单
  • 完整的挂载 + PID 命名空间隔离,带最小化 chroot
  • lure diff 报告对比

许可证

MIT — 参见 LICENSE

分类