Как стать автором
Обновить

Комментарии 18

Взлом через кэш процессора на JavaScript через браузер! Скоро форт Нокс ломанут пластмассовым совочком и игрушечным экскаватором из песочницы в Москве.
По мнению авторов, единственным способом защиты для пользователя является использование программ вроде NoScript, которые блокирует выполнение сторонних скриптов JavaScript в браузере.

Как определяется набор «белых» скриптов для подобных инструментов? При полном отключении JS сейчас практически ни один сайт не работает, а множество «хороших» нужных для сайта скриптов тянутся с доменов с невнятными именами.
Боюсь, что никак. Создав JavaScript Netscape фактически позволила кому угодно выполнять произвольный код с правами пользователя. Тогда это не казалось опасным, потому что он был тормозным и ничего не мог. Теперь от него хотят rich-приложений, кодеков видео и т.д.

Похоже flash был решетом не потому что его писали криворучки, а потому что был крайне соблазнительным каналом запуска произвольного кода. Теперь его место прочно занял JavaScript.

Увы, но решение тут только одно, оно известно из криптографии (функция безопасного сравнения памяти). Придётся убить производительность JavaScript, заставив его работать с постоянной скоростью, не быстрее худшего случая.
Создав JavaScript Netscape фактически позволила кому угодно выполнять произвольный код с правами пользователя
Этим вы заявляете, что в каждой реализации js-интерпретатора есть существенные ошибки, типа переполнения буфера, или вызова методов объекта, который раньше был удалён.
Придётся убить производительность JavaScript, заставив его работать с постоянной скоростью, не быстрее худшего случая
Такие меры против лишь одного вектора атаки (дерандомизации ASLR), который сам по себе безобидный? Проще вообще отказаться от ASLR, тем более, что он уменьшает производительность OS и всех приложений.
тим вы заявляете, что в каждой реализации js-интерпретатора есть существенные ошибки

Нет, хотя эмпирически это так. Я заявляю, что JavaScript в браузерах предоставляет возможность запуска произвольного кода из любых, посещённых пользователем источников, без ведома и позволения пользователя. И не важно, что он выполняется в песочнице виртуальной машины. Это всё равно выполняемый код. Это всё равно несравненно привлекательнее, чем искать уязвимости в библиотеках обработки изображений, например. Такая уязвимость не позволить эксплуатировать её с ASLR, но в сочетании с JavaScript — очень даже.

Проще вообще отказаться от ASLR

Зачем, когда от одиночных уязвимостей, не позволяющих выполнить сложный код он спасает?
Тогда нужно убрать замечание «с правами пользователя».
Потому что с правами пользователя — это возможность создать файл на рабочем столе, или отправить письмо с почтового аккаунта. Что невозможно без выхода из песочницы браузера.
Нет, потому что де факто ограниченный выход из песочныцы не представляет проблемы. Во всех браузерах регулярно находят ошибки, связанные с безопасностью. Так что если вам нужно какое-нибудь переполнение, чтобы выскочить из песочницы и пошакалить дальше — нужно лишь немного подождать. В пределах пары месяцев.
>> Они выложили исходники скриптов JavaScript

Не обнаружив по ссылке ни одного JS файла, решил посмотреть оригинал статьи:

We are not going to release the JavaScript version of AnC in order to protect Internet users from the AnC attack
В статье постоянно всплывает некий таймер, взломанный, измененный и т.п. Как понимать фразу «Авторы эксплойта написали собственный таймер.»? Как именно они это сделали? Зачем? И самое главное, они внесли изменения в код браузера?
Могу предположить, что они взяли какую-то атомарную операцию за единицу времени, и относительно этой операции считают. это только предположение
НЛО прилетело и опубликовало эту надпись здесь
Тест не был заказан производителями IE+Safari?
Просто интересно, если почему исследовали лишь два браузера из всех используемых.
Например, midori 0.5.11, не говоря про неизмеримое количество на зеленом роботе.
Не совсем понял, ну найдут они значения таблицы ASLR, но как по этим смещениям записать машинный код?
НЛО прилетело и опубликовало эту надпись здесь
Проблема-то не в «записать по этим смещениям», а «записать эти смещения куда-то, чтобы вызвать какую-то функцию».
НЛО прилетело и опубликовало эту надпись здесь
Когда проектировались таблицы трансляций, ASLR и в планах не было.
Проблема в записи этих смещений
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории