Главная | Регистрация | Вход Приветствую Вас Гость | RSS
    Меню сайта
    Наши Группы
Группа в STEAMГруппа Вконтакте

    Связь с гл.админом

 M-agent: cs-rdn@mail.ru

 ICQ: 810-884-80

 Skype: rudnycs

    Категории раздела
Новости в мире кино [15]
Новости мира игр [445]
С праздником! [8]
Новости интернета [162]
Болезни [1]
Новости сервера [23]
Мувики [386]
Скрипты Ucoz [0]
Услуги и акции нашего портала [1]
    Наши сервера
Главная » 2013 » Февраль » 4 » Восемь символов, которые убивают любую программу OS X
19:38
Восемь символов, которые убивают любую программу OS X
Во встроенном модуле валидации форматов данных операционной системы OS X обнаружился забавный баг. Если написать в любом приложении OS X восемь символов “File:///", то программа падает. Баг распространяется и на текстовый редактор, и на консоль, если попробовать из консоли открыть файл с краш-репортом. Более того, рушится даже сама программа Crash Reporter UI, если вы попытаетесь отправить в Apple сообщение о баге.

Как сказано выше, баг присутствует во встроенном модуле проверки форматов данных операционной системы OS X, начиная с версии OS X Mountain Lion (10.8), включая самую последнюю бету. В предыдущих версиях OS X бага нет. Нештатное поведение присутствует во всех программах, которые используют этот модуль. Это все нативные приложения OS X 10.8+, а также многие сторонние программы, в том числе браузер Google Chrome.

Кроме заветной комбинации “File:///”, падение можно спроворцировать комбинациями типа "File://a" или "File://aa", или с другими символами, если набирать быстро или медленно, но здесь результат не гарантирован. Люди продолжают эксперименты (см. видео).



Одно из наиболее достоверных объяснений гласит, что баг связан с механизмом автоматического определения форматов checkDataDetectors. Модуль checkDataDetectors извлекает из текста все URL’ы файлов по схеме file:// и передаёт их для обработки в DDResultCopyExtractURL. Там осуществляется валидация URL’в, а в случае “File:///" и тому подобных строк выдаётся исключение NSInternalInconsistencyException. Из-за него и рушится любая программа, потому что это исключение никак не обрабатывается.

Разница во времени падения программы связана с тем, что модуль NSSpellCheckerCheckString срабатывает не сразу, а через определённую паузу после окончания ввода символов.

Чтобы избавиться от бага при вводе символов с клавиатуры, можно зайти в настройки System Preferences – Language & Text – Text и убрать птички с пунктов Correct spelling automatically и Use symbol and text substitution. Однако, модуль checkDataDetectors всё равно будет срабатывать при открытии других файлов, что открывает некоторые возможности по написанию эксплойтов для OS X, в том числе с запуском собственного шелл-кода.
Категория: Новости интернета | Просмотров: 329 | Добавил: TRoLoLo | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
    Поиск
    Профиль

Гость !


    Наш опрос
Как ты попал на сервер?
Всего ответов: 16
    Наш баннер
Мы будем вам признательны, если вы разместите нашу кнопку у себя на сайте. Если вы хотите обменяться с нами баннерами, пишите в гостевую книгу:

Рудненский игровой портал Counter-Strike


    Друзья сайта
X-STREAM Всё для CS, CSS, CS:GO, GTA:SAMP
Cs-Rap.ru Все для CS 1.6 Моды Патчи Плагины и другое
    Погода в Рудном
Рудный
    Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
    Статистика
Web100kz.com - каталог сайтов
Cs-Rdn.3dn.ru