windbg常用命令

0x00基础命令

.sympath  //显示设置的符号表路径

.reload    //此命令主要用于加载符号表。
 
.reload /f  //重新装载模块

.reload /i  //强制加载mismatched symbol

U  //这个命令主要用于反汇编某个地址,其后面可以跟函数名和地址。

//U命令后面可以加L表示延长反汇编长度

db/dw/dd/dq/dD/df
  
//这四个命令主要用于查看某地址所储存的数据。他们的不同在于所显示的数据长度。
  
db  //显示一字节的长度。
  
dw  //显示两字节的长度。
  
dd  //显示四字节的长度。
 
dq  //显示八字节的长度。
 
dD  //显示double实数(8字节的长度)。

df  //显示float实数(4字节的长度)。

da/du/ds/dS
 
da     //显示asscii值
 
du     //显示unicode值
 
ds     //显示ANI_STRING值
 
dS     //显示UNICODE_STRING的值

eb/ew/ed/eq

eb address value  //在address 这个地址写入一个字节value
 
ew address value  //在address 这个地址写入两字节value

ed address value  //在address 这个地址写入四字节字节value
 
eq address value  //在address 这个地址写入八字节字节value

//同样可以用eb/ew命令改回来

0x01对象相关命令

dt  //dt命令主要用于查看结构体。

lm

lm           //列出模块。
 
lm vm 模块名  //查看模块详细信息。  

!process

!process 0 0     //列出系统进程信息

!process 0 0 进程名  //列出该进程的信息

!process 0 1 进程名  //列出该进程更加的信息

!process 0 7 进程名  //列出该进程的详细信息,包括线程的

.process

.process EPROCESS  //切入该进程中

!object

!object 地址  //显示该地址的对象信息。

0x02断点命令

bp/ba

bp命令是通过向指定地址插入int 3 指令来完成的,这种方式容易被发现。

bp address  //在地址address插入断点。

ba命令是是硬件断点命令,通过设置cpu的dx寄存器来拦截线程。

ba access size 地址  //access 是访问的方式,比如 e (执行),r (读/写),w (写) ,size是监控访问的位置 的大小,以字节为单位。值 为 1、2或4,在64位机器上还可以是8。

bd/be/bc

bd 断点号 //此命令是关闭断点号所对应的断点 。

be 断点号 //此命令是开启断点号所对应的断点 。

bc *   //去除所有断点。

//关闭0号断点

//开启0号断点

0x03其他命令

x

//x命令用来模糊查询。例如可以这样查看SSDT表的地址:

x nt!kes*des*table*

dds

dds 地址 //此命令用来解析某连续地址的函数名。

 

 

posted @ 2018-12-19 14:08  YangARTuan  阅读(5291)  评论(0编辑  收藏  举报