无忧行TG通知系统

大类
Util
iOS
技术标签
逆向-iOS
逆向-Java
逆向-Windows
开发-协议脚本
优先级
Critical
开始日期
Jun 29, 2021
状态
Monitoring
Public
Public
最后更新
Sep 3, 2021

逆向分析

逆向探索思路
 

实现:I. MtcSdk补齐功能(mtc_patch)

  • 逆向分析得知DotNet SDK仅缺少很少一部分功能,只需补齐MtcWgw回调功能即可
  • 正常回调流程:通过搜索字符串可以知道DotNet中的回调是通过Rsd_EnbLeaveNtfnX函数调用的
    • Ntfn:NotifyFunction
    • 具体流程是Rsd_NtfnCreate → Rsd_NtfnAddXXX → Rsd_EnbLeaveNtfnX
  • 由于DotNet中并没有Wgw对应的会叫,我们Hook Wgw的handler传回Im对应的消息回调即可
 

实现:II. 通知处理 (WuyouWinBot)

  • TG通知:Telegram.Bot NuGet包
  • 微信通知:Senparc.Weixin包
  • 收到后,并发调用这两个,出错后重试
 

实现:III. Wine中运行以及Docker中运行

  • Wine中运行需要将程序复制到C:\下面,否则会崩溃,原因未明
  • Wine在32位下配置好dotnet即可
  • Wine Docker使用docker-wine-dotnet即可

部署:

  • 在国内服务器上部署,Docker的网络由soxy-driver提供
    • 命令:
      docker pull yassine/soxy-driver docker rm -fv soxy-driver docker run -d --init -v '/var/run/docker.sock':'/var/run/docker.sock' -v '/run/docker/plugins':'/run/docker/plugins' --net host --name soxy-driver --privileged yassine/soxy-driver docker network rm soxy_network docker network create -d soxy-driver soxy_network -o "soxy.proxyaddress"="127.0.0.1" -o "soxy.proxyport"="7890" -o "soxy.proxytype"="socks5" #docker run -d --init -v '/var/run/docker.sock':'/var/run/docker.sock' -v '/run/docker/plugins':'/run/docker/plugins' --net host --name soxy-driver --privileged yassine/soxy-driver cd wuyoubot docker run -d --init --name wuyou-18832161130 --rm --dns 10.0.8.7 -it --net soxy_network --entrypoint "" -v "$PWD:/pwd" -w "/pwd" -e "WINEDEBUG=fixme-all" nyamisty/docker-wine-dotnet wine ./WuyouWinBot.exe +8618832161130 eb1Ea3 docker run -d --init --name wuyou-18511089201 --rm --dns 10.0.8.7 -it --net soxy_network --entrypoint "" -v "$PWD:/pwd" -w "/pwd" -e "WINEDEBUG=fixme-all" nyamisty/docker-wine-dotnet wine ./WuyouWinBot.exe +8618511089201 eb1Ea3