winhex修改内存中进程数据的问题

winhex修改内存中进程数据的问题,第1张

非常不错的十六进制编辑器。得到

zdnetsoftwarelibrary

五星级最高评价,拥有强大的功能。

winhex

功能特色:

查看,编辑和修复磁盘,可用于硬盘,软盘,以及许多其它可存储介质类型。

支持

fat12,fat16,fat32

ntfs分区格式

ram

编辑器,可直接查看/编辑被调试程序的虚拟内存

数据解释器,精通

20

数据类型

使用模板编辑数据结构

连接,分割,合并,分析和比较文件

智能搜索和替换功能,进行替换时,如果替换字符大于或小于原始字符时可进行选择性 *** 作

不同驱动器克隆以及驱动器镜像解释

脚本和应用程序接口(api)

用于文件和磁盘的成熟的撤消和备份机制

加密和解密数据,hash

计算(校验和,crc32,md5,sha-1,)

粉碎文件和磁盘数据,粉碎后的文件和磁盘数据任何人都不可能进行恢复

支持所有剪贴板格式的导入

数据格式转换,支持二进制,16

进制

ascii,intel

16

进制,及

motorola-s

等数据之间的相互转换;

隐藏数据和查找隐藏数据

用于计算机进程的众多显著有效的高级功能

1、Debug入门

第一步:重启计算机,按F8进入启动选择菜单,选择Safe Mode and Command Prompt Only进入Dos提示符(也可以使用DOS引导盘);

第二步:键入Debug回车,可进入Debug编辑界面。此时光标处显示为一条小横线;

第三步:键入?回车,可获得Debug帮助说明;

第四步:键入q回车,可以推出Debug。

2、用Debug清除CMOS密码

前提是你能够进入DOS哦!:)

第一步:当然是进入DOS,然后键入debug回车,进入debug编辑界面;

第二步:输入如下命令,重启电脑即可清除CMOS密码:

-o 70 10

-o 71 10

-g

-q

3、查看主板的生产日期和版本

-D ffff:05

-D fe00:0e

将看到一大段似乎是十六进制的代码,而在屏幕的右边,有英文显示主板的情况哦!

4、生成重启计算机的命令

debug

-a

int 19

int 20

回车

-rcx

:2

-n resetcom

-w

-q

退出debug以后,键入dir可以看到resetcom文件,运行reset即可重启计算机。

5、实现重启键的功能

-a

xxxx:0100 jmp ffff:0000

xxxx:0105

-g

回车后,系统自动重启。

6、使用debug测试显示器

在dos输入如下debug命令,可以简单测试显示器。

-f b800:00 f9f 20 70 满屏白光栅

-f b800:00 f9f 20 40 满屏红光栅

-f b800:00 f9f 20 20 满屏绿光栅

-f b800:00 f9f 20 10 满屏蓝光栅

-f b800:00 f9f c5 07 c4 07 满屏白色十字

-f b800:00 f9f c5 04 c4 04 满屏红色十字

-f b800:00 f9f c5 02 c4 02 满屏绿色十字

-f b800:00 f9f c5 01 c4 01 满屏蓝色十字

-f b800:00 f9f c5 05 c4 05 满屏紫色十字

-f b800:00 f9f c4 07 满屏白色横线

-f b800:00 f9f b3 07 20 07 满屏白色竖线

-f b800:00 f9f 20 70 20 70 20 70 20 70 20 70 20 70 20 70 20 70 20 70 20 70 满屏黑白相间

7、使用debug保存硬盘主引导记录

命令如下:

-a

mov ax,0201

mov bx,0200

mov cx,0001

mov dx,0080

mov int 13

int 3

回车

-rcx

:200

-n bootdat

-w

-q

这样就会将硬盘主引导记录备份到bootdat文件中。

8、使用debug解硬盘锁

第一步,准备一张Dos的系统盘,里面拷贝debug、fdisk等命令;

第二步,在一台正常的机器上,使用你比较熟悉的二进制编辑工具(比如windows下的UltraEdit)修改软盘上的IOsys文件(修改前请去掉该文件的只读属性);

第三步,在文件中搜索第一个"55aa"字符串,找到以后修改为任何其他数值即可;

第四步,用这张修改后的系统软盘你就可以顺利的引导带锁的硬盘启动了。但由于其分区表已经被修改,无法使用fdisk来删除和修改分区,而且仍然无法用正常的启动盘启动系统,这个时候就要debug出马了。:)

第五步,根据下面步骤 *** 作

A:/>debug

-a

-xxxx:100 mov ax,0201(读一个扇区的内容)

-xxxx:103 mov bx,500(设置一个缓存地址)

-xxxx:106 mov cx,0001(设置第1个硬盘的指针)

-xxxx:109 mov dx,0080(读零磁头)

-xxxx:10c int 13(硬盘中断)

-xxxx:10e int 20

-xxxx:0110(退出程序返回到指示苻)

-g(运行)

-d500(查看运行后500地址的内容)

这个时候会发现地址6be开始的内容是硬盘分区的信息。此硬盘的扩展分区指向自己,这就导致了在系统启动时查找硬盘逻辑盘的过程中导致死循环。在debug指示苻下用E命令修改内存数据,具体如下:

E6BE

xx0 xx0 xx0

55 AA

55 AA表示硬盘有效,不要修改,xx0表示把以前的数据"xx"改成0。

第六步,再用硬盘中断13把修改好的数据写入硬盘就可以了。

A:/>debug

a 100(表示修改100地址的汇编指令)

-xxxx:100 mov ax,0301(写硬盘一个扇区)

-xxxx:(这里直接回车)

-g(运行)

-q(退出)

第七步,运行fdisk/mbr(重置硬盘引导扇区),再重启系统就可以了。

以上就是关于winhex修改内存中进程数据的问题全部的内容,包括:winhex修改内存中进程数据的问题、在显示器上察看和修改内存单元的内容可以使用DEBUG的什么命令、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10636304.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-10
下一篇2023-05-10

发表评论

登录后才能评论

评论列表(0条)

    保存