Na dowód dostałem wersje bazy danych oraz login i hasło (oczywiście hash) pierwszego rekordu z tabeli "users".
E-mail napisany w przyjemnym tonie, że chcieli tylko sprawdzić i do mnie należy co dalej.
Odpisałem dość lakonicznie jaka oferta, bla bla ale generalnie 150$ za wskazanie luki.
Wolałbym dojść sam do tej luki. W nocy dostałem kilkaset e-maili przez formularz kontaktowych. Większość to taki bełkot typu "gtvsdywl", potem ciekawsze typu
Kod
(select convert(int,CHAR(65)))
Kod
?''?""
Kod
-1' OR 3*2<(0+5+278-278) --
Kod
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
Kod
if(now()=sysdate(),sleep(5),0)/*'XOR(if(now()=sysdate(),sleep(5),0))OR'"XOR(if(now()=sysdate(),sleep(5),0))OR"*/
pomiędzy tymi e-mailami te z bełkotem.
Wszystko w ciągi minuty.
Po kilku minutach dostałem e-mail od gościa.
W ogóle mnie zastanawia czy SQL injection jest w ogóle możliwy przez formularz kontaktowy, gdy ten jako tako nie wykonuje żadnych zapytań bezpośrednio do bazy?
Może to był tylko jeden wektor ataku, który się akurat nie udał?
Formularz kontaktowy i tak jest częścią oprogramowania (na szczęście otwarty kod) więc nie mam na niego dużego wpływu, mogę go tylko przeanalizować i poprawić.