Kotisivu » miten » Seuraa MySQL-kyselyjä mysqlsnifferillä Ubuntuissa

    Seuraa MySQL-kyselyjä mysqlsnifferillä Ubuntuissa

    Sinulla on tuotantotietokantapalvelin, ja et voi sallia kyselyjen kirjaamista ... niin miten näet kyselyt, jotka suoritetaan tietokannan suhteen?

    Vastaus: käytä muokattua verkkoa, joka käsittelee MySQL-paketit ja purkaa ne. Sinun täytyy tehdä pieni kokoelma, mutta se on sen arvoista. Huomaa, että tämä ei yleensä toimi paikallisten yhteyksien yhteydessä, vaikka olet tervetullut kokeilemaan.

    Ensinnäkin sinun täytyy asentaa libpcap-dev, joka on kehityskirjasto, joka sallii sovelluksen haistaa verkkopaketteja.

    sudo apt-get install libpcap-dev

    Tee nyt hakemisto, lataa lähdekoodi ja käännä 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 läpinäkyvä uusi suoritettava nimeltään mysqlsniffer lähdeluettelossamme. Voit kopioida sen missä haluat (jonnekin polku olisi hyödyllinen)

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

    sudo / path / to / mysqlsniffer eth0

    Kuormien määrä alkaa lentää… suodatamme sen hieman enemmän, jotta voimme vain saada kyselyt ja eivät kaikki ylimääräiset tiedot.

    $ sudo / path / 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: NÄYTÄ TÄYTTÄVÄT KOLMANSSIT 'db2842_howto': sta. 'Wp_users'

    Ah, nyt me olemme… kaikenlaisia ​​kyselytietoja ilman, että tarvitsemme uudestaan ​​MySQL: ää.

    Tässä on komennon täydelliset asetukset:

    Käyttö: mysqlsniffer [OPTIONS] INTERFACE

    Vaihtoehdot:
    -portti N Kuuntele MySQL: ää portin numerossa N (oletus 3306)
    -verbose Näytä ylimääräiset pakettitiedot
    -tcp-ctrl Näytä TCP-ohjauspaketit (SYN, FIN, RST, ACK)
    -net-hdrs Näytä tärkeimmät IP- ja TCP-otsikon arvot
    -no-mysql-hdrs Älä näytä MySQL-otsikkoa (paketin tunnus ja pituus)
    -tila Näytä tila
    -v40 MySQL-palvelin on versio 4.0
    -dump Dump kaikki paketit hex
    -Ohje Tulosta tämä

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

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