今天利用Windbg(x86)进行了获得句柄表的调试,从中获益良多,对调试步骤和按键又一次进行了熟悉,对于句柄表页的概念更是得到了进一步的清晰认识.windbg调试和句柄表不熟悉的朋友可以借鉴我的调试步骤l来熟悉句柄表基础知识, 调试步骤和获取部分如下. 3: kd> dt _EProcess 891ad030 nt!_EPROCESS +0x0f4 ObjectTable : 0x9eca0ef0 _HANDLE_TABLE3: kd> dt _HANDLE_TABLE 0x9eca0ef0…
Java随机获取32位密码且必须包含大小写字母.数字和特殊字符,四种的任意三种 Java随机获取32位密码且必须包含大小写字母.数字和特殊字符,四种的任意三种,代码如下: import java.util.Random; public class GetRandomPwd{ /** * @Title: getRandomPwd * @Description:获取制定长度的密码,包含大小写字母.数字和特殊字符,四种的任意三种 * @param len * @return String * @thr…
public class createUUID { public static void main(String[] args) { String uuid = UUID.randomUUID().toString();     //转化为String对象 System.out.println(uuid);   //打印UUID uuid = uuid.replace("-", "");                  //因为UUID本身为32位只是生成时多了“…
SELECT SYS_GUID() from dual;…
PspCidTable存放着系统中所有的进程和线程对象,其索引也就是进程ID(PID)或线程ID(TID).先通过它来看看windbg里的HANDLE_TABLE结构: 可以看到地址 0x83f41bc4中存放的内容是 0x 8da010a8,这是系统的_HANDLE_TABLE的结构. 好了,现在windbg是得到HANDLE_TABLE结构了,还是要代码实现的.这里只简单用一下加偏移: //system进程的eprocess地址 PEPROCESS EProcess = (PEPROCESS…
32位汇编第一讲x86和8086的区别,以及OllyDbg调试器的使用 一丶32位(x86也称为80386)与8086(16位)汇编的区别 1.寄存器的改变 AX 变为 EAX  可以这样想,16位通用寄存器前边都加个E开头 例如: EAX EBX ECX EDX ESI EDI ESP EDP ;八位寄存器 EIP EFLAGES ;特殊寄存器CS ES SS DS GS FS ;其中GS FS是新增加的寄存器,这些段寄存器,并不是4个字节(32位的)还是以前16位的 注意在32位下没有分段的…
参考资料 微软注册表英文文档 StackOverflow社区回答 1.注册表位置 64bit系统(Windows Server 2008 R2只有64bit系统)的注册表分32 位注册表项和64位注册表项两部分. 在64bit系统下,通过regedit中查看到指定路径下的注册表项均为64位注册表项,而32位注册表项被重定位到:HKEY_LOCAL_MACHINE\Software\WOW6432Node. 应用程序操作注册表的时候也分32bit方式和64bit方式.运行于64bit系统下的32b…
64 位版本 Windows 中的注册表分为 32 位注册表项和 64 位注册表项.许多 32 位注册表项与其相应的 64 位注册表项同名,反之亦然. 64 位版本 Windows 包含的默认 64 位版本注册表编辑器 (Regedit.exe) 可显示 64 位和 32 位的 注册表项.WOW64 注册表重定向器为 32 位程序提供了对应于 32 位程序注册表项的不同注册表项.在 64 位版本的注册表编辑器中,32 位注册表项显示在以下注册表项下: HKEY_LOCAL_MACHINE\Sof…
这是一个我经常遇到的问题,我们经常会遇到这样的情况:我们必须重新捕获内存转储,因为内存转储是以“错误”的方式捕获的.简而言之:如果在64位计算机上执行32位进程,则需要使用允许创建32位转储的工具捕获转储. 怎么知道进程是32位的? 如果您在64位计算机上,可以检查任务管理器以查看您的进程正在使用的体系结构. 带*32的进程是32位的,其余的是64位的,因此在上面的示例中,我们可以看到QQ.exe正在执行32位代码. 为什么用正确的工具捕捉它们很重要? 如果使用捕获64位转储的工具捕获转储,您仍…
[问题描述]32位程序调用Oracle11gR2数据库的libclntsh.so库时会返回失败. [问题原因]32位程序只能调用32位的Oracle客户端实例包,而R2数据库默认安装完毕后是没有lib32文件夹的,会导致程序调用libclntsh.so出错. [解决方法]安装Oracle32位客户端实例包即可,具体方法如下:1. 以oracle用户登陆数据库所在单板:2. 查看数据库版本,选择对应的Oracle32位客户端实例包(如instantclient-basic-linux-11.2.0…