LINUX.ORG.RU
ФорумTalks

[Банальное решето! ] На Apple iOS 4 злоумышленник может удалённо выполнять любой код


0

0

Новая в Apple iOS 4 позволяет злоумышленникам удалённо выполнять любой код с привелегиями суперпользователя. Для заражения достаточно перейти в браузере на специально подготовленную web-страницу. Атака происходит следующем образом: при помощи javascript как изображение загружается специально подготовленный pdf-файл. При отображении данного документа iOS 4 распаковывает встроенный с помощью FlateDecode в PDF шрифт, попытка отобразить который вызывает переполнение стека, а дальше уже дело техники. Схематически данная атака выглядит так: image

На основе данной уязвимости построен и уже несколько дней функционирует сервис jailbreakme.com. Пользователю любого продукта Apple на iOS 4 достаточно зайти на эту страницу со своего устройства и нажать на кнопку для того, чтобы его телефон стал джейлбрейкнутым. Уязвимость считается критической, поскольку атака происходит незаметно для пользователя, а злоумышленник получает полный доступ к персональным данным, включая локальные данные приложений, записи адресной книги и пароли в браузере, а также возможность передавать их по сети. Никаких комментариев от Apple пока не поступало, единственный способ обезопасить своё устройство — это джейлбрейкнуть его и установить специальную утилиту, которая будет выдавать предупреждении о попытках браузера открыть любой PDF-документ.

> Пользователю любого продукта Apple на iOS 4 достаточно зайти на эту страницу со своего устройства и нажать на кнопку для того, чтобы его телефон стал джейлбрейкнутым

Единственный способ обезопасить своё устройство — это джейлбрейкнуть его

Клин клином вышибают, да...

Sadler ★★★
()

PDF шрифт, попытка отобразить который вызывает переполнение стека, а дальше уже дело техники. Схематически данная атака выглядит так: image

Это не только в Apple iOS 4. Видимо это общая болезнь, потому что к пакету ghostscript проект Debian недавно DSA 2080-1 выпустил для исправления сходных проблем с PDF-файлом, которые могли привести к запуску эксплойта или execution of arbitrary code.

rjaan ★★
()

...единственный способ обезопасить своё устройство — первым слить все контактные данные на вышеупомянутом сайте и больше в интернет не лазать.

//fixed

shty ★★★★★
()

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

RedPossum ★★★★★
()

SO SLOW

Это было еще в книжке какого-то хакера айфона (2009). Там этот сайт тоже указывался.

bk_ ★★
()

>iOS 4 распаковывает встроенный с помощью FlateDecode в PDF шрифт, попытка отобразить который вызывает переполнение стека

с привелегиями суперпользователя


в этой iOS настолько все плохо?

k0l0b0k ★★
()

и это, афаик, не только на iOS 4, 3.x какие-то тоже подвержены багу.

и это мы видим от компании так яростно сующей палки в колеса джейлбрейкеров.

mono ★★★★★
()
Ответ на: комментарий от mono

>это даже не решето.. это открытые двери с табличкой «поимей меня».

А разве само гордое обладание продукцией Apple не подразумевает эту саму табличку-призив на владельце?

Led ★★★☆☆
()
Ответ на: комментарий от MadCAD

Не обязательно, просто типичная ошибка. С такой С!!! Вот только почему в айфоне браузер работает под рутом?

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от MadCAD

MadCAD> эпплы пионерят код из ghostscript?

Да. Они это дело любят.

Quasar ★★★★★
()
Ответ на: комментарий от DNA_Seq

DNA_Seq> Вот только почему в айфоне браузер работает под рутом?

Фиг его знает. Но это значит, что надо непременно залить на айфоны «товарищей» однострочник на перле, чтобы знали, почему нельзя пользоваться техникой apple.

Quasar ★★★★★
()
Ответ на: комментарий от rjaan

> Это не только в Apple iOS 4.

И всё-таки выполнение кода с привилегиями _суперпользователя_ (если это так) - это проблема только iOS

Evgueni ★★★★★
()
Ответ на: комментарий от MadCAD

> ВНЕЗАПНО: эпплы пионерят код из ghostscript?

Не удивлюсь, что это так ...

rjaan ★★
()
Ответ на: комментарий от Evgueni

>И всё-таки выполнение кода с привилегиями _суперпользователя_ (если это так) - это проблема только iOS

Тебе будет легче, если твои личные данные потырит программа, запущенная под обычным пользователем?

adarovsky ★★★★
()
Ответ на: комментарий от adarovsky

Обычная программа не имеет доступ к моим данным по умолчанию (это если мы, например, про Android говорим).

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

>Обычная программа не имеет доступ к моим данным по умолчанию (это если мы, например, про Android говорим).

То есть, скайп на андроиде работать не будет?

adarovsky ★★★★
()
Ответ на: комментарий от adarovsky

Будет, но при этом спросив кучу разрешений… А вообще что скайпу нужно кроме интернета и мультимедии?

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Список номеров телефонов, например. То бишь, адресную книгу. И чтобы её показать, надо каким-то образом давать доступ на чтение этой книги. Либо на каждый чих заводить демона, чтобы он сначала спрашивал, а потом отдавал.

adarovsky ★★★★
()
Ответ на: комментарий от adarovsky

>>Обычная программа не имеет доступ к моим данным по умолчанию (это если мы, например, про Android говорим).

То есть, скайп на андроиде работать не будет?

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

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

> Чтобы получить доступ к данным при установке программа должна спросить разрешение

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

adarovsky ★★★★
()
Ответ на: комментарий от adarovsky

> Что помешает программе не спрашивая разрешения прочитать файл с телефонной книгой, и переслать его куда-нибудь?

Например то, что телефонная книга принадлежит другой группе, которая программе не даётся без разрешение пользователя. Это всего лишь один из вариантов.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

> Например то, что телефонная книга принадлежит другой группе, которая программе не даётся без разрешение пользователя. Это всего лишь один из вариантов

В Андроиде-то как сделано?

adarovsky ★★★★
()
Ответ на: комментарий от adarovsky

Приложение при установке запрашивает разрешение на доступ к телефонной книге - я либо соглашаюсь либо посылаю это приложение куда подальше.

Evgueni ★★★★★
()
Ответ на: комментарий от adarovsky

Например то, что разрешение может выдать только одна программа, модифицировать которую ты не имеешь права (нет рута по умолчанию). А программа уж так устроена, что при выдачи разрешения всегда запрашивает пользователя.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

В Android API я этого не вижу. Вижу аналог iPhone: sandbox для приложения, и в хитром XML описания permissions.

adarovsky ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.