Русский
Русский
English
Статистика
Реклама

Как я нашел в публичном доступе исходники нескольких сервисов ФНС

Предыстория

Возьмём приложение Проверка чека и разберемся что оно делает и зачем ваще кому-то понадобилось проверять чеки с помощью приложения.

Суть приложения Проверка чековСуть приложения Проверка чеков

Я не помню как это работало раньше, но с 2016-2017 годов, благодаря 54-ФЗ О применении ККТ появились некие ОФД с целью ...осуществления операций по приёму, обработке, хранению и передачефискальныхданныхв ФНС, а всех кого только можно обязали использовать кассовое оборудование, генерирующее те самые фискальные данные и что немаловажно, обязали эти данные посредством ОФД передавать в ФНС.

Если у вас тоже немного припекает от всех этих аббревиатур, то вот вам терминальная стадия аббревиатуринга в лице названия организации которая отвечает за приложение Проверка чека ФГУП ГНИИВЦ ФНС РФ.

К этому моменту мы еще вернёмся, кстати.

Страница приложения Проверка чеков в App StoreСтраница приложения Проверка чеков в App Store

Прикладной смысл вышеописанного очень лёгко понять на примере сервиса заказа еды.

После заказа вы получаете на почту электронный чек, это и есть те самые фискальные данные. Отправляет их в ваш адрес, однако, не сервис заказа еды, а именно ОФД, которое используется сервисом, в данном случае Яндекс

Любой подобный чек всегда содержит несколько обязательных идентификаторов в натуральном виде и в виде QR-кода, который можно отсканировать с помощью исследуемого нами приложения Проверка чека.

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

Но всё бы ничего, если бы не один недавний апдейт данного поделия, который и привёл меня в ужас. До недавних пор приложение оперировало лишь теми данными которые ты сам соизволил туда засунуть путём сканирования QR-кодов и не представляло, ни особого интереса, ни особой угрозы личной безопасности.

Всё изменилось две недели назад после обновления 2.15.0 в рамках которого был выкачен функционал отображение чеков из сервиса Мои Чеки Онлайн.

История версий приложения Проверка чека

Обновление 2.15.0

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

В моём случае, это порядка 400 чеков, каждый из которых содержит детальный набор сколько, за что, когда и куда.

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

Для исследования я поставил в разрыв между интернетом и приложением Проверка чека простой прокси и записывая сетевую активность приложения потыкал в кнопки.

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

При этом, если нажать кнопку Выйти в приложении Проверка чека, то как оказалось, инвалидации данного токена не происходит. Так же нет функционала просмотра всех своих сесссий и нет кнопки Выйти на всех устройствах.

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

Крайне безответственно, но не фатально.

Sentry

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

Страница входа в Sentry команды Studio TG Страница входа в Sentry команды Studio TG

Рядом сразу же был обнаружен gitlab.studiotg.ru.

Страница входа в GitLab команды Studio TG Страница входа в GitLab команды Studio TG

Дальнейшее исследование эндпойнта привело к ссылками на публичные репозитории в этом Гитлабе находящиеся в индексе Гугла уже более года.

Содержимое публичных репозиториев заставило меня биться в истерике.

Публично доступный репозиторий ansible_conf/install_geo Публично доступный репозиторий ansible_conf/install_geo Содержимое архивов из репозитория ansible_conf/install_geo Содержимое архивов из репозитория ansible_conf/install_geo

Пояснение к скриншоту выше: папки содержащие подстроки lkio, lkip, lkul напрямую относятся к одноименным сервисам ФНС на домене nalog.ru.

lkio.nalog.ru

lkip.nalog.ru

lkul.nalog.ru

Содержимое папки lkip-web-login, это исходный код сервиса lkip2.nalog.ru Содержимое папки lkip-web-login, это исходный код сервиса lkip2.nalog.ru

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

uppod-styles.txt на сайте lkip2.nalog.ru uppod-styles.txt на сайте lkip2.nalog.ru Содержимое файла .env судя по всему прямиком с боевых серверов Содержимое файла .env судя по всему прямиком с боевых серверов

В итоге

  1. Фактический разработчик мобильного приложения Проверка чека некая studiotg.ru.

  2. Вероятно есть нарушение соглашений об обработке персональных данных в силу передачи диагностических сведений со стороны ФГУП ГНИИВЦ ФНС РФ в адрес третьих лиц.

  3. Данные ребята так же причастны к разработке сервисов lkip.nalog.ru, lkul.nalog.ru и lkio.nalog.ru.

  4. По их вине исходный код данных сервисов находится в публичном доступе уже около года.

  5. Исходя из общей картины, предположу, что данные о ваших покупках попадающие в ОФД путём информационного обмена фискальными данными с ФНС, на текущий момент, находятся под угрозой утечки.

Как-то так.Как-то так.
Источник: habr.com
К списку статей
Опубликовано: 25.03.2021 16:19:55
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Информационная безопасность

Ненормальное программирование

Исследования и прогнозы в it

Php

Api

Утечки

Проблемы безопасности

Фнс

Офд

Gitlab

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru