Ошибка на 2 000 000 ₽ в одной строчке кода 🤯 — 31 августа 2026 г. в 15:51:04.192
Ошибка на 2 000 000 ₽ в одной строчке кода 🤯 Давно от меня не было постов! Возвращаюсь с дикой историей из реальной практики — разумеется, на тему разработки и информационной безопасности. Если при слове «безопасность» вы хотите зевнуть — не спешите закрывать пост. Тут история про реальный слив данных, угрозы и всего одну фатальную строчку кода. С чего всё началось? Сегодня мне довелось поучаствовать в экстренном поиске и ликвидации утечки персональных данных. Было, мягко говоря, волнительно 😅 На почту компании прилетает письмо с угрожающим требованием и приложенными скриншотами. Суть: при отправке незамысловатого запроса (начинающегося с префикса /api/ в адресе сайта) система со всей душой вываливала красивенький JSON-файл, в котором лежали тысячи ФИО клиентов с их личными номерами телефонов. В письме — ультиматум с требованием немедленно заделать дыру. И вишенка на торте: уязвимости этой уже хрен знает сколько лет, и все эти персональные данные давно висят проиндексированными в поисковиках. Бери кто хочешь. Времени — ноль. Штрафы от Роскомнадзора за слив ПДн сейчас космические, дыру нужно срочно закрывать. В чем был ад ситуатива: - Сложность №1: Сайт на 1С-Битрикс. Здоровенная, неповоротливая махина со своими приколами по хранению данных, архитектуре и логике. - Сложность №2: Легаси-код. Этот «динозавр» пишется и дописывается с 2010 года. Внутри — тонны костылей, следы десятков разных фрилансеров и гигабайты мусорного кода. Как решали? Я полез в кишки проекта. Около часа ковыряния в древних скриптах — и я нахожу причину. Дело было ВСЕГО В ОДНОЙ строчке кода. В фильтре запроса к базе данных вместо добавления условия разработчик случайно написал его перезапись. В итоге при определенном запросе сайт вместо открытой информации отгружал вообще ВСЕ данные из таблиц БД, где присутствовало стандартное свойство. Обычная человеческая опечатка программиста 15-летней давности, которая превратила сайт в решето. Дыру я, естественно, оперативно запечатал, из выдачи поисковиков слитые страницы экстренно выпилил и закрыл им доступ на будущее через роботс и заголовки. Какая тут мораль? Да их тут на самом деле куча. Но самая главная: качество не может стоить дешево, а вот низкое качество кода в итоге обходится бизнесу в миллионы рублей. Заказывая разработку у «студентов за шапку сухарей», вы никогда не знаете, какая строчка кода рванет у вас через пару лет и во сколько это встанет вашей репутации. А куда обращаться, если нужно провести аудит, допилить легаси без валидола или собрать надежную систему — вы знаете. Мы в WebMarvels всегда на связи 🤟

