- PVSM.RU - https://www.pvsm.ru -
Компания Google раскрыла некоторые подробности [1], как осуществляется тестирование браузера Chrome на уязвимости. Для этого они применяют метод фаззинга [2] (fuzz testing), то есть используют методику тестирования, при которой на вход программы подаются невалидные, непредусмотренные или случайные данные.
Идея заключается в том, чтобы протестировать максимально возможное количество вариантов. Естественно, для этого нужны серьёзные ресурсы. Для тестирования Chrome создан целый кластер серверов ClusterFuzz, состоящий из нескольких сотен виртуальных машин.
В кластере одновременно работают около 6000 инстансов Chrome. Кластер автоматически берёт последнюю сборку Chrome LKGR (Last Known Good Revision) [3] и прогоняет её примерно через 50 млн тестовых случаев в сутки.
Google не жалеет ресурсов на ClusterFuzz: с момента запуска системы в конце 2011 года её мощность нарастили в четыре раза и планируют в ближайшие недели увеличить ещё вчетверо.
В системе автоматизирована не только генерация тестов и регистрация сбоев, но и ряд задач более высокого уровня:
С момента запуска кластера ClusterFuzz в конце прошлого года он обнаружил 95 уникальных уязвимостей в тестовых сборках Chrome. Из них 44 были идентифицированы и закрыты ещё до того, как этот код дошёл до стабильного релиза. После апгрейда системы компания Google надеется, что до выхода в стабильный релиз она будет исправлять ещё больше ошибок и у себя, и в open source проектах, на которых основан Chrome. Это, в том числе, WebKit [5] и FFmpeg [6].
Автор: alizar
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/testirovanie/6444
Ссылки в тексте:
[1] подробности: http://blog.chromium.org/2012/04/fuzzing-for-security.html
[2] фаззинга: http://habrahabr.ru/post/128503/
[3] LKGR (Last Known Good Revision): http://dev.chromium.org/developers/how-tos/get-the-code#TOC-LKGR
[4] Address Sanitizer: http://code.google.com/p/address-sanitizer/
[5] WebKit: http://www.webkit.org/
[6] FFmpeg: http://ffmpeg.org/
Нажмите здесь для печати.