个人介绍
我是程序员客栈的【昵称】,一名【二级方向】; 我毕业于【大学名称】,担任过【公司1】的【职位】,担任过【公司2】的【职位】; 负责过【嵌入式-模拟项目】,【嵌入式-QT页面】,【项目3名称】的开发; 熟练使用【Python-软件】,【Python-测试】,【QT页面-开发等】,【技术栈4】,【技术栈5】; 如果我能帮上您的忙,请点击“立即预约”或“发布需求”!
测试页面,
工作经历
2019-04-01 -2022-09-01上海堆栈网络有限公司软件开发工程师
对接硬件设备,上位机使用Linux系统,QT界面满足信号处理的要求。 个人单独负责QT页面下信号处理,展示和创建。 待定。
教育经历
2012-09-01 - 2016-07-28杭州电子科技大学计算机科学与技术本科
电子硬件的破解和解密
技能
基于可在官网下载的 QNAP 固件进行逆向、模拟和破解移植。 1.下载的固件进行静态分析,利用 binwalk 进行固件结构提取和第一轮逆向信息收集; 2.真实机器中有单独的存储设备存储 BIOS-ROM 和初始化时启动固件的分区,使用编程器和断点调试装置提取 bin ,并进行解压缩和解密。 3.获取源代码和更多系统信息以查找 CVE 高危漏洞进行提权和寻找替换路径。 4.漏洞获取和 POC 信息测试,获取启动时进行验证和授权的函数内特定段落位置。 5.断点 GDB 调试来获取鉴权流程,进行代码分析。 6.使用自修改越过特定函数位置的重新打包的程序进行旁路流程的启动测试。 7.DTB 内容信息提取,搜集测试机器的 PCIBUS 信息进行硬件部分的识别码、特征位置的替换。利用移植机器的信息进行替换。 8.完整流程 QNAP 安装包测试安装下载,使用 Tianoboot和 Tinycore 模拟原有的 ROM 和启动固件分区的功能,进行完整的流程测试。 9.测试移植机器是否成功启动固件。进行模拟仿真。全流程下的 secureboot 方式,并进行环境验证签名。
1.针对 RK7621A和 Allwinner H5芯片的 CPU 进行操作系统层软件适配。 2.对开发板进行固件适配提取和编译修改,通过虚拟化环境判断编译结果和固件适配结果,并进行稳定性测量。 3.通过重编译、移植和裁剪,生成特定的二进制文件,Openwrt 裁剪、DTB 生成、uImage和 rootfs 适配,并烧入版型 ROM。 4.掌握并应用常见的性能调试工具,如 SystemTap、ebpf、ftrace和 Dtrace ,具备软件应用的性能分析经验。 5.利用 SPI、I2C和 GPIO 等接口进行通信,并使用 ARM 工具链进行交叉编译。 6.对 ARM 开源固件架构有深入理解,包括内核中的网络、时钟、实时调度、软硬中断、启动流程、内存管理、文件系统等子系统。 7.能够模拟环境组建复杂环境架构,通过模拟和 mock 方式搭建合适的模拟整机仿真平台,进行测试前准备和实机调试。 8.熟悉 Linux 内核配置和编译,了解 Linux 内核的引导、加载和启动流程,能够进行 Linux 系统内核裁剪和调试注入,以及u- boot 改动和移植,固件适配刷写等。
1.负责操作系统中子系统日志的识别、处理和分析,以及关键函数的匹配工作。 2.在沙箱环境中,成功适配了多种操作系统,包括 Windows、Linux、Unix、MacOS和 IOS ,并使用 Qemu 进行模拟仿真,为每种操作系统进行定制化的模拟仿真配置。针对 MacOS和 IOS ,我们还特别搭建了专有的运行环境。 3.负责整体运行环境的打包和批量部署工作,确保软件在各种环境中的稳定运行。 4.负责环境运维和部署分发,确保软件的顺利发布和更新。 5.针对性能要求,设计了多虚拟化环境并行运行的方案,以满足高性能的需求。 6.负责操作系统日志的收集和数据点的获取,通过收集日志数据,设计了在 Android 下创建 chroot 环境,并挂载内核 hook 钩子,以便更好地监控和管理系统运行状态。