База GeoIP для геолокации по IP-адресу превратила в кошмар жизнь женщины в Канзасе


    Геолокация IP-адресов в мире

    В часе езды от Уичито (шт. Канзас) есть маленький городок под названием Потвин, а в нём — ферма площадью 1,5 км2. Единственная жительница этой фермы, 82-летняя Джойс Тейлор, уже несколько лет подвергается нападкам, телефонным угрозам и необъяснимой агрессии людей со всего мира, визитам агентов ФБР, коллекторов долгов от Налоговой службы, карет скорой помощи в поисках жертв самоубийств и полицейских офицеров в поисках пропавших детей. Однажды кто-то оставил разбитый унитаз на дороге, в непонятной попытке что-то сказать.

    Соседи общались с ней как с преступницей. До настоящего времени женщина не понимала, в чём дело. Оказалось, что проблема в географических координатах её фермы, а также в специфике работы интернет-сервиса определения местоположения по IP-адресу MaxMind.

    Компания MaxMind начала свою работу в 2002 году. Она поставила цель собрать базу IP-адресов и попытаться совершить географическую привязку этих адресов. Обычно такое делают с помощью «вардрайвинга» — автомобили курсируют по дорогам в поисках открытых хотспотов Wi-Fi, регистрируя их IP-адреса и GPS-координаты. Сбор идёт также с приложений на мобильных телефонов, которые сохраняют IP-адреса и свои координаты — так определяется принадлежность диапазона адресов какой-то компании.

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

    Разумеется, это не точная наука (пример). Иногда сервис может определить только страну по IP-адресу, иногда — город. Чтобы отображать такие «нечёткие» данные на карте, MaxMind определяет координаты для условного центра каждой страны, штата и города. Например, если неизвестно местоположение американского IP-адреса, тогда просто отображается метка в центре страны.

    Тут начинается самое интересное. Точный географический центр США находится в северном Канзасе, около границы с Небраской. Технически, его географические координаты 39°50′N 98°35′W. На цифровых картах это соответствует 39.8333333,-98.585522. По какой-то причине компания MaxMind в 2002 году решила «упростить» указатель на географический центр и установила его в более простом виде 38°N 97°W или 38.0000,-97.0000.

    В итоге, за последние 14 лет для каждого неизвестного адреса в США компания указывала эти координаты. Такое случалось часто: около 5000 компаний запрашивают эти данные из базы MaxMind, а вообще сейчас более 600 миллионов IP-адресов связаны с этими координатами. Если хотя бы один из этих адресов используется мошенниками, преступниками, ворами мобильных телефонов — база данных MaxMind выдаёт одинаковые координаты: 38.0000,-97.0000.

    Координаты прямо перед домом Джойс Тейлор.



    Первый звонок она получила в 2011 году из Коннектикута. Разъярённый мужчина ругался, что его фирма не может пользоваться электронной почтой: все ящики завалены спамом. «Он сказал, спам идёт с адреса фермы. — говорит Тейлор. — Тогда я начала подозревать, что-то происходит».

    В следующие месяцы звонки и визиты неизвестных участились. «Сыщики»-любители проводили свои расследования и «пробивали человека по IP», что приводило их к дому пожилой женщины в Канзасе. До сих пор в сети можно найти многочисленные жалобы в Facebook, YouTube, Reddit, Ripoff Report и Google+, если ввести её домашний адрес в поиске.


    Тот самый унитаз

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

    «Эта бедная женщина годами подвергалась притеснениям», — говорит он. Местная полиция взяла на себя общение с представителями различных силовых ведомств, которые приезжали сюда.



    Джойс Тейлор — не единственная жертва «бага» в сервисах определения координат по IP-адресу. В прошлом году журналистка Кашмир Хилл рассказывала, как к молодой паре в одном доме в Атланте постоянно приезжают люди, требуя вернуть свои телефоны, по наводке приложений типа Find-My-Phone.



    Хилл предположила, что есть и другие с аналогичными проблемами — и попросила знакомого программиста обработать открытую базу данных MaxMind, чтобы составить список адресов, которым соответствует максимальное количество IP. Таких оказались тысячи. Адрес Тейлор был на первом месте с 600 млн IP-адресов, многократно опережая других (дом в Атланте оказался на 865 месте).

    Кашмир Хилл написала в MaxMind — они ни о каких проблемах не слышали.

    Она также связалась с другими людьми из списка. У некоторых действительно случались странные похожие истории. Например, Тони Пав живёт в Эшбёрне (шт. Виргиния). Рядом располагаются несколько крупных дата-центров. В общей сложности на данные координаты приходится более 17 миллионов IP-адресов. Из-за выбора координат по умолчанию в городе картографические сервисы указывают именно на жилище Тони. У него проблемы начались в 2012 году, когда он обнаружил наряд полиции возле дома. Они искали украденный ноутбук одной из государственных служб.


    Поисковый ордер, предъявленный Тони Паву в 2012 году

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



    Один из основателей компании MaxMind пообещал журналистке в переписке, что они предпримут меры для решения проблемы. Будут выбраны новые точки по умолчанию для географических объектов — посреди водоёмов.

    Обновление базы данных MaxMind намечено на вторник (12.04.2016 г), а большинство фирм-клиентов выпустят свои обновления через несколько недель или месяцев.

    Similar posts

    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 84

      +23
      Разве она не может подать в суд на MaxMind?
        +5
        И легко выиграть дело.
          0
          … и заставить сменить все дефолтные адреса на адрес Штаб квартиры MaxMind или домашний адрес ее владельца на год-два.
            0
            Год-два… Навечно!
              0
              ну я гуманен)
          +12
          Причём сделать иск коллективным, чтобы раз и навсегда отбить у этих ребят желание портить жизнь рандомным людям. Ведь так просто сделать на сайте плашку «It's not a real coordinates of IP, but just default position.»
            +3
            А еще можно даже не показывать метку на карте, просто говорить, что, мол, «знаем что США, больше ничего».
              –1
              Или вместо непосредственно центральной точки рисовать окружность, внутри которой (предположительно) лежат искомые координаты. Тогда сразу будет понятно, что имеет в виду система: «где-то в США», «где-то в этом городе» или «где-то в районе нескольких домов».
                +2
                Рисование точек или кругов — это уже на совести разработчиков клиентских приложений. А MaxMind предоставляет только базу координат.
                  0
                  Но тогда имеет смысл обязать MaxMind при отдаче данных прикреплять булевы сигнатуры, сигналящие о том, что IP именно что определён по данным координатам, а не тупо скинут на точку привязки всех undefined. Или вовсе не отдавать координаты для неопределённых IP.
                    +1
                    Реализация визуализации данной характеристики тоже будет на совести сервисов обращающихся к MaxMind. Предложенное решение — водоемы, если они не находятся на чей-то частной территории, выглядит более правильным решением, значительно менее зависящим от реализации сторонних разработчиков.
                      0
                      Насколько помню (когда-то давно использовал их базы) они среди полей есть предполагаемая погрешность (в милях) определение координат. Ну и помимо координат названия страны/штата/города. Если последние поля пустые, то означает что определена только страна принадлежности IP. А уж использовать это значение передаваемое из базы или нет — на совести разработчика конкретных приложений/сервисов использующих эти базы данных.

                      Хотя вспомнил еще один забавный момент. У них раньше были беслатные «демо» базы данных и полноценные (платные). В бесплатных точность на уровне определения городов была специально занижена (в документации не указалывалось как именно). Для России помню это давало аномальное количество посетителей из Пензы. Видимо часть адресов случайным образом была заменена на этот город.
                      Возможно кто-то бесплатными демо-базами пользуется не по назначению и там…
                      0
                      Значение погрешности клиенту отдаётся? Речь только об этом.
                  +12
                  Автоматизированным системам побоку будет эта плашка, она заберёт полученные координаты и передаст дальше. Изначально надо было предусматривать индикатор уровня применимости координат, вроде указания точности определения как в GPS-системах. Ведь координаты это конкретная точка, а для адекватного использования нужен ещё радиус или другой критерий определяющий размер объекта на который указывают координаты. Даже если его ввести сейчас, очень много автоматических систем которые не смогут его использовать т.к. не в курсе такого понятия, а те что уже лишились поддержки — так и вообще никогда.
                    +1
                    А если это сервис, предоставляющий адрес внутрь другого приложения, то плашка не поможет. Наш сервис давал в качестве неизвестного региона Байконур (94, т.к. по спецификации нужны были 2 цифры и 00 был невалидным, а варианта «ошибка» или «неизвестен» не предусматривалось) и людей это не смущало — куча всего оказалось там.
                    У них проще — можно указать любые координаты. Антарктиду, например — если кто и захочет поискать там телефон, то это будет отличным воспитательным процессом в плане перепроверки входных данных.
                    0
                    del
                      +3
                      Сложно. В договоре MaxMind с его клиентами наверняка сказано «все координаты примерные, все данные условные, вы сами себе буратины». Компания переведёт стрелки на своих клиентов, а с тех с каждого конкретного много не стрясёшь.
                        +1
                        Координаты примерные и координаты рандомные — это очень разные координаты.
                          +4
                          совсем не сложно, на мой взгляд.
                          ведь истица может сослаться на «невыносимые страдания», «притеснения», «гонения», итп.
                          а штатовская судебная система этого ох как не любит…
                            +3
                            вы используете кавычки, как будто-бы считаете, что ее страдания мнимые.
                              +1
                              предпочел выделить их кавычками и сделать похожими на цитаты.
                            +8
                            Она пострадала от деятельности этой компании, а это легко доказать.
                              0
                              Всё зависит от того, у кого юристы круче. Негр, которого скины побили лопатой, тоже может сказать, что пострадал от деятельности производителя лопат. Можно предъявить претензии продуктовому магазину, что там купили водку, а затем на улице устроили дебош. Но в суде это не прокатит. Были случаи, когда такие иски проходили, но все они становились известными курьёзами и рассыпались на апелляции.
                              Моё знакомство с американской юрисперденцией, конечно, поверхностное. Но я думаю компания откосит по принципу «Цирк не виноват, что армия не смеётся». Скажут, что все претензии к тем, кто совершал противоправные акты, предложат удалить этот адрес из базы — и ничего им не будет.
                                +1
                                да неверная аналогия у вас! лопаты произведены такими что куда ни ударь, если промахиваешься — они сами целятся и летят в негра! это ключевой момент
                            0
                            А смысл? Он ведь показывает правильные координаты. Не они же виноваты, что в «условном центре страны» стоит какая-то ферма. Тут проблема во всяких идиотах, которые насмотрелись кино а-ля CSI, и считают что на любой IP-адрес можно получить координаты с точностью до метра.
                              0
                              А зачем вообще показывать какие-либо координаты, если известно только какой стране принадлежит IP-адрес? В этом-то вся проблема.
                                0
                                А какая точность достаточна для показа? Регион? Город? Квартал? Дом? Любой географический объект имеет координаты. У страны в целом они тоже есть, их и показывают.
                                  0
                                  Координаты — это по определению конкретная точка, а не область, и уж тем более не целая страна.
                                    0
                                    И? Даже стул, на котором вы сидите — это не точка, а область. Очень маленькая, но область. И любая точка в пределах этой области будет для неё валидными координатами. А точку в центре области (или близко к нему) делают потому, что это во -первых — наглядно, во-вторых — просто.
                                      0
                                      в-третьих — порождает много проблем с интерпретацией этой точки. Координату центра страны можно интерпретировать как, собственно, конкретную точку на планете, так и как всю страну в целом. Вот из-за этой двусмысленности и возникают всякие неприятные ситуации. Все-таки более правильным было бы возвращать null вместо координат и название страны.
                                        +1
                                        Да нет никаких проблем, название страны возвращается и так, координаты — это ОДНО ИЗ полей ответа. И стран на этой планете, внезапно, больше одной. Можете на память прикинуть, где находится Люксембург и далеко ли от него Монако? Или с какой стороны Африки расположена Танзания? И с фига тогда сервисы, в составе которых есть карта, должны ограничиваться только названием, не показывая даже в какой половине глобуса это место искать?
                                          0
                                          Насколько я понимаю, сервис, о котором идет речь в статье предоставляет только координаты и визуализацией не занимается.
                                          Но допустим у нас есть сервис с картой. В чем проблема выделить на карте всю страну целиком?
                                            0
                                            Исходная база содержит все доступные сведения.
                                            Да куча проблем. Нужно откуда-то брать границы всех географических объектов, это капец как сильно увеличит размер базы, и всё равно не отменит идиотов, которые будут глазами смотреть на центр области.

                                            Если вам хочется, можете на СВОЁМ сервисе показывать области границами. А GeoIP — это просто база соответствия IP-адреса и места на глобусе. Как её использовать — исключительно ваше дело. Хотите, используйте дефолтные точки из базы, хотите — мучайтесь с границами и областями, но уже как-нибудь сами.
                            +3
                            этой статье уже несколько лет.
                              –1
                              Что за дебильный сервис, он должен был вместо точки на карте показывать область, в которой эта точка заведомо должна находиться.
                                +16
                                Будут выбраны новые дефолтные точки для географических объектов — посреди водоёмов.

                                Нельзя недооценивать человеческую глупость, начнут ведь на дне искать обидчиков…

                                  –4
                                  Просто будет какое-то количество несчастных случаев. Вот эта картинка тут больше просится…
                                  image
                                    +1
                                    Водоемы есть только в США?
                                      0
                                      Это был бы корректный вопрос, если бы в данном трэде не педалировалась активно именно США. И расположение «под водой» абсолютно про это же.
                                      0
                                      Это он утонул? Ожидаемо, с его-то представлениями о реальности.
                                    +16
                                    Меня очень радует мой провайдер. Яндекс и Гугл находят мой адрес по IP как центр города и указывают прямо на здание Прокуратуры…
                                      +6
                                      В Москве центральная точка тоже должна неплохо отбивать желание бодаться…
                                        0
                                        По мнению Яндекса и Гугла я вообще в Москве живу. Правда иногда на время быстро телепортируюсь назад в Петербург, но большую часть времени в Москве (ip у провайдера динамические).
                                        0
                                        https://www.maxmind.com/ru/geoip2-precision-services Радиус точности доступен только в более дорогой версии базы, которую видимо реже используют.
                                          0
                                          Похожий случай недавно описывали на ГТ: geektimes.ru/post/269598.
                                            +1
                                            Да, это в статье упоминается. Теперь разобрались, в чём причина.
                                              0
                                              Простите, не заметил.
                                            0
                                            А что им стоило в качестве дефолтных координат указать Северный Полюс?
                                              +1
                                              Северный полюс немножко не в США. В данном случае подразумевалось что адрес находится где-то в США.
                                                +2
                                                И, по закону подлости, попадут в какую-нибудь дрейфующую полярную станцию
                                                  +5
                                                  Ну, пускай туда и тащат унитаз.
                                                    +1
                                                    На Джомолунгму стремянку и гирю затащили, что уж тут унитаз какой-то на плоскую равнину.
                                                      +3
                                                      Джомолунгма это гора Эверест (8 848 м, Непал / Китай), стремянку и гирю занесли на Эльбрус (5 642 м, Россия). Не путайте.
                                                        0
                                                        Блин, всего-то на 3200 км ошибся. И надо было им так похоже называть горы…
                                                          0
                                                          ну да, Джомолунгма и Ошхамахо это так похоже…
                                                +6
                                                Наверное стоило бы упомянуть, что MaxMind это не «какой-то сервис определения по IP», а авторы библиотеки и базы данных GeoIP, которые используются очень широко, в самых разных интернет сервисах.
                                                  0
                                                  Полностью согласен, благодарю за подсказку. :)
                                                    +1
                                                    Даааа, и поэтому абонентов Йоты из Москвы мы постоянно приглашаем в Краснодар на сайте.
                                                      0
                                                      Магазин Кей в своё время меня рандомно кидал между СПб, Воронежем и чем-то ещё (типа Петрозаводска — не помню, но разброс примерно такой). Подпись — обладатель статического белого IP.
                                                    +2
                                                    ip адресов у нас 4млрд, добрый лярд наверно зарезервирован за всякими приватными сетями, мультикастами и все такое. т.е. остается 3млрд реальных адресов. из них 600млн(20%) показывают на дом старушки? интересный сервис.
                                                      0
                                                      большинству клиентов GeoIP побоку на точный адрес, им важна страна… например чтоб выбрать соответствующий язык на сайте. Ну или город, чтоб переправить на нужный портал. Наверное видели всплывающие плашки на сайтах инет-магазинов с уточнением города? Обычно это весело, когда с мобильного интернета, какой-нить Мегафон заворачивает трафик из Питера через Ебург.
                                                        0
                                                        >>например чтоб выбрать соответствующий язык на сайте
                                                        Для этого базу вряд ли кто-то использует ибо язык браузер сам передаёт при соединении.
                                                          0
                                                          Теперь сталось рассказать широким народным массам как установить требуемый язык в браузере(сам еле нашёл это поле, и то скорей через стороннее расширение в виде PrefBar потом только нашёл в настройках браузера). По умолчанию у всех стоит предпочитаемый язык английский, и очень сложно пользователям объяснить что и где нужно сменить.
                                                            +2
                                                            Может мы про разное говорим, но ведь браузер отправляет поле
                                                            Accept-Languge ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
                                                              0
                                                              Именно про это самое. И настройка в браузере предпочитаемого языка тоже есть, которая влияет на это поле.
                                                        0
                                                        Всё же справедливо учитывать только IP адреса в США.
                                                          0
                                                          Простите за занудство, но IPv4-адресов, а не просто IP.

                                                          // P.S. просьба не устраивать тред «IPv6 нинужен потому что мой провайдер не умеет в него»
                                                          0
                                                          Уи́чито (англ. Wichita [ˈwɪtʃɪˌtɔː])
                                                          Кстати, был крейсер с этим названием)
                                                            +4
                                                            Одним жизнь портит null, другим — его отстутствие.
                                                              +3

                                                              В отсутствие нула нужно использовать верные типы.


                                                              data Location = Just Coordinates | Nothing
                                                                +1
                                                                В посте раздался сильный аромат карри.
                                                                  0
                                                                  как это понимать? я не программист)
                                                                    0

                                                                    Представьте, что вам нужно делить разные числа друг на друга. Какой тип выбрать для результата? Казалось бы, подойдёт обычное вещественное число, но есть случай деления на ноль. Результат деления на ноль — не вещественное число, и уж точно не ноль.


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

                                                                      0
                                                                      <зануда>Механизмы обработки исключительных ситуаций бывают не только через 'передача результата через возвращаемое значение'… те же exception вполне эффективны и удобны.
                                                                        0

                                                                        Несомненно так. Но ситуация отсутствия значения вовсе не исключительная. Например, не заполнено необязательное поле в форме. Присваивать этому полю значение «пустая строка» не всегда корректно. Отсутствие значения будет точнее, что мы и видим на прекрасном примере в данном топике.

                                                                          0
                                                                          А теперь внимание вопрос — причем тут карри?
                                                                            0

                                                                            Надо спросить у того, кто это сказал )

                                                                              +1
                                                                              Говорят, в его честь назвали хренову тучу всякого разного, в том числе язык, на котором привел пример bubuq.
                                                                        0
                                                                        Фраза об аромате — отсылка к каррированию, одному из краеугольных камней языка Haskell, на котором написан пример кода выше.
                                                                        https://ru.wikipedia.org/wiki/Каррирование
                                                                          0
                                                                          Я уж грешным делом думал что это намёк: карри- Индия-программисты индусы-тяпляп и в продакшн)
                                                                            0
                                                                            Скорее, это отсылка к фамилии человека, в честь которого было названо и каррирование, и язык Haskell.
                                                                    +6
                                                                    Вообще это же золотое дно рекламщиков — 600 млн ссылок на объект. Воткнуть там адвокатскую контору, и клиент сам к тебе прёт косяками — кто как клиент, кто как объект иска/стрижки/дойки, особо буйных сдавать в полицию взаимообразно…
                                                                    Жаль, глухомань…

                                                                    Хотя — попали б они на секретную ракетную базу — был вообще цирк
                                                                      +1
                                                                      Вы абсолютно правы, на телефон голосовую рекламу, на ферме выложить рекламу видимую со спустника (как только обновятся карты гугла будет профит), на дороге бигборды. Ферму стоит купить, тем более старушка в шоке.
                                                                      –1
                                                                      Искренне захотелось купить такой дом по сниженной цене. Я умею решать проблемы интернет-воинов, решившихся на реальное выяснение отношений. Тем более, что, к примеру, в Техасе отношение к огнестрельному оружию очень лояльное, а местный менталитет вполне себе позволяет защищать свое жилище.

                                                                      Only users with full accounts can post comments. Log in, please.