Xakep #305. Многошаговые SQL-инъекции
В распоряжение экспертов сайта Android Police попал системный дамп LG Nexus с операционной системой Android 4.2, которая ещё находится в разработке. Хотя список официальных функций Android 4.2 не утверждён и не опубликован, но анализ этого дампа позволяет предположить, что разработчики сделали особый упор на безопасность системы.
В Settings APK обнаружены такие строки:
<string name="selinux_status">SELinux status</string>
<string name="selinux_status_disabled">Disabled</string>
<string name="selinux_status_permissive">Permissive</string>
<string name="selinux_status_enforcing">Enforcing</string>
Как можно понять, в новую версии Android внедрили код SELinux (Security-Enhanced Linux, то есть Linux с улучшенной безопасностью), реализацию системы мандатного управления доступом. Это значит, что разграничение доступа к объектам основано на назначении метки конфиденциальности для информации, содержащейся в объектах, и выдаче официальных разрешений (мандатов) на обращение к информации такого уровня конфиденциальности.
В SELinux также входят модифицированные версии утилит (ps, ls, и др.), которые обеспечивают поддержку новых функций ядра, плюс реализована поддержка мандатного управления доступом со стороны файловой системы. Права доступа определяются самой системой при помощи специально определённых политик.
В SELinux нет концепции рута, то есть пользователя с неограниченными правами доступа ко всем файлам. Мандаты выдаются администратором для каждого объекта и процесса в системе. Таким образом, Android 4.2 сможет более эффективно противостоять внедрению троянов, которые под правами рута пытаются исполнить вредоносный код.
Кроме мандатного управления доступом, в Android 4.2 появился режим “Always-on VPN”, то есть режим постоянно включённого VPN. В этом режиме подключение к VPN сохраняется даже после перезагрузки аппарата.
<string name="vpn_menu_lockdown">Always-on VPN</string> <string name="vpn_lockdown_summary">Select a VPN profile to always remain connected to. Network traffic will only be allowed when connected to this VPN.</string> <string name="vpn_lockdown_none">None</string> <string name="vpn_lockdown_config_error">Always-on VPN requires an IP address for both server and
Ещё одно нововведение в Android 4.2 — функция дополнительного подтверждения при отправке платных SMS.
<string name="sms_short_code_confirm_title">Send SMS to short code?</string> <string name="sms_premium_short_code_confirm_title">Send premium SMS?</string> <string name="sms_short_code_confirm_message"><b>%1$s</b> would like to send a text message to <b>%2$s</b>, which appears to be an SMS short code.<p>Sending text messages to some short codes may cause your mobile account to be billed for premium services.<p>Do you want to allow this app to send the message?</string> <string name="sms_premium_short_code_confirm_message"><b>%1$s</b> would like to send a text message to <b>%2$s</b>, which is a premium SMS short code.<p><b>Sending a message to this destination will cause your mobile account to be billed for premium services.</b><p>Do you want to allow this app to send the message?</string> <string name="sms_short_code_confirm_allow">Send message</string> <string name="sms_short_code_confirm_deny">"Don't send"</string> <string name="sms_short_code_confirm_report">Report malicious app</string>