Bootsector:切换到32位系统

    2023-11-18

    ​ 这一部分属于实现起来很简单,但是要弄懂需要了解很多知识的类型。

    32位(保护模式)的变化

    • 地址空间扩展到0xffffffff
    • 寄存器变成32位,ax -> eax,并且多了一些寄存器如edi、esi之类
    • 两个额外的通用段寄存器fs和gs
    • ...
    Read More

    Bootsector:利用bios例程装载硬盘

    2023-11-17

    ​ 完成了debug的准备,我们终于可以开始我们的编程大业了!摆在面前的事儿有两件:

    • 将内核从硬盘装载进内存,毕竟我们不能指望这一个512字节的扇区成为系统(
    • 从16位切换到32位模式,没错,咱就打算做个32位的,不考虑64(

    ​ 那么,先做哪个呢?答案是……这篇博客的名字!毕竟切换到32位就用不了...

    Read More

    Bootsector:利用bios例程打印hex

    2023-11-15

    ​ 有些时候,仅仅打印字符串不足以帮助我们debug,毕竟除了内存里除了可打印字符还有许多不可打印的字符,因此,打印hex时十分重要的

    很简单的逻辑

    • 设置一个打印字符表,包括0-9A-F Read More

    Bootsector:利用bios例程打印string

    2023-11-10

    这里以MBR启动扇区为例,写一个启动扇区(参考os-dev)

    接下来几篇博客应该都是关于bootsector的

    如果之后有时间的话,可能复现一个早期的linux

    boot后的内存布局

    可以看到,启动扇区会被放置在Read More

    加密固件解包

    ​ 对固件的分析可以简单的分为逆向工程以及具体分析技术。其中逆向工程可以简单划分为以下几个步骤:固件获取、固件解包、以及固件反编译反汇编。本篇文章只聚焦于固件解包这一过程,不讨论其他部分。

    ​ 事实上,最近在跟着导师做固件方向的项目。在做项目的过程中我发现了一件事。我目前的固件逆向水准可以用一句话概括:上官网,下固件,Read More

    XML知识整理

    2023-01-09

    你是否有很多xml放不下?做人要潇洒一点。喜欢C语言,未必要写它一辈子的。我喜欢html,未必要给它写好看的css。我看不懂xml,难道直接去叫二进制过来,你让我反编译一下。诶,这个好像还真可以。

    咳咳,总之,这是一篇简单的关于xml的博客。

    ​ 总能在各个项目里看到xm...

    Read More

    被动信息收集

    ​ 被动信息收集也被成为开源智能。这个阶段不对目标系统进行过多探测,不引起目标系统的发现。只收集目标系统的公开的信息,在被攻击系统看来,我们的行为应该都是正常的。

    ​ 信息收集通常分为三个阶段:被动信息收集、正常交互、主动信息收集(扫描、探测等)

    被动信息收集的内容

    • IP地...

    Read More

    从wireshark抓包进行USB协议分析

    ​ 本文将在windows下从wireshark抓包的角度对USB协议进行分析

    USB

    ​ 在抓包的过程中我的电脑上一共连接了3个usb设备,分别为一个键盘、一个无线鼠标接收器以及一个U盘

    ​ 下面是我的设备管理器的显示,由于电脑上除了我外连的三个usb设备之外还有电脑内的主机控制器和根集线器等设备,所以设备管理器显...

    Read More
    View: User: