触类旁通---通过远程注入获得进程的控件数据

原创 2004年10月30日 08:16:00

关键字:    远程注入



Contents:

  • 1.前言----------你应该知道的东西
  • 2.简单的举例
    • 2.1   做一个整体的结构和思路
    • 2.2    理论实例化
  • 3.让功能变得更丰富
  • 4.如何防止被获取数据?
    •  

  • 5.参考文档




  •  
       
                  在开始之前总会有一个前言,就差不多当作一个PREFACE吧.   
    我们的平台,应该是win2000向上兼容,等等,为了保险起见,(谁也不知道微软会不会 在未来加入安全因素的考虑,就像他在xp-sp2中加入了raw socket的限制),让我们 一一列举: win2000   winXP  win2003.......其他你应该了解的是: 基于 win2000¹内核  与 win98² (及其相关类似系统)内核区别。 

  • 区别说得明白一点就是:     
  • win98是共产主义,你的就是我的,我的就是你的。 
  • win2000是资本主义,每个公民(普通进程)的私有财产神圣不可 侵犯。
          所以在win98下,欲一睹他人财产,完全就是合法的,因为就是我的-___-   相反的,在2000下,我们的行为变成了“偷”。  

                    好了,既然确定了我们必须当一次小偷,究竟是巧取豪夺,还是乔装打扮,抑或打入内部?方法太多了~
         远程注入是我们这里要说的一种,其他的偷窃方法,比如 dll远程加载, api转向,  全局hook,请参阅其他。远程注入的优势在于简便,不必辛苦新建一dll,抑或深入api内部,说来说去无外乎仅用到一个法宝-------------CreateRemoteThread创建远程进程 <==  你可以把他理解为远程注入函数。
                    悼词为止,对不起是到此为止。听了我说了那么多乌烟瘴气的话, 想必已经你已经不胜厌烦。
  •       一言以蔽之,所有的这一切的你必须要知道的只是两点。
  •        1.win2000要获得远程进程的数据必须先伪装成那个进程的一部分(有人会说hook技术不需要伪装。请注意大部分hook中需要dll, 而这个dll就是通过被挂接到每个进程上去,成为了进程的一部分,来实现hook的。 *我说“大部分”,那么必然有“小部分”不需要dll的hook那是基于驱动层的,比如有一种键盘hook。)
  •        2.远程注入------这个方法通过CreateRemoteThread来伪装
        
        win2000¹: 
    如未加申明,指以windows2000为基础核心的一系列系统,比如 windows2000, windows xp, windows 2003

        win98² :    如未加申明,指windows98,windows95等系列的核心

     


     


       TO BE CONTINUED........

     

  • 将DLL挂接到远程进程之中(远程注入)

    在上一篇文章《线程的远程注入》中介绍了如何让其他的进程中执行自己的代码的一种方法 及自己定义一个线程,在线程体中编写执行代码,然后使用VirtualAllocEx函数为线程体以 及线程中用到的字符常量...
    • vcforever
    • vcforever
    • 2005年03月15日 16:42
    • 7415

    远程注入小记

    原作者连接提权方法//注入程序 #include "stdafx.h" #include "Remote injection.h" #include "tlhelp32.h" using namesp...
    • osummertime
    • osummertime
    • 2016年09月26日 19:35
    • 596

    远程dll注入 C#

    using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy...
    • pandyer
    • pandyer
    • 2009年01月06日 11:20
    • 1611

    VC由进程ID获取窗口句柄的各种方

    //通过进程ID获取进程句柄  HANDLE GetProcessHandleByPid(DWORD dwPid) {   return OpenProcess(PROCESS_ALL_ACCE...
    • jiangqin115
    • jiangqin115
    • 2014年08月27日 15:02
    • 3292

    EasyHook远程进程注入并hook api的实现

    介绍:HOOK API是指截获特定进程或系统对某个API函数的调用,使得API的执行流程转向指定的代码。Windows下的应用程序都建立在API函数至上,所以截获API是一项相当有用的技术,它使得用户...
    • v6543210
    • v6543210
    • 2015年03月15日 13:14
    • 3717

    通过进程ID获取进程主窗口句柄

    typedef struct tagWNDINFO { DWORD dwProcessId; HWND hWnd; }WNDINFO, *LPWNDINFO; ...
    • baggiowangyu
    • baggiowangyu
    • 2012年06月23日 13:56
    • 3854

    通过进程exe名称获取窗口句柄

    #include //1.首先定义一个结构: typedef struct tagWNDINFO {     DWORD dwProcessId;     HWND hWnd; ...
    • jolin678
    • jolin678
    • 2015年09月28日 15:42
    • 2847

    通过进程名获取进程PID

    /*用CreateToolhelp32Snapshot进行对系统所有进程进行快照,然后利用Process32First取得第一个进程句柄,然后把得到的PROCESSENTRY32结构体中的szExeF...
    • wuleibilly3
    • wuleibilly3
    • 2009年07月29日 06:25
    • 9606

    通过进程ID返回进程hWnd

    typedef struct tagWNDINFO { DWORD dwProcessId; HWND hWnd; } WNDINFO, *LPWNDINFO; BOOL CALLBAC...
    • farcall
    • farcall
    • 2011年05月25日 21:53
    • 1282

    在Delphi中利用CreateRemoteThread远程注入例子

    花了一个下午翻了MSDN,写了这个例子,为了安全,我用Delphi建了个什么也没有作的程序prjzzhost.exe,将它用作被注入的宿主进程.写了一个TestDll.Dll,里面只有一个Log函数,...
    • yanxizhen
    • yanxizhen
    • 2005年04月05日 16:34
    • 1383
    内容举报
    返回顶部
    收藏助手
    不良信息举报
    您举报文章:触类旁通---通过远程注入获得进程的控件数据
    举报原因:
    原因补充:

    (最多只允许输入30个字)