nós conversamos gancho. Aprendizagem reversa do WeChat no lado do PC. Suporta versões 3.8.0.41, 3.8.1.26, 3.9.0.28, 3.9.2.23 e 3.9.2.26.
O conteúdo publicado neste armazém é apenas para aprendizagem e pesquisa, por favor não o utilize para fins ilegais ou comerciais! Se surgir alguma disputa legal como resultado, o autor não terá nada a ver com isso!
Este projeto é um projeto de exercício reverso e pode resultar em banimentos de contas e outras consequências. Por favor, use por sua própria conta e risco. Apenas para estudo e pesquisa, não o utilize para fins ilegais.
Analise reversamente o cliente PC WeChat, localize as chamadas principais das funções relacionadas e escreva uma dll para chamar as chamadas principais. Em seguida, injete o arquivo dll no processo WeChat.
Quando a dll é injetada com sucesso, um servidor http com uma porta padrão 19088 é criado e todas as funções podem ser chamadas diretamente através do protocolo http.
|----------------
-------------------------- 注入 | WeChat.exe |
| ConsoleApplication.exe |————————> |---------------- -------------- 访问 ---------
| | | wxhelper.dll |————————>| 启动http服务 | <----------| clent |
|-------------------------- |----------------- -------------- --------
Versões suportadas 3.8.0.41, 3.8.1.26, 3.9.0.28, 3.9.2.23, 3.9.2.26, 3.9.5.81.
O código-fonte e a implementação principal estão nas ramificações correspondentes.
src: código dll principal
ferramenta: Uma ferramenta de injeção simples, uma é o console e a outra é a interface gráfica.
python: tcpserver.py: Um servidor simples para receber conteúdo de mensagens. decrpty.py: ferramenta de descriptografia de banco de dados WeChat. http_server.py: lado do servidor http.
fonte: injeção remota simples de linha de comando de código-fonte.
Outros diretórios: Alguns clientes fornecidos por autores entusiasmados.
Minha energia e nível pessoal são limitados e o projeto ainda apresenta muitas deficiências. Você pode enviar questões ou PRs. Aguardamos sua contribuição.
Para métodos comumente usados por indivíduos, consulte https://github.com/ttttupup/wxhelper/wiki
Para problemas de uso, verifique https://github.com/ttttupup/wxhelper/discussions
Descriptografia do banco de dados, consulte https://github.com/ttttupup/wxhelper/wiki
Minha energia pessoal é limitada, então mantenho apenas a versão mais recente. Os bugs da versão antiga serão corrigidos na nova versão e a versão antiga não será mantida.
Visual Studio 2022 (x86)
Código do Visual Studio
cmfazer
vcpkg
Prepare primeiro o ambiente de compilação.
cd wxhelper
mkdir build
cd build
cmake -DCMAKE_C_COMPILER=cl.exe
-DCMAKE_CXX_COMPILER=cl.exe
-DCMAKE_BUILD_TYPE=Debug
-DCMAKE_INSTALL_PREFIX=C:/other/codeSource/windows/wxhelper/out/install/x86-debug
-DCMAKE_TOOLCHAIN_FILE:FILEPATH=C:/vcpkg/scripts/buildsystems/vcpkg.cmake
-SC:/wxhelper
-BC:/wxhelper/build/x86-debug
-G Ninja
cmake --build ..
A seguir está a operação em vscode, a operação em vs é semelhante.
1. Instale vcpkg, cmake, vscode
2. Instale a biblioteca correspondente Se as versões instaladas forem diferentes, apenas modifique o conteúdo de CMakeLists.txt de acordo com o find_package solicitado após a instalação do vcpkg ser bem-sucedida. Ou compile você mesmo.
vcpkg install mongoose
vcpkg install nlohmann-json
3.vscode configure CMakePresets.json, defina principalmente CMAKE_C_COMPILER e CMAKE_CXX_COMPILER para cl.exe A referência é a seguinte.
{
"name": "x86-release",
"displayName": "x86-release",
"description": "Sets Ninja generator, build and install directory",
"generator": "Ninja",
"binaryDir": "${sourceDir}/out/build/${presetName}",
"architecture":{
"value": "x86",
"strategy": "external"
},
"cacheVariables": {
"CMAKE_C_COMPILER": "cl.exe",
"CMAKE_CXX_COMPILER": "cl.exe",
"CMAKE_BUILD_TYPE": "Release",
"CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}",
"CMAKE_TOOLCHAIN_FILE": {
"value": "C:/soft/vcpkg/scripts/buildsystems/vcpkg.cmake",
"type": "FILEPATH"
}
},
"environment": {
}
}
4. Clique com o botão direito em configurar todos os projetos em cmake build vscode e clique em Executar tarefa no Terminal. Se você não configurar a tarefa de construção primeiro, execute-a.
5. Ferramenta de injeção de linha de comando, comando de injeção
//-i 注入程序名 -p 注入dll路径
// -u 卸载程序名 -d 卸载dll名称
// -m pid 关闭微信互斥体,多开微信
// -P port 指定http端口,需要使用 specify-port 分支的生成的dll
// -I 注入程序的pid
//注入
ConsoleInject . exe - i demo . exe - p E:t estInject . dll
//卸载
ConsoleInject . exe - u demo . exe - d testInject . dll
//多开
ConsoleInject . exe - m 1222
// 注入并指定http端口
ConsoleInject . exe - i demo . exe - p E:t estInject . dll - P 18888
// 注入指定pid并关闭多开限制
ConsoleInject . exe - I 15048 - p E:t estInject . dll - m 15048
6. Se desejar alterar a porta, você pode criar o arquivo de configuração config.ini no diretório WeChat e modificar a porta. Se não for criada, a porta padrão será 19088.
[config]
port=19099
26/12/2022: Adicionado suporte para a versão 3.8.1.26.
29/12/2022: Adicionada função de extração de texto.
02/01/2023: Sair do WeChat.
31/01/2023: Adicionada a capacidade de modificar apelidos de grupo (suporta apenas 3.8.1.26).
01/02/2023: Adicionado Paiyipai (suporta apenas 3.8.1.26).
04/02/2023: Adicionada fixação e desafixação de mensagens de grupo.
06/02/2023: Adicionada confirmação de pagamento.
08/02/2023: Adicionadas novas mensagens do Moments.
09/02/2023: Adicionadas funções básicas da versão 3.9.0.28.
13/02/2023: Adicionados apelido do grupo e nome do WeChat.
17/02/2023: Adicionada a capacidade de adicionar amigos por meio de wxid e pesquisar WeChat.
02/03/2023: Adicionada nova @mensagem
04/03/2023: download de novo anexo de mensagem
21/03/2023: Adicionada voz de gancho
30/03/2023: Adicionada a capacidade de obter arquivos de voz (recomenda-se usar esta interface sem gancho)
08/04/2023: Atualização de função da versão 3.9.2.23
05/06/2023: Versão 3.9.2.26 atualizada
07/07/2023: Versão 3.9.5.81 atualizada
0. Verifique se você está logado
1. Obtenha informações de login no WeChat
2. Envie uma mensagem
3. Envie @texto
5.Envie fotos
6.Enviar arquivos
9. Mensagem de gancho
10. Cancelar mensagem de gancho
11. fotos de gancho
12. Cancelar imagem do gancho
13. voz em gancho
14. Cancelar voz de gancho
17.Excluir amigos
19. Pesquise no WeChat via celular ou QQ
20. Adicione amigos através do wxid
23. Inscreva-se através de amigos
25. Obtenha membros do grupo
26. Obtenha apelidos dos membros do grupo
27. Exclua membros do grupo
28. Adicione membros do grupo
31. Modifique o apelido do grupo
32. Obtenha o identificador do banco de dados
34. Consulte o banco de dados
35. registro de gancho
36. Cancelar registro de gancho
40.Encaminhar mensagem
44. Sair
45. Confirme o pagamento
46. Lista de contatos
47. Obtenha detalhes do grupo
48. Obtenha imagens descriptografadas
49. OCR de texto de extração de imagem
50. Dê uma chance
51. Mensagem fixada em mensagens de grupo
52. Liberar mensagens de grupo no topo
53. Página inicial dos Momentos
54. Momentos próxima página
55. Obtenha o nome do contato ou grupo
56. Obtenha anexos de mensagens (fotos, vídeos, arquivos)
57. Obtenha arquivos de voz (formato silk3)
58. Código QR de login
59.Convidar para entrar no grupo
60. Obtenha detalhes do grupo/membro do grupo
61.Retirar mensagem
62.Enviar mensagens de contas públicas
63. Encaminhar mensagens de contas públicas
64.Enviar miniprograma
65. Reembolso
66. Baixe o avatar (não use, é inútil)
https://github.com/ljc545w/ComWeChatRobot
https://github.com/NationalSecurityAgency/ghidra
https://github.com/x64dbg/x64dbg
https://t.me/+LmvAauweyUpjYzJl