Се­год­ня в выпус­ке: изме­нения в защите при­ват­ных дан­ных поль­зовате­лей в Android 12, иссле­дова­ние проб­лем неп­равиль­ной нас­трой­ки облачных сер­висов в при­ложе­ниях, статья о пра­вилах раз­бора и ана­лиза кода мал­вари на при­мере FluBot, а так­же смеш­ная уяз­вимость в при­ложе­нии Medium. Как бонус: опти­миза­ция запус­ка при­ложе­ния и оче­ред­ные советы раз­работ­чикам.
 

Почитать

 

Android 12 и прайваси

What’s new in Android Privacy — офи­циаль­ный анонс изме­нений в защите поль­зователь­ских дан­ных в Android 12.

  • Privacy-экран. В Android 12 будет спе­циаль­ный экран нас­тро­ек, показы­вающий, как час­то уста­нов­ленные при­ложе­ния получа­ли дос­туп к мик­рофону, камере, мес­тополо­жению и дру­гим сен­сорам и дан­ным.
  • Ин­дикато­ры камеры и мик­рофона. Вслед за Apple инже­неры Google добави­ли в Android 12 инди­като­ры дос­тупа к камере и мик­рофону. Если какое‑то при­ложе­ние в дан­ный момент исполь­зует то или дру­гое, в вер­хней час­ти экра­на появит­ся соот­ветс­тву­ющая икон­ка. Более того, пос­ле откры­тия штор­ки мож­но будет уви­деть, какие кон­крет­но при­ложе­ния име­ют дос­туп к камере и мик­рофону, и немед­ленно зап­ретить дос­туп.
  • Приб­лизитель­ное мес­тополо­жение. Диалог зап­роса мес­тополо­жения будет давать воз­можность выб­рать, каким типом информа­ции о мес­тополо­жении делить­ся с при­ложе­нием: точ­ным мес­тополо­жени­ем либо приб­лизитель­ным. Вто­рое хорошо под­ходит, нап­ример, для погод­ных сер­висов.
  • Уве­дом­ление о чте­нии буфера обме­на. Android 12 будет показы­вать сооб­щение каж­дый раз, ког­да какое‑либо при­ложе­ние про­чита­ет содер­жимое буфера обме­на. Единс­твен­ное исклю­чение, ког­да это­го не про­изой­дет, — если буфер обме­на чита­ет при­ложе­ние, находя­щееся в текущий момент на экра­не.
  • Пол­номочие на обна­руже­ние устрой­ств. Обна­руже­ние Bluetooth-устрой­ств в текущей Android 11 и ниже тре­бует раз­решение на дос­туп к мес­тополо­жению (да, имен­но так). В Android 12 у этой опе­рации появит­ся собс­твен­ное спе­циаль­ное раз­решение.
  • Усып­ление при­ложе­ний. Android 11 уме­ет отзы­вать раз­решения у дав­но не исполь­зуемых при­ложе­ний. Android 12 идет еще даль­ше и пол­ностью «усып­ляет» такие при­ложе­ния, забирая у них занима­емое дис­ковое прос­транс­тво. Для вывода при­ложе­ния из сна дос­таточ­но запус­тить его.
 

Проблемы неправильной настройки облачных сервисов

Mobile app developers’ misconfiguration of third party services leave personal data of over 100 million exposed — статья о таких уяз­вимос­тях при­ложе­ний, которые выз­ваны неп­равиль­ной нас­трой­кой облачных сер­висов. Никаких прак­тичес­ких при­меров взло­ма в статье нет, но общая ста­тис­тика весь­ма инте­рес­на.

  1. Неп­равиль­ное кон­фигури­рова­ние облачной БД. Здесь все прос­то, откры­тые на все­общее обоз­рение базы дан­ных до сих пор час­то встре­чают­ся в том чис­ле в при­ложе­ниях. Как при­мер: при­ложе­ние‑горос­коп Astro Guru сох­раня­ет в базу дан­ных email поль­зовате­ля, его имя, пол, мес­тополо­жение и дату рож­дения. А при­ложе­ние для заказа так­си T’Leva хра­нит в откры­той БД пол­ную перепис­ку меж­ду пас­сажира­ми и водите­лями.
  2. Пуш‑уве­дом­ления. Боль­шинс­тво сер­висов push-уве­дом­лений для отправ­ки уве­дом­ления от име­ни кон­крет­ного при­ложе­ния тре­буют исполь­зовать при­вязан­ный к нему крип­тогра­фичес­кий ключ. Но что, если этот ключ будет вшит в код самого при­ложе­ния в откры­том виде? В этом слу­чае ключ мож­но будет извлечь и исполь­зовать для отправ­ки уве­дом­лений от име­ни это­го при­ложе­ния.
  3. Се­тевые хра­нили­ща. С сетевы­ми хра­нили­щами проб­лема обыч­но та же, что и с облачны­ми БД. Если не нас­тро­ить аутен­тифика­цию или вшить клю­чи дос­тупа пря­мо в код при­ложе­ния — дан­ные будут в опас­ности. От этой проб­лемы, нап­ример, стра­дает при­ложе­ние Screen Recorder с 10 мил­лиона­ми уста­новок.

Сто­ит ска­зать, что мно­гие раз­работ­чики все‑таки пыта­ются скрыть клю­чи дос­тупа к облачным сер­висам, но обыч­но дела­ют это столь неуме­ло, что клю­чи извле­кают­ся три­виаль­но. Нап­ример, при­ложе­ние iFax пыта­ется скрыть клю­чи, исполь­зуя Base64, поэто­му все, что нуж­но сде­лать, — это прос­то ско­пиро­вать закоди­рован­ную в Base64 стро­ку и рас­кодиро­вать ее с помощью любой ути­литы, уме­ющей работать с этим фор­матом. Раз­бивка клю­чей на час­ти и исполь­зование XOR так­же популяр­ные решения. Забав­но, что имен­но так дела­ет мал­варь CopyCat.

Пример сообщения, извлеченного из БД приложения T’Leva
При­мер сооб­щения, извле­чен­ного из БД при­ложе­ния T’Leva
 

Еще одна уязвимость в приложении Medium

Exploiting Activity in medium android app — корот­кая замет­ка об оче­ред­ной дурац­кой уяз­вимос­ти в мобиль­ном при­ложе­нии блог‑плат­формы Medium.

Суть статьи сво­дит­ся к сле­дующе­му. В при­ложе­нии есть активность SaveToMediumActivity. Все, что она дела­ет, — это сох­раня­ет статью в спи­сок избран­ного. Ока­залось, что активность не толь­ко дос­тупна извне любому дру­гому при­ложе­нию (экспор­тирова­на), но и поз­воля­ет сох­ранять в спи­сок какой угод­но URL, а не толь­ко статьи, опуб­ликован­ные на самом Medium.

Продолжение доступно только участникам

Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».

Присоединяйся к сообществу «Xakep.ru»!

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Оставить мнение