Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[PHP] Jak najprostsza captcha OR math captcha $_POST czy parsowanie?

Ostatnio zmodyfikowano 2012-07-08 21:12
Autor Wiadomość
akwes
Temat założony przez niniejszego użytkownika
[PHP] Jak najprostsza captcha OR math captcha $_POST czy parsowanie?
» 2012-07-07 07:28:11
Witam,

Często widzę na blogach/forach/stronach prostą math captche. Czyli np. widoczne w źródle strony "5*4+3 =" i tak się zastanawiam...

Załóżmy, że jest klasa, która to obsługuje, tylko jedno mnie ciekawi.

Strona (wraz z np. komentarzem, artykułem whatever) wysyła działanie, które potem parsuje i porównuje z tym co wpisał użytkownik, czy od razu gotowy wynik (dużo łatwiej otrzymać) wysyła przez $_POST i potem sprawdza z tym co wpisał user?

O ile bardziej drugie rozwiązanie (z $_POST) jest mniej bezpieczne? (plusem jest to, że jest dużo łatwiejsze w implementacji, a jak ktoś by chciał, budować automat pod stronę, to i tak może parsować całą stronę).

Ewentualnie czy ktoś ma pomysł na prostą captchę o w miarę skuteczności ;> ? Tak, żeby nie trzeba było odbiegać od standardowych funkcji php.
P-59622
Drraven
» 2012-07-07 07:35:37
Może zobacz recaptcha?

A jak nie to może tak:
Masz coś tam (co wyżej wymieniłeś) potem formularz na komentarz:

<form method="POST" "action="addKoment.php">
<!-- tu wg std. nie będę się bawił -->
<input>
Oblicz działanie: <?php include("addKoment.php?captcha=Nazwastrny-Czy-Tam-Id-artykułu"); ?> <input><button>Wyślij</button>
</form>
Potem sprawdzasz czy dobrze ktoś wpisał. Oczywiście [code]addKoment.php?captcha=Nazwastrny-Czy-Tam-Id-artykułu
 Będzie losowało jakąś tam capchte.
P-59624
akwes
Temat założony przez niniejszego użytkownika
» 2012-07-07 07:41:44
No tak, ale mi chodzi o to co potem :)

Czy mam wygenerować captchę i

1. Obliczyć ją i razem z tym co wpisał użytkownik, wysłać przez $_POST i potem porównać

czy

2. Wysłać captchę oraz to co wpisał użytkownik przez $_POST i dopiero teraz obliczyć (muszę parsować albo dużo zmiennych wysłać) i porównać.

A dylemat mam bo nie wiem czy 1. jest bezpieczne na tyle, żeby go użyć.

P-59625
xevuel
» 2012-07-07 07:49:44
Generalnie żadne z tych rozwiązań nie jest bezpieczne, bo jak ktoś napisze bota specjalnie pod tą stronę to bez problemu będzie mógł podmienić sobie zarówno działanie jak i wynik. Ja bym zapisywał wynik w sesji, a potem porównywał :)
P-59626
akwes
Temat założony przez niniejszego użytkownika
» 2012-07-07 08:12:04

bo jak ktoś napisze bota specjalnie pod tą stronę to bez problemu będzie mógł podmienić sobie zarówno działanie jak i wynik.

To to ja dobrze wiem, że obie bezpieczne nie są. Ale chodzi mi o biegające wolno po internecie robaki ;> Czy nie będą z automatu gotowe na pierwszą opcję.

Bo jeżeli chodzi o bezpieczne, to ciężko takie zrobić - nawet reCaptcha padła, jeden raz co najmniej. :)
P-59627
xevuel
» 2012-07-07 08:17:22
Czy nie będą z automatu gotowe na pierwszą opcję.
O to już ich twórców trzeba by zapytać :D Z tym, że podejrzewam, że jeśli z pierwszą by sobie poradzili, to z drugą też :)

Tak jak mówię, gdybym miał to zrobić szybko, to przygotowałbym kilka obrazków (tekst bardzo łatwo parsować), przypisał ich adresy do tablicy z wynikami, losował jeden obrazek, w sesji zapamiętywał wynik dla tego obrazka. Myślę, że to nienajgorszy sposób ;)
P-59628
akwes
Temat założony przez niniejszego użytkownika
» 2012-07-07 08:33:16
Nie no problemu by nie było z obiema opcjami, ale kurczę ;D lenistwo ;D

Hm... faktycznie zrobienie prefabrykowanych obrazków może być ciekawe.
P-59629
m4tx
» 2012-07-07 08:34:10
Bo jeżeli chodzi o bezpieczne, to ciężko takie zrobić - nawet reCaptcha padła, jeden raz co najmniej. :)
Ale zdecydowanie trudniej ją złamać niż taką prostą math captchę :) Kalkulator napisać nie problem, zwłaszcza, że wiele stron ma taką captchę :)

Generalnie ja bym Ci polecił albo reCaptchę, albo - co lepsze - filtr antyspamowy. Sam mam taki filtr na blogu (Akismet) i zdarzyło mi się tylko raz, żeby jakiś spam przeszedł przez ten filtr. A Akismet u mnie takich wiadomości zablokował już ponad 400.
P-59631
« 1 » 2 3 4
  Strona 1 z 4 Następna strona