Android 逆向Android 逆向通用工具开发 ( PC 端工具 hacktool 启动 main 函数分析 | hacktool 工程中的核心类 HackCommand 分析 )

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 逆向Android 逆向通用工具开发 ( PC 端工具 hacktool 启动 main 函数分析 | hacktool 工程中的核心类 HackCommand 分析 )相关的知识,希望对你有一定的参考价值。





一、PC 端工具 hacktool 启动 main 函数分析



将 hacktool.exe 启动起来后 , 会在 main 函数中执行 HackCommandPrepare() 方法 , 准备工作完毕后 , 执行 HackCommandRun() 方法 ;

// hacktool.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include "HackCommand.h"

#define ADB_COMMAND "D:\\\\Changzhi\\\\dnplayer2\\\\adb.exe forward tcp:9527 tcp:9527"


int main()
{
	system(ADB_COMMAND);
	HackCommand command;
	if (command.Prepare()) {
		command.Run();
	}
	return 0;
}

//adb forward tcp:9527 tcp:9527





二、PC 端工具 hacktool 工程中的核心类 HackCommand 分析



准备阶段 : 对应 HackCommand 类的 Prepare() 方法 , 逆向调试前 ,先要做一些准备 , 如 :

  • 建立网络连接
  • 等待远程 cmd 程序响应
  • 操作 adb 命令 , 将 adb 修改为 tcp 网络接口

运行阶段 : 对应 HackCommand 类的 Run() 方法 , 与用户命令进行交互 ;

模拟器检测 : HackCommand 类的 CheckEmulator() 方法 ;

每次交互时 , 显示文本界面 : HackCommand 类的 ShowInfo() 方法 ;

构造方法与析构方法如下 :

  • 构造方法 : HackCommand()
  • 析构方法 : ~HackCommand()

HackCommand 类声明 :

#pragma once
#include "CNetwork.h"
class HackCommand
{
public:
	HackCommand();
	~HackCommand();
	bool Prepare();
	void Run();
	void ShowInfo();
private:
	CNetwork m_network;
};

项目位置 :

以上是关于Android 逆向Android 逆向通用工具开发 ( PC 端工具 hacktool 启动 main 函数分析 | hacktool 工程中的核心类 HackCommand 分析 )的主要内容,如果未能解决你的问题,请参考以下文章

Android 逆向Android 逆向通用工具开发 ( adb forward 网络端口重定向命令 | PC 端逆向程序主函数分析 )

Android 逆向Android 逆向通用工具开发 ( Windows 平台运行的控制台应用程序类型 | 编译 Windows 平台运行的 Android 逆向程序 )

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

Android 逆向Android 逆向通用工具开发 ( 静态库项目中的网络操作核心类 CNetwork 分析 )

Android 逆向Android 逆向通用工具开发 ( Android 端远程命令工具 | Android 端可执行程序的 main 函数操作 | TCP 协议服务器建立 | 接收客户端数据 )(代

Android 逆向Android 逆向通用工具开发 ( PC 端工具 hacktool 启动 main 函数分析 | hacktool 工程中的核心类 HackCommand 分析 )