用bochs调试mbr--开始调试啦

BOCHS分析XP MBR 这是小白的第一篇CSDN文章,连发文章的一些技巧都没有掌握,但总比不尝试好嘛。 好的,进入主题,我们今天的任务是BOCHS分析MBR,并且理解它的代码指令。 首先通过借鉴他人的一些经验 用bochs调试mbr-深入mbr调试分析 来调出大概的MBR指令进程。 由于博客中也没有贴出具体的分析步骤,所以这里相当于在原博客的基础上做了分析。这里参考了winhex分析MBR 先对MBR有清楚地了解,其实主... 阅读详情

上一篇写了安装系统,这篇就开始正式调试啦

1.上节写了个run.bat是通过给bochs.exe主程序传参实现的系统开启,调试也是一个道理
在run.bat目录下写一个debug.bat 使用相同参数调用即可
2.下面是调试过程

Next at t=0
(0) [0x00000000fffffff0] f000:fff0 (unk. ctxt): jmp far f000:e05b         ; ea5be000f0
<bochs:1> b 0x7c00 //直接给0x7c00下断点
<bochs:2> c  //运行到断点,想到与od里面的f9
(0) Breakpoint 1, 0x0000000000007c00 in ?? ()
Next at t=14090316
(0) [0x0000000000007c00] 0000:7c00 (unk. ctxt): xor ax, ax                ; 33c0
<bochs:3> u /15     //上面那句是mbr开始,说明找到位置了,直接u/15显示下面15行汇编指令
00007c00: (                    ): xor ax, ax                ; 33c0
00007c02: (                    ): mov ss, ax                ; 8ed0
00007c04: (                    ): mov sp, 0x7c00            ; bc007c
00007c07: (                    ): sti                       ; fb
00007c08: (                    ): push ax                   ; 50
00007c09: (                    ): pop es                    ; 07
00007c0a: (                    ): push ax                   ; 50
00007c0b: (                    ): pop ds                    ; 1f
00007c0c: (                    ): cld                       ; fc
00007c0d: (                    ): mov si, 0x7c1b            ; be1b7c
00007c10: (                    ): mov di, 0x061b            ; bf1b06
00007c13: (                    ): push ax                   ; 50
00007c14: (                    ): push di                   ; 57
00007c15: (                    ): mov cx, 0x01e5            ; b9e501
00007c18: (                    ): rep movsb byte ptr es:[di], byte ptr ds:[si] ; f3a4

步过的命令是p,步入的命令是s,用这两个调试剩下的就和od里面一样啦

关于Stoned Bootkit v2编译和Bochs调试软盘MBR的吐槽(伤不起啊..) 昨天晚上弄着弄着搞到2点多,早上眼睛睁开,6点40,想着问题没解决,很是不爽,脑海里浮现n种方案(n>2),果断下床继续干活.天不负我..泪流满面.终于停在该死的0x7c00上面了..阿西..上图     图片发到微薄上就删了..大家将就着看吧.     下面不是进入正题,今天没有正题,今天就是吐槽...     前几天看群里三哥发了鬼影3的无壳样本,决心分析一下,结果无奈不是exe,只 阅读详情

相关推荐

基于bochs编写操作系统 0x2 BIOS与MBR

前一章中,我们配好了bochs仿真环境,并尝试了运行。由于没有引导程序,启动会报错。总所周知,操作系统启动时各个扇区存储的指令最初是由bios指令搬入内存的,因此,本节与BIOS及MBR相关。

qq_40923256的博客 442

用bochs调试mbr-深入mbr调试分析

上一篇调试mbr的时候有一个call,如果这个call跟进去的话在一个跳转之后内存地址明显不是mbr代码段了,所以上篇调试中并未对这个call深入分析。 问题如图! 在jmp之后的代码与ida完全不一样了。 问题出在int 13h这个地方,int 13h在这里是中断,如果单步步入的话就会进入中断处理程序,所以int中断这里需要单步步过 这里不是jb跳转啊,int指令是不能s单步...

笔记本 1710

bochs-自制启动系统.zip

https://blog.csdn.net/qq2399431200/article/details/104663231 为此博文内的实践资源。

使用BOCHS调试MBR

基于上一篇文章,所有操作完成之后运行“WinXP.bxrc”,不出意外的话会提示“NTLDR is missing”这就可以了。 新建一个BAT,内容如下: ..\bochsdbg.exe -q -f WinXP.bxrc执行BAT就进入了调试模式,两个窗口全部停住,界面如下: 现在的CPU应该是停在了F000:FFF0地址,是一个JMP指令,用于跳转到BIOS的ROM中。 之后的

SomeTimes 3072

卸载重装Ubuntu22.04双系统

先说一下写此篇文章的背景吧,我在Windows下配置了三个cornerNet深度学习环境分别是cuda10.3(显卡版本太高不支持),cuda11.3(配置后偶然看到一篇说这个版本win下只能用CPU跑),最后是cuda11.1终究还是没能跑通代码,因为它的代码是在Liunx系统写的,就想着装个Ubuntu试试看,在网上看说一般软件不要装太高版本,我就下载了470版的显卡驱动,跟着步骤升级了系统内核,结果第二天开机Ubuntu就崩了,开机黑屏左上角只有一道横杠显示,只能按ctrl+shift+f5进入命令窗

编程小白的博客 8079

ScanNet数据集下载全攻略:从申请到解析的保姆级教程(含常见问题解决)

本文提供了ScanNet数据集从申请授权到下载、解析的完整实战指南。针对这个大规模室内RGB-D数据集,详细介绍了官方申请流程、优化下载策略、数据验证方法,并重点解决了深度图解析等常见问题,帮助三维视觉研究者高效获取和使用这一宝贵资源。

5f4d3s2a1q的博客 613

IDA&&BOCHS调试MBR

一、说明 IDA都很熟悉,强大的逆向工具。 Bochs是一个x86硬件平台的开源模拟器。它可以模拟各种硬件的配置。Bochs模拟的是整个PC平台,包括I/O设备、内存和BIOS。更为有趣的是,甚至可以不使用PC硬件来运行Bochs。对于调试操作系统是灰常强大的。说白了就是一个虚拟机。   二、IDA调试MBR IDA调试MBR比较简单,先配置下虚拟机的VMX文件,添加一下代码: [A...

kingswb的博客 2366

基于CAT的VBM和SBM计算学习笔记(二)感兴趣区(ROI)&全脑体积(TIV)

本文介绍了用cat12运算VBM前,如何抓取ROI信息;运算VBM后,如何转化ROI文件和提取全脑体积,为之后的统计分析做好准备。t=N7T8基于CAT的VBM和SBM计算学习笔记(一)VBMhttps://mp.csdn.net/mp_blog/creation/editor/140665644。

Rose9614的博客 4348

使用Bochs模拟器和IDA调试MBR

需要环境 python2.7 IDA 7.0 Bochs2.6.9 nasm.exe(可选) 调试步骤 第一步,创建Img文件 首先需要安装Bochs模拟器,打开安装目录,运行bximage.exe,选择1,然后一路回车,直到出现Press any key to continue 安装目录下会出现一个c.img硬盘镜像文件 第二步,将MBR文件,写入IMG文件 我这里先使用nasm.exe把...

Sven的忘却日记 2575

统信UOS V20 安装mysql5.7.42详细教程

到bin/下,执行下面的命令,初始化mysql服务信息,得到数据库的初始密码,实际如果目录不一样记得换成自己的目录。下载后通过远程将安装包上传至服务器,我这里将安装包上传至/usr/local/mysql 下。ps:这时候如果还是不能远程访问的话,可能是防火墙的原因,命令行执行以下命令即可。再次登录,发现缺少 libtinfo.so.5文件,再次建立软连接。登录,发现报错,提示缺少libncurses.so.5文件,使用。创建 /var/lib/ 下mysql目录。登录成功,修改密码,设置远程访问。

为谁伫立在风中 1万+

Python深度学习基于Tensorflow(17)基于Transformer的图像处理实例VIT和Swin-T

定义窗口注意力机制,与普通的注意力机制不同,其是在各个窗口中执行注意力机制。从中可以看到,其创新点主要是将图片进行拆分作为序列数据带入。差不多,主要实现的是一个下采样的算法过程;相同位置的像素绑定到一起构成一张新的。模型定义完毕后,初始化模型并开始训练。由于层之间重复性出现,可以定义一个。中,这里先实现拆分图片类。进行操作时我们定义三个类。定义一个多头注意力机制类。的数据,导入数据如下。导入数据,这里同样用。

bigcrab的博客 1631

【Linux】编写最简单操作系统(mbr)并用bochs工具调试

----------------------------------------------------------------------------------------------------------- 0-3ff 1k用于中断向量表 400-4ff 256B bios数据区 500-7Bff 30kb 可自定义区域 7C00-7BFF 512b MBR被bi...

梦想博客 1593

Python爬虫实战:使用Scrapy+Playwright高效获取电力市场数据

本文将详细介绍如何使用Python构建一个高效的电力市场数据爬虫系统。我们将结合Scrapy框架和Playwright浏览器自动化工具,解决电力市场网站常见的反爬机制,实现数据的稳定抓取。文章包含完整的项目搭建流程、代码实现、数据处理方案以及部署建议,帮助读者掌握现代爬虫开发的核心技术。关键词:Python爬虫、Scrapy、Playwright、电力市场、数据采集、反爬对策python复制下载# 基本字段region = scrapy.Field() # 区域。

2201_76125261的博客 1874

使用bochs调试MBR

<br /> <br />题目:使用bochs调试MBR<br />连接:http://hi.baidu.com/justear <br /> <br />Author:Cryin<br />Date:2010.03.27<br />一、环境配置:<br />操作系统:Microsoft Windows XP Professional Service Pack 3<br />调试工具:bochs 2.4.0.0<br />1、安装bochs<br />Bochs是一种十分轻便的使用c++编写的开源IA-32

咖啡屋 2053

久坐不慌,健康护航 —— 智能震动提醒坐垫的设计与实现

硬件核心:选用 ESP32 为主控,HX711 + 应变片实现精准压力检测,8050 三极管驱动震动马达,锂电池 + TP4056 满足便携供电需求;软件逻辑:核心是 “压力阈值判断 + 时间计时”,达到久坐阈值后触发震动提醒,流程图清晰体现了循环检测、状态重置的核心逻辑;代码特性:代码注释完善,阈值可灵活调整,支持串口调试,新手可直接编译烧录并根据实际场景校准。

weixin_42300449的博客 396

企业AI数据资产评估的自动化工具:AI应用架构师的使用指南

在AI驱动的企业数字化转型中,数据资产是支撑模型训练、业务决策的核心燃料。然而,80%的AI项目失败源于数据问题——低质量数据导致模型偏差、未评估的风险引发合规危机、价值不明确的数据浪费资源。手动数据资产评估效率低、易出错,无法满足规模化AI应用需求。本文将以AI应用架构师的视角,拆解企业数据资产评估的核心逻辑,用"餐厅选食材"的生活化比喻解释复杂概念,结合自动化工具的技术原理与实战案例,教你如何从0到1搭建数据资产评估体系。无论是数据质量检测、价值量化还是风险防控,你都能找到可落地的工具方案与实践步骤。

2502_91592937的博客 1628

从零开始写操作系统——1.部署工作环境(Bochs + MBR)

本文记录了基于《操作系统真象还原》开发轻量级操作系统的环境搭建过程。主要内容包括:1)在Ubuntu20.04上安装必要工具链(build-essential、xorg-dev等);2)下载并编译带调试功能的Bochs模拟器;3)创建虚拟硬盘镜像并编写测试MBR引导程序。重点讲解了各工具的作用及配置参数,如Bochs编译选项--enable-debugger等调试功能,以及如何将MBR程序写入虚拟硬盘。通过Helloworld示例验证了环境搭建成功,为后续操作系统开发奠定了基础。

Canace__的博客 1143

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

从零开始写操作系统——2.编写MBR主引导记录

本文记录了开发轻量级操作系统第二章的学习过程,重点讲解了MBR主引导记录的编写与Bochs调试方法。主要内容包括:1)MBR代码结构解析,详细说明段寄存器初始化、BIOS中断调用实现清屏和字符串显示等功能;2)编译运行流程,使用nasm编译并通过dd写入虚拟磁盘;3)Bochs调试技巧,包括设置断点0x7c00、查看段寄存器状态等调试步骤。文章通过代码注释和调试演示,完整呈现了从MBR编写到调试验证的全过程,为操作系统开发初学者提供了实用指导。

Canace__的博客 1142

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

使用bochs调试操作系统

自 http://bbs.pediy.com/showthread.php?t=123767&highlight=bochs 一、环境配置:   操作系统:Microsoft Windows XP Professional Service Pack 3   调试工具:bochs 2.4.0.0 1、安装:Bochs       Bochs是一种十分轻便的使用c++编写的开源IA-

crystal0011的专栏 1984

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

bochs调试方法

bochs一般用法 bochs是一个开源x86虚拟机软件。在他的实现中定义了各种数据结构来模拟硬件,用软件模拟硬件速度慢。 bochs的硬件调试体现在: 1)可以查看页表、gdt、idt等数据结构 2)可以查看栈中数据 3)可以反汇编任意内存 4)实模式、保护模式互相变换时提醒 5)中断发生时提醒 bochs中x和xp命令都是用来查看内存的,它们两个的区别在于x命令用于查看线性地址,而xp用来查看...

AlexSmoker的博客 3246

操作系统开发:BIOS/MBR基础与调试

这里在实验之前需要下载 Bochs-win32-2.6.11 作者使用的是Linux版本的,在Linux写代码不太舒服,所以最好在Windows上做实验,下载好虚拟机以后还需要下载Nasm汇编器,以及GCC编译器,为了能够使用DD命令实现磁盘拷贝,这里你可以安装windows 10 下面的子系统Ubuntu,需要使用命令时可以直接切换。

微软技术分享 1万+

Bochs 虚拟机下载与使用教程

最近正在学习自制操作系统的相关内容,教程里说最好使用Bochs虚拟机来运行操作系统,于是我百度了一下,竟然没有一篇相关的完整教程,所有就有了这一篇文章。

weixin_44322146的博客 1万+

从0开始的操作系统手搓教程 附二——调试我们的操作系统(bochs调试小记)

我们要学习如何使用bochs来调试我们的操作系统。毕竟伴随代码量的增大,出错的概率自然也会直线的上升。

charlie114514191的博客 982

怎么在ida中编译html使用教程视屏,IDA&&BOCHS调试MBR

本帖最后由 willJ 于 2012-11-24 18:41 编辑一、说明IDA都很熟悉,强大的逆向工具。Bochs是一个x86硬件平台的开源模拟器。它可以模拟各种硬件的配置。Bochs模拟的是整个PC平台,包括I/O设备、内存和BIOS。更为有趣的是,甚至可以不使用PC硬件来运行Bochs。对于调试操作系统是灰常强大的。说白了就是一个虚拟机。二、IDA调试MBRIDA调试MBR比较简单,先配置下...

weixin_32028965的博客 396

用Bochs调试NTLDR

转自 http://www.xfocus.net/releases/200408/a722.html   创建时间:2004-08-05 文章属性:原创 文章提交:tombkeeper (t0mbkeeper_at_hotmail.com) 用Bochs调试NTLDR 作  者:于旸 邮  件:tombkeeper[0x40]nsfocus[0x2e]com

crystal0011的专栏 534

bochs怎么运行Linux系统,Ubuntu上使用Bochs

Bochs是一个不错的模拟器,仅以此文记录Ubuntu上一些使用方法。安装bochs这个问题看似很简单,但是实际上用的时候你会发现一个问题。在ubuntu上你要这么装:apt-get install bochsapt-get install bochs-x如果不装第二个,执行的时候会报一个错。>>PANIC<< dlopen failed for module ‘x’: f...

weixin_39753674的博客 660
上一篇: 在Windows上安装Bochs虚拟机运行XP
下一篇: 用bochs调试mbr-初步调试
Istaroth
博客等级 码龄10年 108粉丝 90原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值