Стив Липнер приехал в Россию пропагандировать безопасные методы разработки
Стив Липнер приехал в Россию пропагандировать безопасные методы разработки

Однако избавляться от ошибок непросто, а потому разработчики стремятся не просто искать и исправлять их в своих программ, но и не допускать во время проектирования и разработки: Ведь чем позже ошибка найдена, тем дороже стоит ее исправление. Если же разработчиков много, то обеспечить приемлемый уровень ошибок в продукте можно только с помощью специальной методологии.

В Microsoft, осознав необходимость системных шагов по избавлению своих программных продуктов от ошибок, в 2002 году выступили с инициативой безопасных вычислений Trustworthy Computing. В рамках инициативы была предложена специальная методика разработки безопасных приложений, которая получила название Security Development Lifecycle. Разработка программ в соответствии с этой методикой в Microsoft ведется с 2004 года, что положительно сказывается на качестве выпущенного корпорацией ПО.

В частности, методика предполагает обучение программистов использованию только безопасных программных конструкций и алгоритмов. При разработке программ их архитектура обязательно проверяется на наличие наиболее общих дефектов. Во время разработки используются модули проверки кода на безопасность и программы компилируются с защитой от исполнения данных — опции компилятора ASLR и DEP. Они затрудняют реализацию атак на переполнение буфера. Кроме того, в корпорации действует служба, которая проверяет написанные разработчиками коды на наличие стандартных ошибок и проводит динамические тесты для поиска опасных уязвимостей. Без положительного вердикта данной службы не выпускается ни один продукт Microsoft с 2004 года. Также у Microsoft есть служба, которая реагирует на инциденты, получая сведения об обнаруженных ошибках и исправляя их. При этом приходится проводить все процедуры по тестированию исправлений на взаимосвязи с другими компонентами системы.

Увы, подобные методики разработки безопасных приложений приняты не во всех программистских коллективах. В результате вектор атак хакеров сместился с продуктов самой Microsoft на модули расширения и компоненты ActiveX: в них по-прежнему остаются уязвимости и небрежно написанный код. В Microsoft вынуждены вести просветительскую работу среди своих партнеров и клиентов для внедрения и у них методики SDL. Так, в конце марта в ходе специально организованного мероприятия Стив Липнер, старший менеджер Microsoft по стратегии безопасной разработки Trustworthy Computing, вновь убеждал российских разработчиков и партнеров корпорации в необходимости внедрения методики и подробно рассказывал о связанных с ней инструментах.

На текущий момент методика уже пережила несколько версий, в которых были учтены новые вызовы и хакерские разработки. Так, в последней версии документа с индексом 5.1 есть требования для проверки веб-приложений на наличие различных инъекций, межсайтовых атак и других современных методов нападения. Благодаря этому методика превращается в эффективный инструмент улучшения качества не только традиционных, но и облачных приложений.