Supponiamo che si tratti di un attacco di SQL injection valido e che sia stato effettivamente eseguito sul database.
Il fatto che la tua query non abbia restituito alcun dato è davvero irrilevante. Se è possibile eseguire SQL arbitrario, è probabile che si scriva sul database. Questo porta a cose brutte come cambiare password, cancellare dati, eliminare tabelle, ecc. SQL Injection è molto più che semplicemente ottenere una pagina web per visualizzare dati che non ci sono.
Ora restituire un errore 400 significa davvero nulla. Potrebbe significare che l'iniezione SQL ha funzionato e il codice non sapeva cosa fare della risposta al database e ha restituito un errore 400. Oppure potrebbe significare che l'iniezione non è riuscita e non è mai arrivata al database.
Se hai il permesso di scrivere sul database durante il test, ti consiglio di provare a scrivere un valore su una tabella. Quindi vedi se la tabella è stata aggiornata. Se è così, lo sviluppatore deve fare qualcosa piuttosto che spazzarlo via in quanto si tratta di una vulnerabilità molto seria.