Android-реверс для Android: как обмануть приложения
Обратный трос USB = Мобильный телефон получает сетевое соединение с ПК через USB.
Я знаю, как делать обратную привязку USB, за исключением одной проблемы: многие приложения для Android будут проверять сетевое подключение, используя код ниже, прежде чем делать какую-либо полезную работу:
ConnectivityManager connectivityManager = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = connectivityManager.getActiveNetworkInfo();
Проблема заключается в том, что при использовании обратного мошенничества USB вышеуказанный код не сообщает о сетевом соединении. Тем не менее, есть сетевое соединение (которое представляет собой USB-ретранслятор), и ping, wget и все программы, не выполняющие эту глупую проверку, хорошо работают.
Итак, вопрос: как я могу взломать систему, чтобы эта проверка сетевого соединения вернула успех (чтобы я мог обмануть эти приложения)?
BTW. Я использую Cyanogenmod 7. И любое решение, специфичное для этого MOD, также приветствуется.
Ответы
Ответ 1
Это, вероятно, то, что вы ищете
http://blog.mathieu.carbou.me/post/60454997009/reverse-usb-tethering-with-android-22
Существует также этот проект:
http://www.codeproject.com/kb/android/usbportforwarding.aspx
А также приложение на Android-рынке (оплачено, с бесплатной пробной версией):
https://market.android.com/details?id=com.littlelan.ReverseTether.Trial
Ответ 2
Если вы делаете это много взлома, я предполагаю, что у вас, вероятно, будет ваше устройство. Если это так, запрограммируйте интерфейс оболочки для отправки команд оболочке устройства с JNI и получения STDOUT. Используйте этот интерфейс для запуска команды netcfg, которая может быть проанализирована в массив - это даст вам все детали, которые скрывает API. Он также позволяет вам переопределить настройки устройства Androids с помощью команды ipconfig.
Что касается использования этого для отправки и получения с вашего устройства - по моему опыту - вам, вероятно, придется скомпилировать модуль конкретного устройства, который можно загрузить в ядро во время выполнения. Или просто загрузите ядро у производителя и скомпилируйте модуль в ядро, а затем запустите телефон с новым настраиваемым ядром.
Надеюсь, что это поможет.
Ответ 3
Для этого вам нужно загрузить файл ReverseTethering_3.19.zip(Google, чтобы найти ссылку.)
Извлеките в нужное место.
Предпосылка: -
- работают только корневые телефоны.
- Отладка USB должна быть включена.
Теперь подключите свой внедренный мобильный Android к ПК через USB-кабель. Подождите, пока ПК узнает ваш мобильный телефон. Теперь откройте извлеченный zip файл и откройте AndroidTool.exe с правами администратора.
Теперь нажмите "Подключиться" в инструменте Android.
Теперь он пытается подключиться и установить USB-туннелирование apk на вашем устройстве. Он также запрашивает права суперпользователя. Предоставьте его.
Наконец, после успешного установления соединения вы увидите.
https://drive.google.com/file/d/0B11p07T8VxhNNUdIM3gtTFR4N3M/view?usp=sharing
(Извините, я не могу загрузить изображение.)
Теперь вы получаете Интернет на своем мобильном устройстве, а приложение для туннелирования usb установлено. Но вы можете получить доступ только к HTTP-соединениям (i.e;) работает только в хром. Приложения Play Store могут не работать.
Итак, вы должны одурачить приложения и заставить его полагать, что либо мобильный телефон подключен к Wi-Fi или мобильным данным. Только приложения работают.
Итак, вам нужно перейти в меню "Инструменты" в Android-инструменте.
https://drive.google.com/file/d/0B11p07T8VxhNRXR3aTVUZUl1dVk/view?usp=sharing
Теперь установите hack (необязательно). Он устанавливает фреймворк Xposed и устанавливает hack connectivity apk. Просто следуйте инструкциям, это легко.
Связь с Hack позволяет приложениям полагать, что мобильный телефон подключен к WiFi или мобильным данным в зависимости от того, какой тип взлома сделал после установки подключения Hack. Наконец, после взлома, он просит перезагрузить компьютер. После перезагрузки вы можете наслаждаться Интернетом с помощью обратного тэзера USB во всех приложениях.