Опасность ошибок в программном обеспечении
Ошибки в программах есть всегда.
Безопасность программного обеспечения обычно рассматривается только как проблема работы в Internet, но это далеко не единственная проблема. Хотя коммерческие структуры широко используют Internet, но многие системы работают изолированно в локальных сетях или вообще на отдельных компьютерах. Очевидно, что программное обеспечение отвечает за нечто большее, нежели за возможности для игр в сети или за обмен сообщениями электронной почты и электронными таблицами. При ошибках в программном обеспечении убытки исчисляются миллионами долларов, что иногда приводит даже к смерти людей. В этом разделе мы напомним о широко известных случаях ошибок в программах.
Ошибки в программах демонстрируют, что может произойти даже без специально продуманных действий злоумышленника. Читая об этих случаях, представьте, на что способен опытный хакер!
Марсоход NASA
Одна простая ошибка в программном обеспечении стоила Соединенным Штатам около 165 млн. долл., когда спускаемый модуль NASA разбился о поверхность Марса. Проблема оказалась в неправильном переводе английских единиц измерения в международные единицы измерения. В результате ошибки была выбрана неправильная траектория спуска при приближении к поверхности Марса. Двигатели выключились преждевременно, в результате чего произошла авария.
Система выдачи багажа в аэропорту Денвера
В современном международном порту города Денвер была создана автоматизированная система выдачи багажа, в которой использовались автоматические тележки, двигающиеся по фиксированному маршруту. При этом все управлялось программным обеспечением. При тестировании тележки стали двигаться неправильно из-за многочисленных ошибок в программе управления. Они двигались асинхронно, появлялись то пустые, то перегруженные тележки. Даже груды упавших чемоданов не останавливали тележек. Эти ошибки в программном обеспечении привели к задержке открытия аэропорта на 11 месяцев, что стоило аэропорту по крайней мере 1 млн. долл. в сутки.
MV-22 Osprey
Военный вертолет MV-22 Osprey представляет собой нечто среднее между вертолетом вертикального взлета и обычным аэропланом. Сам вертолет и его аэродинамические характеристики очень сложные, поэтому полет вертолета контролируется с помощью различных систем сложнейшего программного обеспечения. Как и в большинстве машин подобного класса, в этом вертолете предусмотрено несколько аварийных систем на случай ошибки. Однажды, во время рокового взлета, один из гидравлических механизмов загорелся. Это была серьезная проблема, но ее обычно можно было исправить. Однако в данном случае ошибка в программном обеспечении привела к неисправности аварийной системы. Вертолет разбился и четыре солдата морской пехоты погибли.
Система US Vlceness
В 1988 году корабль военно-морских сил США запустил реактивную ракету и поразил цель, выявленную бортовым радаром и определенную системой слежения как вражеский военный самолет. В действительности "целью" оказался коммерческий самолет Airbus A320, на котором летели ничего не подозревающие люди. В результате попадания ракеты погибли 290 человек. В официальном извинении военно-воздушных сил США причиной ошибки были названы неправильные данные, выведенные на экран системы слежения.
Компания Microsoft и вирус любви
Распространение вируса "I LOVE YOU" оказалось возможным из-за ошибки в клиенте электронной почты Microsoft Outlook, благодаря которой выполнялись программы, полученные от неизвестных отправителей. Очевидно, никто из команды программистов Microsoft не подумал о том, на что может быть способен вирус, использующий встроенные возможности при выполнении сценариев. Согласно исследованиям, ущерб, нанесенный вирусом "I LOVE YOU", оценивается миллиардами долларов. Обратите внимание, что эта цена была заплачена пользователями Outlook, а не компанией Microsoft. Появление этого вируса продемонстрировало, как Internet-вирус может нанести значительный финансовый ущерб коммерческим организациям.
Viceness
Сравнительно недавно по просторам Internet пронесся еще один широкомасштабный вирус под названием Blaster, ущерб от которого тоже исчисляется миллиардами. Распространение этого вируса также является результатом ошибок в программном обеспечении. Итак, вывод очевиден: ошибки в программном обеспечении являются наиболее серьезным уязвимым местом в компьютерных системах. Эти недостатки программ приводят к огромным финансовым потерям. Подобным образом ошибки позволяют злоумышленникам преднамеренно наносить ущерб и красть важную информацию. В конечном счете ошибки в программном обеспечении приводят к появлению программ атаки.
"Взлом программного обеспечения. Анализ и использование кода" - Грег Хогланд и Гари Мак-Гроу.

