IoT
文章平均质量分 95
有价值炮灰
https://evilpan.com/
展开
-
Android 蓝牙源码学习笔记
上文介绍了蓝牙基本原理,但实现部分介绍不多,本文以 Android 中的蓝牙协议栈为例学习在实际系统中蓝牙的工程实现。原创 2021-07-11 14:09:52 · 2498 阅读 · 4 评论 -
蓝牙安全与攻击案例分析
本文是 2020 年中旬对于蓝牙技术栈安全研究的笔记,主要针对传统蓝牙和低功耗蓝牙在协议层和软件安全性上攻击面分析,并介绍了一些影响较大的蓝牙漏洞原理,比如协议层的 KNOB、BIAS 漏洞,软件实现上的 BlueBorne、SweynTooth 以及 BlueFrag 漏洞等。原创 2021-07-11 12:47:42 · 2825 阅读 · 0 评论 -
树莓派无界面初始化
时不时地会用到树莓派,但是每次都忘了怎么配置,因此单独记录一篇方便以后查询。原创 2021-01-30 14:00:51 · 466 阅读 · 0 评论 -
USB 协议核心概念与实践
USB,全称是 Universal Serial Bus,即通用串行总线,既是一个针对电缆和连接器的工业标准,也指代其中使用的连接协议。本文不会过多介绍标准中的细节,而是从软件工程师的角度出发,介绍一些重要的基本概念,以及实际的主机和从机应用。最后作为实际案例,从 USB 协议实现的角度分析了checkm8漏洞的成因。USB 101首先要明确的一点,USB 协议是以主机为中心的 (Host Centric),也就是说只有主机端向设备端请求数据后,设备端才能向主机发送数据。从数据的角度来看,开发者最直接接原创 2021-01-24 17:02:54 · 1111 阅读 · 1 评论 -
浅谈 Android 的安全启动和完整性保护
在 IoT 中保证设备安全性的重要一环就是保证代码的完整性,不让恶意代码影响业务的正常逻辑。一般而言是及时修复现有攻击面所面临的漏洞,比如浏览器、蓝牙、调试接口;另一方面需要确保的是即便恶意代码获取了执行权限,也无法修改系统镜像进行持久化。针对这点所构造的安全方案通常称为 Secure Boot,对于不同的厂商,实现上可能会引入不同的名字,比如 Verified Boot、High Assurance Boot 等等,但本质上都是类似的。Secure BootSecure Boot 顾名思义就是安全启原创 2020-11-21 09:46:48 · 4328 阅读 · 0 评论 -
Android 用户态启动流程分析
从硬件上电启动到终端软件可用是一个漫长而复杂的过程,我们在开心享受着丰富的应用程序时候,可能并没想到这其中所包含的工程师心血。原创 2020-11-08 15:57:40 · 1279 阅读 · 0 评论 -
Android HAL 与 HIDL 开发笔记
前言之前分析过 Android 系统中的进程间通信逆向,即基于 Binder 拓展的以及 AIDL 描述的 IPC。了解 Android 系统的话应该知道在 8.0 之后,/dev/binder 拓展多出了两个域,分别是 /dev/hwbinder 和 /dev/vndbinder 。其中 hwbinder 主要用于 HIDL 接口的通信,而 vndbinder 则是专注于 vendor 进程之间的 AIDL 通信。本文主要关注的是硬件部分。具体来说,就是作为一个 OEM/ODM 厂商,如何将自己的硬件原创 2020-11-01 13:40:48 · 2097 阅读 · 0 评论 -
深入浅出ELF
本文介绍了ELF的基本结构和内存加载的原理,并用具体案例来分析如何通过ELF特性实现HIDS bypass、加固/脱壳以及辅助进行binary fuzzing。前言作为一个安全研究人员,ELF可以说是一个必须了解的格式,因为这关系到程序的编译、链接、封装、加载、动态执行等方方面面。有人就说了,这不就是一种文件格式而已嘛,最多按照SPEC实现一遍也就会了,难道还能复杂过FLV/MP4?曾经我也是这么认为的,直到我在日常工作时遇到了下面的错误:$ r2 a.outSegmentation fault.原创 2020-08-09 20:31:22 · 769 阅读 · 0 评论 -
Android进程间通信与逆向分析
最近在分析一个运行Android系统的IoT平台,其中包含设备管控和日志服务(Agent)、升级服务(FOTA)、自定义桌面(Launcher)、端上IDS以及前台的图形界面应用等多个前后台进程。在对其中某个功能进行逆向时发现调用链路跨越了多个应用,因此本文就做个简单记录。原创 2020-07-11 15:23:12 · 389 阅读 · 0 评论 -
从身份证芯片的“秘密”谈谈网络信息搜索
本文主要记录一下对身份证加密芯片和SAM密码模块的相关资料搜索过程,并(尽量)总结归纳一下搜索中的一些经验。原创 2020-05-31 19:30:04 · 6577 阅读 · 0 评论 -
基于STM32L4的硬核“shellcode”
有经验的程序员都知道源码需要进行编译、链接、封装,然后才能执行。那你知道如何为一块CPU编写并编译程序吗?知道编译后的程序如何写入MCU、并让CPU加载运行的吗?原创 2020-04-11 12:56:42 · 1223 阅读 · 0 评论