Хакер #305. Многошаговые SQL-инъекции
В далеком 2008 году управление городского транспорта Бостона обратилось в суд, чтобы помешать хакерам из Массачусетского технологического института (МТИ) выступить на конференции Defcon с рассказом о том, как бесплатно ездить в метро. Теперь, спустя 15 лет, четверо подростков продолжили это исследование и все же рассказали на Defcon о том, как взломать транспортные карты CharlieCard.
Издание Wired напоминает, что в 2008 году вокруг конференции Defcon разразился один из самых громких скандалов, за всю историю ее существования. Тогда группа студентов из МТИ планировала выступить на конференции с докладом о найденном ими методе бесплатного проезда в метро Бостона. Однако незадолго до этого на них подали в суд представители Транспортного управления залива Массачусетс (Massachusetts Bay Transit Authority, MBTA) и добились запретительного судебного приказа, отменив выступление. При этом слайды подготовленной для конференции презентации все равно вскоре попали в сеть.
Летом 2021 года 15-летние Мэтти Харрис (Matty Harris) и Закари Бертокки (Zachary Bertocchi) ехали в бостонском метро, когда Харрис рассказал Бертокки о прочитанной им статье в Wikipedia, в которой упоминалось это несостоявшееся выступление хакеров на Defcon. Подростки, учащиеся в Медфордском профессионально-техническом училище в Бостоне, решили повторить работу хакеров из МТИ и тоже научиться бесплатно ездить на метро.
«Мы предполагали, что это невозможно, поскольку прошло более десяти лет, это получило широкую огласку, и они наверняка исправили [проблему]», — рассказывает Харрис. Но Бертокки уточняет, что власти этого не сделали.
Теперь, спустя два года работы, пара подростков и двое их друзей, Ноа Гибсон (Noah Gibson) и Скотт Кэмпбелл (Scott Campbell), представили результаты своего исследования на конференции Defcon в Лас-Вегасе.
Им удалось не только воспроизвести работу хакеров из Массачусетского технологического института, проделанную в 2008 году, но пойти еще дальше. Дело в том, что в 2008 году в МТИ хакнули бумажные транспортные карты Charle Ticket с магнитной полосой, научившись копировать их, изменять их стоимость и получать бесплатные поездки. Но эти карты упразднили в 2021 году, вскоре после начала исследования Харриса и Бертокки, а вместо них появились CharlieCard, бесконтактные смарт-карты с RFID, которые теперь использует MBTA.
Подросткам удалось скомпрометировать именно новые CharlieCard, научившись добавлять на карту любую сумму или выдавать ее за льготную студенческую карту, карту пенсионера или даже карту сотрудника MBTA, которая дает неограниченное количество бесплатных поездок.
После нескольких месяцев проб и ошибок с использованием различных RFID-ридеров подростки сумели сделать дамп содержимого CharlieCard и приступили к его расшифровке.
В отличие от кредитных и дебетовых карт, баланс которых отслеживается во внешних БД, около килобайта данных CharlieCard хранятся в памяти самой карты, в том числе и данные о ее балансе. Чтобы предотвратить изменение этого значения, каждая строка данных в памяти карты содержит контрольную сумму — строку символов, которая высчитывается с помощью собственного алгоритма MBTA.
Сравнивая одинаковые строки в памяти разных карт и значения их контрольных сумм, исследователи начали выяснять, как создаются контрольные суммы. В итоге им удалось разработать способ, который позволял изменять количество средств на карте, а также контрольную сумму, которая заставляла ридер принимать такую CharlieCard как действительную. Подростки вычислили длинный список контрольных сумм для каждого значения, что позволило им изменять баланс карты по своему усмотрению. По просьбе MBTA они не публикуют ни эту таблицу, ни детали своей работы по ревесрс-инжинирингу контрольных сумм.
Для демонстрации своей работы подростки и вовсе создали портативный «автомат по продаже билетов» — небольшое устройство с сенсорным экраном и датчиком RFID. Этот дейвас может добавить любую сумму на CharlieCard или изменить ее настройки. Ту же функциональность юные исследователи встроили и в приложение для Android, которое позволяет «пополнить» карту одним касанием.
Дело в том, что на этот раз MBTA не угрожало подать в суд и не пыталось запретить подросткам выступить на Defcon. Вместо этого в начале года молодых исследователей пригласили в штаб-квартиру транспортного управления, чтобы они выступили там с презентацией о найденных ими уязвимостях перед 12 руководителями. Затем представители MBTA вежливо попросили не раскрывать данные о проблеме в течение 90 дней, а также умолчать о части использованных методов, чтобы другим хакерам было труднее воспроизвести взлом.
При этом сами хакеры говорят, что MBTA так и не устранила обнаруженные ими уязвимости, и похоже, ждет ввода в строй новой системы оплаты проезда в метро, которую должны внедрить в 2025 году.
«Следует отметить, что обнаруженная старшеклассниками уязвимость не представляет непосредственной угрозы для безопасности, [не может использоваться для] нарушения работы системы или утечки данных, — рассказал журналистам глава по коммуникациям MBTA Джо Песатуро (Joe Pesaturo). — Группа MBTA по выявлению мошенничества усилила мониторинг относительно уязвимости и не ожидает каких-либо значительных финансовых последствий для MBTA. Уязвимость исчезнет после введения в эксплуатацию новой системы оплаты проезда».
Подростки же утверждают, что управление городского транспорта, похоже, пытается противостоять их атакам, обнаруживая измененные карты и блокируя их. Но лишь небольшая часть карт, на баланс которых они добавили деньги, была выявлена.
«Имеющиеся у них средства защиты на самом деле не являются патчем, закрывающим уязвимость. Вместо этого они играют в игру “ударь крота” с картами по мере их появления, — рассказывают подростки. — Некоторые из наших карт были отключены, но большинство прошли [проверки]».
Фото: Wired