{"id":14268,"url":"\/distributions\/14268\/click?bit=1&hash=1e3309842e8b07895e75261917827295839cd5d4d57d48f0ca524f3f535a7946","title":"\u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0442\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c \u0438\u0433\u0440\u0430\u0442\u044c \u043d\u0430 \u0440\u0430\u0431\u043e\u0447\u0435\u043c \u043c\u0435\u0441\u0442\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e?","buttonText":"\u0423\u0437\u043d\u0430\u0442\u044c","imageUuid":"f71e1caf-7964-5525-98be-104bb436cb54"}

Пользователь «Хабра» нашёл в публичном доступе исходный код нескольких сервисов налоговой — он открыт около года Статьи редакции

Разработчик нашёл данные после проверки приложения «Проверка чеков» — с марта в нём можно отследить все свои покупки, сделанные в интернет-сервисах.

Исходный код некоторых сервисов Федеральной налоговой службы (ФНС) уже около года находится в открытом доступе, а данные пользователей о покупках — под возможной угрозой утечки. К таким выводам пришёл пользователь «Хабра» Антон Пискунов.

Разработчик обратил внимание на приложение «Проверка чеков». Оно позволяет получать и хранить кассовые чеки в электронном виде, проверять добросовестность продавца, отправлять на него жалобы и так далее, сообщали в ФНС.

С помощью приложения пользователь может отсканировать QR-код на электронном чеке, который присылает оператор фискальных данных (ОФД) после завершения заказа в каком-либо сервисе или магазине. Например, после заказа в «Яндекс.Еде» Пискунову пришёл чек от «Яндекс ОФД».

Антон Пискунов

После сканирования в приложении появляется электронная копия чека с полными данными о заказе. 4 марта 2021 года разработчики обновили «Проверку чеков», добавив функцию «отображение чеков из сервиса «“Мои Чеки Онлайн”».

Если пройти аутентификацию в приложении «Проверка чека», указав номер телефона, привязанный к сервисам вроде «Яндекс.Еды», «Такси», «Самоката» и другим, в разделе «Мои чеки» автоматически будут отображены все чеки по всем операциям в этих сервисах.

«Мои чеки» в приложении «Проверка чеков»

Пискунов решил проверить, как хорошо защищены все эти данные. Для этого он поставил в разрыв между интернетом и приложением простой прокси и, записывая сетевую активность приложения, «потыкал в кнопки».

«Выяснилось, что эндпоинт с данными находится по адресу irkkt-mobile.nalog.ru:8888, на котором живёт простейшее приложение на NodeJS с применением фреймворка Express. Механизм аутентификации пользователя пускает тебя к данным, если ты верно указал заголовок “sessionId”, значение которого представляет из себя какой-то самопальный токен, генерирующийся на стороне сервера», — добавляет Пискунов.

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

Он также обратил внимание, что в случае крэша приложения оно отправляет диагностические данные в Sentry, располагающийся по адресу, не связанному, ни с ФНС, ни с ФГУП ГНИИВЦ ФНС России (разработчик «Проверка чеков» — vc.ru), а на домен sentry.studiotg.ru.

После этого он нашёл ссылки на публичные репозитории StudioTG на GitLab, которые находятся в индексе Google, по словам разработчика, более года. В репозиториях он нашёл папки, содержащие подстройки «lkio», «lkip», «lkul». Они относятся к одноимённым сервисам ФНС на домене nalog.ru — lkio.nalog.ru, lkip.nalog.ru и lkul.nalog.ru.

«Для сверки, что обнаруженные исходники действительно относятся к сервисам ФНС, проведена простая проверка наличия на боевом веб-сервере файла uppod-styles.txt, который не мог там оказаться по случайному совпадению», — пишет Пискунов.

Он сделал вывод, что фактический разработчик приложения «Проверка чеков» — StudioTG. На сайте «Студия ТГ», которая занимается ИТ-консалтингом и разработкой ПО, среди проектов указан «Личный кабинет налогоплательщика» от ФНС.

Также Пискунов считает, что по вине компании, исходный код сервисов налоговой около года находится в публичном доступе. Редакция vc.ru направила запрос и ожидает комментарии от ФНС и «Студии ТГ».

0
159 комментариев
Написать комментарий...
Вася Пражкин
 данные пользователей о покупках — под угрозой утечки

Давайте отделять мух от котлет - открытые исходники не имеют отношения к данным. Данные ФНС не открыты. Антону Пискунову надо бы выпить таблеток и успокоиться.

Ответить
Развернуть ветку
Vasiliy Gorin

Ага, только вот в оригинальной статье на хабре ещё было сказано, что вместе с исходниками лежал .env для прода(!), в котором были прописаны доступы к базам данных, и т.д.

Редакторы VC этот факт опустили, видимо по технической безграмотности и непониманию, что именно он - критически важный в этой новости.

Не говоря уже о несбрасываемых токенах доступа к приватной информации и об отправке sentry на не принадлежащий налоговой домен.

Ответить
Развернуть ветку
Вася Пражкин

.env для прода в той же репе - это, конечно, косяк, но вот видите, написали статью и его пофиксят. Несбрасываемых токенах - ну тоже косяк, тоже пофиксят. Код для налогой же не ангелы на небесах пишут, у всех есть баги, в том числе в security.

Ответить
Развернуть ветку
greg chudnoff

Ну косяк. Ну еще косяк. Ну еще с десяток косяков. Подумаешь.
Очнитесь, молодой человек, это не домашний стартапчик студента, это налоговая! Таких косяков не должно быть в принципе, по определению, а за их появление нужно немедленно карать по всей строгости УК.

Ответить
Развернуть ветку
Вася Пражкин
 немедленно карать по всей строгости УК

Может сразу расстреливать?

Ответить
Развернуть ветку
Стартапер-пессимист

Вася, почему Роскомнадзор возбуждается и блокирует домен когда на сайте сбора подписей Навального стоит гугл аналитика (но при этом люди сами передают данные).

И почему не возбуждается когда данные из чеков и личные ПД физлиц уже были слиты с госсайтов и приложений вроде этого? Я тебе отвечу: потому как коррупция и двойные стандарты.

Теперь вопрос: ты защищаешь коррупционеров потому что в доле?

Ответить
Развернуть ветку
Mika

А вы разве не в доле? Мы тут все уже, как 4 года каждый квартал выплаты получаем. 

Ответить
Развернуть ветку
156 комментариев
Раскрывать всегда