Сразу спешу предупредить, что в Грузии нет аналога 327 статье УК РФ, поэтому все действия, описанные здесь, являются законными, пока не будет нанесен ущерб на сумму >2000 лари(~50000 рублей).
Стоит отметить, что сама идея была навеяна тремя другими статьями: «Тройка», «Подорожник», «Ситикард».
![image](https://habrastorage.org/getpro/habr/post_images/d37/1d7/556/d371d7556528d542146e668fbe32d040.jpg)
Транспортная система в Тбилиси несколько отличается от привычной для жителей России. Здесь вы не увидите трамваев или троллейбусов. Есть только автобус, метро, маршрутное такси и канатная дорога. Первое и второе вам обойдется в 50 тетри(~12,5 рублей), маршрутное такси — 80 тетри, а канатная дорога — 2 или 3 лари. Весь этот транспорт можно оплатить картой Metromoney.
Для исследования карты использовался Proxmark3. Первым делом определим тип rfid-метки:
![image](https://habrastorage.org/getpro/habr/post_images/5b7/464/563/5b74645634be59ce71b2c30b2c9b2622.jpg)
Как видим, это — mifare classic 1k с 4-байтным uid. Proxmark поддерживает три типа атак на mifare classic: darkside, nested и hard nested. Эта карта уязвима ко всем трём в отличие от известной нам «Тройки» и «Подорожника». Атака эта давно известна, описана она была ещё в далеком 2009.
Следующим шагом будет проверка карты набором стандартных ключей:
![image](https://habrastorage.org/getpro/habr/post_images/c38/686/661/c3868666146ee733e6d5e47749a60984.jpg)
В результате мы находим стандартный ключ — FFFFFFFFFFFFF. Затем переходим к самой nested attack:
![image](https://habrastorage.org/getpro/habr/post_images/37b/f3a/09d/37bf3a09d068681cfdcc5f7b12c88b78.jpg)
В ответ получаем такую карту ключей, что нам и было нужно. Как мы помним, в предыдущих трёх публикациях авторы использовали атаку повторного воспроизведения из-за шифрования, обратим же наше внимание на структуру данных здесь, используя MCT.
![image](https://habrastorage.org/getpro/habr/post_images/26c/330/bbf/26c330bbf8dd8c84121ebfcca0f9cf37.jpg)
Здесь отсутствует шифрование, значит всё, что нам остается сделать — это прописать в блоке значений, где стоит сумма 5 лари, любую нужную нам сумму(стоит помнить, что >2000 лари). Если вы захотите клонировать такую карту, клонировать нужно и uid карты, т.к. его хэш хранится в отдельном блоке. Какой-либо системы онлайн проверки карт здесь не существует, турникеты в метро как и турникеты на фуникулёре работают оффлайн, автобусы тоже. Грузия интересная страна, здесь есть терминалы оплаты, которые работают с транспортными картами оффлайн.
![image](https://habrastorage.org/getpro/habr/post_images/dc6/9e4/4f2/dc69e44f2a5c8806d86cd0f586149a7a.jpg)
На фото крайний справа. На нём снизу видно специальное место, куда следует прикладывать rfid-метку
Можем поднести карту с любым нашим балансом и, он без каких-либо проблем отобразит её и предложит пополнить.
Также здесь есть небольшой нюанс, такую карту можно сдать в кассу с возвращением всей суммы на ней (!) и залоговой стоимости в течение 30 дней с момента покупки при предъявлении чека и самой карты.
Статья была бы неполной, если бы я не упомянул местные дебетовые карты express bank. У меня на руках совершенно случайно оказалась социальная карта грузинского студента, выглядит она следующим образом:
![image](https://habrastorage.org/getpro/habr/post_images/8f3/260/67b/8f326067b22f266de218381b6e8a2380.jpg)
Сама rfid-метка представляет из себя jcop41 с эмуляцией mifare classic 1k.
![image](https://habrastorage.org/getpro/habr/post_images/887/897/847/887897847bfd993bc3008014c5a0307f.jpg)
Конечно же я не буду что-либо оплачивать банковской картой с измененным балансом, ведь шутки с банками редко заканчиваются хорошо, поэтому дальше чтения данных с карты я не
пошел.
![image](https://habrastorage.org/getpro/habr/post_images/bd3/56a/f62/bd356af62eddd067270f3881a170fdb5.jpg)
Как верно было подмечено пользователем 532CDCCC1022 все транспортные системы в той или иной степени небезопасны. Использование решений десятилетней давности делает их только более уязвимыми.
P.S. Все совпадения случайны, а указанные действия совершенны неким неназванным джедаем.
Стоит отметить, что сама идея была навеяна тремя другими статьями: «Тройка», «Подорожник», «Ситикард».
![image](https://habrastorage.org/getpro/habr/post_images/d37/1d7/556/d371d7556528d542146e668fbe32d040.jpg)
Транспортная система в Тбилиси несколько отличается от привычной для жителей России. Здесь вы не увидите трамваев или троллейбусов. Есть только автобус, метро, маршрутное такси и канатная дорога. Первое и второе вам обойдется в 50 тетри(~12,5 рублей), маршрутное такси — 80 тетри, а канатная дорога — 2 или 3 лари. Весь этот транспорт можно оплатить картой Metromoney.
Для исследования карты использовался Proxmark3. Первым делом определим тип rfid-метки:
![image](https://habrastorage.org/getpro/habr/post_images/5b7/464/563/5b74645634be59ce71b2c30b2c9b2622.jpg)
Как видим, это — mifare classic 1k с 4-байтным uid. Proxmark поддерживает три типа атак на mifare classic: darkside, nested и hard nested. Эта карта уязвима ко всем трём в отличие от известной нам «Тройки» и «Подорожника». Атака эта давно известна, описана она была ещё в далеком 2009.
Следующим шагом будет проверка карты набором стандартных ключей:
![image](https://habrastorage.org/getpro/habr/post_images/c38/686/661/c3868666146ee733e6d5e47749a60984.jpg)
В результате мы находим стандартный ключ — FFFFFFFFFFFFF. Затем переходим к самой nested attack:
![image](https://habrastorage.org/getpro/habr/post_images/37b/f3a/09d/37bf3a09d068681cfdcc5f7b12c88b78.jpg)
В ответ получаем такую карту ключей, что нам и было нужно. Как мы помним, в предыдущих трёх публикациях авторы использовали атаку повторного воспроизведения из-за шифрования, обратим же наше внимание на структуру данных здесь, используя MCT.
![image](https://habrastorage.org/getpro/habr/post_images/26c/330/bbf/26c330bbf8dd8c84121ebfcca0f9cf37.jpg)
Здесь отсутствует шифрование, значит всё, что нам остается сделать — это прописать в блоке значений, где стоит сумма 5 лари, любую нужную нам сумму(стоит помнить, что >2000 лари). Если вы захотите клонировать такую карту, клонировать нужно и uid карты, т.к. его хэш хранится в отдельном блоке. Какой-либо системы онлайн проверки карт здесь не существует, турникеты в метро как и турникеты на фуникулёре работают оффлайн, автобусы тоже. Грузия интересная страна, здесь есть терминалы оплаты, которые работают с транспортными картами оффлайн.
![image](https://habrastorage.org/getpro/habr/post_images/dc6/9e4/4f2/dc69e44f2a5c8806d86cd0f586149a7a.jpg)
На фото крайний справа. На нём снизу видно специальное место, куда следует прикладывать rfid-метку
Можем поднести карту с любым нашим балансом и, он без каких-либо проблем отобразит её и предложит пополнить.
Также здесь есть небольшой нюанс, такую карту можно сдать в кассу с возвращением всей суммы на ней (!) и залоговой стоимости в течение 30 дней с момента покупки при предъявлении чека и самой карты.
Статья была бы неполной, если бы я не упомянул местные дебетовые карты express bank. У меня на руках совершенно случайно оказалась социальная карта грузинского студента, выглядит она следующим образом:
![image](https://habrastorage.org/getpro/habr/post_images/8f3/260/67b/8f326067b22f266de218381b6e8a2380.jpg)
Сама rfid-метка представляет из себя jcop41 с эмуляцией mifare classic 1k.
![image](https://habrastorage.org/getpro/habr/post_images/887/897/847/887897847bfd993bc3008014c5a0307f.jpg)
Конечно же я не буду что-либо оплачивать банковской картой с измененным балансом, ведь шутки с банками редко заканчиваются хорошо, поэтому дальше чтения данных с карты я не
пошел.
![image](https://habrastorage.org/getpro/habr/post_images/bd3/56a/f62/bd356af62eddd067270f3881a170fdb5.jpg)
Как верно было подмечено пользователем 532CDCCC1022 все транспортные системы в той или иной степени небезопасны. Использование решений десятилетней давности делает их только более уязвимыми.
P.S. Все совпадения случайны, а указанные действия совершенны неким неназванным джедаем.