28Jun
Imate poslužitelj za proizvodnu bazu podataka, a ne možete omogućiti prijavljivanje upita. .. pa kako vidite upite koji se izvršavaju protiv baze podataka?
Odgovor: Koristite izmijenjeni njuškanje mreže kako biste analizirali MySQL pakete i dekodirali ih. Morat ćete malo napisati, ali to će biti vrijedno toga. Imajte na umu da to obično ne funkcionira za lokalne veze, iako vam je dobrodošlo.
Prvo morate instalirati libpcap-dev, što je razvojna knjižnica koja aplikaciji omogućuje njuškanje mrežnih paketa.
sudo apt-get instaliraj libpcap-dev
Sada napravimo direktorij, preuzmemo izvorni kod i sastavimo ga
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
U ovom trenutku imamo sjajnu novu izvršnu datoteku pod nazivom mysqlsniffer u našem izvornom direktoriju. Možete ga kopirati gdje god želite( negdje na putu bi bilo korisno)
Da biste pokrenuli mysqlsniffer, morate odrediti mrežno sučelje koje MySQL sluša. Za mene je eth0.
sudo /path/to/ mysqlsniffer eth0
Puno stvari počinje letjeti. .. neka je filtrira malo više tako da možemo samo dobiti upite, a ne sve višak podataka.
$ sudo /path/to/ mysqlsniffer -no-mysql-hdrs eth0 |grep COM_QUERY
192.168.73.1.2622poslužitelj: COM_QUERY: SELECT @@ sql_mode
192.168.73.1.2622poslužitelj: COM_QUERY: SET SESSION sql_mode = "
192.168.73.1.2622poslužitelj: COM_QUERY: SET NAMES utf8
192.168.73.1.1636poslužitelj: COM_QUERY: SELECT @@ SQL_MODE
192.168.73.1.1636poslužitelj: COM_QUERY: POKAŽAJTE PUNI KOLONI OD `db2842_howto`.`wp_users`
Ah, sada smo. .. sve vrste informacija o upitima, bez potrebe za ponovnim pokretanjem MySQL-a.
Uporaba: mysqlsniffer [OPTIONS] INTERFACE
OPCIJE:
-port N Slušajte MySQL na portu broj N( zadani 3306)
-verbose Prikaži dodatne informacije o paketima
-tcp-ctrl Prikaži TCP
-no-mysql-hdrs Nemojte prikazivati MySQL zaglavlje( ID paketa i duljina)
-state Prikaži stanje
-v40 MySQLposlužitelj je verzija 4.0
-dump Dump sve pakete u hex
-pomoć Ispišite ovaj izvorni izvorni kod
i više informacija na:
http: //hackmysql.com/ mysqlsniffer
Ako koristite razvojni poslužitelj, bilo bi jednostavnije samo uključivanje upitaprijavom.