книги хакеры / журнал хакер / 201_Optimized
.pdf
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
|
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
m |
||||||
|
|
|
|
|
|||||||
|
|
|
|
|
|
||||||
w |
|
|
|
|
|
|
|
|
|
||
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
|
-x cha |
|
|
|
|
Содержимое файла Tweak.xm
Поэтому изменим наш файл Tweak.xm так, чтобы он делал хоть что-то.
СОЗДАЕМ СОБСТВЕННЫЙ ТВИК
Для программирования твиков используются хуки. Хуки — это специальные функции, позволяющие внедрить собственный код в классы системы и других приложений, не меняя последние. Рассмотрим пример очень простого твика, который изменяет название оператора в верхней строке меню:
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
|
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
m |
||||||
|
|
|
|
|
|||||||
|
|
|
|
|
|
||||||
w |
|
|
|
|
|
|
|
|
|
||
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
|
-x cha |
|
|
|
|
В начале пишем %hook, в конце — %end. После %hook — название класса, который необходимо изменить. Далее перечисляем методы, которые собираемся менять (имена классов и методов можно найти в хидерах, устанавливаемых вместе с Theos). Далее можем писать наш код, который заменит код оригинального метода. В данном случае мы просто изменяем первый аргумент на нужный нам текст. В конце не забываем указать название измененного аргумента с помощью %orig.
Далее твик можно собрать, как было описано в предыдущем разделе. Однако, как ты сам видишь, он довольно примитивен и большой пользы не несет. Понять, как создать твики с более серьезной функциональностью, проще всего на примерах. Множество твиков с открытыми исходниками можно найти по ссылке, приведенной в начале статьи. Также рекомендую изучить исходники небезызвестного Райна Петрича, опубликованные в рамках проекта TweakWeak. Ну и напоследок репозиторий с несколькими примерами для начинающих.
ИСПРАВЛЯЕМ ОШИБКИ
Практически на любом этапе возможны ошибки. Опишем, как с ними бороться. Обычно трудные для устранения ошибки возникают при установке пакета. Начнем с простого и перейдем к более сложному.
Если возникает ошибка «Your current SYSROOT ...
appearence to be missing», значит, версия системы в файле control не соответствует номеру версии iOS SDK, которыйустановленнакомпьютере.Длятогочтобыузнать правильный номер iOS SDK (который хранится в Xcode), нажимаем правой кнопкой мыши на Xcode и выбираем опцию «Показать содержимое пакета». Здесь в папке /Contents/Developer/Platforms/iPhoneOS.platform/
Developer/SDKs находится папка iPhoneOSX.X.sdk. Запоминаем номер версии и переходим в файл Makefile. От-
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
|||
|
|
X |
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|||
P |
|
|
|
|
|
NOW! |
o |
|
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
|
||||
|
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
|
.c |
|
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
|
||
|
|
|
|
-xcha |
|
|
|
|
крываем его в TextEdit и изменяем соответствующий параметр: |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
|
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
m |
||||||
|
|
|
|
|
|||||||
|
|
|
|
|
|
||||||
w |
|
|
|
|
|
|
|
|
|
||
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
|
-x cha |
|
|
|
|
После данной операции ошибка, скорее всего, исправится, однако могут появиться другие.
Очень часто в пакете или в той или иной сборке Theos отсутствуют некоторые хидеры iOS. Это может привести к ошибке «fatal error: ile YYY/XXX.h is not found». Решить проблему просто: необходимо добавить такие файлы в Theos. Находятся данные файлы по пути /opt/theos/include/. Далее идет папка YYY, а в ней — файл XXX. Вбиваем название пропавшего файла в поиск и находим сам файл или его содержимое на сайте GitHub. Создай текстовый файл с данным содержимым и необходимым названием, а затем просто смени его расширение на .h и перемести его в данную папку. Ошибка должна пропасть.
Вполне возможно, какие-то папки, в которые при сборке необходимо будет записывать информацию, будут защищенными от записи. В таком случае вероятна ошибка «ile XXX is not writable». Просто выполни команду sudo chmod -R 777 /путь/к/пакету, и после подтверждения пароля ошибка должна исчезнуть.
Вероятна также критическая ошибка «architecture is not support». Это значит, что в твике отсутствует поддержка 32-битной или 64-битной архитектуры. Первым делом открой Makefile и посмотри, правильно ли указана архитектура:
Если arm64 не хватает — допиши. Затем перейди в /opt/theos/lib/ и замени файл libsubstrate.dylib на данный файл. Если не поможет и это — очевидно, сам твик не оптимизирован и требует доработки.
Наконец, при установке пакета на устройство может возникнуть такая ошибка, как на скрине справа. Данная ошибка происходит из-за несовместимости смартфонной и компьютерной версии команд dpkg-deb. Для решения проблемы открой файл /opt/theos/makeiles/deb.mk. Найди строчку $(FAKEROOT) -r dpkg-deb -bи измени ее на $(FAKEROOT) -r dpkg-deb -Zlzma -b. После этого файл должен установиться корректно.
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
|
X |
|
|
|
|
|
|||
|
|
- |
|
|
|
|
|
d |
|
||
|
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
||
|
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
m |
||||||
|
|
|
|
|
|||||||
|
|
|
|
|
|
||||||
w |
|
|
|
|
|
|
|
|
|
||
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
|
-x cha |
|
|
|
|
Файл deb.mk
Разумеется, это не все возможные ошибки, и многие получится устранить только при хорошем знании Objective-C. Здесь описаны те, с которыми столкнулся (и которые устранил) автор материала.
ЗАКЛЮЧЕНИЕ
В данной статье рассмотрен лишь начальный этап изучения разработки твиков, первые шаги в программировании под iOS. Дальнейшая работа — создание функциональных твиков и серьезная модификация имеющихся — требует основательных знаний в Objective-C и объектно-ори- ентированного программирования. Тем не менее теперь ты знаешь общие этапы разработки, пути решения самых распространенных проблем на ключевых стадиях создания твиков, а дальше уже все зависит лишь от воли разработчика.
INFO
Твики с открытым исходным кодом
Theos
Brew
Cydia Substrate
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
|||
|
|
X |
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|||
P |
|
|
|
|
|
NOW! |
o |
|
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
X-MOBILE |
|
|
|
|
df-xchan |
|
|
|
|||||
w Click |
to |
|
|
|
|
|
m |
|
|||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
|
.c |
|
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
|
e |
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
ПОСЛЕДНИЙ РУБЕЖ
10 ПРАВИЛ
ЗАЩИТЫ ДАННЫХ НА СМАРТФОНЕ
Денис Погребной denis2371@gmail.com
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
||||||
|
|
X |
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
||||||
|
- |
|
|
|
|
|
d |
|
|
|
|
- |
|
|
|
|
|
d |
|
||||||
|
F |
|
|
|
|
|
|
|
t |
|
|
|
|
F |
|
|
|
|
|
|
|
t |
|
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
|
|
|
|
|
r |
|||||
P |
|
|
|
|
|
NOW! |
o |
|
|
P |
|
|
|
|
|
NOW! |
o |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
|
|
BUY |
|
|
||||||||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
|
to |
|
|
|
|
|
|
||
w Click |
|
|
|
|
|
m |
|
w Click |
|
|
|
|
|
m |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
|||
|
w |
|
|
|
|
|
|
|
|
o |
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
g |
.c |
|
|
|
|
. |
|
|
|
|
g |
.c |
|
||||||
|
|
p |
|
|
|
|
|
|
|
|
|
|
|
p |
|
|
|
|
|
|
|
||||
|
|
|
df |
|
|
n |
e |
|
Все мы, любители рутинга, хаков и сторонних прошивок, |
|
|
|
|
df |
|
|
n |
e |
|
||||||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
|
|
-x cha |
|
|
|
|
|
сталкиваемся с одной большой проблемой — резким снижением уровня защиты конфиденциальных данных. Разблокировав загрузчик и установив кастомную консоль восстановления, мы полностью открываем доступ к нашим данным любому, кто сможет завладеть смартфоном. На первый взгляд, сделать с этим ничего нельзя, но это только на первый. Я покажу, как решить проблему защиты данных на взломанном (и не только) устройстве.
В чем, собственно, проблема? Да просто в том, что тот же кастомный recovery позволяет получить доступ ко всей памяти смартфона с правами root. С помощью recovery можно вытащить из смартфона любую информацию или снять пин с экрана блокировки. Вторая проблема — загрузчик. Разлоченный бутлоадер также позволяет сделать практически все, в том числе прошить на смартфон тот же кастомный recovery и, как следствие, получить доступ ко всему. Попробуем разобраться с этими проблемами.
1. БЛОКИРУЕМ ЗАГРУЗЧИК
Чтобы закрыть доступ к загрузчику, его можно заблокировать (да, это возможно). Делать это следует уже после установки кастомного recovery и кастомной прошивки. На многих устройствах залочить загрузчик получится с помощью простой команды:
Да, загрузчик всегда можно будет разблокировать снова, но во время этой операции данные со смартфона будут стерты, а значит, не попадут в чужие руки. Существует опасность, что загрузчик будет взломан и разблокирован без вайпа данных, но это универсальная проблема, от нее ты пострадаешь даже в том случае, если будешь сидеть на стоке.
2. ПРОШИВАЕМ ПРАВИЛЬНЫЙ RECOVERY
ОK, загрузчик у нас заблокирован, но остался кастомный recovery, позволяющий сделать со смартфоном все что угодно. Чтобы решить эту проблему, нам потребуется связка из последнего TWRP и штатного механизма шифрования данных. После включения шифрования (об этом ниже) TWRP начнет спрашивать пароль (который совпадает с пином экрана блокировки).
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
|
|
|
C |
|
E |
|
|
|
||||||
|
|
X |
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
||||||
|
- |
|
|
|
|
|
d |
|
|
|
- |
|
|
|
|
|
d |
|
||||||
|
F |
|
|
|
|
|
|
|
t |
|
|
|
F |
|
|
|
|
|
|
|
t |
|
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
|
|
|
|
|
r |
||||
P |
|
|
|
|
|
NOW! |
o |
|
P |
|
|
|
|
|
NOW! |
o |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
|
BUY |
|
|
||||||||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
to |
|
|
|
|
|
|
||
w Click |
|
|
|
|
|
m |
w Click |
|
|
|
|
|
m |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
w |
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
|||
|
w |
|
|
|
|
|
|
|
|
o |
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
g |
.c |
|
|
|
. |
|
|
|
|
g |
.c |
|
||||||
|
|
p |
|
|
|
|
|
|
|
|
|
|
p |
|
|
|
|
|
|
|
||||
|
|
|
df |
|
|
n |
e |
|
|
|
|
|
df |
|
|
n |
e |
|
||||||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
|
-x cha |
|
|
|
|
|
В качестве альтернативного пути можно вообще избавиться от кастомного recovery и вернуть на смартфон стоковый (перед залочкой загрузчика, само собой). Однако этот вариант подойдет только тем, кто не собирается обновлять прошивку в будущем.
3. СТАВИМ ПАРОЛЬ НА ЭКРАН БЛОКИРОВКИ
Самая главная защита устройства — это экран блокировки с паролем или графическим ключом. Именно с ними злоумышленнику предстоит столкнуться в первую очередь, так что пароль тут нужен хороший. Без залоченного экрана блокировки наши манипуляции с бутлоадером и recovery теряют смысл. Вор просто сдвинет слайдер, вытащит всю нашу инфу и быстро избавится от всех программ-антишпионов.
Так выглядит экран блокировки |
Экран настройки SmartLock |
сграфическим ключом
Сдругой стороны, в экране блокировки также может быть найдена уязвимость. Совсем недавно во всех версиях Android 5.0 и выше была найдена
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
||||||
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
||||||
|
- |
|
|
|
|
|
d |
|
|
|
|
|
|
- |
|
|
|
|
|
d |
|
||||||
|
F |
|
|
|
|
|
|
|
t |
|
|
|
|
|
|
F |
|
|
|
|
|
|
|
t |
|
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
|
|
|
|
|
|
|
r |
|||||
P |
|
|
|
|
|
NOW! |
o |
|
|
|
|
P |
|
|
|
|
|
NOW! |
o |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
|
|
|
|
BUY |
|
|
||||||||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
to |
|
|
|
|
|
|
||
|
|
|
df |
n |
|
|
|
|
уязвимость CVE-2015-3860, позволяющая «уронить» экран блокировки путем |
|
|
df |
n |
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
m |
|
|
|
|
|
|
|
m |
|||||||||||
w Click |
|
|
|
|
|
|
|
|
|
|
w Click |
|
|
|
|
|
|
|
|||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
|||
|
w |
|
|
|
|
|
|
|
|
o |
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
g |
.c |
|
|
|
|
|
|
. |
|
|
|
|
g |
.c |
|
||||||
|
|
p |
|
|
|
|
|
|
|
|
|
|
|
|
|
p |
|
|
|
|
|
|
|
||||
|
|
|
|
-xcha |
|
e |
|
|
|
|
|
|
|
|
|
-x cha |
|
e |
|
||||||||
|
|
|
|
|
|
|
|
|
ввода очень длинного пароля. Уязвимость исправлена Android 5.1.1 LMY48M |
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
от 9 сентября, поэтому не забываем обновлять свою кастомную прошивку |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
и переходим на использование графических ключей. |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
Чтобы пин не раздражал, рекомендую пользоваться SmartLock. Это функ- |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
ция Android 5.0, позволяющая указать места, в которых смартфон не будет тре- |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
бовать ввода графического ключа или пароля. Можно добавить bluetooth-у- |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
стройства (умные часы, например), при подключении к которым девайс будет |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
оставаться разблокированным. Еще присутствуют функции разблокировки |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
по голосу, фотографии хозяина и совсем странная «Физический контакт» (это |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
когда смартфон «понимает», что находится в руках владельца). |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
Активировать SmartLock можно в настройках в разделе «Безопасность» (а |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
на некоторых устройствах в настройках экрана блокировки). Кстати, в более |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
старых версиях реализовать аналог можно с помощью Tasker. Это планиров- |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
щик, позволяющий по разным событиям производить действия или списки |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
действий. Он на порядок функциональнее SmartLock. |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
4. ВКЛЮЧАЕМ ШИФРОВАНИЕ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Теперь, когда на экране блокиров- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
ки есть пин, мы можем использовать |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
стандартную |
функцию шифрования |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
данных Android. Она зашифрует ката- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
лог /data, содержащий все сторонние |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
приложения, их настройки и конфи- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
денциальные данные. Для включения |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
заходим в настройки и в пункте «Без- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
опасность» выбираем «Зашифровать |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
данные». Для этой операции понадо- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
бится почти полностью заряженный |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
аккумулятор, |
подключенное заряд- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ное устройство и больше одного часа |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
времени. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Как результат, мы получим пол- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
ностью зашифрованный смартфон |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
с пин-кодом на экране блокировки, |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
залоченным загрузчиком и запаро- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
ленной кастомной консолью восста- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
новления. Практически неприступная |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
крепость. Злоумышленник не сможет |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
даже сбросить смартфон до завод- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
ских настроек. Но есть один нюанс: |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
содержимое карты памяти будет за- Включаем шифрование |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
||||||
|
|
X |
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
||||||
|
- |
|
|
|
|
|
d |
|
|
|
|
- |
|
|
|
|
|
d |
|
||||||
|
F |
|
|
|
|
|
|
|
t |
|
|
|
|
F |
|
|
|
|
|
|
|
t |
|
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
|
|
|
|
|
r |
|||||
P |
|
|
|
|
|
NOW! |
o |
|
|
P |
|
|
|
|
|
NOW! |
o |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
|
|
BUY |
|
|
||||||||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
|
to |
|
|
|
|
|
|
||
|
|
|
df |
n |
|
|
|
|
шифровано только в том случае, если она встроенная. Обычная карта памяти |
|
|
df |
n |
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
m |
|
|
|
|
|
|
|
m |
|||||||||
w Click |
|
|
|
|
|
|
|
|
w Click |
|
|
|
|
|
|
|
|||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
|||
|
w |
|
|
|
|
|
|
|
|
o |
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
g |
.c |
|
|
|
|
. |
|
|
|
|
g |
.c |
|
||||||
|
|
p |
|
|
|
|
|
|
|
|
|
|
|
p |
|
|
|
|
|
|
|
||||
|
|
|
|
-xcha |
|
e |
|
|
|
|
|
|
|
-x cha |
|
e |
|
||||||||
|
|
|
|
|
|
|
|
|
защищена не будет, и нам надо что-то с этим делать. |
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5. ЗАЩИЩАЕМ КАРТУ ПАМЯТИ
Для защиты всяких секретных документов, фоток и других файлов на карте памяти существуют специальные программы:
•CyberSafe Mobile — не требует ни прав root, ни поддержки FUSE в ядре (то есть сейвы будут доступны только через само приложение);
•Cryptonite — использует FUSE, поэтому зашифрованные данные будут доступны всем приложениям;
•LUKS Manager — как и предыдущий, позволяет смонтировать криптоконтейнеры, так что они будут доступны всем приложениям.
6.ОТКЛЮЧАЕМ ADB
Все наши бастионы быстро падут, если злоумышленник сможет использовать ADB для доступа к устройству. Поэтому его необходимо отключить. Замечу, однако, что операция имеет смысл только на Android ниже 4.3. В более поздних версиях система позволит подключиться только после подтверждения доступа со стороны смартфона, что не получится сделать, минуя заблокированный экран. Но уповать на это не стоит. В системе могут быть найдены уязвимости.
7. ПРЯЧЕМ ПАРОЛИ ОТ ПОСТОРОННИХ ГЛАЗ
Любой браузер для Android умеет сохранять пароли, однако если взломщик все-таки пробьется к содержимому смартфона, он легко сможет унести базу паролей и, даже если она зашифрована, получить доступ к содержимому. Поэтому нам нужен надежный менеджер паролей. Выбор есть на любой вкус и цвет. Рассмотрим три наиболее популярных.
• LastPass — одно из самых известных приложений подобного рода. Правда, тот еще комбайн. По функциональности не сильно обходит конкурентов.
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
||
|
|
|
C |
|
E |
|
|
|
|
|
|
|
C |
|
E |
|
|
|
||||||
|
|
X |
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
||||||
|
- |
|
|
|
|
|
d |
|
|
|
- |
|
|
|
|
|
d |
|
||||||
|
F |
|
|
|
|
|
|
|
t |
|
|
|
F |
|
|
|
|
|
|
|
t |
|
||
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
D |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
|
|
|
|
|
|
|
r |
||||
P |
|
|
|
|
|
NOW! |
o |
|
P |
|
|
|
|
|
NOW! |
o |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|
|
BUY |
|
|
||||||||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
|
to |
|
|
|
|
|
|
||
w Click |
|
|
|
|
|
m |
w Click |
|
|
|
|
|
m |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
w |
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
|||
|
w |
|
|
|
|
|
|
|
|
o |
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
g |
.c |
|
|
|
. |
|
|
|
|
g |
.c |
|
||||||
|
|
p |
|
|
|
|
|
|
|
|
|
|
p |
|
|
|
|
|
|
|
||||
|
|
|
df |
|
|
n |
e |
|
|
|
|
|
df |
|
|
n |
e |
|
||||||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
|
|
-x cha |
|
|
|
|
|
Интересна функция автозаполнения, которая работает даже в сторонних приложениях, например в браузере Chrome (хотя плата за нее — возникновение тормозов и просадка батареи, так как приложение будет отслеживать все, что происходит на экране). Присутствует поддержка сканеров отпечатков пальцев. Триал-версия дается на две недели, потом оплата доллар в месяц.
•Dashlane — 256-битное AES-шифрование, синхронизация с разными устройствами (Windows, Mac, iOS и Android), автоматическое создание паролей на устройстве, встроенный браузер. Приложение позволяет хранить различную важную информацию (конфиденциальные заметки). Интересная функция — блокировка скриншотов. Предусмотрен ряд мер безопасности на случай попадания телефона в чужие руки. За 29 долларов в год появляется поддержка облачной синхронизации между устройствами.
•Keepass2Android сохраняет данные в kdbx-файл, который поддерживается настольными версиями. Шифрование ведется по алгоритму AES (Rijndael)
256бит с заданным количеством проходов шифрования, может использоваться файл ключей. Способен синхрони-
зироваться с Dropbox, Google Drive, SkyDrive, работает с протоколами FTP и WebDAV. Присутствует версия, которая не поддерживает синхронизацию с облаком: Keepass2Android Offline. Обе версии бесплатны.
8.УСТАНАВЛИВАЕМ
СТОРОННИЙ АНТИВОР |
|
|
|
||
Еще один штрих к нашей конфигу- |
|
|
|
||
рации — антивор. Да, есть Device |
|
|
|
||
Manager, |
но |
его функциональность |
|
|
|
очень скромна. Поэтому мы поставим |
|
|
|
||
Avast Anti-Theft (rooted). Он содержит |
|
|
|
||
огромное количество функций (вклю- |
|
|
|
||
чение сигнала, поиск по GPS, сброс, |
|
|
|
||
блокировка, незаметное фото двумя |
|
|
|
||
камерами при попытке разблокиро- |
|
|
|
||
вать смартфон, управление по СМС, |
|
|
|
||
незаметный звонок для прослушива- |
|
|
|
||
ния воров и так далее), а кроме того, |
|
|
|
||
очень и очень живуч. |
|
|
|
||
Avast |
не |
только прописывается |
|
|
|
|
|
|
|||
в системный раздел, чтобы выдержать |
Не забываем ставить тут галочку |
|
|
||
сброс до заводских настроек, но и по- |
при установке |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|