04.09.2013 | 22:47

Adam Haertle

Jak nie sprawdzać poprawności adresu email

Blogerka Wendy Liu opisała niezwykły sposób sprawdzania poprawności adresów poczty elektronicznej, który odnalazła w systemie jednego z uniwersytetów.

W założeniu jedną z funkcjonalności  systemu miała być możliwość wysłania wiadomości  poczty elektronicznej do innego użytkownika z tego samego uniwersytetu. Uniwersytecka poczta obejmowała ok. 70 tysięcy adresów, zatem rozsądnym wydaje się, że weryfikacja poprawności adresu docelowego powinna następować po stronie serwera. Najwyraźniej jednak nie było to oczywiste dla każdego.

Kiedy Wendy musiała poczekać 10 sekund, aż jej przeglądarka otworzy stronę z opcją wysłania wiadomości, zajrzała do źródła strony. Trudno w to uwierzyć, jednak znalazła w nim 70 tysięcy adresów email. Kod wyglądał mniej więcej tak:

// [some other code here]
var userNamesStr = '[email protected]|****|[email protected]
|****|(pretend there are 70,000 more emails here)|****|[email protected]';
var temp = new Array();
temp = userNamesStr.split('|****|');
var validUserName = '0';
// [more code here]
for( i =0; i< temp.length; i++){
if( curForwardUserName == temp[i].toLowerCase() ) {
validUserName = '1';
break;
}
// [some last bits of wisdom before we go]
</script>

Z punktu widzenia wydajności – katastrofa. Z punktu wiedzenia ochrony prywatności – katastrofa. Jak by nie patrzeć, katastrofa. Ktoś to jednak napisał, ktoś wdrożył i umieścił na serwerze. Katastrofa.

Powrót

Komentarze

  • 2013.09.05 07:16 Stefan

    Właściwie to nawet trudno to skomentować….. :)
    Ciekawe jak wyglądałoby wdrożenie plagiatora przez taki uniwersytet?!

    Odpowiedz
  • 2013.09.05 08:48 hoek

    pożywka dla harvester’a, tak to by biedny zdechł z głodu ;)

    Odpowiedz
    • 2013.09.05 10:49 atom

      napisane jest, że opcja wysyłania maila, czyli potrzeba być zalogowanym do systemu pocztowego, więc harvester się nie napasie. No ale niezły fail i tak

      Odpowiedz
  • 2013.09.05 12:01 Mieczysław

    E tam, nie poznaliście się na genialnym w swej prostocie pomyśle: przecież to przetwarzanie rozproszone!
    Zalety:
    1) Oszczędność zasobów serwera (CPU, RAM, itp.)
    2) Oszczędność prądu
    3) Odporność na awarię- nawet w przypadku awarii serwera klient może sprawdzić poprawność maila na swoim komputerze!
    4) Łatwo przenaszalny kod ze względu na użycie języka JavaScript
    5) Nieoceniony zysk PRowy poprzez wpisanie się w modny trend 'Cloud Computingu’

    Odpowiedz
    • 2013.09.05 18:16 elmo

      dokladnie teraz chmura jest bardzo modna , nie czepiajcie sie , pewnie sami byscie nawet linijki kodu nie napisali //gniewopien

      Odpowiedz

Zostaw odpowiedź

Jeśli chcesz zwrócić uwagę na literówkę lub inny błąd techniczny, zapraszamy do formularza kontaktowego. Reagujemy równie szybko.

Jak nie sprawdzać poprawności adresu email

Komentarze