Вход
Регистрация
SoftPower

Баг на миллиард. Сколько на самом деле стоят ошибки в программном обеспечении

Баг на миллиард. Сколько на самом деле стоят ошибки в программном обеспечении

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

Но ошибки все же случаются. И приводят к весьма странному поведению программного обеспечения. В отличие от «пасхальных яиц» с их забавной скрытой функциональностью, баги (жаргонное название ошибок в ПО; от английского слова bug — жук) совсем не веселят пользователей, а вынуждают их тратить много времени и денег на ликвидацию последствий программных сбоев. Этот пост — про одни из наиболее легендарных и дорогостоящих ошибок ПО в истории взаимодействия человека и компьютера. 

SYSSOFT_Banner_1920x600_Bug_bitcoin.jpg

Ошибка аспиранта

Баг: репликация (воспроизведение копий) программы

Ущерб: $96,5 млн.

Аспирант Корнеллского университета Роберт Моррис очень хотел понять, насколько масштабна правительственная сеть APRANET (Advanced Research Projects Agency Network). Для этого он написал небольшую программу, которая искала соединение между компьютерами и тем самым помогла бы получить ему представление о размерах сети. Второго ноября 1988 года молодой человек запустил программу на одном из компьютеров Массачусетского технологического института.

Подбирая пароли доступа, используя отладочный режим и оставаясь незамеченным для системных администраторов, разработка Морриса беспрепятственно распространилась от одной ЭВМ к другой и за один день оказалась внутри 6 тысяч компьютеров, составляющих APRANET. Из-за ряда ошибок в проектировании и реализации безобидная софтина, изначально не имевшая вообще никакой деструктивной функциональности, превратилась в кибероружие. Пораженные ею правительственные компьютеры переставали работать один за другим.

Что же пошло не так? Во-первых, Роберт не научил программу самостоятельно определять, действует ли уже ее копия на конкретном компьютере. Во-вторых, молодой хакер допустил ошибку в описании периодичности, с которой его «шедевр» должен был перезаписывать сам себя на каждую ЭВМ. Роберт указал слишком маленькое значение. Эти две причины привели к тому, что на инфицированных машинах за короткое время образовалось множество копий червя. Они сжирали вычислительные ресурсы компьютеров, и те переставали работать.

Команда из лучших программистов и системных администраторов США, сформированная по инициативе властей, смогла победить червя к вечеру 5 ноября. Зараженные ЭВМ были вылечены, связанность сети восстановлена. Роберт Моррис мог бы выйти сухим из воды, так как доказать его причастность к созданию червя было нереально. Но его папа, действующий сотрудник Агентства национальной безопасности, сам сдал сына агентам ФБР.

Роберт стал первым в истории США, кого судили по обвинению в злоупотреблениях с применением компьютера. Хакеру хотели впаять пять лет, но учли смягчающие обстоятельства. Ему дали три года условно и обязали выплатить солидный штраф. Суровый опыт пошел молодому человеку на пользу. Сейчас бывший киберпреступник — профессор Массачусетского технологического института и соинвестор одного из крупнейших в мире венчурных фондов с фокусом на информационные технологии.

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

SYSSOFT_Banner_1920x600_Bug_Intel.jpg

«Пентиум» против математиков

Баг: таблицы операций с плавающей запятой в процессорах Intel

Ущерб: $475 млн.

Принято считать, что баги — это «привилегия» программного обеспечения. Но ошибкам, бывает, удается проникнуть и на территорию «железа». Так случилось с компанией Intel. В 1994 году баг пробрался в процессор Pentium.

Ошибку обнаружили случайно. Математик Томас Найсли из американского Линчбург Колледжа исследовал пары, триплеты и квадраплеты простых чисел. Чтобы дело шло быстрее, он проводил вычисления на компьютере. Умная машина упрямо выдавала результаты, отличающиеся от его собственных, хотя Томас проверил несколько раз. Желая убедиться, что он не сошел с ума, Томас обратился к коллегам из других вузов. Они повторили его расчеты и подтвердили: компьютер врёт.

Сведения о баге в компьютерном «мозге» быстро попали в руки журналистов. В ответ на запрос прессы Intel сообщила, что в компании знают о проблеме. Intel собственными силами обнаружила ошибку в операциях с плавающей запятой летом 1994 года. Баг был обусловлен тем, что математический сопроцессор руководствовался в вычислениях зашитыми в него неправильными таблицами.

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

Общественность посчитала аргумент неубедительным. Intel включила заднюю и пригласила пользователей, которые воспроизведут ошибку на своем компьютере, на бесплатную замену чипа. Сооснователь корпорации Эндрю Гроув принес извинения. Отзывная кампания стоила «Интелу» почти полмиллиарда долларов — львиной доли прибыли целого квартала.

Intel извлекла из собственной ошибки правильный урок. Сегодня это компания с очень правильной репутацией поставщика процессоров для оборудования корпоративного уровня.

SYSSOFT_Banner_1920x600_Bug_main.jpg

Кошмар миллениума

Баг: Y2K

Ущерб: до $500 млрд.

Использование двух знаков для обозначения года — например, 31.12.99 — в программах, написанных в XX веке, с приближением 2000-го стало реальной проблемой. Несовместимость двухзначного обозначения года с грядущей сменой веков и тысячелетий грозила обернуться чуть ли не техногенным апокалипсисом: кто знает, как поведут себя компьютеры, управляющие промышленными, транспортными и энергетическими объектами, когда «увидят» «00» в обозначении года?

Глобальный психоз вокруг «проблемы 2000» затронул и Россию. Несмотря на относительно слабую на тот момент цифровизацию экономики нашей страны, для противодействия «ошибке миллениума» была создана правительственная комиссия. В общей сложности на решение «проблемы 2000», по разным оценкам, в мире было потрачено $300-500 млрд.

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

До сих пор взгляды на Y2K-совместимость ПО из XX века диаметрально расходятся. Часть экспертов утверждают, что инвестиции в противодействие «ошибки миллениума» действительно помогли предотвратить сбои в ПО и тем самым не допустить больших и мелких инцидентов. Критики считают, что истерия нагнеталась искусственно. Как бы то ни было, баг с датами — один из самых дорогостоящих в истории взаимоотношений человека и компьютера.

SYSSOFT_Banner_1920x600_Bug_Y2K.jpg

Двойной просчет

Баг: ошибка в коде криптовалютной биржи Mt.Gox

Ущерб: $7,5 млрд. (на 2019 год)

Начавшийся в 2017-м хайп вокруг спекуляций с криптовалютами проложил дорогу блокчейну. О светлом будущем применения технологии заговорили даже политики. С помощью телевизора о главном преимуществе блокчейна — децентрализации — получили представление, пожалуй, все российские граждане. Шумиха была поддержана криптовалютными дельцами: благодаря ей биткоин позиционировался как супернадёжное вложение денег: да, его курс может меняться, но «крипту» при соблюдении всех правил обращения с цифровым кошельком точно невозможно украсть.

Если бы у криптовалютных оптимистов было бы немного больше информации, они не были бы столь категоричны. В начале марта 2014 года, за пару лет до биткоин-бума в России, администрация криптобиржи Mt.Gox объявила об исчезновении 850 тыс. биткоинов, или $473 млн. по тогдашнему курсу (7 % от оборота всей криптовалюты). По одной из версий, утечка произошла через баг скрипта обработки транзакций на бирже, который допускал двойную трату монет.

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

Сейчас, через несколько лет, история Mt.Gox еще не закончена — биржа проходит процедуру банкротства. Но есть пикантная тонкость: из-за роста курса биткоина 850 тыс. монет превратились в $7,5 млрд. Как расплачиваться по такому гигантскому долгу, совершенно непонятно.

Когда-нибудь история Mt.Gox точно вдохновит голливудских продюсеров на съемку полнометражного художественного фильма. В сюжете из реальной жизни есть всё, что полагается блокбастеру: городские пейзажи Токио, связи с Даркнетом, след русских хакеров и просто невообразимая гора денег. Пока инцидент с Mt.Gox — самый значительный по размеру ущерба инцидент в мировой индустрии криптовалют.

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

Лента новостей

Самое читаемое

SoftPower«Яблочный» спас. Сколько нужно софта, чтобы чинить технику AppleSoftPowerПрограммы для удаленной работы в командеАкции и скидкиСтоимость лицензий TeamViewer снижена в честь Черной пятницыSoftPowerЕсть ли альтернативы у Microsoft Office?SoftPowerAgile: это не страшноSoftPowerERP-система: зачем она нужнаАкции и скидкиОбновление программного комплекса ЛИРА — вдвое дешевлеSoftPowerPositive Technologies: на страже виртуальных границАкции и скидкиТри годовые лицензии iSpring Suite со скидкой 30 %SoftPowermacOS: история и современностьАнонсы вебинаровГрамотное взаимодействие Altium Designer с инструментами верификации и анализа Mentor GraphicsАнонсы вебинаровЗащита виртуальных и облачных сред на базе решений Kaspersky Новости Syssoft«Системный софт» получил статус партнера-эксперта по продуктам КОМПАС от компании АСКОН Новости вендоровАппаратный ускоритель «Катунь» — новая разработка компании UserGateЗаписи вебинаровСканер уязвимостей XSpider: сетевой сканер безопасности от Positive Technologies Новости SyssoftКак выполнить проверку модели с помощью Autodesk Model Checker for Revit
SoftPowerКак алгоритмы «видят» покупателей в магазине, забытые сумки в метро и преступников в толпе на улице?SoftPowerБаг на миллиард. Сколько на самом деле стоят ошибки в программном обеспеченииSoftPowerКак работает софт, способный предсказать увольнение сотрудника?SoftPowerСофт персоны: чем пользуется Мария Лапук, сооснователь Vinci AgencySoftPower«Яблочный» спас. Сколько нужно софта, чтобы чинить технику AppleSoftPowerПрограммы для удаленной работы в командеАкции и скидкиСтоимость лицензий TeamViewer снижена в честь Черной пятницы Новости Syssoft«Системный софт» стал золотым партнером Bitdefender! Новости Syssoft«Системный софт» улучшил бэкап данных в ИТ-инфраструктуре «Скандинавского центра здоровья»Акции и скидки50% от цены PADS Professional и пакет опций для проектирования в подарокSoftPowerЕсть ли альтернативы у Microsoft Office?SoftPowerAgile: это не страшноSoftPowerERP-система: зачем она нужнаАнонсы вебинаровЗащита данных облачного сервиса MS Office 365Акции и скидкиОбновление программного комплекса ЛИРА — вдвое дешевлеSoftPowerPositive Technologies: на страже виртуальных границ