11.06.2016 | 11:25

Adam Haertle

Wyciek adresów email użytkowników Let’s Encrypt

Projekt Let’s Encrypt zrewolucjonizował rynek certyfikatów SSL, rozdając je za darmo i wymuszając automatyzację procesu ich odnawiania. Nowe projekty nie są jednak wolne od błędów i nawet najszczytniejsze idee nie gwarantują pełnej ochrony danych użytkowników. W rozsyłanym własnie do uzytkowników emailu z aktualizacją warunków świadczenia usług Let’s Encrypt zawarł… sporą listę odbiorców w treści samej wiadomości. Wyciekło nieco ponad 7 tysięcy z 383 000 adresów którymi dysponuje firma zanim ktoś się zorientował, że w skrypcie jest błąd. Tak wyglądała wiadomość (zwróćcie uwagę na pasek przewijania):

Email z wpadką (wkładką?)

Email z wpadką (wkładką?)

Zarządzający projektem dość szybko się zorientowali i powstrzymali dalszy wyciek oraz wydali komunikat opisujący całą sytuację. Co ciekawe wynika z niego, że każdy z odbiorców otrzymał listę adresów od numeru 1 do swojego numeru, co sugeruje że skrypt wysyłający wklejał do treści wiadomości zamiast adresu odbiorcy komplet adresów które zdążył już wczytać.

Dziękujemy Czytelnikowi pidpawel za podesłanie newsa.

Powrót

Komentarze

  • 2016.06.11 11:48 Luca

    Właśnie dlatego do każdego serwisu podaje się inny mail i robi catch all.

    Odpowiedz
    • 2016.06.11 17:29 R

      Błyskotliwe… A spam wysyłany na te podane adresy trafi do … ???

      Odpowiedz
      • 2016.07.08 12:20 DOgi

        W jedno miejsce, czyli filtrom będzie łatwiej ;)

        Odpowiedz
  • 2016.06.11 15:30 Ja

    ogłaszam konkurs na pomysł jaki błąd i/lub literówka mogła do tego doprowadzić :D do wygrania nic. Jedyne co sobie wyobrażam to coś takiego (prawie pseudo kod):

    users = sql.query(„SELECT email FROM users”)
    send_to = „”
    for user in users:
    send_to += user[’email’]
    send_email(send_to, „topic”, „msg”)

    += zamiast =

    Odpowiedz
    • 2016.06.11 19:22 Michal Rus

      Zgniłe mutability.

      Odpowiedz
    • 2016.06.12 13:54 enedil

      Nie całkiem. Powodem jest bug w Pythonowym module ’email’:
      https://twitter.com/0xjosh/status/741487697059946497

      Odpowiedz
    • 2016.06.13 12:50 miś

      Twój kod jest zły :D jedynie pierwsza osoba by dostała maila, każdy kolejny byłbym wysyłany na nieistniejący adres ponieważ przypisujesz adresy mailowej do zmiennej nie dopisując przecinka który oddzielałby adresy mailowe w związku z czym to o czym piszesz musiałoby być zrobione świadomie :)

      Odpowiedz
  • 2016.06.13 09:43 Miś

    Jeżeli po stronie serwerowej działa PHP i używają biblioteki PHPmailer to jest prosta przyczyna na którą się łapią początkujący. Mianowicie:
    $mail->addAddress($adres_email, 'Imie i nazwisko’);
    powyższa linijka dodaje adres email użytkownika
    $mail->send()
    powyższa wysyła email, jeżeli puścimy to w pętli to będzie taki efekt jak w tym przypadku: Natomiast aby to wrzucić w pętle należy dodać: $mail->ClearAddresses();

    :)

    Odpowiedz

Zostaw odpowiedź do DOgi

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

Wyciek adresów email użytkowników Let’s Encrypt

Komentarze