/ Новости сайта / Пентест мобильных приложений: на что обратить внимание?
19Ноя Пентест

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

162

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

 

Оцените ситуацию со стороны разработчика


Прежде чем выполнять проверку того или иного приложения, важно получить базовое понимание работы того или иного языка, какие основополагающие моменты в нем содержаться, т.е. необходимо поставить себя на роль программиста и определить как был реализован код, почему именно так, а не иначе. Каждый программист имеет какую-либо свою архитектуру кода, следовательно, и характер совершаемых ошибок. Знание языка и его базы позволит Вам двигаться в правильном направление при тестировании на проникновение.

 

Например, мобильная разработка приложения, выполненная веб-программистом будет по-большей степени ориентирована на функциональность и удобство для пользователя, в то время, как программист с опытом работы на Java будет несколько абстрагирован от этого и направлен на бекенд.

 

Каждый из разработчиков будет обладать знаниями и знаком с API (программным интерфейсом приложения) высокого уровня, но в то же время они будут подвержены ошибкам при манипулировании низкоуровневыми API.

 

Получите и проанализируйте исходный код


Пентест обычно имеет ограниченные ресурсы со стороны времени и денежных средств, поэтому стоит использовать выделенные ресурсы на максимум. Получение и анализ исходного кода поможет обнаружить массу ошибок в кратчайшие сроки и позволит найти наибольшее количество слабых позиций и уязвимостей, что, без сомнения, сделает приложение более безопасным и надежным.

 

Например, объектно-ориентированный язык программирование Objective-C, применяемый в Apple, позволяет получить достаточно прозрачный взгляд на внутренние механизмы приложения. В свою очередь, злоумышленник имея лишь малое количество времени может получить, возможно не точный, но приблизительный взгляд на то, что у вас будет с кодом и, как это применить для кибератаки. Поэтому, следует делать шаг на опережения и посвятить свои усилия поиску этих недостатков в цепи безопасности.

 

Ахиллесова пята языка


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

 

Знания - это сила и порой разрушающая


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

 

Копируя готовый код или его части, при этом до конца не понимания, как он работает, и не тестируя его несет за собой серьезные последствия и потенциально-возможные нарушения безопасности. Так же, это может привести к тому, что наличие одного и того же уязвимого кода будет находиться в множестве разных приложений.

 

Простой и полный доступ - тестируйте все


Наличие у Вас устройства с заводскими настройками и операционной системой поможет оценить, как будет себя вести приложение в руках у конечного пользователя, проверить все механизмы работы и уровень безопасности.

 

В это же время, имея такое устройство с root-правами или jailbreak'ом позволит провести анализ работы и защиты приложения более детально, как будто оно находится в руках потенциального кибермошенника.

 

Буду надеяться, что этот небольшой список советов даст возможность узнать что-то новое в Вашей непростой, но очень интересной работе пентестера.


Статья для Вас была полезной? Расскажите о ней в социальных сетях:




Комментарии 0

avatar
Наверх