Questione : Incisione dell'iniezione di MySql

Ciao, il Web site dei clienti del
A è stato inciso ripetutamente sopra l'ultima necessità di months.
I di potere sterilizzare il codice per impedire ulteriori incisioni. Può chiunque dirmi alla quale linea di codice deve essere cambiata ed a che cosa per cambiarlo? l'ospite del

Thanks

The (moneta da dieci centesimi di dollaro ospite) ha inviato loro questo messaggio di posta elettronica: il cliente del
Your è vulnerabile all'iniezione di MySQL. L'attaccante poteva iniettare inciso una pagina nella vostra base di dati come indicato: il
####################
mysql> seleziona il pageid, titolo, shorttext, maintext dai tbpages dove il titolo del
mysql> gradice “PichOfTheLast%„;
+--------+---------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| pageid | titolo | shorttext | maintext |
+--------+---------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 44 | PichOfTheLast era qui.! | |
< Align=left> di P; < Un href=" rel= " nofollow "„ del _blank„„ del target= " del > JustLeaveMeAlone&quot di http://xat.com/; > < IMG
style=" LARGHEZZA: 520px; ALTEZZA: 360px" alt=" height=280; " src=" hspace=0; rel= " nofollow "„ del _blank„„ del target= " di http://i42.tinypic.com/5mxr1k.gif" del href= di r1k.gif&quot del ic.com/5mx di http://i42.tinyp; width=411 border=0> < /A> < /P> < CENTER> < Rel= " nofollow "„ del _blank„„ del target= " di http://www.fileden.com/files/2008/8/22/2060529/Prodigy%20-Soundtrack%20Hackers%20-%20Techno%20Rave.mp3 del href= di EMBED
src= type=" del /files/2008/8/22/2060529/Prodigy%20-Soundtrack%20Hackers%20-%20Techno%20Rave.mp3
width=0 height=0 di http://www.fileden.com; mpga mp2 mp3" dell'audio/MPEG; autostart=" true" loop=" del ; true" > &lt; /CENTER> |
+--------+---------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------la fila di +
1 nel
####################

We dell'insieme (0.00 sec) ha rimosso questa entrata dalla necessità di database.

You di sterilizzare l'utente immesso (la variabile di identificazione per esempio) come l'attaccante può iniettare il codice del mysql come quanto segue per rivelare la parola d'accesso di admin: rel= " nofollow "„ del _blank„„ del target= " di http://www.rainbowestatespain.com/mainpage.php?id=040%20union%20select%20all%20null,concat%28username,char%2858%29,password%29,null,null,null,null,null,null,null,null,null,null%20%20%20from%20users%20order%20by%202-- del href= del
####################
inpage.php del ain.com/ma di http://www.rainbowestatesp? id=040%20union%20select%20all%20null, concat%28username, char%2858%29, password%29, posizione di segnale minimo, null, posizione di segnale minimo, null, posizione di segnale minimo, null, posizione di segnale minimo, null, posizione di segnale minimo, null%20%20%20from%20users%20order%20by%202--; l'attaccante del
####################

The potrebbe allora entrare al vostro coordinatore che section.

We lo suggeriscono sicuro il codice a questa pagina e che cambiano il admin password.



Here sono il codice per il mainpage.php

hp„)? >

$id = $_GET [“identificazione„];
$pageid = $id; il
del
$sql = “SELEZIONA * A PARTIRE dai tbpages DOVE pageid=$id„;
$result = mysql_query ($sql);
$numrows = mysql_num_rows ($result);
del
se (== 0 di $numrows) {eco “errore„; }
del
$row = ;

? >


< " del subpagetext " del id= del >

se ($row [“belongsto„]! == “0„) {
$trace [0] del
= $row [“pageid„];
$trace [1] = $row [“belongsto„];
$names [0] = $row [“titolo„];
$i = 1;
del
mentre (($trace [$i]! && del == 0) ($i < 10)) {
del
$sql = “belongsto PRESCELTO, titolo dai tbpages DOVE pageid=„. $trace [$i];
$result = mysql_query ($sql);
$row2 = ;
            
                  $i++;
$trace [$i] del
= (int) ($row2 [“belongsto„]);
$names [$i-1] = $row2 [“titolo„];
del
del
del

} per ($j = $i; >= 0 di $j; $j--) {
del
se ($j > 0) {eco “href= di ? id=„. $trace [$j]. „ \ “>„; eco $names [$j] del
del
}; eco “
„ del
;
se (($j > 0) && ($j < $i))„/“{di eco; }
del
del
del
} $sql = “titolo PRESCELTO, pageid dai tbpages DOVE pageid=„. $row [“belongsto„];
$result = mysql_query ($sql);
$row2 = ;

del
} altrimenti {eco $row [“titolo„ del
] del
;
del
del
}? >



//CONTENT LIST

del PHP $sql = “SELEZIONA * A PARTIRE dai tbpages DOVE ORDINE di belongsto=$id da itemorder„;
$result = mysql_query ($sql);
$numrows = mysql_num_rows ($result);
$i = 0;
se ($numrows > 0) soddisfare {di eco “:
„; }
mentre ($row2 = ) {
del
se (($row2 [“linksto„] == 0) && (] "" del == $row2 [“linkstourl„)) {

$pageid = $row2 [“pageid„];
se ($row2 [“pageid„] < 100) {$pageid = “0„. $row2 [“pageid„]; }
se ($row2 [“pageid„] < 10) {$pageid = “00„. $row2 [“pageid„]; } href= di
“\ “page$pageid.html„; elseif del
del
} ($row2 [“linkstourl„]! == href= \ "" di
del
“. str_replace („ ** LOCAL ** “, $glb_sitepath, $row2 [“linkstourl„]);
del
} altrimenti {
del
$pageid = $row2 [“linksto„];
se ($row2 [“linksto„] < 100) {$pageid = “0„. $row2 [“linksto„]; }
se ($row2 [“linksto„] < 10) {$pageid = “00„. $row2 [“linksto„]; } href= di
“\ “page$pageid.html„; „ \ "" di eco del
del
del
del
};
se ($row2 [“linkstonewpage„]) {eco„ target= \ “_blank \ ""; } eco del
“>„. $row2 [“titolo„]. “
„;
            
            $i++;eco “
„ del
;
del
del
} se ($numrows > 0) {eco “
„; } html_entity_decode di eco del

//PAGE CONTENT
(str_replace („ ** LOCAL ** “, $glb_uploadspath, $row [“maintext„])); il

//MAIN LINKS
$sql = “SELEZIONA * A PARTIRE dai tbpages DOVE ORDINE di belongsto=$id da itemorder„;
$result = mysql_query ($sql);
$numrows = mysql_num_rows ($result);

$i = 0;
se ($numrows > 0) {eco “

„; }
mentre ($row2 = ) {
del
se (($row2 [“linksto„] == 0) && (] "" del == $row2 [“linkstourl„)) {

$pageid = $row2 [“pageid„];
se ($row2 [“pageid„] < 100) {$pageid = “0„. $row2 [“pageid„]; }
se ($row2 [“pageid„] < 10) {$pageid = “00„. $row2 [“pageid„]; } href= di
“\ “page$pageid.html„; elseif del
del
} ($row2 [“linkstourl„]! == href= \ "" di
del
“. str_replace („ ** LOCAL ** “, $glb_sitepath, $row2 [“linkstourl„]);
del
} altrimenti {
del
$pageid = $row2 [“linksto„];
se ($row2 [“linksto„] < 100) {$pageid = “0„. $row2 [“linksto„]; }
se ($row2 [“linksto„] < 10) {$pageid = “00„. $row2 [“linksto„]; } href= di
“\ “page$pageid.html„; „ \ "" di eco del
del
del
del
};
se ($row2 [“linkstonewpage„]) {eco„ target= \ “_blank \ ""; } eco del
“>„. $row2 [“titolo„]. “
„;
            
            $i++;eco “
„ del
; eco $row2 [“shorttext„ del
];
se ($row2 [“shorttext„]! "") del == {eco “
„; } eco “
„ del
;
del
del
}? >
 
hp„); ? >
class= del

Risposta : Incisione dell'iniezione di MySql

Ciao Scott

Che software di antivirus siete che usando?  Questi sintomi a volte sono causati tramite l'esame dinamico della base di dati che è disabile.

Riferir a http://support.microsoft.com/kb/827615 per generalità.  Dovreste consultare la documentazione di prodotto per le istruzioni specifiche, secondo il vostro prodotto di avoirdupois.
Altre soluzioni  
 
programming4us programming4us