If-Koubou

Seuraa MySQL-kyselyjä mysqlsnifferilla Ubuntussa

Seuraa MySQL-kyselyjä mysqlsnifferilla Ubuntussa (Miten)

Sinulla on tuotantotietokantapalvelin, etkä voi ottaa kyselylokeroa käyttöön ... niin miten näet kyselyjen suorittamisen tietokantaan?

Vastaus: käytä modifioitua verkkohakuntaa MySQL-pakettien jäsentämiseen ja dekoodaamiseen. Sinun täytyy tehdä vähän kokoamista, mutta se on sen arvoinen. Huomaa, että tämä ei yleensä toimi paikallisissa yhteyksissä, vaikka voit kokeilla.

Ensinnäkin sinun on asennettava libpcap-dev, joka on kehityskirjasto, jonka avulla sovellus voi houkutella verkkopaketteja.

sudo apt-get asentaa libpcap-dev

Tehdään nyt hakemisto, lataa lähdekoodi ja koota se

mkdir mysqlsniffer

cd mysqlsniffer

wget hackmysql.com/code/mysqlsniffer.tgz

tar xvfz mysqlsniffer.tgz

gcc -O2 -lpcap -o mysqlsniffer mysqlsniffer.c packet_handlers.c misc.c

Tässä vaiheessa meillä on loistava uusi suoritustiedosto nimeltään mysqlsniffer meidän lähdeluettelossa. Voit kopioida sen missä haluat (jonne polku olisi hyödyllinen)

Jos haluat käyttää mysqlsnifferia, sinun on määritettävä MySQL: n kuunneltava verkkoliitäntä. Minulle se on eth0.

sudo / path / to / mysqlsniffer eth0

Paljon tavaraa alkaa lentää ... Let's suodattaa sitä hieman enemmän, jotta voimme vain saada kyselyitä eikä kaikkia ylimääräisiä tietoja.

$ sudo / polku / to / mysqlsniffer -no-mysql-hdrs eth0 | grep COM_QUERY

192.168.73.1.2622> palvelin: COM_QUERY: SELECT @@ sql_mode
192.168.73.1.2622> palvelin: COM_QUERY: SET SESSION sql_mode = "
192.168.73.1.2622> palvelin: COM_QUERY: SET NAMES utf8
192.168.73.1.1636> palvelin: COM_QUERY: SELECT @@ SQL_MODE
192.168.73.1.1636> palvelin: COM_QUERY: SHOW FULL COLUMNS FROM 'db2842_howto'. 'Wp_users'

Ah, nyt me olemme ... kaikenlaisia ​​kyselytiedostoja ilman MySQL: n käynnistämistä.

Tässä on komennon kaikki vaihtoehdot:

Käyttö: mysqlsniffer [OPTIONS] INTERFACE

Vaihtoehdot:
-port N Kuuntele MySQL-porttia N (oletus 3306)
-verbose Näytä ylimääräiset pakettitiedot
-tcp-ctrl Näytä TCP-ohjauspaketit (SYN, FIN, RST, ACK)
-net-hdrs Näytä suuret IP- ja TCP-otsikkorivit
-no-mysql-hdrs Älä näytä MySQL-otsikkoa (paketin tunnus ja pituus)
- näytä tilanne
-v40 MySQL-palvelin on versio 4.0
-dump Dump kaikki paketit hex
-help Tulosta tämä

Alkuperäinen lähdekoodi ja lisätietoja osoitteesta:
http://hackmysql.com/mysqlsniffer

Jos käytät kehityspalvelinta, olisi helpompaa ottaa kyselylokero käyttöön vain.