zoukankan      html  css  js  c++  java
  • 【旧文章搬运】修改已加载模块的名称和路径

    原文发表于百度空间,2008-7-31
    ==========================================================================

    突然想起来的,修改PEB 能改掉EXE的路径,那么加载的DLL呢?

    于是,马上动手实验了一下,遍历PEB中的模块列表双链,找到user32.dll后,修改其映像名和路径.具体信息在下面这个结构里:

    typedef struct _LDR_MODULE
    {
    LIST_ENTRY          InLoadOrderModuleList;
    LIST_ENTRY          InMemoryOrderModuleList; 
    LIST_ENTRY          InInitializationOrderModuleList; 
    void*               BaseAddress; 
    void*               EntryPoint;   
    ULONG               SizeOfImage;
    UNICODE_STRING      FullDllName; //全路径
    UNICODE_STRING      BaseDllName; //模块名称
    ULONG               Flags;
    SHORT               LoadCount;
    SHORT               TlsIndex;
    HANDLE              SectionHandle;
    ULONG               CheckSum;
    ULONG               TimeDateStamp;
    } LDR_MODULE, *PLDR_MODULE

    代码比较简单,马上写完实验了一下,结果以前断链能过的全过了,myGOD~
    也就不一一抓图上来了,贴个狙剑的图(好像狙剑总是自己从路径中按来截取文件名)

    RKU的(彻底骗过):

    一如既往的过不了IceSword,看来人家的ZwQueryVirtualMemory果然比较好使.
    刚发现的,断链大法对RKU竟然也好使,呵呵(之前在RKU的进程菜单中没注意到"View Process's DLL"这一项,faint~)

    要隐藏模块还是断链吧~

    ====================================================================================

    后记:在调戏ARK的路上不断成长。。。

  • 相关阅读:
    使用VS2012开发基于Office 2013的AddIn程序
    Silverlight Virtualization Overview
    解除.NET中虚拟路径的疑惑
    T4 Template Overview
    Silverlight ItemsControl详细解析+解惑
    C#多线程词频统计修改
    C#多线程词频统计
    通讯录从诺基亚手机同步至iphone
    验证邮箱合法性的一些测试样例
    九度1131:合唱队形
  • 原文地址:https://www.cnblogs.com/achillis/p/10179912.html
Copyright © 2011-2022 走看看