Врага нужно знать в лицо

Вторник, 4 мая 2010 г.

Кросс-публикация из нашего блога о безопасности в интернете.

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

Одна из практических работ посвящена распространенным уязвимостям в веб-приложениях. В ней реализован принцип "хакера может поймать только хакер" – в одном из ее блоков описаны варианты эксплуатации этих уязвимостей.

Эту практическую работу, "Уязвимости и защита веб-приложений", мы подготовили совместно с Университетом Google Code и Лабораторией Google и рады сегодня ее представить. Ее цель – научить разработчиков выявлять и исправлять уязвимости, а также не допускать их появления в их собственных приложениях. Практическая работа построена на базе Gruyere, небольшого, но функционального приложения для микроблогов, в котором содержится множество ошибок безопасности. Эта практическая работа содержит задания по таким уязвимостям, как межсайтовый скриптинг (XSS), подделка межсайтовых запросов (XSRF) и включение межсайтового скрипта (XSSI), а также манипуляции с состояниями клиента, обход каталога и уязвимости AJAX и конфигурации. В ней также показано, как простые ошибки могут привести к раскрытию информации, DoS-атакам и удаленному выполнению кода.

Закон Линуса гласит: "При достаточном количестве глаз баги выплывают на поверхность". Нужно только знать, на что обращать внимание. Для этого Gruyere содержит реальные ошибки безопасности – те, которые встречаются во множестве других приложений. Исходный код Gruyere публикуется по лицензии Creative Commons и может использоваться при проведении упражнений на взлом методом прозрачного ящика, а также в занятиях по кибербезопасности, программированию или основам разработки ПО.

Чтобы выполнить практическую работу, перейдите по ссылке https://google-gruyere.appspot.com/. Руководство для преподавателей по использованию Gruyere теперь доступно в университете Google Code.