Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Atak przez formularz kontaktowy, "White Hat"
markonix
post 15.01.2016, 15:21:36
Post #1





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Dostałem dzisiaj po angielsku e-mail, że mam lukę na stronie.
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ć.


--------------------
Go to the top of the page
+Quote Post
Crozin
post 15.01.2016, 15:30:22
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Tak, może być, ale bez źródeł nie da się niczego powiedzieć.
Go to the top of the page
+Quote Post
redeemer
post 15.01.2016, 15:32:11
Post #3





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Po pierwsze to co zrobili jest nielegalne (i te 150 USD, hehe dobrze, że nie BTC).

Cytat(markonix @ 15.01.2016, 15:21:36 ) *
...
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?
Nie (co to znaczy "jako tako"?), więc albo masz tam zapytania do bazy, albo masz SQLi w innym miejscu (w logach masz payloady bo "testowali" też formularz).

Przetestuj dokładnie czy to formularz, jak nie to przegrepuj logi po IP tego co pukał na formularz kontaktowy i zobacz reszte requestów. Dodatkowo, jeżeli typ SQLi był time-based blind to możesz poszukać w slowlogu nietypowych zapytań.


--------------------
Go to the top of the page
+Quote Post
com
post 15.01.2016, 15:40:28
Post #4





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

Ostrzeżenie: (0%)
-----


przepuścili ja pewnie przez automat, stąd tez wygenerowane zostało to w ciągu minuty, trudno stwierdzić co jest podatne nie znając całości systemu, ale SQL Injection to nie jedyny rodzaj ataku, mogłeś sam mu się np podłożyć poprzez XSS.
Go to the top of the page
+Quote Post
!*!
post 25.01.2016, 12:30:29
Post #5





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


@markonix - załatałeś to?


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 21.06.2025 - 07:17