Estoy tratando de mejorar mis habilidades y la comprensión de la inyección de SQL y la defensa de ella.
la consulta toma dos formas dependiendo de lo que estoy tratando de pasar:
1)
SQL Error: The used SELECT statements have a different number of columns at /home/xxxxxxxx/www/system/models/additional_user_news.class.php line 215
Array
(
[code] => 1222
[message] => The used SELECT statements have a different number of columns
[query] => SELECT * FROM cms_news WHERE node_id=45 AND topic_id = 18 AND active='1' AND title LIKE '%' union select 1 # %' ORDER BY sort DESC, dateCreated DESC LIMIT 0,10
[context] => /home/xxxxxxxx/www/system/models/additional_user_news.class.php line 215
)
En el caso de que esté intentando pasar 'union select 1 #
2)
SQL Error: The used SELECT statements have a different number of columns at /home/xxxxxxxx/www/system/models/additional_user_news.class.php line 197
Array
(
[code] => 1222
[message] => The used SELECT statements have a different number of columns
[query] => SELECT COUNT(id) as cnews FROM cms_news WHERE node_id = 45 AND topic_id=18 AND active='1' AND dateCreated<=1475703392
AND title LIKE '%' union select 1,2 #%'
LIMIT 0,1
[context] => /home/xxxxxxxx/www/system/models/additional_user_news.class.php line 197
)
si estoy intentando pasar algo como esto: 'union select 1,2 #
Simplemente no entiendo por qué me da 2 consultas diferentes para diferentes etiquetas de búsqueda. ¿Y cómo es posible de esta manera encontrar el número correcto de columnas?