Перейти к содержанию

Это Интересно И Познавательно (с)


Рекомендуемые сообщения

Опубликовано

Хабр жалко конечно. Ну мне было б жалко )

  • Ответов 5.7 тыс
  • Создана
  • Последний ответ

Топ авторов темы

  • andreyyy

    1287

  • Outlawif

    1248

  • OlegRO

    781

  • AT0N

    361

Топ авторов темы

  • andreyyy

    andreyyy 1287 публикаций

  • Outlawif

    Outlawif 1248 публикаций

  • OlegRO

    OlegRO 781 публикация

  • AT0N

    AT0N 361 публикация

Опубликовано

А - абасцака

 

Американский программист зарегистрировал автомобильный номер с надписью NULL, которая зачастую обозначает пустое значение в компьютерных системах, в том числе базах данных. Таким образом он надеялся стать «невидимым» для систем распознавания номеров. Вместо этого система присвоила ему все штрафы, не ассоциированные с конкретным автомобильным номером, рассказывает Wired.

 

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

 

Американский разработчик Джозеф Тартаро (Joseph Tartaro) решил использовать эту особенность в американском законодательстве, чтобы проверить технические особенности работы системы обработки данных с автомобильных знаков и выписки штрафов. В качестве надписи он выбрал NULL. Дело в том, что во многих языках программирования, в том числе SQL, используемом для работы с базами данных, null или NULL используется в качестве идентификатора отсутствующего или неприсвоенного значения. Задумка Тартаро заключалась в том, что таким образом он сможет избежать штрафов, потому что система не сможет корректно обрабатывать его номерной знак.

 

В 2016 году ему удалось зарегистрировать такой знак. Через год при попытке перерегистрировать его он столкнулся с ошибкой при регистрации, однако все же смог продлить регистрацию с помощью других данных о номере. До начала 2018 года он не получал штрафов, однако затем ему все же выписали штраф и данные о его номере попали в базу данных. Программист связывает это с тем, что кто-то переклеил себе наклейку с его номера (на ней содержатся данные о дате регистрации).

 

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

 

Тартаро смог добиться отмены большей части из них, однако не всех. Кроме того, он получил уведомление от Управления транспортных средств Калифорнии (DMV), что он не сможет перерегистрировать номер, не оплатив оставшиеся штрафы.

Опубликовано

Все знают, что Гугль собирает о нас информацию. Различными способами. Так вот я запросил у них архив- что у Гугля есть на меня, так сказать. Через три часа, архив был мне предоставлен. Гугль хранит обо мне 76.4 Гб информации в различных форматах. Несколько дней я ее разбирал. В основном это история поиска в ютуб, гугл кип, гугл фото. Нашел интересное видео от 13-го года, о котором совершенно забыл. Обнаружил странную голосовую запись, видимо, моим голосом: "разбуди меня через сорок минут!"

Множество фотографий. Все записи в гугл кип, с момента создания моего аккаунта.

 

Не знаю, зачем. Было интересно.

 

https://takeout.google.com/

Опубликовано
не ассоциированные с конкретным автомобильным номером
Очень похоже на утку.

 

null и 'NULL' это очень разные вещи. Кроме того, сравнение с null во всех диалектах SQL которые я знаю, отличается от сравнения с конкретным значением. Т.е. чтобы найти запись, соответствующую конкретному номеру, нужно написать WHERE number = '123456', а чтобы найти "не ассоциированные с конкретным номером" - WHERE number IS null.

 

Как человек, занимавшийся в свое время взломом при помощи сиквел инжекта, могу сказать, что не представляю систему, в которой конкретное значение можно подменить нулом. Для этого потребовалось бы знать структуру базы и запросов, тогда можно было бы сварганить что-то типа ''' OR number is null (вначале тройная кавычка). Но это нелогично, зная эксплойт надо было бы написать что-то типа ''' AND 1<>1.

 

Короче, звучит как липа. Либо там у них какое-то головотяпство с дублированием номеров и на самом деле есть много номеров NULL и как-то там с этим связано.

Опубликовано

я всю слежку отключаю сразу при регистрации

 

Опубликовано

Насчет is null понятно.

 

Может как-то на этапе инсерта-апдейта.

 

поле = NULL

 

Кавычки убирают неоднозначность, да. Но х.з., может в каких-то версиях СУБД есть лазейка.

 

 

Опубликовано

не, херня.

 

Как они потом выберут ?

inner join ?

 

Никогда не привяжет текст к NULL

 

group by ?

При чем тут группировка ? Нужна детализация каждого правонарушения, а не общая сумма штрафов.

 

хз

 

А почему только в SQL-е ищешь лазейку ? Может в языке приложения-клиента лазейка и на том этапе рамсы путаются.

Далее в базу уже спутанные данные пересылаются

Опубликовано

По словам исследователя, он зарегистрировал номер в шутку и надеялся стать «невидимым» для паркоматов и камер. По его задумке, полицейские системы не должны были принимать значение NULL. Отчасти план сработал: номер и правда вызвал проблемы в системах, но не те, что думал Droogie.

 

Исследователь не сразу понял, что произошло. Droogie пояснил, что он осторожный водитель и в первый год не получал никаких штрафов. Потом ему понадобилось перерегистрировать номера, но сайт Департамента автотранспорта (DMV) не распознал «NULL» как номерной знак.

 

исследователь впервые заподозрил проблемы, а потом получил штрафов на 12 тысяч долларов, хотя не совершал нарушений. Droogie считает, что причиной стала ошибка в системе процессингового центра: вероятно, все нераспознанные номера там указываются как NULL, поэтому исследователю прислали штрафы за других людей.

 

Скриншот сайта Департамента автортранспорта после ввода «NULL»

 

13349551.jpg

 

Эксперт рассказал о произошедшем Департаменту автотранспорта Калифорнии и полиции Лос-Анджелеса, но там ему посоветовали просто сменить номера. Исследователь отказался, потому что не считает, что сделал что-то не так.

 

В департаменте связались с частным подрядчиком, который обрабатывает данные с номеров, и попросили снять все штрафы. Но, по словам, Droogie, саму ошибку так не исправили — после этого он получил штрафов ещё на 6 тысяч долларов.

Опубликовано

NULL при любых сравнениях дает фалс, хоть в группировках, хоть в джойнах, где угодно.

 

Дырку в клиенте с налом представить еще тяжелее. Что это за клиент должен быть? Я даже представить не могу. Я делал код инжекты в пхп и питон, знаком со скрипт инжектом в джаваскрипте, это ничего общего не имеет с введением в поле какого-то простого значения. Такие вещи по умолчанию везде работают у любого формошлепа.

Опубликовано
Скриншот сайта Департамента
Ну, то есть из скриншота ясно, что ошибка обработана и ничего не обновилось.

Создайте учетную запись или войдите, чтобы комментировать

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти
×
×
  • Создать...