Вот так сюрприз: в самом копируемом фрагменте Java-кода нашли ошибку

Вот так сюрприз: в самом копируемом фрагменте Java-кода нашли ошибку

16.12.2019     

Сайт StackOverflow – популярная система вопросов и ответов о программировании. На этом ресурсе можно найти (или хотя бы попробовать!) решение практически любой проблемы. Но не все советы коллег одинаково полезны: в самом цитируемом куске кода на Java, представленном на StackOverflow, обнаружили серьезный баг.

Кто создал самый цитируемый фрагмент Java-кода

В сентябре 2010 года Андреас Лундблад опубликовал Java-сниппет в ответ на вопрос другого пользователя на StackOverflow. Сниппет преобразовывал большие количества байт в формат, удобный для чтения людьми: к примеру, 123 456 789 байт в 123,5 МБ.

 

 

Сегодня Лундблад – один из самых известных Java-разработчиков в мире и авторитетный представитель сообщества StackOverflow. Лундблад работает в компании Palantir, основанной выходцами из PayPal. Компания разрабатывает софт для хедж-фондов, инвестиционных банков и спецслужб по всему миру.

В чем проблема

Сниппет Лундблада назвали самым цитируемым в научной статье, опубликованной в 2018 году. Эксперты подсчитали, что его используют в 6 тыс. Java-проектов, размещенных на GitHub. Это далеко не все проекты – есть и другие хостинги, к тому же не все разработчики выкладывают свой код в открытый доступ.

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

Лундблад подчеркнул: баг был тривиальным, и действительно странно, что девять лет на него никто не обращал внимания. Но последствия ошибки невелики – пользователи могли заметить небольшие неточности при определении размеров файлов, но, скорее всего списывали их на погрешности округления.

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

Что делать

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

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

А как у других

Осенью 2019 года специалисты по информационной безопасности проанализировали, как часто разработчики используют опасно уязвимые фрагменты кода на С++ со StackOverflow. Они выполнили поиск по 69 таким кускам кода и нашли 2859 проектов, которые их использовали в течение последних 10 лет. Естественно, на самом деле и уязвимых фрагментов, и проектов, в которых они используются, гораздо больше.


Источник: https://infostart.ru/journal/news/tekhnologii/vot-tak-syurpriz-v-samom-kopiruemom-fragmente-java-koda-nashli-oshibku_1168917/
Автор:
Ксения Шестакова Обозреватель


Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. protexprotex 128 16.12.19 17:18 Сейчас в теме
Они еще в 1С не лазили :-)
sogesti; FesenkoA; DrAku1a; Aggressorak; frkbvfnjh; Boyborodin; hydro2588_2015; rusmil; for_sale; ProgrammistC; +10 Ответить
2. Поручик 4470 17.12.19 11:07 Сейчас в теме
Если у кого-то возникла проблема с безопасностью или взломали, то поделом. Нехера бездумно копипастить всякое дерьмо с сети.
3. DrAku1a 1419 19.12.19 17:55 Сейчас в теме
(2) Конкретно в данном коде нет опасных участков, ошибка чисто техническая.
Оставьте свое сообщение

См. также

В ближайшие годы возрастет потребность в персонале центров обработки данных

Новость Дата-центры ИТ-новость Цифровая экономика

Согласно отчету Uptime Institute, количество сотрудников, необходимых для обеспечения работы ЦОД, вырастет с 2 млн. в 2019 году до 2,3 млн. в 2025 году.

вчера в 15:30    1563    SKravchenko    0       

Google кардинально изменит дизайн Android 12

Новость Android Google ИТ-новость Мобильные приложения Новости компаний

Компания Google анонсировала глобальное обновление популярной операционной системы Android. Новая версия выйдет под номером 12. Говорят, что Android 12 назовут «Snow cone» – летний десерт из сладкого колотого льда.

вчера в 14:05    1786    mouse187    0       

Google представила новый сервис для поиска уязвимостей в открытом ПО

Новость Google Безопасность ИТ-новость

Компания Google запустила платформу с открытым исходным кодом OSV (Open Source Vulnerabilities). Она создана для поиска и закрытия уязвимостей в свободном ПО.

18.02.2021    1239    user1015646    0       

Отечественная компания представила сервер приложений Java EE

Новость ИТ-новость Новости компаний Языки программирования

Российская компания Bellsoft представила отечественный аналог сервера Oracle и IBM для JavaEE. Раньше продукт на базе открытого кода был доступен только для некоторых клиентов организации.

17.02.2021    2318    VKuser24342747    4       

Rustоманы из Долины: Google, Microsoft, Huawei, Mozilla и AWS основали фонд поддержки языка программирования

Новость Google ИТ-новость Новости компаний Языки программирования

Rust – перспективный язык, который широко применяется в разработке операционных систем и высоконагруженных веб-сервисов. Rust Foundation будет заниматься поддержкой и развитием языка.

16.02.2021    1571    user1015646    0       

В Microsoft Teams появилась платформа для общения и обучения

Новость Интернет ИТ-новость Мессенджеры Новости компаний

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

15.02.2021    3138    user1015646    0       

Google рассказала, как защищает Android от взломов

Новость Android Google Безопасность ИТ-новость

Google опубликовала информацию о том, как компания пытается улучшить безопасность Android, и какие шаги предпринимаются для борьбы с распространенными угрозами. Отчеты об уязвимостях играют в этом значительную роль.

12.02.2021    1859    SKravchenko    0       

Для регионов разработают приложение онлайн-записи на прием к врачам

Новость ИТ-новость Медицина Минкомсвязь Цифровая экономика

О возможностях приложения рассказали в Минздраве и Минцифре.

10.02.2021    1637    Senator_I    2       

Google разработает новую мобильную ОС

Новость MobileOS Google ИТ-новость Мобильные приложения

Корпорация Google создаст мобильную операционную систему для повышения безопасности использования устройств. Проект запущен под рабочим названием microdroid.

09.02.2021    2089    user1015646    0       

Google закрывает собственную игровую студию Stadia

Новость Google Видеоигры ИТ-новость Новости компаний

1 февраля Google официально закрыл собственную студию разработки игр для проекта Stadia, чтобы сосредоточить внимание на технологиях, лежащих в основе платформы.

09.02.2021    1416    SKravchenko    0       

Google представила технологию для замены cookies

Новость Google Интернет ИТ-новость

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

09.02.2021    1217    user1015646    0       

Украинская команда FireWay одержала победу в хакатоне NASA Space Apps Challenge 2020

Новость ИТ-новость Стартапы

Украинская команда FireWay из Днепра стала победителем международного хакатона NASA Space Apps Challenge. Их изобретение было описано как «решение, которое демонстрирует наиболее инновационное использование технологии».

05.02.2021    1881    SKravchenko    2       

Китайцы разработали целых две альтернативы Flash

Новость Интернет ИТ-новость

Китайцам пришлось разработать собственную технологию ReFla взамен Flash для предотвращения сбоев в работе систем. Также они выпустили доработанную версию Flash Player с кодом 34.0.0.92.

04.02.2021    1986    mouse187    4       

Популярные дистрибутивы Linux могут лишиться поддержки Chromium

Новость Linux Google Интернет ИТ-новость

Из дистрибутивов Arch Linux, Fedora, Debian, Slackware и openSUSE может исчезнуть поддержка браузеров на движке Chromium. Причина – жесткие правила Google, из-за которых возникли проблемы с синхронизацией данных.

03.02.2021    2288    user1015646    3       

Microsoft участвует в разработке цифрового паспорта вакцинации от Covid-19

Новость ИТ-новость Медицина

Крупнейшие корпорации из сектора здравоохранения и ИТ-гиганты, такие как Microsoft, Salesforce и другие, объединились для создания цифровых идентификационных карт, которые подтверждают статус вакцинации против Covid-19.

02.02.2021    1695    capitan    3       

Что нового в Chrome 88: проверка надежности паролей и поддержка профилей

Новость Google Интернет ИТ-новость

Компания Google представила новый релиз браузера Chrome и обновила движок Chromium. Теперь ПО будет предупреждать о небезопасных паролях, а пользователь сможет создать привязанный к учетной записи профиль для персонализации работы в сети.

01.02.2021    2148    user1015646    0       

280 символов для науки: Twitter откроет доступ ученым к архиву твитов

Новость ИТ-новость Соцсети

Twitter предоставит академическим исследователям социальных сетей бесплатный доступ почти ко всем твитам. Исключение площадка сделает только для заблокированных аккаунтов.

29.01.2021    1435    VKuser24342747    1       

Отключение Flash на сутки лишило город железнодорожных служб

Новость Интернет ИТ-новость

Прекращение поддержки Flash парализовало работу железнодорожной сети китайского города-миллионника. Организация проигнорировала предупреждения Adobe о грядущем отключении технологии.

29.01.2021    1783    VKuser24342747    1       

Amazon представил форк Elasticsearch с открытым исходным кодом

Новость ИТ-новость Новости компаний Облачные технологии

Компания Amazon намерена развивать собственную версию решения для поиска, хранения и анализа данных Elasticsearch. Форк можно будет использовать в проектах с открытым исходным кодом.

28.01.2021    2201    user1015646    0       

Наниматели назвали самые востребованные языки программирования

Новость Аналитика ИТ-новость Языки программирования

Компания по обучению программистов CodinGame составила рейтинг самых востребованных языков программирования среди нанимателей. Для этого организация опросила 15 тыс. разработчиков и менеджеров по персоналу.

27.01.2021    2401    SKravchenko    1       

Вышел новый мировой стандарт Wi-Fi 6E. В России он не доступен

Новость ИТ-новость Телекоммуникации

В мире стартовало лицензирование и распространение устройств для работы с новым стандартом беспроводных сетей Wi-Fi 6E. В России стандарт не будет поддерживаться, поскольку частота в 6 ГГц уже занята.

26.01.2021    1979    user-programmist    2       

CES 2021: главные анонсы первой технологической выставки года

Новость Инновации ИТ-новость Микроэлектроника

CES (Consumer Electronics Show) в Лас-Вегасе традиционно открывает год на мировом рынке технологий. Из-за ограничений, связанных с пандемией, выставку провели онлайн, но это не помешало производителям представить интересные новинки.

25.01.2021    2450    user1015646    2       

Представлен GitLab 13.7: автооткат при сбоях и улучшенная проверка мердж-реквестов

Новость git Автоматизация ИТ-новость Новости компаний

Компания GitLab выпустила новый релиз платформы для работы с Git-репозиториями. В GitLab 13.7 добавили 45 новых функций, в том числе автоматический откат при сбоях и инструмент проверяющих для запросов на слияние.

22.01.2021    2315    user1015646    0       

Red Hat заменит CentOS бесплатной Red Hat Enterprise Linux

Новость Linux ИТ-новость

Red Hat в декабре объявила о прекращении поддержки CentOS 8 в 2021 году. Это вызвало волну негодования среди разработчиков, но теперь всё встало на свои места: компания представила бесплатные версии Red Hat Enterprise Linux для команд.

21.01.2021    3015    user1015646    0       

Российские исследователи представили новый фреймворк для работы с большими данными

Новость Аналитика Искусственный интеллект ИТ-новость

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

21.01.2021    2284    user1015646    2