【Android 逆向】Android 逆向通用工具开发 ( PC 端工程分析 | 网络初始化操作 | PC 端工程核心业务逻辑 )

简介: 【Android 逆向】Android 逆向通用工具开发 ( PC 端工程分析 | 网络初始化操作 | PC 端工程核心业务逻辑 )

文章目录

前言

一、网络初始化操作

二、PC 端工程核心业务逻辑

三、博客资源

前言

本篇博客重点分析 PC 端 hacktool 模块 ;






一、网络初始化操作


HackCommand::Prepare() 方法主要是进行网络初始化操作 ;


在 HackCommand::Prepare() 方法 中 调用了 【Android 逆向】Android 逆向通用工具开发 ( 网络模块开发 | SOCKET 网络套接字初始化 | 读取远程端 “Android 模拟器“ 信息 | 向远程端写出数据 ) 一、SOCKET 网络套接字初始化 博客章节介绍的 CNetwork::WaitClientOnline() 方法 , 进行网络初始化操作 ;


bool HackCommand::Prepare()
{
  std::cout << "正在连接客户端..." << std::endl;
  if (m_network.WaitClientOnline()) {
  std::cout << "连接成功\n";
  return true;
  }
  std::cout << "连接失败:" << m_network.GetErrorString() << std::endl;
  return false;
}





二、PC 端工程核心业务逻辑


HackCommand::Run() 方法是核心的业务逻辑 , 这是一个循环执行的函数体 ;


执行 HackCommand::Run() 方法后 , 初始化相关变量 ,




然后直接进入一个 do{}while() 循环 , 每次循环时都先显示提示信息 :


 /* 网络初始化完毕 , 开始执行之后 , 先展示命令信息 , 提示用户如何操作 */

/* 网络初始化完毕 , 开始执行之后 , 先展示命令信息 , 提示用户如何操作 */
  ShowInfo();

 

对应的命令行输出方法如下 :


void HackCommand::ShowInfo()
{
  std::cout << "请选择命令:" << std::endl;
  std::cout << "1 读取数据" << std::endl;
  std::cout << "2 写入金币" << std::endl;
  std::cout << "3 写入经验" << std::endl;
  std::cout << "4 退出程序" << std::endl;
}


然后等待用户输入 1 , 2, 3, 4 中的一个字符 ,


/* 等待用户输入 */
  std::cin >> cmd;


根据用户输入的字符 , 判定用户的操作意图 , 这些都定义在枚举中 , 如果需要增加其它命令 , 直接增加该枚举变量值即可 ;


/* 如果需要增加其它命令 , 直接增加该枚举变量值即可 */
enum {
  CMD_READ_DATA = 1,
  CMD_WRITE_GOLD,
  CMD_WRITE_EXP
};


完整代码 :


void HackCommand::Run()
{
  bool iscontinue = true;
  int cmd = 0;
  int exp = 0;
  double gold = 0.0;
  Json::Value root;
  do {
  /* 网络初始化完毕 , 开始执行之后 , 先展示命令信息 , 提示用户如何操作 */
  ShowInfo();
  /* 等待用户输入 */
  std::cin >> cmd;
  /* 判定用户输入的字符串 */
  switch (cmd) {
  case CMD_READ_DATA:  // 1 读取数据
    std::cout << "获取到的数据为:" << std::endl;
    if (m_network.ReadData(root)) {
    std::cout << "金币:" << (int)root["playerMoney"].asDouble() << std::endl;
    std::cout << "经验:" << root["playerExpPoints"].asUInt() << std::endl;
    }
    break;
  case CMD_WRITE_GOLD:  // 2 写入金币
    std::cout << "请输入金币值:" << std::endl;
    /* 用户补充输入金币信息 */
    std::cin >> gold;
    m_network.WriteGold(gold);
    break;
  case CMD_WRITE_EXP:  // 3 写入经验
    std::cout << "请输入经验值:" << std::endl;
    /* 用户补充输入经验值信息 */
    std::cin >> exp;
    m_network.WriteExp(exp);
    break;
  case 4:     // 4 退出程序
    iscontinue = false;
    break;
  }
  } while (iscontinue);
}


目录
相关文章
|
5月前
|
移动开发 前端开发 Android开发
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
863 12
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
5月前
|
移动开发 JavaScript 应用服务中间件
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
733 5
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
5月前
|
移动开发 Rust JavaScript
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
942 4
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
6月前
|
XML 存储 Java
【06】AI辅助编程完整的安卓二次商业实战-背景布局变更增加背景-二开发现页面跳转逻辑-替换剩余图标-优雅草卓伊凡
【06】AI辅助编程完整的安卓二次商业实战-背景布局变更增加背景-二开发现页面跳转逻辑-替换剩余图标-优雅草卓伊凡
173 3
【06】AI辅助编程完整的安卓二次商业实战-背景布局变更增加背景-二开发现页面跳转逻辑-替换剩余图标-优雅草卓伊凡
|
5月前
|
移动开发 Android开发
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
278 0
|
7月前
|
存储 Web App开发 Ubuntu
手机变PC:给安卓手机刷Ubuntu Touch系统
至此,魅族PRO 5刷入Ubuntu Touch即完成了。 魅族PRO 5的Ubuntu Touch的开机画面如下:
1652 0
|
网络协议 网络架构
|
Java
【思维导图】JAVA网络编程思维升级:URL与URLConnection的逻辑梳理,助你一臂之力!
【思维导图】JAVA网络编程思维升级:URL与URLConnection的逻辑梳理,助你一臂之力!
225 1
|
安全 Android开发 数据安全/隐私保护
Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
721 12
Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
|
11月前
|
边缘计算 网络协议 安全
DDoS攻击:网络世界的“洪峰考验”与应对逻辑
本文介绍了DDoS攻击的运行机制及其影响,并提供了多层次的防御策略。DDoS攻击通过海量流量使目标服务器过载,造成服务中断,对电商和在线平台带来巨大经济损失与用户信任危机。防御措施包括基础设施优化、流量调度及云端协同防护等技术手段。针对中小企业,推荐使用如非凡云提供的弹性防护方案,含200G免费DDoS防御与自动带宽扩容功能,有效降低攻击风险和技术门槛。
935 0
DDoS攻击:网络世界的“洪峰考验”与应对逻辑

热门文章

最新文章