Avatar billede rentondk Nybegynder
19. september 2011 - 17:31 Der er 3 kommentarer

Queries bliver ved med at dukke op i databasen, hvor kommer de fra?

Jeg har konstant to queries i min processliste i phpMyAdmin til min mysql database:

SELECT * FROM table_name WHERE id=999999.9 union all select 0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,0x31303235343830303536,(select concat(0x7e,0x27,unhex(Hex(cast(table_name2.email as char))),0x27,0x7e) from `database_name`.table_name2 Order by email limit 105462,1) ,0x31303235343830303536,0x31303235343830303536-- LIMIT 1;

Og det medfører at MySQL'en kører 22 % på WCPU:

  PID USERNAME      THR PRI NICE  SIZE    RES STATE  C  TIME  WCPU COMMAND
11635 mysql          19  45    0  325M  150M CPU0    0  30:45 22.71% mysqld

Vi har søgt i alle filer og kan ikke finde querien listet nogen steder, overhovedet. Og den bliver ved med at poppe op.

Men der må være et PHP script, som står og skyder de queries afsted? Er der ikke en måde, hvorpå man i shell'en kan se hvilke scripts der kører? For jeg har på fornemmelsen det er det samme scripts som kører i evigheder og skyder alle disse queries afsted.
Avatar billede majbom Novice
19. september 2011 - 19:26 #1
har du prøvet at skifte koden til din database?
Avatar billede rentondk Nybegynder
20. september 2011 - 13:40 #2
Jeg fandt ud af, at det var fra sql injections ... jeg kunne simpelthen vha. grep finde querien i access loggen ...

Så jeg fik lige lave om sådan at det ID, som skulle angives, tjekkes om det er et tal før det går ind i querien :-)
Avatar billede majbom Novice
20. september 2011 - 15:21 #3
noget der skulle have være gjort fra start ;)

husk at luk spørgsmålet
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester