Giter VIP home page Giter VIP logo

sharpwxdump's Introduction

SharpWxDump

如何获取指定版本基址:https://github.com/AdminTest0/SharpWxDump/blob/master/CE%E8%8E%B7%E5%8F%96%E5%9F%BA%E5%9D%80.md

3.9.2.26之后的版本请使用x64版本(已更新)

感谢hallejuyahaha师傅更新x64版本:#48

3.9.2.26之前的版本请使用x86编译

x86的最后版本代码:https://github.com/AdminTest0/SharpWxDump/commit/bddb843c08f3fc2225df486f81a2bbeed84557e3?diff=split

2023/05/08 更新内容:新增支持3.9.2.26版本

2023/03/26 更新内容:新增支持3.9.2.23版本

2023/02/08 更新内容:新增支持3.9.0.28版本

2022/12/17 更新内容:新增支持3.8.1.26版本

2022/11/18 更新内容:新增支持3.8.0.41版本

2022/11/14 更新内容:新增支持3.8.0.33版本

2022/11/10 更新内容:新增支持3.8.0.31版本

2022/09/19 更新内容:新增支持3.7.6.44版本

2022/08/26 更新内容:新增支持3.7.6.29版本

2022/08/20 更新内容:新增支持3.7.6.24版本

2022/08/08 更新内容

  1. 修改部分代码(未运行、运行未登录、已登录),方便实战中判断情况

1

2022/08/07 更新内容

  1. 新增支持3.7.5.27版本
  2. 新增支持3.7.5.31版本
  3. 修改获取邮箱功能:低于3.7.0.30版本会直接返回邮箱地址;大于3.7.0.30版本则不显示任何信息

1

2022/07/23 更新内容

  1. 修复部分场景报错:登录微信后仍然提示:[-] WeChat Base Address Get Faild
  2. 如果还是报错,请用x86编译

支持功能

  1. 支持微信多开场景,获取多用户信息等
  2. 微信需要登录状态才能获取数据库密钥
  3. 没有动态获取功能,已将偏移地址写入代码内,会不定期更新,如有需要的版本请提交Issues
  4. 请用x86编译生成

image

版本差异

  1. 版本 < 3.7.0.30 只运行不登录能获取个人信息,登录后可以获取数据库密钥
  2. 版本 > 3.7.0.30 只运行不登录不能获取个人信息,登录后都能获取

利用场景

  1. 钓鱼攻击(通过钓鱼控到的机器通常都是登录状态)
  2. 渗透到运维机器(有些运维机器会日常登录自己的微信)
  3. 某些工作需要取证(数据库需要拷贝到本地)
  4. 自行备份(日常备份自己留存)
  5. 等等...............

数据库解密

解密后可拖入数据库工具查找敏感信息

image

参考地址

数据库解密脚本:https://mp.weixin.qq.com/s/4DbXOS5jDjJzM2PN0Mp2JA

免责声明

本项目仅允许在授权情况下对数据库进行备份,严禁用于非法目的,否则自行承担所有相关责任。使用该工具则代表默认同意该条款;

请勿利用本项目的相关技术从事非法测试,如因此产生的一切不良后果与项目作者无关。

sharpwxdump's People

Contributors

admintest0 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sharpwxdump's Issues

3.9.7.25版本偏移

"3.9.7.25": [
    63482760,
    63484096,
    63482568,
    0,
    63484032
]
顺便推荐一下自动获取偏移地址脚本  https://github.com/xaoyaoo/PyWxDump.git ,已经添加了自动更新偏移地址脚本,但是需要已经获取得到的key之类的,才能获取新版本的偏移地址。

安装

怎么打开呀 点哪个打开

3.9.6.8版本偏移

匹配3.9.6.8版本的偏移为:
{3.9.6.8,{61960264,61960040,61960072,38986104,61961536}}

3.9.6.13版本偏移

匹配3.9.6.13版本的偏移为:
{3.9.6.13,{61964312,61964088,61964120,38986104,61965584}}
image

3.7.6.44微信版本不支持

大佬可以帮忙适配下 新版微信吗 微信版本会自动升级最新的 。这个偏移地址自己怎么设置,能出个教程吗

建议使用Win API替换掉C#自带的获取进程模块句柄和模块基址

发现Any CPU编译无法获取x86的模块,可以用下面这几个API进行替换,函数原型如下:

        [StructLayout(LayoutKind.Sequential)]
        public struct MODULEINFO
        {
            public IntPtr lpBaseOfDll;
            public uint SizeOfImage;
            public IntPtr EntryPoint;
        }

        [DllImport("psapi.dll", SetLastError = true)]
        public static extern bool EnumProcessModules(
             IntPtr hProcess,
             [Out] IntPtr lphModule,
             UInt32 cb,
             [MarshalAs(UnmanagedType.U4)] out UInt32 lpcbNeeded);

        [DllImport("psapi.dll")]
        static extern uint GetModuleFileNameEx(
            IntPtr hProcess,
            IntPtr hModule,
            [Out] StringBuilder lpBaseName,
            [In][MarshalAs(UnmanagedType.U4)] int nSize);


        [DllImport("psapi.dll", SetLastError = true)]
        public static extern bool GetModuleInformation(
            IntPtr hProcess,
            IntPtr hModule,
            out MODULEINFO lpmodinfo,
            uint cb);

关于支持获取实时消息内存地址有计划吗

希望能够实时获取微信接收消息的内存地址,这个功能比较实用,可以扩展很多有用的功能,本人自己也找了下,发现地址每次微信启动都会变化,没有找到相对的偏移地址,可能我方法不对,希望大佬指导下或者下一次版本发布新增下这个地址,感谢。

3.9.2.26

方便更新下最新版本不

无法获取数据库

微信聊天记录没有放在默认地址,程序无法获取数据库

PS E:\浏览器下载\SharpWxDump-master\SharpWxDump-master> .\Program.exe
[+] WeChatProcessPID: 32228
[-] WeChat Base Address Get Faild
[+] Done

3.9.6.17版本偏移

匹配3.9.6.17版本的偏移为:
{3.9.6.17,{61972568,61972344,61972376,38986104,61973840}}
image

3.9.6.29版本偏移

image
匹配3.9.6.29版本的偏移为:
{3.9.6.29,{62030536,62030312,62030344,38986104,62031808}}

最后一次更新,以后有版本更新 需要偏移的请留言

微信版本3.8.0.25未支持

今天,2022年11月20日调试了一下程序SharpWxDump.exe,提示“WeChat Current Version Is: 3.8.0.25 Not Support”。
这时候我执行:wx-dump-key-v0.1.1.exe ,也提示未支持,但微信WeChat Key还是获取到了。
我把微信升级到了版本3.8.0.41,倒是完美支持了。希望可以互相借鉴一下,wx-dump-key-v0.1.1.exe获取key似乎不受版本影响:

关于wx-dump-key-v0.1.1.exe 的项目地址是:
https://github.com/sn00pyd0g3/wechat-export
关于wx-dump-key-v0.1.1.exe 的文章地址是:
https://www.t00ls.com/thread-66924-1-1.html
他文章里提到的关键代码:
`// 内存搜索
func patternScan(proc win32.HANDLE, pat []byte) ([]win32.PVOID, error) {
var next_region uintptr
next_region = 0
allowed_protections := []int{
PAGE_EXECUTE_READ,
PAGE_EXECUTE_READWRITE,
PAGE_READWRITE,
PAGE_READONLY,
}
var foundAddrs []win32.PVOID

for {
   mi, err := win32.QueryMemoryInfo(proc, win32.LPCVOID(next_region))
   if err != nil {
     break
   }
   next_region = uintptr(mi.BaseAddress) + uintptr(mi.RegionSize)
   if mi.NoAccess || !lo.Contains(allowed_protections, int(mi.Protect)) || mi.State != MEM_COMMIT {
     continue
   }

   memBuf, err := win32.NtReadVirtualMemory(proc, win32.PVOID(mi.BaseAddress), int64(mi.RegionSize))
   if err != nil {
     continue
   }

   // indexAll
   baseOffset := 0
   for {
     offset := bytes.Index(memBuf, pat)
     if offset > -1 {
      addr := mi.BaseAddress + win32.PVOID(baseOffset) + win32.PVOID(offset)
      foundAddrs = append(foundAddrs, addr)
      memBuf = memBuf[offset+len(pat):] // offset+len(pat) or offset ?
      baseOffset += offset + len(pat)
     } else {
      break
     }
   }
}
return foundAddrs, nil

}`

微信获取

3.9.6.19版本偏移

image

匹配3.9.6.19版本的偏移为:
{3.9.6.19,{61997688,61997464,61997496,38986104,61998960}}

数据库解密失败

版本:3.9.6.33
成功获取数据库密钥,但是解密数据库提示密码错误
图片

内存基址如何获取

授人以鱼不如授人以渔,建议作者可以详细讲讲如何获取版本对应list里的内存基址(最好是cheat engine的教程)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.