【Android 逆向】Android 逆向通用工具开发 ( adb forward 网络端口重定向命令 | PC 端逆向程序主函数分析 )
文章目錄
- 前言
- 一、adb forward 網絡端口重定向命令
- 二、PC 端逆向程序主函數分析
前言
本篇博客重點分析 PC 端 hacktool 模塊 ;
一、adb forward 網絡端口重定向命令
如下命令的作用是 將 Windows 系統 PC 端的 TCP 網絡協議的 9527 端口 , 重定向到 Android 手機端 / Android 模擬器端 的 TCP 網絡協議的 9527 端口 ;
/* tcp:9527 是本地的 "協議:端口" 和 遠程的 "協議:端口" * 注意 : 使用目錄的分隔符使用 / 或者 \\ */ D:\\001_Develop\\027_LeiDian\\LeiDian3.75\\dnplayer2\\adb.exe forward tcp:9527 tcp:9527該命令作用是 , PC 端發起 TCP 協議的 9527 端口連接時 , adb 工具會將該連接重定向到 手機端的 TCP 協議的 9527 端口 ;
TCP 連接前 , 先檢查 PC 端 和 手機端 的 9527 端口是否被占用 ;
一般情況下是將 PC 機的 TCP 協議 重定向到 手機端的 TCP 協議 , 也可以將 PC 機的 TCP 協議 重定向到 手機端的 UDP 協議 , 后者不常用 , 容易失敗 ;
該操作是通過 USB 數據線 , 建立一個 TCP 網絡連接管道 , ADB 轉 TCP ;
注意 , 如果使用 Android 模擬器 , 則使用 模擬器 安裝目錄下的的 adb 程序 , 不要使用開發工具中的 ;
如 : 該逆向操作中 , 使用 雷電模擬器 3.75 版本 , 這里使用的 adb 工具路徑如下 :
D:\001_Develop\027_LeiDian\LeiDian3.75\dnplayer2\adb.exe二、PC 端逆向程序主函數分析
PC 端的程序是一個 " 控制臺應用 " 類型的程序 , 該類型應用不需要開發 UI 界面 , 查看日志報錯方式比較簡單 , 容易擴展 ;
首先 , 定義如下宏定義 , 這是第一行要執行的命令 , 需要建立 PC 端與手機端的 TCP 協議鏈路 ;
#define ADB_COMMAND "D:\\001_Develop\\027_LeiDian\\LeiDian3.75\\dnplayer2\\adb.exe forward tcp:9527 tcp:9527"然后 , 直接執行上述地你故意的命令 , system(CmdString) 相當于在 cmd 命令行中執行 CmdString 命令 ;
system(ADB_COMMAND);該控制臺程序的核心邏輯時在 HackCommand 類中實現的 , 主要調用了 2 個方法 , 調用 HackCommand::Prepare() 方法準備網絡環境 , 然后主要邏輯都在 HackCommand::Run() 方法中 ;
PC 端 控制臺程序 主函數代碼 :
// hacktool.cpp : 此文件包含 "main" 函數。程序執行將在此處開始并結束。 //#include <iostream> #include "HackCommand.h"/* tcp:9527 是本地的 "協議:端口" 和 遠程的 "協議:端口" * 注意 : 使用目錄的分隔符使用 / 或者 \\ */ #define ADB_COMMAND "D:\\001_Develop\\027_LeiDian\\LeiDian3.75\\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總結
以上是生活随笔為你收集整理的【Android 逆向】Android 逆向通用工具开发 ( adb forward 网络端口重定向命令 | PC 端逆向程序主函数分析 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【错误记录】Windows 控制台程序编
- 下一篇: 【Android 逆向】Android