文章首发于 概述 上一篇文件介绍了luaqemu的实现,也提到luaqemu并没有对中断相关api进行封装,本节主要基于stm32f205-soc的实现来介绍中断的仿真,并提供一个用于测试qemu设备模拟的裸板程序来测试中断的仿真。 本文相关代码地址 stm32f205-soc实现 ...
文章首发于 概述 在嵌入式安全领域常常需要分析各种不同形态的固件,如果需要动态执行某些代码或者对固件进行Fuzzing测试,则需要对固件代码进行仿真,常用的仿真工具一般为qemu和unicorn。unicorn适合模拟执行固件中的某些代码片段,而对于中断 异步执行则不支持,而大量的嵌入式固件都是以中断驱动的,对于中断的模拟则需要依赖于qemu的全系统模拟。 本文将以luaqemu为例介绍在使用qe ...
2021-05-23 20:11 0 932 推荐指数:
文章首发于 概述 上一篇文件介绍了luaqemu的实现,也提到luaqemu并没有对中断相关api进行封装,本节主要基于stm32f205-soc的实现来介绍中断的仿真,并提供一个用于测试qemu设备模拟的裸板程序来测试中断的仿真。 本文相关代码地址 stm32f205-soc实现 ...
前言 本文主要介绍如果使用 qemu 和 unicorn 来搜集程序执行的覆盖率信息以及如何把搜集到的覆盖率信息反馈到 fuzzer 中辅助 fuzz 的进行。 AFL Fork Server 为了后面介绍 afl 的 qemu 模式和 unicorn 模式, 首先大概讲一下 afl ...
前言 本文可作为路由器安全的入门学习教程,一起学习从零基础从搭建环境开始入门路由器固件安全分析的技术。 搭建环境篇 演示系统:debian 3.16.0-4-686-pae 本篇重在演示路由器固件分析及运行环境,而对于工具各参数将不详细阐述其用法,这里只要能够成功搭建起来即可 ...
前言 对固件的一些逆向思路,通过几个具体的案例。 单片机 相对于嵌入式设备的逆向,单片机的逆向纯属于体力活,需要根据芯片定义的每个 IO 口,配合电路和外部模块进行分析、调试。逐步确定每一个分支的功能,逻辑等,是非常繁琐和复杂的工作。 这里使用 MSP430 系列芯片作为逆向分析的案例 ...
上节初步介绍一些硬件基础知识和分析硬件所需要的基本工具,本篇将讲述利用编程器直接读取芯片固件的方法。 为了读取 Flash 芯片的内容,有以下两种常用方式: 1、直接将导线连接到芯片的引脚,在通过飞线连接编程器,进行在线读取固件; 2、把芯片拆焊下来,通过烧录座编程器,离线读取固件 ...
前言 vxworks 的固件分析流程 实战分析 一道CTF题 分析固件 用到的例子 首先用 binwalk 扫描下固件的信息 发现就是 zlib 压缩的数据, 用 binwalk 直接解开, 然后用 binwalk 对解开后的文件扫描,发现 vxworks 关键信息 ...
VxWorks固件分析方法总结 最近研究基于VxWorks系统的iot设备的固件分析方法,将学习心得记录于此,以备将来的查询需要。 1.VxWorks是什么? VxWorks是美国WindRiverSystem公司(风河公司)推出的一个RTOS(实时操作系统),凭借良好的持续发展能力、高性能 ...
qemu-system和qemu-user两种模式动态模拟运行嵌入式固件方法总结 前言 搭建嵌入式固件的动态模拟环境的过程中遇到了许多的坑,最终终于搭建了起来,很有必要记录下遇到的问题,避免今后再踩坑。 工具 1.buildroot 下载地址 以buildroot 2019.02.4 ...