Разработчики сервиса The Spaghetti Detective сообщили об опасном сбое, который был вызван их собственной ошибкой.

The Spaghetti Detective (TSD) предлагает владельцам 3D-принтеров средство для защиты от так называемой «вермишели», бага, который порой возникает во время печати (отсюда и название). С помощью «искусственного интеллекта» TSD позволяет следить за работой устройства, анализировать картинку с бортовой камеры и «своевременно вмешиваться, обнаружив сбои» в процессе 3D-печати, приостанавливая задачу и сообщая владельцу принтера о случившемся.

"Вермишель" во время печати

Все началось с того, что пользователь Reddit сообщил, что посторонний человек подключился к его 3D-принтеру и напечатал предупреждение о том, что TDS небезопасен. Этот пост вызвал в сообществе настоящую панику.

Вскоре разработчик The Spaghetti Detective Кеннет Цзян опубликовал официальное заявление, в котором рассказал, что произошедшее – его вина.

«Прошлой ночью я допустил глупую ошибку, — пишет Цзян. — Когда я переконфигурировал балансировщик нагрузки, я ошибся, пропустив конфигурацию, позволяющую балансировщику передавать общедоступный IP-адрес подключающегося клиента бэкэнд-серверу TDS. Вместо этого балансировщик просто передавал серверу свой собственный IP-адрес. В результате сервер получал один и тот же IP-адрес для пользователей, которые одновременно подключали свои принтеры к TSD. Сервер решил, что все они находятся в одной локальной сети, и, следовательно, позволил им связать принтеры друг с другом!»

По информации разработчиков, от этой ошибки конфигурации пострадали 73 человека. Дело в том, что один из способов, которым пользователи могут связать принтеры со своими учетными записями TSD, — это «автоматическое обнаружение». Оно основывается на том, что когда устройства в одной локальной сети пытаются подключиться к интернету, у них будет один и тот же IP-адрес. То есть сервер TSD может сопоставить Raspberry Pi с компьютером или телефоном, которые находятся в одной локальной сети, чтобы те могли обнаружить друг друга. Но из-за ошибки разработчиков, пользователи «обнаружили» чужие принтеры, которые оказались доступны через их учетные записи. Ведь сервер решил, что все они находятся в одной локальной сети.

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

«В результате случившегося пострадали 73 пользователя. Это немного. Бывают ошибки, которые затрагивают намного больше людей. Но последствия очень тяжелые. Никто не хочет, чтобы его собственный принтер оказался связан с другой учетной записью и контролировался ею. Я создал The Spaghetti Detective, чтобы позволить всем любителям 3D-печати безопасно контролировать свои принтеры отовсюду. И это одна из худших ошибок, которые я мог допустить», — признает Цзян.

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

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

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии