Вопрос или проблема
Существуют дистрибутивы ОС для penetration-тестирования, такие как Kali Linux, а также устройства Hak5 и их физические гаджеты для pentest.
Мне стало интересно, существует ли такой телефон для мобильного pentesting. В наши дни, с Certificate Pinning и новыми функциями безопасности Android, становится сложно проводить pentest на мобильных телефонах. Это хорошо для защиты от хакеров, но затрудняет этичное хакерство, когда тестирование в “белом ящике” не является опцией. Также Genymotion не всегда является действительно практичным и иногда ограничен…
Есть ли идеи, существует ли телефон, специально предназначенный или подходящий для этой цели?
Существует ли телефон, созданный для этой цели?
Насколько я знаю, нет. Есть некоторые телефоны, которые очень легко рутировать, и другие, на которых легко полностью заменить прошивку, и на которых есть хорошо протестированные “кастомные ROM”, которые могут быть более удобными для pentest.
Относительно легко создать модифицированный базовый образ Android, который позволяет пользователю обойти проверки валидации сертификатов (включая pinning) через стандартный runtime (приложения, которые делают свою собственную TLS верификацию, возможно, через встроенный OpenSSL или аналогичный, будет труднее обойти обобщенно). Я не знаю о таком, но это довольно распространенная практика для кастомных ROM. Вам нужно будет добавить драйверы и т.д. для каждого устройства в базовый образ, но, по крайней мере, для некоторых устройств это уже решенная проблема.
В качестве альтернативы, вы могли бы попробовать создать модифицированную версию системной библиотеки javax.net.ssl.TrustManager – или какой-либо другой библиотеки, которая обрабатывает конфигурации сетевой безопасности – которую можно установить на рутированный, но в остальном стандартный систему, чтобы отключить cert pinning / переключиться на pinning собственных сертификатов тестировщика.
Я не знаю о библиотеке, которая в настоящее время это делает, не говоря уже о образе Android, который включает такую функциональность. Это потребует некоторой реверс-инжиниринга, хотя реверс-инжиниринг для Android довольно прост. Если кто-то уже сделал это (или мог бы легко) и выпустил это публично (или был бы готов сделать это), вероятно, это было бы на форуме/сообществе хакеров телефонов, таком как xda-developers.
Ответ или решение
Вопрос о наличии специализированного мобильного телефона для тестирования безопасности мобильных приложений является актуальным и требует рассмотрения нескольких аспектов.
На данный момент специализированные мобильные устройства, которые были бы изначально настроены для пентестинга мобильных приложений, не находятся в широкой продаже. Однако существуют альтернативные решения, которые могут значительно облегчить процесс тестирования.
Возможные решения:
-
Пользовательские ROM и устройство с легким рутингом: Некоторые смартфоны хорошо поддаются рутированию, и для них доступны специальные пользовательские ROM, которые можно установить. Такие версии Android могут быть настроены для более свободной работы с сертификатами, в том числе для отключения проверки сертификатов и атаки с использованием MITM (человек посередине). Примеры таких устройств включают устройства от компаний, таких как Google (линия Pixel) или некоторые модели от OnePlus, которые имеют обширную поддержку сообществом.
-
Создание модифицированного образа Android: Если у вас есть навыки работы с программным обеспечением, вы можете создать модифицированный базовый образ Android с отключенной проверкой сертификатов. Это сложный, но выполнимый процесс, который требует хорошего понимания работы с системными библиотеками Android.
-
Использование специализированных инструментов: Вместо поиска специализированного телефона вы можете использовать такие инструменты, как Burp Suite или OWASP ZAP, которые позволяют перехватывать и анализировать трафик мобильных приложений. Это может быть сделано в сочетании с эмуляторами (например, Genymotion) с установленным рутом, чтобы обойти некоторые ограничения.
-
Модификация системной библиотеки: Альтернативно, вы можете рассмотреть возможность модификации библиотеки, отвечающей за управление безопасностью сети (например,
javax.net.ssl.TrustManager
). Это позволит вам настраивать поведение проверки сертификатов на рутированном устройстве.
Рекомендации по выбору устройства:
- Устройство с активным сообществом: Выбирайте смартфоны, которые имеют активное сообщество разработчиков (например, XDA Developers). Это даст вам доступ к ресурсам и возможным модификациям.
- Мощное оборудование: Убедитесь, что устройство имеет достаточные технические характеристики, чтобы адекватно поддерживать инструменты для тестирования безопасности и обработку данных.
Заключение:
Специализированного мобильного телефона, готового к тестированию безопасности приложений, пока не существует. Тем не менее, вы можете использовать один из вышеупомянутых подходов для настройки уже имеющегося устройства. Разработка пользовательских ROM или модификация существующих прошивок – это путь, который может открыть новые возможности для проведения пентестов на мобильных платформах. Рекомендуется также следить за новыми инструментами и ресурсами в сообществе мобильной безопасности, так как ситуация быстро меняется.