Техдиректор Microsoft Azure с помощью Claude AI обнаружил ошибки в 40-летнем коде Apple II
Технический директор Microsoft Azure Марк Руссинович заявил об успешной реконструкции и поиске уязвимостей в старом коде с помощью ИИ. Он привёл в качестве примера собственный код Apple II 40-летней давности.
В мае 1986 года Руссинович написал утилиту Enhancer для персонального компьютера Apple II. Утилита на машинном языке 6502 добавила возможность использования переменной или выражения BASIC для указания адреса команды GOTO, GOSUB или RESTORE, тогда как без модификации Applesoft BASIC принимал только номер строки.
Руссинович поручил Claude Opus 4.6 проверить код. Программа декомпилировала машинный язык и обнаружила несколько проблем безопасности, включая случай «скрытого некорректного поведения», когда, если целевая строка не была найдена, программа устанавливала указатель на следующую строку или за конец программы, вместо того чтобы сообщать об ошибке. Решением могло бы стать проверка флага переноса, который устанавливается, если строка не найдена, и переход к ошибке.
«К моему удивлению, ИИ не просто декомпилировал машинный язык 6502; он восстановил логику с точными метками и комментариями, фактически “прочитав” замысел кода, написанного четыре десятилетия назад. Ещё более впечатляющим был аудит безопасности», — написал СТО.
По словам комментаторов, способность ИИ декомпилировать встроенный код и находить уязвимости вызывает опасения. «В мире существуют миллиарды устаревших микроконтроллеров, многие из которых, вероятно, работают на хрупком или плохо проверенном прошивочном ПО, подобном этому», — отметил один из них.
После того, как Anthropic представила Claude Opus 4.6, компания предупредила о проблеме быстрого обнаружения ИИ уязвимостей, которые могут быть использованы хакерами.
«Когда мы настроили Opus 4.6 на проверку
Читать на habr.com