Articles of Безопасность

Почему бы не напрямую подключить Android к базе данных?

Я вижу, что многие люди пытаются подключить Android-устройство непосредственно в базе данных, такой как SQL Server или MySql, и ответы всегда одинаковы: используйте веб-службу. Почему бы не подключить напрямую устройство Android с базой данных? Я использую локальную сеть с моим Android-приложением.

SSLHandshakeException: Исключение сертификата с использованием HttpURLConnetion с Android 4.2.2

Я борюсь со странной проблемой, используя HttpURLConnection для вызова webservice api в Android. Я становлюсь ниже исключения ТОЛЬКО с Android версии 4.2.2 . Он отлично работает в Android 4.0.3, 4.3 и 4.4 и выше. Я использую ниже код для вызова службы api. HttpURLConnection mConn = (HttpURLConnection)mUrl.openConnection(); mConn.addRequestProperty("Connection", "close"); mConn.setConnectTimeout(CONNECTION_TIMEOUT); mConn.setReadTimeout(SOCKET_TIMEOUT); mConn.setUseCaches(true); mConn.setRequestMethod("POST"); String param = […]

Проверьте, что HTTP-запрос поступает из моего приложения для Android

Я извлекаю данные с внешнего сервера для использования с моим приложением для Android. Я хотел бы, чтобы эти данные были доступны только с моим приложением. Я использую стандартное http-соединение для получения данных с сервера apache / php в формате json. Я также отправляю некоторые параметры на сервер для получения соответствующих данных. Теперь я планирую сделать […]

Как эмуляция карт на основе программного обеспечения (HCE) гарантирует безопасность NFC?

При введении HCE для подражания карты не требуется защитный элемент (SE). В результате нет хранилища для хранения конфиденциальной информации приложения, имитирующего карту, например, баланса, CVV2, PIN-кода и т. Д. Я просто хочу знать, как андроид исправляет эту проблему? Где хранится конфиденциальная информация о приложениях? Использует ли Google Кошелек эту технологию? Если да, то как конфиденциальная […]

Сохраняет ли соль соль и зашифрованную защиту от взлома?

Я пишу приложение для Android, которое предназначено для шифрования и дешифрования файлов с использованием AES 256. Я использую режим AES-CBC и PBKDF2 для получения ключа AES из введенного пользователем пароля. Кроме того, я создаю безопасную псевдослучайную соль для ключа шифрования каждого файла. Я храню IV и соль с зашифрованным файлом, поэтому я могу перечитать их […]

Безопасные запросы веб-сервисов

Мне нужно сделать запросы к веб-службе через приложение Android. Webservice может быть спроектирован по мере необходимости. Мне кажется, что независимо от того, какой из подходов я выберу, кто-то, кто хочет его взломать, просто нужно будет перепроектировать код моей андроидной привязки (который не очень тяжелый), и я мог точно видеть, что я делаю, потому что я […]

Проверка биллинга в приложении для Android

Если я отключу проверку на удаленном сервере, я думаю, что процесс будет выглядеть примерно так: Android Market Application Remote Server |——–IN_APP_NOTIFY——->| | | |—–nonce—–>| | |<—-nonce——| |<-GET_PURCHASE_STATE_CHANGED-| | |—PURCHASE_STATE_CHANGED—>| | | |–verification->| | |<-verification–| Если я правильно понимаю, то nonce – уменьшить уязвимость атаки при повторном запуске, а проверка заключается в уменьшении уязвимости при спуфинге. […]

Как я могу создать безопасный API / Аутентификация для мобильных приложений для доступа к службе?

Я хочу предложить некоторые функции моего webapp, которые будут использоваться в других приложениях (я думаю в основном о смартфонах, поскольку они предлагают больше возможностей, например, GPS, Camera, ..). Из того, с чем я столкнулся до сих пор с точки зрения других API, например, GoogleMaps, является то, что сторонний разработчик зарегистрируется на моем сайте, он получает […]

Безопасность строковых ресурсов

Мне было интересно, что такое безопасность папок ресурсов Android (я особенно обеспокоен строками). Я знаю, я знаю, было бы смешно хранить пароль в Strings.xml. Это не так, но как легко заглянуть на эти ресурсы, получить доступ к разумной информации о приложении?

Невозможно извлечь скрытый показатель для Android KeyStore

Я хочу создать пару ключей RSA в Keystore Android. Так как Android 4.3 должен быть способен генерировать ключи RSA в системе Keystore системы Android. Я генерирую ключ RSA (отлично работает) Calendar notBefore = Calendar.getInstance(); Calendar notAfter = Calendar.getInstance(); notAfter.add(1, Calendar.YEAR); KeyPairGeneratorSpec spec = new KeyPairGeneratorSpec.Builder(ctx) .setAlias("key") .setSubject( new X500Principal(String.format("CN=%s, OU=%s", "key", ctx.getPackageName()))) .setSerialNumber(BigInteger.ONE) .setStartDate(notBefore.getTime()) .setEndDate(notAfter.getTime()).build(); […]