powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Просто Трёп [закрыт для гостей] / О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
Модераторы: Владайка
25 сообщений из 25, страница 1 из 1
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762576
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Поезд, сделанный польской компанией, внезапно сломался во время техобслуживания. Специалисты были беспомощны — поезд был в порядке, только никак не хотел ехать. Доведённые до отчаяния, они вызвали на помощь команду Dragon Sector, члены которой нашли такие чудеса, о которых машинисты даже и не мечтали.

В этой истории мы отправимся в необычное путешествие. Путешествие, полное неожиданных открытий и событий, путешествие под давлением времени и больших денег, а также необычных технологий. Путешествие, в котором поезд играет самую важную роль — хотя, к сожалению, он не едет, а должен был бы. Пристегнитесь — или, по крайней мере, сядьте поудобнее, потому что дальше будут крутые повороты.
pasted_image.jpg
...
Владайка:
Пользователь запросил модераторские права на тему.
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762580
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Выигранный тендер, проигранный сервис

История, вероятно, начинается немного раньше, но мы заглянем на эту сцену весной 2022 года: заканчивается обслуживание первого из одиннадцати поездов Newag Impuls 45WE, эксплуатируемых Нижнесилезскими железными дорогами. Сервисом занимается компания c незамысловатам названием Serwis Pojazdów Szynowych (Сервис железнодорожных транспортных средств), именуемая в дальнейшем SPS. SPS выиграла тендер на проведение обязательного осмотра поездов после преодоления расстояния в 1 000 000 километров. В тендере на инспекцию принимал участие и производитель поездов, польская компания Newag, но предложение производителя было на 3 миллиона польских злотых ($750 000) выше, и в конечном итоге тендер выиграла компания SPS, которая предложила выполнить услугу за 22 миллиона злотых ($5.5 млн).

Обслуживание поезда — дело сложное: его нужно разобрать на части, отправить детали отдельным производителям, забрать проверенные, снова собрать поезд и запустить. SPS проводит проверку согласно соответствующей инструкции (объемом около 20 тысяч страниц), предоставленной производителем, но поезд после сборки не двигается. Компьютер говорит, что все в порядке, поезд готов к работе, но он не едет. Инверторы не подают напряжение на двигатели, и никто понятия не имеет, почему это происходит. Ремонтники ищут, проверяют, сверяются, изучают инструкции — ответа не находят.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762582
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Загадочные неудачи

У нижнесилезских железных дорог одиннадцать «Импульсов», и согласно графику на обслуживание поступает еще один, а первый, вместо того, чтобы вернуться к работе, всё ещё стоит в мастерской. Второй поезд проходит идентичное обслуживание с тем же эффектом. До сервиса ездил, после сервиса — уже не хочет. Работа по запуску первого поезда, как и сам поезд, не сдвинулась ни на миллиметр — производитель отказывается помогать. В мастерской стоят уже два неподвижных состава. Третий поезд пропускает проверку из-за отказа аккумулятора, поэтому вместо него на сервис отправляется четвертый поезд («из будущего»). Сервис хочет воспользоваться его присутствием, чтобы отбуксировать одного из тех, кто ездить не хочет. После подключения четвертого, ездящего, к одному из неподвижных, обездвиживается и он (до сих пор не удалось установить причину этого события). Кроме того, в другой мастерской, в Щецине, другой «Импульс» ломается при очень похожих обстоятельствах — он не запускается после проведенного обслуживания.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762583
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Лучшие польские хакеры

В какой-то момент проблема становится настолько серьёзной, что её замечают СМИ — шесть самых длинных поездов Нижней Силезии выведены из строя, а значит, приходится сокращать расписания, отправлять на пути замещающие поезда, а пассажирам — путешествовать в давке в более коротких поездах. Newag объясняет, что поезда были заблокированы «системой безопасности», но на 20 000 страницах руководства об этом нет ни единого упоминания. День простоя поезда в мастерской стоит несколько тысяч злотых штрафа (по договору), поездов стоит несколько, поэтому уровень напряженности в SPS растет. Поскольку механики и электрики не справляются, кто-то наконец вбивает в Google «польские хакеры» и вверху списка результатов оказывается статья об успехах группы Dragon Sector на арене CTF. SPS устанавливает контакт с Dragon Sector (DS), представители которой поначалу не могут поверить услышанному предложению. Взлом поезда? Собственно, почему бы и нет. Стороны подписывают договор. Проект осуществляют участники Dragon Sector Михал «Redford» Ковальчик и Сергиуш «q3k» Базаньский, известные взломом ноутбуков Toshiba, а также к компании присоединяется Куба «ПанКлещ» Степневич, имеющий опыт в промышленной автоматизации. Команда бодро приступает к работе, а Куба отправляется на экскурсию в мастерскую. На месте они получают поезд, который не едет, два запасных компьютера и файлы SDK производителя компьютера. Работа начинается с прослушивания CAN-шины, но без документирования протоколов прочитать трафик сложно. Они долго пытаются сдампить прошивку с бортового компьютера, но у них нет документации на него, а SDK позволяет загружать только новое программное обеспечение без возможности копирования существующего. В ходе экспериментов с найденной более старой версией программного обеспечения ее загрузка на первый резервный компьютер приводит к тому, что и он перестает отвечать на запросы — у них остается только один исправный резервный компьютер. Наконец, они находят интерфейс для отладки и байт за байтом копируют память устройства.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762584
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
pasted_image.jpg
Компьютер основан на архитектуре TriCore, как и многие подобные решения, например в автомобильной промышленности. К сожалению, хороших дизассемблеров не хватает, поэтому исследователи немного дорабатывают Ghidra и наконец-то могут взглянуть на код. Правда недостаёт отладочных строк, но работа потихоньку продвигается. Проходит полтора месяца, когда SPS сообщает плохие новости.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762586
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Когда наступает срок и поезда ломаются

Нижнесилезские железные дороги, не имея возможности дождаться своих (неподвижных) поездов, решают пойти на сотрудничество с Newag в вопросах ремонта вышедших из строя поездов и их обслуживания, а также поездов, которые согласно первоначальному тендеру должны были обслуживаться только в SPS. До расторжения договора с SPS осталась примерно неделя. Как известно, ничто не влияет на интенсивность работы так же хорошо, как очень близкий срок, к которому нужно показать результат, поэтому исследователи приступают к работе с удвоенной энергией. Во время предыдущей работы они скопировали содержимое памяти многих компьютеров как работающих поездов, так и тех, которые только должны работать. Сравнение этих образов — та ещё работёнка, так как почти каждый поезд имеет свой набор функций и свою версию программного обеспечения, но постепенно исследователи начинают ощущать, что что-то поняли. В памяти компьютеров они нашли значения, которые в одном поезде установлены, а в другом обнулены. Они могут проводить тесты на столе — компьютер, даже когда его снимают с поезда, позволяет ему на мгновение загрузиться (прежде чем он поймет, что ему не хватает всего остального поезда) и показать, готов ли он запустить инверторы.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762588
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
До окончания работ остается меньше суток, когда они находят конфигурацию флагов, которая дает возможность запустить поезд. К сожалению, в ходе экспериментов сгорает последний работающий бортовой компьютер. Да, горит — горит конденсатор (это скорее случайное событие). После очередного мозгового штурма и множества попыток объединить два поврежденных компьютера в один, им удается починить сгоревший и в 2 часа ночи, накануне Часа X, они настраивают компьютер, который должен запустить поезд. Один из наших героев садится в поезд (другого оператора железных дорог), чтобы добраться с, вероятно, работающим компьютером, до мастерской раньше представителей Нижнесилезских железных дорог, которые объявили о своем визите в 9:30. К сожалению, поезд, на котором исследователь едет на место, опаздывает. В конце концов, утром он с компьютером приезжает на место, подключает молимся-чтобы-заработал-компьютер к сломанному поезду, но поезд не движется. В результате еще одного мозгового штурма выявляется единственный флаг, о котором они забыли, и в 8:42 поезду удается тронуться. Делегация Нижнесилезских железных дорог, видя в 9:30, что у поездов есть шанс вернуться живыми, не расторгает контракт с SPS.

To był Impuls
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762590
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Почему поезд сломался

Выяснить, как запустить поезд, было даже не полдела — нужно еще выяснить, почему он сломался, и здесь наше путешествие только начинается.

Месяцы анализа и реверс-инжиниринга позволили обнаружить чрезвычайно интересные условия, записанные в программном коде различных поездов, предоставленных Newag. После сотен часов, проведенных над кодом, сдампленным с десятков составов, удалось выявить очень интересные механизмы, вызывающие внезапные заболевания поездов.
pasted_image.jpg
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762592
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Найденные в коде компьютера числовые значения 53.13845 и 17.99011 на первый взгляд показались знакомыми. Быстро выяснилось, что это координаты GPS, указывающие на окрестности железнодорожного вокзала Быдгощ-Главный, а именно, расположенного рядом с ним сервиса компании PESA. Вскоре были найдены и координаты других служб, которые могли бы осуществлять ремонт и проверку поездов в Польше. Ниже мы приводим псевдокод алгоритма (названия переменных и функций даны исследователями для наглядности — каковы были оригинальные названия, мы не знаем):
Код
1.
2.
3.
4.
5.
6.
7.
8.
check1 = 53.13845 < lat && lat < 53.13882 && 17.99011 < long && long < 17.99837;
check2 = 53.14453 < lat && lat < 53.14828 && 18.00428 < long && long < 18.00555;
check3 = 52.17048 < lat && lat < 52.17736 && 21.53480 < long && long < 21.54437;
check4 = 49.60336 < lat && lat < 49.60686 && 20.70073 < long && long < 20.70840
         && (this->lock_function_test & 1);
check5 = 53.10244 < lat && lat < 53.10406 && 18.07817 < long && long < 18.08243;
check6 = 50.12608 < lat && lat < 50.12830 && 19.38411 < long && long < 19.38872;
check7 = 52.77292 < lat && lat < 52.77551 && 18.22117 < long && long < 18.22724;
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762593
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Пары координат определяют территорию мастерских. В коде компьютера записано условие, предписывающее отключить возможность запуска поезда, если он проведет в одной из них не менее 10 дней. Один цех принадлежит самой компании Newag, но для его координат определено другое логическое условие, вероятно, в целях тестирования.
pasted_image.jpg
Вскоре были обнаружены и другие сюрпризы. Среди них была блокировка поезда при замене одного из его компонентов (проверяется по серийному номеру). Также была обнаружена возможность снятия блокировки – для этого не требовалась установка флагов в памяти компьютера, а лишь соответствующая последовательность нажатий кнопок в салоне и на экране бортового компьютера. Когда информация об успешном запуске «Импульсов» дошла до СМИ, поезда получили обновление программного обеспечения, устранившее возможность такого «ремонта». В другом поезде был обнаружен код, предписывающий ему «сломаться» после прохождения миллиона километров.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762596
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Проверка даты — это очень сложно

Довольно смешная ситуация была встречена в другом составе, который отказался работать 21 ноября 2022 года, несмотря на то, что в то время не находился в сервисе. Компьютер сообщил о неисправности компрессора, хотя механики заявили, что с компрессором все в порядке. К сожалению, поезд так и не поднял пантографы. Анализ компьютерного кода обнаружил сбой, который выглядит следующим образом:

- если день больше или равен 21-му
- если месяц больше или равен 11
- если год больше или равен 2021

тогда сообщите о неисправности компрессора. Ситуация была забавная, ведь поезд должен был пройти техосмотр в ноябре 2021 года (за год до аварии), но по стечению обстоятельств условие не сработало. Поезд был обслужен мгновением ранее и снова запущен лишь в январе 2022 года – и эта дата уже не соответствовала вышеописанному сложному логическому условию. Вероятно, именно из-за отсутствия у разработчика программного обеспечения навыков создания if-ов пришлось ждать запланированного сбоя до 21 ноября 2022 года.
...
Изменено: 20.04.2024, 13:24 - Владайка
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762599
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Аппаратный сюрприз

Сюрпризы скрывались не только в программном обеспечении компьютеров. Исследователи обнаружили на одном из составов устройство, подписанное как «конвертер UDP↔CAN», предположительно обеспечивающее удаленную связь с поездом. После его удаления ничто не перестало работать. Анализ показал, что бортовой компьютер отправлял на это устройство информацию о состоянии блокировки, а само устройство было подключено к GSM-модему.

Не только во Вроцлаве

Информация о том, что сервису SPS удалось отремонтировать «сломанные» поезда Newag, быстро дошла и до других сервисов. Это оказалось довольно распространенной проблемой. Во Вроцлаве проанализировали 13 «Импульсов», но сломались и те, что работали на Мазовецкой ЖД (одна единица), два в Ополе, четыре в Кракове, один в Зеленой Гуре, четыре в Щецине и один в SKM. К счастью, все удалось исправить с помощью инструмента, разработанного нашими исследователями, снимающего программные блокировки с бортового компьютера. В общей сложности коллеги проанализировали программное обеспечение 29 поездов и только в пяти не обнаружили никаких сюрпризов, выходящих за рамки официальных инструкций по эксплуатации.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762601
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Что дальше

Оценку используемых производителем решений мы оставляем читателям и клиентам этой компании. Интересно, что, хотя судебные споры продолжаются, в Польше сложно найти ведомство, которое сделало бы что-либо, кроме выражения глубокой озабоченности. Нам не известны какие-либо действия, предпринятые Управлением по защите прав потребителей и конкуренции или Управлением железнодорожного транспорта, которые кажутся целесообразными для устранения с рынка практик, наносящих вред местным органам власти, которые несут значительные убытки, и пассажирам, которые вынуждены путешествовать в толпе, или месяцами использовать альтернативный транспорт. Единственным известным нам учреждением, предпринявшим какие-либо действия, является CERT Polska, который был уведомлен об открытии исследователями. Из полученного нами комментария следует, что CERT Polska уведомила «соответствующие органы», и делом занимаются правоохранительные органы.

Поздравляем лучших польских хакеров с интересным открытием и профессиональным исполнением заказа. Помните, нет ничего более мотивирующего, чем дедлайн, назначенный завтра утром.

Вышеупомянутая статья представляет собой лишь краткое изложение презентации, сделанной на конференции Oh My H@ck 5 декабря 2023 года членами команды: Якубом Стемпневичем, Сергиушем Базаньским и Михалом Ковальчиком. В статье опущены многие детали и большой технический раздел анализа — остается только надеяться, что это побудит авторов исследования записать и опубликовать его курс.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762606
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Президент UTK в курсе дела и проверил информацию о проведенных анализах программного обеспечения железнодорожного транспорта, а также сотрудничает по этому вопросу с профильными службами. Совместно с CERT Polska (команда, созданная для реагирования на инциденты, нарушающие безопасность Интернета) была организована встреча с производителем транспортных средств. Транспортные средства соответствуют основным требованиям, указанным в положениях европейских директив. Лицо, заказывающее транспортное средство, определяет условия обслуживания и гарантии в рамках договорной свободы. Такие требования включены в контракты на закупку поездов. Любые ограничения возможностей обслуживания, включая ограничения, введенные в программное обеспечение, могут представлять собой потенциальный гражданский спор между стороной заказа и производителем. Президент UTK не является компетентным органом в этом вопросе. Согласно ст. 41 п. 2 Закона о национальной системе кибербезопасности от 5 июля 2018 г. (сводный текст: Законодательный вестник 2023 г., поз. 913, 1703) органом, ответственным за кибербезопасность в транспортной сфере (за исключением подотрасли водного транспорта), является министр, отвечающий за вопросы транспорта.

Оригинал статьи:
https://zaufanatrzeciastrona.pl/post/o-trzech-takich-co-zhakowali-prawdziwy-pociag-a-nawet-30-pociagow/

Запись доклада исследователей:
https://media.ccc.de/v/37c3-12142-breaking_drm_in_polish_trains

Анонс в одной альтернативной недосети
https://social.hackerspace.pl/@q3k/111528162462505087
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762801
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Тема опубликована.
...
Владайка:
Тема опубликована.
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762803
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Теперь Newag требует вывести отремонтированные поезда из эксплуатации, поскольку они были «взломаны» и, следовательно, теперь могут быть небезопасными. Однако компания не приводит никаких доказательств в свою пользу.

Newag является одной из старейших железнодорожных компаний в Польше, и она опровергает все обвинения: «Это клевета со стороны наших конкурентов, которые проводят против нас незаконную чёрную пиар-кампанию».

Компании часто отказываются от ремонта продукта третьей стороной, чтобы поддерживать постоянный поток доходов от своей продукции, ограничивая самостоятельный ремонт или замену. Поездами Newag управляют независимые операторы, и с лета многих из них столкнулись со сбоями, которые повлияли на качество обслуживания клиентов.
...
Рейтинг: 1 / 0
Нравится: Просто Трёп
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762918
bk0010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владайка  20.04.2024, 20:15
[игнорируется]
Поздравляем лучших польских хакеров с интересным открытием и профессиональным исполнением заказа.
Теперь производители их засудят.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762955
Фотография Green
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Green 
Участник
bk0010  20.04.2024, 23:14
[игнорируется]
Владайка  20.04.2024, 20:15
[игнорируется]
Поздравляем лучших польских хакеров с интересным открытием и профессиональным исполнением заказа.
Теперь производители их засудят.
Зато какая реклама группы хакеров!
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #762989
Просто Трёп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что лучше, поезд с закрытым программным кодом, или опенсорс-поезд?
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #763008
Просто Трёп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Redd  21.04.2024, 10:04
[игнорируется]
Блядь, сколько букав! Чо там вообще, можно пиздеж этот сократить?
Чтобы запустить поезд с закрытым программным кодом, пришлось позвать хакеров. Они дизасембнули поезд и нашли закладку производителя.
Теперь производитель говорит, что так нечестно. Низя дизассемблировать.
...
Рейтинг: 3 / 0
Нравится: megabyte, Redd, S Baltiki
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #763010
Просто Трёп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бугага.
...
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #763011
Просто Трёп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надо плюсануть Владаечку. Хорошая история.
...
Владайка:
посеба!
Рейтинг: 1 / 0
Нравится: Владайка
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #763018
Фотография Буся
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просто Трёп  21.04.2024, 10:12
[игнорируется]
Надо плюсануть Владаечку. Хорошая история.
перепост с habr.ru
...
хвост есть продолжение кошки
Владайка:
дыа
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #763539
Администратор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Администратор
Пользователь назначен модератором темы: Владайка.
...
Администратор:
Пользователь назначен модератором темы: Владайка.
Рейтинг: 0 / 0
О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
    #767428
Владайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Напомнило
pasted_image.png
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / Просто Трёп [закрыт для гостей] / О троице, которая хакнула настоящий поезд. Даже целых 30 поездов
Модераторы: Владайка
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Игнорируют тему (4): Неуловимый Джо , Коняукла, папа акуз, tkzv
Читали форум (126): Анонимы (116), basename, XEugene, IT-Клоп, Брюквенные годы 1 мин., Разум вселенной 1 мин., Гарыныч 2 мин., say no 2 мин., Ифрит 4 мин., Green 5 мин., Неуловимый Джо 8 мин.
Пользователи онлайн (195): Анонимы (180), basename, XEugene, Буся, IT-Клоп, Брюквенные годы 1 мин., Разум вселенной 1 мин., Bing Bot 1 мин., Гарыныч 2 мин., say no 2 мин., prostozevs 3 мин., Yandex Bot 3 мин., Ифрит 4 мин., pashtetos1 4 мин., Green 5 мин., Неуловимый Джо 8 мин.
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]