能力值:
( LV9,RANK:370 )
|
-
-
2 楼
【打狗的一般性思路总结】
1,bp CreateFileA 与设备连接
2, bp DeviceIoControl 读取U盘数据,相当于bp ReadFile
3, bp MessageBoxA 提示
4, 几个重要的dll: JTUSB.dll, setupapi.dll, hid.dll
5, 一些关键Call的名字以及说明:
// 准备查找符合HID规范的USB设备
SetupDiGetClassDevs(&guidHID,NULL,0,DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
// 查找USB设备接口
SetupDiEnumDeviceInterfaces(hDevInfo,NULL,&guidHID,0, &strtInterfaceData);
//释放
SetupDiDestroyDeviceInfoList(hDevInfo);
// 若找到了设备,则读取设备路径名
SetupDiGetDeviceInterfaceDetail(hDevInfo,&strtInterfaceData,&strtDetailData,sizeof(strtDetailData),NULL,NULL))
// 开放与设备的通信
CreateFile(m_strPath,GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
// 读取
HidD_GetAttributes(hCom,&strtAttrib))
Hid.dll.HidD_GetHidGuid
取得类别的
Setupapi.dll.SetupDiGetClassDevs
传回一个设备信息群,包含指定类的所有设备
Setupapi.dll.SetupDiEnumDeviceInterfaces
传回信息群内一个设备的信息路径
Setupapi.dll.SetupDiGetDeviceInterfaceDetail
传回设备路径
Hid.dll.HidD_GetAttributes
传回厂商与产品,及版本号码
Hid.dll.HidP_GetValueCaps
传回描述设备能力的结构
Kernel32.dll.CreateFile
开启设备通信
Kernel32.dll.WriteFile
传送一个输出报文给设备
Kernel32.dll.ReadFile
从设备读取报文
Kernel32.dll.CloseHandle
释放CreateFile使用的资源
Setupapi.dll.SetupDiDestroyDeviceInfoList
释放SetupDiGetClassDevs使用的资源
Hid.dll.HidD_GetPreparsedData
返回一个句柄到保存设备能力信息的缓冲器
Hid.dll.HidD_FreePreparsedData
释放HidD_GetPreparsedData使用的资源
Hid.dll.HidD_SetFeature
传送一个特征报文给设备
Hid.dll.HidD_GetFeature
从设备读取一个特征报文
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
Sentinel SuperPro的加密狗
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
可以爆破吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
判断出他是用何种方式退出的,顺藤摸瓜试一下
|
能力值:
( LV9,RANK:170 )
|
-
-
6 楼
加密狗直接模拟了,就可以尝试了。
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
问题签名:
问题事件名称: APPCRASH
应用程序名: GBTK.exe
应用程序版本: 1.0.0.1
应用程序时间戳: 499ba89d
故障模块名称: MFC42.DLL
故障模块版本: 6.6.8063.0
故障模块时间戳: 4a5bda30
异常代码: c0000005
异常偏移: 0003c3df
OS 版本: 6.1.7600.2.0.0.256.1
区域设置 ID: 2052
其他信息 1: 0a9e
其他信息 2: 0a9e372d3b4ad19135b953a78882e789
其他信息 3: 0a9e
其他信息 4: 0a9e372d3b4ad19135b953a78882e789
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
搞了半天 还是没有搞定 有高手指点一下吗
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
好像学杀狗和模拟
|