Outlawif Опубликовано 14 августа, 2019 Опубликовано 14 августа, 2019 Хабр жалко конечно. Ну мне было б жалко )
andreyyy Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 А - абасцака Американский программист зарегистрировал автомобильный номер с надписью NULL, которая зачастую обозначает пустое значение в компьютерных системах, в том числе базах данных. Таким образом он надеялся стать «невидимым» для систем распознавания номеров. Вместо этого система присвоила ему все штрафы, не ассоциированные с конкретным автомобильным номером, рассказывает Wired. Некоторые страны позволяют получать владельцам автомобилей не только номерные знаки со случайным набором символов, но и персональные знаки с нужным набором. Обычно автовладельцы выбирают для знаков какие-либо слова, названия или памятные даты. Кроме того, некоторые страны позволяют менять и дизайн знаков, выбирая их цвет или добавляя к ним изображения. Американский разработчик Джозеф Тартаро (Joseph Tartaro) решил использовать эту особенность в американском законодательстве, чтобы проверить технические особенности работы системы обработки данных с автомобильных знаков и выписки штрафов. В качестве надписи он выбрал NULL. Дело в том, что во многих языках программирования, в том числе SQL, используемом для работы с базами данных, null или NULL используется в качестве идентификатора отсутствующего или неприсвоенного значения. Задумка Тартаро заключалась в том, что таким образом он сможет избежать штрафов, потому что система не сможет корректно обрабатывать его номерной знак. В 2016 году ему удалось зарегистрировать такой знак. Через год при попытке перерегистрировать его он столкнулся с ошибкой при регистрации, однако все же смог продлить регистрацию с помощью других данных о номере. До начала 2018 года он не получал штрафов, однако затем ему все же выписали штраф и данные о его номере попали в базу данных. Программист связывает это с тем, что кто-то переклеил себе наклейку с его номера (на ней содержатся данные о дате регистрации). После этого Тартаро стал постоянно получать письма о штрафах из различных городов. Кроме того, в уведомлениях содержались разные модели автомобилей. При этом в онлайн-версии системы проверки штрафов те же самые нарушения были закреплены за автомобилем Тартаро и его VIN-номером. Вместе сумма выписанных штрафов составила 12049 долларов. Тартаро смог добиться отмены большей части из них, однако не всех. Кроме того, он получил уведомление от Управления транспортных средств Калифорнии (DMV), что он не сможет перерегистрировать номер, не оплатив оставшиеся штрафы.
Каммерер Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 Все знают, что Гугль собирает о нас информацию. Различными способами. Так вот я запросил у них архив- что у Гугля есть на меня, так сказать. Через три часа, архив был мне предоставлен. Гугль хранит обо мне 76.4 Гб информации в различных форматах. Несколько дней я ее разбирал. В основном это история поиска в ютуб, гугл кип, гугл фото. Нашел интересное видео от 13-го года, о котором совершенно забыл. Обнаружил странную голосовую запись, видимо, моим голосом: "разбуди меня через сорок минут!" Множество фотографий. Все записи в гугл кип, с момента создания моего аккаунта. Не знаю, зачем. Было интересно. https://takeout.google.com/
Outlawif Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 не ассоциированные с конкретным автомобильным номером Очень похоже на утку. null и 'NULL' это очень разные вещи. Кроме того, сравнение с null во всех диалектах SQL которые я знаю, отличается от сравнения с конкретным значением. Т.е. чтобы найти запись, соответствующую конкретному номеру, нужно написать WHERE number = '123456', а чтобы найти "не ассоциированные с конкретным номером" - WHERE number IS null. Как человек, занимавшийся в свое время взломом при помощи сиквел инжекта, могу сказать, что не представляю систему, в которой конкретное значение можно подменить нулом. Для этого потребовалось бы знать структуру базы и запросов, тогда можно было бы сварганить что-то типа ''' OR number is null (вначале тройная кавычка). Но это нелогично, зная эксплойт надо было бы написать что-то типа ''' AND 1<>1. Короче, звучит как липа. Либо там у них какое-то головотяпство с дублированием номеров и на самом деле есть много номеров NULL и как-то там с этим связано.
OlegRO Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 я всю слежку отключаю сразу при регистрации
andreyyy Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 Насчет is null понятно. Может как-то на этапе инсерта-апдейта. поле = NULL Кавычки убирают неоднозначность, да. Но х.з., может в каких-то версиях СУБД есть лазейка.
andreyyy Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 не, херня. Как они потом выберут ? inner join ? Никогда не привяжет текст к NULL group by ? При чем тут группировка ? Нужна детализация каждого правонарушения, а не общая сумма штрафов. хз А почему только в SQL-е ищешь лазейку ? Может в языке приложения-клиента лазейка и на том этапе рамсы путаются. Далее в базу уже спутанные данные пересылаются
Jus Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 По словам исследователя, он зарегистрировал номер в шутку и надеялся стать «невидимым» для паркоматов и камер. По его задумке, полицейские системы не должны были принимать значение NULL. Отчасти план сработал: номер и правда вызвал проблемы в системах, но не те, что думал Droogie. Исследователь не сразу понял, что произошло. Droogie пояснил, что он осторожный водитель и в первый год не получал никаких штрафов. Потом ему понадобилось перерегистрировать номера, но сайт Департамента автотранспорта (DMV) не распознал «NULL» как номерной знак. исследователь впервые заподозрил проблемы, а потом получил штрафов на 12 тысяч долларов, хотя не совершал нарушений. Droogie считает, что причиной стала ошибка в системе процессингового центра: вероятно, все нераспознанные номера там указываются как NULL, поэтому исследователю прислали штрафы за других людей. Скриншот сайта Департамента автортранспорта после ввода «NULL» Эксперт рассказал о произошедшем Департаменту автотранспорта Калифорнии и полиции Лос-Анджелеса, но там ему посоветовали просто сменить номера. Исследователь отказался, потому что не считает, что сделал что-то не так. В департаменте связались с частным подрядчиком, который обрабатывает данные с номеров, и попросили снять все штрафы. Но, по словам, Droogie, саму ошибку так не исправили — после этого он получил штрафов ещё на 6 тысяч долларов.
Outlawif Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 NULL при любых сравнениях дает фалс, хоть в группировках, хоть в джойнах, где угодно. Дырку в клиенте с налом представить еще тяжелее. Что это за клиент должен быть? Я даже представить не могу. Я делал код инжекты в пхп и питон, знаком со скрипт инжектом в джаваскрипте, это ничего общего не имеет с введением в поле какого-то простого значения. Такие вещи по умолчанию везде работают у любого формошлепа.
Outlawif Опубликовано 15 августа, 2019 Опубликовано 15 августа, 2019 Скриншот сайта Департамента Ну, то есть из скриншота ясно, что ошибка обработана и ничего не обновилось.
Рекомендуемые сообщения
Создайте учетную запись или войдите, чтобы комментировать
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВойти
Уже зарегистрированы? Войдите здесь.
Войти