DLL注入工具(遠(yuǎn)程線程技術(shù)和簡(jiǎn)單的MFC CListCtrl控件知識(shí))、
創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),三明企業(yè)網(wǎng)站建設(shè),三明品牌網(wǎng)站建設(shè),網(wǎng)站定制,三明網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,三明網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。DLL文件已經(jīng)編寫好、測(cè)試程序也很簡(jiǎn)單、現(xiàn)在就是解決將DLL注入到目標(biāo)進(jìn)程中、、
這里采用遠(yuǎn)程線程注入技術(shù)、、本來WIN32控制臺(tái)就可以、、為了學(xué)習(xí)下MFC就做了一個(gè)簡(jiǎn)單的MFC框架去實(shí)現(xiàn)注入、、
DLL注入工具大概是這樣:
1 枚舉出所有進(jìn)程(沒做到實(shí)時(shí)不過添加了一個(gè)刷新按鈕)、、
2 實(shí)現(xiàn)對(duì)所選中進(jìn)程注入DLL、、
工具截圖如下:
下面結(jié)合代碼記錄、、
首先運(yùn)行此工具、得到當(dāng)前所有進(jìn)程、、、使用CreateToolhelp32Snapshot函數(shù)、、
先在初始化的函數(shù)中將列表框的風(fēng)格初始化好、、
DWORD ListStyle;
ListStyle=::GetWindowLong(m_List.m_hWnd,GWL_STYLE); //獲得窗口風(fēng)格
ListStyle|=LVS_REPORT | LVS_SHOWSELALWAYS | LVS_EDITLABELS;
SetWindowLong(m_List.m_hWnd,GWL_STYLE,ListStyle);
ListStyle=m_List.GetExtendedStyle(); // CListCtrl m_List ;
ListStyle|=LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES; //高亮網(wǎng)格
m_List.SetExtendedStyle (ListStyle);
m_List.SetTextColor (RGB(0,0,0)); //字體顏色
m_List.SetTextBkColor (RGB(128,252,0)); //字體背景顏色
初始化列表框后開始獲取進(jìn)程填充到列表中、、、先添加好 列 名稱、、
CRect RectList;
m_List.GetWindowRect (&RectList); //得List窗口的尺寸放于RectList中、、
m_List.InsertColumn(0,"序號(hào)",LVCFMT_CENTER,100);// RectList.Width()
m_List.InsertColumn(1,"進(jìn)程名稱",LVCFMT_LEFT,180);
m_List.InsertColumn(2,"進(jìn)程ID",LVCFMT_LEFT,RectList.Width()-299);
SetWindowText("Windows當(dāng)前所有進(jìn)程");//程序主窗口的名稱、、
獲取所有進(jìn)程的代碼、、
char itoc[5];
CString s;
int i=0;
HANDLE Hsnap = CreateToolhelp32Snapshot (TH32CS_SNAPPROCESS, 0);
for (BOOL bNext = Process32First(Hsnap,&PE32); bNext; bNext = Process32Next(Hsnap,&PE32))
{
sprintf(itoc,"%d",i); //將int轉(zhuǎn)成char[]; 序號(hào)1、2、3、、、
m_List.InsertItem(i,itoc); //向第i行寫入itoc、、
s.Format("%s",PE32.szExeFile); //將char[]轉(zhuǎn)換為Cstring 進(jìn)程名字、、
m_List.SetItemText(i,1,s);//向第i行第1列寫入s、、
sprintf(itoc,"%d",PE32.th42ProcessID);//將DWORD 轉(zhuǎn)成char[]; 進(jìn)程ID
m_List.SetItemText(i,2,itoc);// 向第i行第2列寫入itoc、、
i++;
}
CString total;
total.Format("%d",m_List.GetItemCount());//獲取行數(shù)代表進(jìn)程數(shù)、、格式化到total中、
SetDlgItemText(IDC_Total2,total); // 給文本框賦值Cstring類型數(shù)據(jù)、、SetDlgItemText 即界面 左下角的框框、、
CloseHandle(Hsnap); //關(guān)閉句柄、
現(xiàn)在所有進(jìn)程已經(jīng)得到、、接下來就是對(duì)其中選中的某一進(jìn)程進(jìn)行注入工作、、
首先給列表框添加消息、、雙擊即可、、
而在此消息中我們要得到被選中的那一行所在的進(jìn)程的ID、也就是那一行第二列的數(shù)據(jù)、
void CMyDllInjectDlg::OnClickList(NMHDR* pNMHDR, LRESULT* pResult)
{
bMouseDown = true; //這個(gè)變量是用來判斷用戶是否選中沒選中則不可進(jìn)行操作、還可以用函數(shù)GetItemState判斷是否選中
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*) pNMHDR;
// NM_LISTVIEW這個(gè)結(jié)構(gòu)有以下成員(NMHDRhdr; int iItem; int iSubItem; UINT uNewState;
//UINT uOldState; UINT uChanged; POINT ptAction; LPARAM lParam;);
//轉(zhuǎn)換為NM_LISTVIEW*類型、、獲取選中的行號(hào)列號(hào)(這里我們不需要列號(hào)肯定是獲取第二列)
CString csID = m_List.GetItemText (pNMListView->iItem,2); //得到被選中的行的對(duì)應(yīng)的進(jìn)程ID
iID = atoi(csID); //CString到int 將ID轉(zhuǎn)成int類型的全局變量、、
ProcessName = m_List.GetItemText (pNMListView->iItem,1); //得到進(jìn)程名字、用于本進(jìn)程不結(jié)束自己、(為HOOK OpenProcess 醞釀一下)
*pResult = 0; //將指針pResult所指位置的內(nèi)容置0 函數(shù)自動(dòng)生成的以免指針沒有初始化、、
}
好了 進(jìn)程ID 得到了 接下來 就可以實(shí)現(xiàn)對(duì)此進(jìn)程 進(jìn)行注入了
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前題目:實(shí)現(xiàn)HOOK其他進(jìn)程的Messagebox(2)DLL注入工具-創(chuàng)新互聯(lián)
當(dāng)前URL:http://jinyejixie.com/article4/dchdoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣、網(wǎng)站維護(hù)、響應(yīng)式網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、Google、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)