全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2034
推到 Plurk!
推到 Facebook!

如果更改Token Ring?

 
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-06-28 13:41:07 IP:210.85.xxx.xxx 未訂閱
MSDN有附一個範例可以關機 其中就是把關機的Token給改變 有沒有辦法把自己的Token 往上提呢?
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-07-10 14:59:02 IP:61.218.xxx.xxx 未訂閱
可參考這一篇文章........但不可以拿去做壞事喔!    資料來源:http://www.yu123.idv.tw/hackzone/thread.php?threadid=949&boardid=12&styleid=1    作者﹕AntGhazi 主頁﹕antghazi.yeah.net     以下是節錄WinNT & Win2K下實現進程的完全隱藏這篇文章的片段.....    #include "stdafx.h"     typedef struct _RemotePara{//參數結構  char pMessageBox[12];  DWORD dwMessageBox;  }RemotePara;  //遠程線程  DWORD __stdcall ThreadProc (RemotePara *lpPara){  typedef int (__stdcall *MMessageBoxA)(HWND,LPCTSTR,LPCTSTR,DWORD);//定義MessageBox函數  MMessageBoxA myMessageBoxA;  myMessageBoxA =(MMessageBoxA) lpPara->dwMessageBox ;//得到函數入口位址  myMessageBoxA(NULL,lpPara->pMessageBox ,lpPara->pMessageBox,0);//call  return 0;  }  void EnableDebugPriv();//提升應用級調試權限     int main(int argc, char* argv[]){  const DWORD THREADSIZE=1024*4;  DWORD byte_write;  EnableDebugPriv();//提升權限  HANDLE hWnd = ::OpenProcess (PROCESS_ALL_ACCESS,FALSE,992);  if(!hWnd)return 0;  void *pRemoteThread =::VirtualAllocEx(hWnd,0,THREADSIZE,MEM_COMMIT| MEM_RESERVE,PAGE_EXECUTE_READWRITE);  if(!pRemoteThread)return 0;  if(!::WriteProcessMemory(hWnd,pRemoteThread,&ThreadProc,THREADSIZE,0))  return 0;     //再付值  RemotePara myRemotePara;  ::ZeroMemory(&myRemotePara,sizeof(RemotePara));  HINSTANCE hUser32 = ::LoadLibrary ("user32.dll");  myRemotePara.dwMessageBox =(DWORD) ::GetProcAddress (hUser32 , "MessageBoxA");  strcat(myRemotePara.pMessageBox,"hello\0");  //寫進目標進程  RemotePara *pRemotePara =(RemotePara *) ::VirtualAllocEx (hWnd ,0,sizeof(RemotePara),MEM_COMMIT,PAGE_READWRITE);//注意申請空間時的頁面屬性  if(!pRemotePara)return 0;  if(!::WriteProcessMemory (hWnd ,pRemotePara,&myRemotePara,sizeof myRemotePara,0))return 0;     //啟動線程  HANDLE hThread = ::CreateRemoteThread (hWnd ,0,0,(DWORD (__stdcall *)(void *))pRemoteThread ,pRemotePara,0,&byte_write);  if(!hThread){  return 0;  }  return 0;  }      //提升權限 void EnableDebugPriv( void ) { HANDLE hToken; LUID sedebugnameValue; TOKEN_PRIVILEGES tkp; if ( ! OpenProcessToken( GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken ) ) return; if ( ! LookupPrivilegeValue( NULL, SE_DEBUG_NAME, &sedebugnameValue ) ){ CloseHandle( hToken ); return; } tkp.PrivilegeCount = 1; tkp.Privileges[0].Luid = sedebugnameValue; tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; if ( ! AdjustTokenPrivileges( hToken, FALSE, &tkp, sizeof tkp, NULL, NULL ) ) CloseHandle( hToken ); } 時間就是金錢 發表人 - axsoft 於 2002/07/10 15:07:15
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-07-11 14:42:30 IP:211.23.xxx.xxx 未訂閱
是我太笨, 還是有注意事項呢? 寫了一個最簡單的程式, 只作cli, sti 還素不行 >_<
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-07-12 10:02:50 IP:61.218.xxx.xxx 未訂閱
詳細的用法我也不是很清楚    您可以到人間論壇 http://www.yu123.idv.tw/hackzone/thread.php?threadid=949&boardid=12&styleid=1 看一下原來的完整文章,因為該篇文章屬Hacker級的文章不便在此列出!    人間論壇 需要註冊的!    時間就是金錢
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-07-12 10:18:58 IP:211.23.xxx.xxx 未訂閱
那個站不能註冊了 :(~~~~~~ 怎麼辦.........我是在WinXP下實作的, 好像只有這樣是不行的 可以轉貼到我的mail嗎? 謝謝 lcsboy@pchome.com.tw
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-07-12 11:11:15 IP:61.218.xxx.xxx 未訂閱
已經寄出了    時間就是金錢
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#7 引用回覆 回覆 發表時間:2002-07-12 14:27:11 IP:203.65.xxx.xxx 未訂閱
收到了, 謝謝 看了一下, 好像有點出入 不過我會去try, 如果真的可以的話 我再post給大家...........這樣大家的功力可以大增 ^^
系統時間:2024-04-20 19:17:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!