НовостиСобытияКонференцииФорумыIT@Work
Безопасность:

Блог

Выгодно ли писать ПО без уязвимостей?

Валерий Васильев
16.07.2015 14:29:29

Программные приложения для мобильных платформ наиболее ярко демонстрируют пренебрежение разработчиками этих приложений подходами безопасного программирования.

Причина проста – для пользователей пока важен лишь функционал, а об информационной безопасности эксплуатируемого ПО они только начинают задумываться. И значит сегодня разработчикам пока выгоднее писать востребованные программы быстро, пусть даже и с уязвимостями.

Однако над головами тех вендоров, которые не думают о том, чтобы программная начинка их продукции была безопасна, сгущаются тучи. Примеры тому появляются все чаще.

Так, по сообщению BBC, британская компания Land Rover отозвала с рынка более 65 тыс. своих автомобилей. Причина – дефекты, обнаруженные в ПО бортового компьютерного хозяйства, наличие которых за последние пару лет наглядно продемонстрировали автомобильные воры, использовавшие эти изъяны для угона этих авто (они научились проникать внутрь и запускать двигатели). Кстати, это позволило страховым компаниям не покрывать ущербы владельцам угнанных автомобилей этой компании, если только последние не находились на охраняемых парковках.

Справедливости ради нужно сказать, что Land Rover не единственная компания, в бортовом ПО, которой обнаружены уязвимости. Так, в феврале этого года BMW выпустила патч для некоторых моделей своих авто, в которых была задействована технология ConnectedDrive, позволяющая автомобилистам использовать в автомобиле Интернет, навигацию, некоторые другие сервисы, использующие установленные в автомобиле интерфейсы для работы с SIM-картами.

О понесенных упомянутыми автомобильными компаниями прямых и имиджевых ущербах я информации не нашел. Но вот в апреле этого года компания BT запустила дистанционные ИБ-сервисы для тестирования автомобилей на стойкость их инфраструктуру беспроводной связи (Wi-Fi, 3G/4G, Bluetooth и др.) к кибератакам, с тем чтобы помочь производителям автомобилей повысить защищенность их изделий. Ну а сервисы этичного хакинга помогут выявить наличие вредоносных программ и следы неавторизованного изменения в конфигурациях настроек эксплуатируемых автомобилей.

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

Комментариев: 5

Только зарегистрированные и авторизованные пользователи могут добавлять комментарии

17.07.2015 08:17:10

Есть старый добрый принцип Парето. 80% работы занимает 20% времени. Остальные 20% работы занимают 80% времени.
Можно писать ПО без уязвимостей, ошибок и всего прочего такого (хотя идеал всё равно недостижим). Но время и стоимость разработки рискует вырасти в разы. И хорошо еще если в разы.
Что лучше для среднего потребителя, глючная винда за шесть тысяч, или безглючная за пятьдесят?

17.07.2015 09:32:48

Думаю, путь единственный - уложить безопасную разработку ПО в те самые 20%. В эту сторону и движемся помаленьку.

Уместный пример с "виндой". Пример ее развития наглядно показывает, как средний потребитель (в массе своей) от условно бесплатных пиратских копий перешел (в массе своей) к лицензионным, согласившись платить приемлемые деньги за работающую ОС, и не платить мизер за спортивный интерес заставить работать как ОС нечто ее напоминающее.

17.07.2015 16:17:34

Цитата
Думаю, путь единственный - уложить безопасную разработку ПО в те самые 20%.

Боюсь не выйдет. "Защищенное программирование" и прочие подобные технологии стоят времени (то есть денег). Зарплаты тестеров сравнимы с зарплатами программистов. В любом случае, выпустить сыроватый продукт было и будет быстрее, дешевле, проще.
Цитата
В эту сторону и движемся помаленьку.

Это да. Совершенствуются инструменты автоматической проверки кода, совершенствуются методики безопасного программирования, совершенствуются языки и всё прочее такое.
Ну ладно, с технической стороной вопроса безопасного ПО, предположим, разберёмся. Пусть даже не мы (человеки), а искусственный разум, который, получив задачу, будет создавать ПО, свободное от багов, глюков, дыр на _техническом_уровне_. А что делать с уязвимостями этапа постановки задачи? А проблемы исходных данных?
Утрированный, идиотский пример. Вот вы, например, делаете систему, не дающую ехать на машине в пьяном виде. Является ли уязвимостью то, что машина отказывается ехать, если жена слишком надушилась. Или, наоборот, едет, после того, как водила замахнул флакон шипра. smile:D
Являются ли уязвимыми реализации трех законов робототехники в книжках Азимова? Логические уязвимости в идеальных выдуманных законах там находятся с завидным постоянством.
Ну и серьёзно, ближе к нынешней действительности, сложность ПО пока растёт быстрее, чем способности людей, методик и программ с этой сложностью управляться. И конца этому пока не видно.

17.07.2015 08:59:15

А интересная ситуация. Проникновение обычных ИТ технологий в мир управления оборудованием, получается автоматически будет приводить к улучшению обычных ИТ технолгий- иначе не выжить в прямом смысле слова! smile:-)

17.07.2015 16:22:55

По моему, многое упирается в сложность. Часто приводится сравнение глючных программ с "малоглючными" домами и автомобилями. Но ведь средняя программа сейчас представляет из себя на порядки более сложное творение, чем автомобиль или здание (как механическое устройство). И по другому разрабатывать ПО пока не умеют. Максимум, инкапсулируют сложности под различными уровнями абстракции.

Только зарегистрированные и авторизованные пользователи могут добавлять комментарии