-
调试IIS Worker Process (w3wp.exe) 的方法
w3wp.exe是IIS实际负责HTTP(S)数据交换(在HTTP.SYS与ring3之间)的程序,该进程由IIS服务进程启动,启动参数如下:

w3wp.exe启动参数 因为是IIS服务在接受到HTTP请求时自动创建的进程,所以使用普通的调试器启动方式是无法对w3wp.exe进行有效调试的。现将对w3wp.exe进程的调试方法记录如下:
调试方法一共分为3个步骤
- 添加w3wp.exe的映像劫持。
- 访问站点并查看windbg.exe进程的PID。
- 使用windbg.exe连接调试器。
-
一些常用的硬编码(X64)
跳转
//{ 0x48,0xb8,0x88,0x77,0x66,0x55,0x44,0x33,0x22,0x11,0xff,0xe0 } 48:B8 8877665544332211 | mov rax,1122334455667788 | FFE0 | jmp rax |返回
//{ 0x48,0x31,0xc0,0x48,0xff,0xc0,0xc3 } 48:31C0 | xor rax,rax | 48:FFC0 | inc rax | C3 | ret |
-
一个区分函数、过程、过程函数和方法的标准
函数
有返回数据(值),不修改上下文。
过程
无返回值,修改上下文。
过程函数
有返回值,修改上下文。
方法
在一个object的闭包环境下的过程或函数,分为函数方法和过程方法。