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.