Come rendere SQL injection in tsquery di PostgreSQL?

9

Penso che ci sia una vulnerabilità di SQL injection in un'applicazione che sto testando. Questo è visto quando inserisco parametri malformati in un modulo di ricerca. Tutte le eccezioni sono mostrate in formato:

PHP raised unknown error: pg_query() [http://php.net/function.pg-query]: Query failed: ERROR: syntax error in tsquery: "query" (more details about error - in log file)

In questo modo viene utilizzata la funzione tsquery di PostreSQL. Dopo aver esaminato alcune situazioni come:

The Fat & Rats:C

- > ERROR: syntax error in tsquery: "the & fat & & & rats:c"

Penso che plainto_tsquery venga utilizzato per convertire la query in Formato di tsquery .

In che misura questa vulnerabilità potrebbe essere sfruttabile? È sicuro utilizzare le funzioni di PostgreSQL senza la disinfezione aggiuntiva?

    
posta Andrei Botalov 14.08.2012 - 19:06
fonte

1 risposta

4

Guardando qui che sembra molto simile a quello che stai vedendo, questo non è È possibile eseguire l'SQL injection ma piuttosto un'iniezione nel linguaggio di query usato in tsquery. Anche dagli esempi che potrebbero essere stati in una domanda simile [chiusa], c'era qualche stranezza che non mi sembrava un problema standard di SQL Injection.

Quindi non dire che non è sfruttabile in qualche modo, ma è improbabile che le tecniche standard di SQL Injection producano risultati utili.

    
risposta data 15.08.2012 - 18:27
fonte

Leggi altre domande sui tag