Baidu Root (російська версія). На андроїді при установці програм та ігор вискакує повідомлення, що на пристрої заблоковано установку з невідомих джерел. Додаток містить код для обходу захисту android

Отримання рут-прав на Андроїд без використання ПК та необхідності вдаватися до використання складних для освоєння програмних інструментів – цілком доступна можливість. У цій статті ми розповімо, як отримати права Суперкористувача всього за два простих кроки за допомогою програми Framaroot для Android.

Головною перевагою описуваного методу отримання рут-прав, насамперед, є його простота, а також короткий час, протягом якого можна провести цей процес. Виконуємо інструкцію, але спочатку важливе попередження.

Важливо! Описані нижче маніпуляції несуть певні ризики! Кожна дія, у тому числі виконання нижченаведених інструкцій, користувач здійснює на свій страх та ризик. Адміністрація ресурсу за можливі негативні наслідки не несе відповідальності.

Програма Фрамарут після завантаження або копіювання в пам'ять пристрою або карту пам'яті є абсолютно звичайним apk-файлом. Для установки не потрібні будь-які особливі дії, все стандартно.

Крок 2: Отримання рут-прав

Як і установка, отримання рут-прав за допомогою Фрамарут не вимагатиме безлічі дій. Просто виконуємо таке.


Ось одне з найкращих рішень щодо отримання Root прав на смартфонах та планшетах без використання комп'ютера. Сьогодні цією програмою отримав Root права на своєму тестовому смарті Самсунг Галаксі Нексус та китайському планшеті Фрілендер. Однією з плюсів саме цієї версії програми від китайських розробників і те, що інтерфейс програми повністю перекладено російською мовою. Про те, як отримувати рут права читайте інструкцію нижче.

Моя відео інструкція щодо отримання Root прав через Baidu Root

1. Завантажуємо програму Baidu Root: і встановлюємо її на свій апарат.
(Увага!!!При установці відроїд може Вам написати що додаток Містить код для обходу захисту AndroidСтавимо галку і натискаємо Все одно встановити"). Поле установки запускаємо програму і бачимо угоду від автора китайською мовою. Натискаємо кнопку Прийняти, як показано нижче.

2. Якщо у Вас підключений інтернет і на поточний момент часу та програма знайшла оновлену версію на своєму сервері, Вам буде запропоновано оновити версію програми до актуальної. Я б зробив так. Поки що натиснув Скасуватиі спробував отримати root [а якщо рут не був отриманий, то тоді знову перезапустив би програму і оновив її, а потім знову спробував би отримати рут. (Нижче я окреслю ту ж схему тільки з рідним китайським інтерфейсом програми, для розуміння як діяти якщо у Вас все китайською.)].

3. Тепер натискаємо кнопку " Отримати руті чекаємо завершення роботи програма. На моєму нексусі вона працювала близько 1 хвилини, на планшеті фрілендер трохи довше.

Вуаль. Бачимо, що root права отримані.

А тепер як і обіцяв вище викладу невеликий мануал з отримання тих же Root правий але з тим розрахунком що інтерфейс програми Baidu Root повністю китайською мовою.

1. Поле установки запускаємо програму та бачимо угоду від автора китайською мовою. Натискаємо праву кнопку, обведену на малюнку нижче.

2. Якщо у Вас підключений інтернет і на поточний момент часу та програма знайшла оновлену версію на своєму сервері, Вам буде запропоновано оновити версію програми до актуальної. Щоб оновити версію, натисніть праву кнопку, щоб не оновлювати - ліву. Зазвичай китайський інтерфейс буває після оновлення.

3. Тепер натискаємо на синю кнопку(я обвів її на картинці) і чекаємо завершення роботи програма.

Ми познайомили вас з рядом статей, в яких наочно показав, наскільки насправді легко додатки для Android. Для цього не потрібен навіть дизассемблер, достатньо поверхневих знань Java та мови Smali. Тому, якщо твоя програма буде досить популярна, знай: її вкрадуть і шляхом нехитрих маніпуляцій активують платні функції. А якщо ти вирішив монетизувати його за допомогою реклами, її відключать.

Захистити програму складно, але можна. По-перше, варто одразу відмовитися від моделі розповсюдження Pro/Lite. Додаток дуже легко витягнути зі смaртфону, тому злодіїв буде достатньо один раз купити додаток, і далі його можна розповсюджувати as is. По-друге, необхідно подбати про захисту коду від реверсу. Декомпіляція Java-коду - справа проста, а зміна бінарного коду не потребує якихось особливих навичок чи інструментів. По-третє, потрібно зробити так, щоб у разі навіть успішного злому додаток просто не став працювати. Тоді зломщику доведеться вирішувати одразу два завдання: зламати програму та змусити зламану версію працювати.

Отже, відмовляємось від Pro-версії та починаємо боротьбу.

Приховуємо та заплутуємо код

Найкращий спосіб захисту коду програми від реверсу - це обфускація, іншими словами - заплутування байт-коду так, щоб реверсеру було нестерпно важко в ньому розібратися. Існує кілька інструментів, здатних це зробити. Найбільш простий, але все ж таки ефективний є у складі Android Studio. Це ProGuard.

Для його активації достатньо додати в розділ android → buildTypes → release файлу build.gradle рядок minifyEnabled true:

android ( ... buildTypes ( release ( minifyEnabled true ) ... ) )

android (

. . .

buildTypes (

release (

minifyEnabled true

. . .

Після цього Android Studio почне пропускати всі "релізні" збірки через ProGuard. В результаті додаток стане компактніше (завдяки видаленню коду, що не використовується), а також отримає певний рівень захисту від реверсу. «Деякий» у тому сенсі, що ProGuard замінить імена всіх внутрішніх класів, методів та полів на одно-двобуквенні поєднання. Це дійсно суттєво ускладнить розуміння декомпільованого/дизасемблованого коду.


Наступний крок - шифрування рядків. Це особливо корисно в тому випадку, якщо всередині програми ти зберігаєш якісь сенситивні дані: ідентифікатори, ключі, REST API endpoints. Все це допоможе зломщику зорієнтуватися в твоєму коді або вичленувати з нього важливу інформацію.

Зашифрувати рядки можна різними способами, наприклад, використовуючи інструменти Stringer або DexGuard . Перевага: повністю автоматизована модифікація вже наявного коду для впровадження шифрування рядків. Недолік: ціна, яка доступна компаніям, але дуже висока для незалежного розробника.

Тому ми спробуємо обійтися самотужки. У найпростішому випадку шифрування рядків засобами Java виконується так:

public static byte encryptString(String message, SecretKey secret) throws Exception ( Cipher cipher = null; cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); cipher.init(Cipher.ENCRYPT_MODE, secret); return ci message.getBytes("UTF-8"));

public static byte encryptString (String message, SecretKey secret) throws Exception (

Cipher cipher = null;

cipher .init (Cipher .ENCRYPT_MODE , secret );

return cipher .doFinal (message .getBytes ("UTF-8" ) );

А розшифровка – так:

public static String decryptString(byte cipherText, SecretKey secret) throws Exception ( Cipher cipher = null; cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); cipher.init(Cipher.DECRYPT_MODE, secret); .doFinal(cipherText), "UTF-8");

public static String decryptString (byte cipherText, SecretKey secret) throws Exception (

Cipher cipher = null;

cipher = Cipher .getInstance ("AES/ECB/PKCS5Padding") ;

cipher. init (Cipher. DECRYPT_MODE, secret);

return new String (cipher .doFinal (cipherText ), "UTF-8") ;

Для генерації ключа достатньо одного рядка:

public static SecretKey generateKey(String password) throws Exception ( return secret = New SecretKeySpec(password.getBytes(), "AES"); )

public static SecretKey generateKey (String password) throws Exception (

return secret = новий SecretKeySpec (password .getBytes () , "AES" ) ;

Сенс у тому, щоб написати простеньку настільну/мобільну програму на Java, яка візьме на вхід усі твої рядки і видасть на виході їх зашифровані варіанти. Далі ти вставляєш ці рядки в основний додаток замість оригінaльних та в місцях, де відбувається до них звернення, викликаєш функцію decryptString() .

В результаті зломщик просто не зможе побачити зашифровані рядки, декомпілювавши програму. Але, звичайно ж, зможе написати найпростіший дешифратор, заснований на декомпілірованому коді твого шифратора. Іншими словами, це не панацея, але ще один рівень складності шифрування рядків додасть.

Можна піти ще далі і скористатися одним із інструментів комплексного захисту Android-програм, наприклад AppSolid . Варто воно знову ж таки дорого, але дозволяє зашифрувати всю програму цілком. Це дійсно здатне відлякати багатьох реверсерів, однак є ряд інструментів, у тому числі платний Java-декомпілятор JEB, який вміє знімати такий захист в автоматичному режимі.

Також ти можеш спробувати розбити свою програму на безліч невеликих модулів, як я вже писав у статті Пишемо модульні програми для Android. Сам собою це не метод захисту, і він майже не ускладнить роботу реверсера. Зате обламає різні автоматизовані системи кракінгу додатків. Вони просто не зможуть зрозуміти, де шукати код, що знаходиться в модулі.

Ну і останнє: з коду необхідно обов'язково видалити (закоментувати) всі звернення до логер, тобто всі виклики Log.d (), Log. v () і так далі. Інакше зломщик зможе використати цю інформацію, щоб зрозуміти логіку роботи програми.

Крашим зламану програму

Окей, життя реверсеру ми трохи зіпсували. Настав час зробити це ще раз! Але як дізнатися, чи була програма зламана? Точніше, як вона сама може це з'ясувати? Адже поняття «зламане» та «не зламане» існують лише в наших з тобою головах, тобто це поняття досить високого порядку, які не описати алгоритмічно.

Так воно, та не так. Справа в тому, що всередині APK-файлу є набір метаданих, які зберігають контрольні суми всіх файлів пакета, а самі метадані підписані ключем розробника. Якщо змінити програму та знову її запакувати, метадані пакета зміняться і пакет доведеться підписувати заново. А оскільки твого ключа розробника у реверсера немає і бути не може, він використовує або випадково згенерований, або так званий тестовий ключ.

Сам Android така програма спокійно проковтне (він не тримає базу всіх цифрових підписів всіх можливих Android-розробників), але у нас є свій цифровий підпис, і ми можемо його звірити!

Звіряємо цифровий підпис

Власне, метод досить простий. Тобі необхідно вставити в програму код, який отримуватиме хеш ключа поточного цифрового підпису пакета і порівнювати його з раніше збереженим. Збігаються - програма не була перепакована (і зламана), ні - б'ємо на сполох.

Для початку встав наступний шматок коду в додаток (чим глибше ти його заховаєш, тим краще):

public static String getSignature(Context context) ( String apkSignature = null; try ( PackageInfo packageInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), PackageManager.GET_SIGNATURES); for (Signature signature: packageIng = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); apkSignature = Base64.encodeToString(md.digest(), Base64.DEFAULT); + apkSignature); ) ) catch (Exception e) () return apkSignature; )

public static String getSignature (Context context) (

String apkSignature = null;

try (

PackageInfo packageInfo = context .getPackageManager() .getPackageInfo(

context .getPackageName() ,

PackageManager .GET_SIGNATURES

for (Signature signature : packageInfo .signatures ) (

MessageDigest md = MessageDigest .getInstance ("SHA");

md .update (signature .toByteArray () );

apkSignature = Base64 .encodeToString (md .digest() , Base64 .DEFAULT ) ;

Log .e ("DEBUG", "SIGNATURE:" + apkSignature);

) catch (Exception e) ( )

return apkSignature ;

Збери, запусти додаток і подивися лог виконання. Там побачиш рядок SIGNATURE: 478uEnKQV+fMQT8Dy4AKvHkYibo=. Це і є хеш. Його необхідно не просто запам'ятати, а помістити в код програми у вигляді константи, наприклад, під ім'ям SIGNATURE. Тепер прибери рядок Log.e… з коду та додай наступний метод:

public static boolean checkSignature(Context context) ( return SIGNATURE.equals(getSignature(context)); )

public static boolean checkSignature (Context context) (

return SIGNATURE .equals (getSignature (context));

Він якраз і буде звіряти збережений хеш з хеш ключа, яким в даний момент підписано додаток. Функція повертає true, якщо цифровий підпис твій (додаток не було перезабрано), і false - якщо воно зазнало модифікації. Що робити у другому випадку – вирішувати тобі. Ти можеш просто завершити програму за допомогою os.exit(0) або «впустити» її, наприклад викликавши метод неініціалізованого об'єкта або звернувшись до неіснуючого значення масиву.

Але запам'ятай: зломщик може просто вирізати твій код звірки цифрового підпису і він ніколи не спрацює (це справедливо і щодо коду, наведеного далі). Тому сховай його в неочевидному місці, а хеш оригінального ключа зашифруй, як було показано вище.


Перевіряємо джерело установки

Ще один метод захисту - з'ясувати, звідки було встановлено програму. Тут логіка проста: якщо джерело установки - Play Store, то все нормально, це оригінальний неперепакований додаток. Якщо ні - варез, скачаний з форуму і встановлений з карти пам'яті або з чорного маркету.

З'ясувати, звідки було встановлено програму, можна в один рядок, а сама функція, що робить це, може виглядати так:

public static boolean checkInstaller(Context context) ( final String installer = context.getPackageManager().getInstallerPackageName(context.getPackageName()); return installer != null && installer.startsWith("com.android.vending"); )

public static boolean checkInstaller (Context context) (

final String installer = context .getPackageManager().getInstallerPackageName(context.getPackageName());

return installer != null & amp; amp; & amp; amp; installer .startsWith ("com.android.vending");

Як завжди: true – все нормально, false – Х'юстон, у нас проблеми.

Визначаємо емулятор

Деякі методи реверсу програм припускають використання емулятора. Тому не зайвим буде внести додаток код, який перевіряє, чи не запущено воно у віртуальному середовищі. Зробити це можна, прочитавши значення деяких системних змінних. Наприклад, стандартний емулятор Android Studio встановлює такі змінні та значення:

ro.hardware=goldfish ro.kernel.qemu=1 ro.product.model=sdk

ro .hardware = goldfish

ro .kernel .qemu = 1

ro .product .model = sdk

Тому, прочитавши значення цих змінних, можна припустити, що код виконується в емуляторі:

public static boolean checkEmulator() ( try ( boolean goldfish = getSystemProperty("ro.hardware").contains("goldfish"); boolean emu = getSystemProperty("ro.kernel.qemu").length() > 0; boolean sdk = getSystemProperty("ro.product.model").contains("sdk"); if (emu || goldfish || sdk) ( return true; ) ) catch (Exception e) () return false; ) private static String getSystemProperty (String name) throws Exception ( Class sysProp = Class.forName("android.os.SystemProperties"); return (String) sysProp.getMethod("get", new Class(String.class)).invoke(sysProp, new Object (name));

public static boolean checkEmulator () (

try (

Отримання прав суперкористувача без допомоги комп'ютера з прикладу nexus7_2013.

інструкція

  • 1. Завантажуємо програму Towelroot.
  • 2. Перевіряємо, що в розділі налаштування/безпека встановлено прапорець, який дозволяє установку з невідомих джерел.
  • 3.Встановлюємо, не зважаючи на таке попередження:
  • {
    Не рекомендуємо встановлювати цю програму:
    towel root
    Вона містить код для обходу захисту Android.
    (прапорець) Все одно встановити (не зазначено)
    (кнопка) Не встановлювати
    (кнопка) Все одно встановити
    }
  • 4. Ставимо відповідний прапорець і натискаємо на відповідну кнопку.
  • 5. Відкриваємо програму і знаходимо кнопку під назвою:
    "Make it ra1n"
  • 6. ретельно запам'ятовуємо її розташування, оскільки далі доведеться призупинити Talkback, інакше отримуємо помилку.
  • 7. Тимчасово вивантажуємо TalkBack через глобальне контекстне меню.
  • 8. Активуємо те місце, яке запам'ятовували у пунктах (5 та 6).
  • Тут не потрібно подвійний таб, достатньо одного дотику.
  • Якщо у вас під рукою є людина, що бачить, то оптимально буде попросити її виконати цю просту дію.
  • 9. Чекаємо деякий час, орієнтовно 10-15 секунд, якщо пристрій не перезавантажився, виконуємо це самостійно.
  • 10. Встановлюємо програму supersu.
  • 11. Запускаємо supersu. та на пропозицію оновити бінарний файл відповідаємо згодою.
  • 12. Якщо всі кроки виконані коректно, на телефоні з'явилася можливість використання прав суперкористувача.

Примітки:

  • Список пристроїв, що підтримуються, для програми Towelroot. знаходиться
  • Якщо після запуску supersu. у вас з'являється повідомлення -
    "не вдалося оновити бінарний файл",
    потім перезавантажте пристрій і спробуйте ще раз.
  • Якщо це вам не допомогло, то найімовірніше права суперкористувача не отримані, для цього повторіть спробу, вдавшись до допомоги зрячих для активації кнопки "Make it ra1n".
  • Перед встановленням прав суперкористувача ретельно вивчіть всі проблеми, що пов'язані з цим, некоректного використання та позбавлення гарантії на ваш пристрій.

Не можу встановити програми та ігри на андроїді через блокування з метою безпеки. Це не проблема в цій статті, щоб дізнатися, як відкрити доступ до установки.

Якщо ви завантажили ігри або програми з інтернету і хочете їх встановити на своєму андроїді, то ви можете побачити на екрані Android повідомлення такого типу "З метою безпеки на пристрої заблоковано встановлення програм з невідомих джерел". Також установка може бути заблокована, якщо ви прийняли програму по блютус або вай фай з іншого телефону, комп'ютера, ноутбука, планшета або іншого пристрою. Все це звичайно зроблено для безпеки вашого андроїда, тому що зараз можна завантажити і встановити величезну кількість програм з вірусом, які можуть заблокувати ваш телефон і вимагати у власника гроші для розблокування. Якщо у вас смартфон або планшет на новій версії Android, то нижче ви знайдете посилання на сторінку з детальною інформацією про встановлення або заборону невідомих програм.

Не коли не встановлюйте на андроїд програми та ігри з невідомих джерел особливо якщо ви завантажили їх з інтернету. Але якщо ви знаєте, що файли з надійних джерел або додатки прийняті по блютус з іншого андроїда якому ви довіряєте, то ви можете розблокувати інсталяцію з невідомих програм і продовжити інсталяцію на Android.

Тепер давайте подивимося як дозволити встановлення програм на андроїді з невідомих джерел. Перед встановленням програм або ігор заходимо в налаштування Android і шукаємо пункт безпеки, далі знаходимо пункт невідомі джерелаі встановлюємо навпроти галочку. Тепер можна встановлювати на андроїд програми з невідомих джерел, які були заблоковані з метою безпеки. Ви можете потім знову прибрати галочку і тим самим ви знову заблокуєте установку небажаних додатків.

Також якщо ви вже почали інсталяцію і побачили повідомлення про заборону встановлення на пристрої з метою безпеки, то ви можете відразу дозволити інсталяцію. При виведенні повідомлення на екрані є так само і посилання на налаштування натиснувши на який ми відразу потрапляємо в пункт безпеку і ми можемо поставити галочку навпроти пункту невідомі джерелата продовжити розпочату установку. Після такої установки в налаштуваннях безпеки не зберігаєте галочка, тобто так потрібно дозволяти встановлення програм кожного разу.

Не встановлюйте програми з невідомих джерел, якщо ви не впевнені, що немає небезпеки зараження вірусом. Програми можуть списувати гроші з рахунку вашого номера, заблокувати пристрій або пошкодити ваш пристрій.

Не забудьте залишити відгук про те, чи допомогла дана стаття чи ні, вказуйте будь ласка модель пристрою щоб і від вас залишилася корисна інформація для користувачів Android.

  • Сподіваюся, вам допомогла ця стаття, та ви знайшли інформацію як встановити заблоковані програми на андроїді з невідомих джерел.
  • Велике прохання надавати взаємну допомогу та ділитися корисними порадами.
  • Дякуємо за чуйність, взаємну допомогу та корисні поради!


06-08-2019
00 год. 48 хв.
Повідомлення:
Привіт все описане вами на тему "На андроїд при установці програм та ігор вискакує повідомлення, що на пристрої заблокована установка з невідомих джерел." прочитав рекомендації д

13-06-2019
09 год. 19 хв.
Повідомлення:
Як видалити адміністратора?

06-01-2018
18 год. 24 хв.
Повідомлення:
Спасибі! Ну у мене проблема, можете підказати що робити, якщо пишуть: Помилка при синтаксичному аналізі пакета. Що робити?

02-01-2018
15 год. 46 хв.
Повідомлення:
Допоможіть телефон заблокував установку програми не з плей маркіту.скачал з хрому натискаю відкрити

18-12-2017
11 год. 11 хв.
Повідомлення:
Привіт все описане вами на тему "На андроїд при установці програм та ігор вискакує повідомлення, що на пристрої заблокована установка з невідомих джерел." прочитав рекомендації робив а результат той самий

31-10-2017
23 год. 05 хв.
Повідомлення:
фішка в тому, що мій LG L70 не дає і пташку поставити для зняття заборони.

26-09-2017
00 год. 27 хв.
Повідомлення:
Я не можу натиснути на галочку, коли я натиснула на галочку, у мене не вмикалося

11-09-2017
03 год. 37 хв.
Повідомлення:
А можна написати статтю так: Перед встановленням програм або ігор заходимо в налаштування Android та шукаємо пункт безпеку, далі знаходимо пункт невідомі джерела та встановлюємо навпроти галочку. .. і життя стає довшим ... без ваших соплів в 6 абзаців.

28-03-2017
20 год. 06 хв.
Повідомлення:
У мене стоїть галочка навпроти "Установка ПЗ з незв. джерел", але все одно телефон блокує установку. Телефон Meizu Note3. Це нормально? Раніше справу з Meizu не мав.

17-12-2016
20 год. 52 хв.
Повідомлення:
А в мене інше лихо постійно ставиться самовільно через 15-30 хв галочка на цей пункт із невідомим джерелом. Що я не робив - від Кат до заводських налаштувань, антивірусні програми встановлював, а воно все ставить і ставить пташку. Допоможіть!

05-12-2016
22 год. 52 хв.
Повідомлення:
Софія спробуйте видалити програму через настойки і програми там можна вимкнути або повністю видалити.

05-12-2016
22 год. 05 хв.
Повідомлення:
Допоможіть! Завантажити гру з невідомого джерела тепер не можу видалити ((

31-10-2016
21 год. 47 хв.
Повідомлення:
Є проблема, пов'язана з тим, що (через схоже кривої прошивки), у мене немає доступу до вкладки "Безпека" в налаштуваннях. Після входу в цю вкладку Викидає на раб. стіл, з повідомленням у роді "Додаток "Параметри" не відповідає. Як я можу НЕ через налаштування активувати установку "лівих" програм?



Завантаження...
Top