`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Google намерена излечить Chrome от проблем с управлением памятью

+11
голос

Google намерена излечить Chrome от проблем с управлением памятью

Программные инженеры Google ищут пути устранения ошибок, связанных с управлением памятью в Chrome — самом популярном веб-браузере, используемом двумя из каждых трёх «сёрферов» Интернета.

На прошлой неделе компания сообщила, что на проблемы такого типа приходится примерно 70% всех серьёзных уязвимостей в кодовой базе Chrome. Эту цифру инженеры Google получили, проанализировав 912 багов «высокой» и «критической» серьёзности, которые были исправлены в стабильных релизах Chrome c 2015 года. С марта прошлого года 125 из 130 критических ошибок в этом браузере относились к проблемам повреждения памяти.

Проблемы некорректной работы с памятью в большинстве своём проистекают от использования в разработке языков C и C++. Эти доминирующие инструменты программирования были созданы в те древние времена, когда недочёты безопасности приложений ещё никто всерьёз не рассматривал как фактор риска. Поэтому C и C++ предоставляют программистам полный контроль над указателями (адресами) памяти. В обоих этих языках не предусмотрены предупреждения или ограничения, которые не позволяли бы совершать хотя бы основные ошибки в управлении памятью.

Такие ранние ошибки кодирования приводят к появлению в программном обеспечении целого букета уязвимостей управления памятью, таких как использование после освобождения (use-after-free), переполнение буфера (buffer overflow), висячие указатели (wild pointers), состояния гонки (race conditions), попытки двойного освобождения ячейки (double free) и другие.

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

В начале года корпорация MITRE, контролирующая в США правительственную базу уязвимостей, присудила переполнению буфера рейтинг самой опасной ошибки. На пятом месте — чтение за пределами выделенного буфера (out-of-bounds read) и на 7 — использование после освобождения.

Google в прошлую пятницу сообщила о планах наконец разобраться с вопросами безопасности памяти для Chrome.

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

В дальнейшем Google планирует заняться разработкой специализированных библиотек C++ для использования с кодовой базой Chrome — таких, которые имеют лучшую защиту от ошибок, связанных с памятью.

Производитель браузера также изучает проект MiraclePtr, целью которого является превращение критических уязвимостей use-after-free в неопасные сбои с минимальным ущербом для производительности и стабильности.

И напоследок, компания заявила, что, по примеру Microsoft, Mozilla и прочих, планирует везде, где только возможно применять «безопасные» языки программирования. Среди рассматриваемых кандидатов — Rust, Swift, JavaScript, Kotlin и Java.


Вы можете подписаться на наш Telegram-канал для получения наиболее интересной информации

+11
голос

Напечатать Отправить другу

Читайте также

 
 
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT