
На проходившей в Токио неделю назад конференции по кибербезопасности PanSec 2015 китайская компания Tencent's Xuanwu Lab заявила, что обнаружила новый тип уязвимости, связанный с устройствами для считывания штрих-кода. В представленной руководителем компании Tencent's Xuanwu Lab Янь Юем видеопррезентации подробно сообщалось о всех особенностях этого нового эксплоита, получившего название BadBarcode-эксплойте. Для наглядности, наряду с barcode-сканерами разных производителей, исследователи экспериментировали с различными носителями штрих-кода: бумага, экран монитора и дисплей сканнера для считывания пассажирских посадочных талонов в аэропортах. Но атака связанного с устройством компьютера всегда оказывалась успешной.
Во время видеодемонстрации, Юй пояснил: «Мы разработали несколько сценариев атаки. Основной принцип — внедрение специальных управляющих символов в штрих-код, чтобы считывающее устройство «нажимало» «горячие клавиши» в хост-системе и вызывало конкретные функции». Китайские исследователи показали, что, используя дефолтную настройку устройств для работы со штрих-кодом (а она чаще всего базируется на ASCII-кодировке), злоумышленники способны успешно атаковать систему с помощью специально созданного для такого рода операций штрих-кода — с заложенными в него командами по перехвату контроля над системой.
Например, участники форума в представленных видеоматериалах могли видеть, что, произведя в атакованном компьютере активацию «горячих клавиш», исследователям удавалось запускать такие стандартные диалоговых средства управления как OpenFile, SaveFile, PrintDialog, и, даже более того, активно использовать файловую систему компьютера, а также задействовать браузер или исполнять различные программы. Глава Tencent's Xuanwu Lab обратил внимание, что киберпреступники наверняка захотят воспользоваться данной уязвимостью, ведь «создать эксплоит типа BadBarcode — достаточно легко: нужно только сгенерировать соответствующий штрих-код и распечатать его на бумаге», ведь «ключевой принцип — добавление специальных контрольных символов в сам штрих-код».
Завершая доклад Янг Юй поделился своими сомнениями: «BadBarcode — это не уязвимость для какого-то конкретного продукта, а проблема для всех сфер, где применяются штрих-коды, которые используется уже повсеместно». К сожалению, китайские исследователи до сих пор не смогли определить, какого типа решение способно исправить уязвимость: «то ли для самих сканеров, то ли для хост-системы, или же и для того, и другого вместе, или все эти устройства тут вообще ни при чем», — посетовал Юй...
Тем не менее, по результатам исследований, компания Tencent's Xuanwu Lab направила производителям barcode-сканеров рекомендации по борьбе с BadBarcode. Одно из первых требований — не допускать дефолтной передачи на хост-машину в ASCII-коде. Кроме того, в заводской настройке сканера должна предусматриваться блокировка «горячих клавиш», особенно если в системе предусмотрена функция эмуляции клавиатуры.