Konferencja Mega Sekurak Hacking Party w Krakowie – 26-27 października!
Adminie… Czy znamy Twoje grzechy? ;-) Sprawdź!
Konferencja Mega Sekurak Hacking Party w Krakowie – 26-27 października!
Adminie… Czy znamy Twoje grzechy? ;-) Sprawdź!
Z tekstu dowiesz się
Poczta elektroniczna jest niezmiernie wygodnym i popularnym sposobem komunikacji. Nagminnie jednak za pośrednictwem e-maili przesyłane są takie poufne informacje jak:
Informacje te często nie są w żaden sposób chronione – mogą być przechwytywane, a następnie odczytywane przez osoby postronne.
Jednym z popularnych, a zarazem relatywnie prostych sposobów na zapewnienie poufności e-maili, jest szyfrowanie wiadomości.
W artykule zostanie pokazany sposób konfiguracji klienta pocztowego, umożliwiający tworzenie i odczytywanie zaszyfrowanych informacji. W tym celu wykorzystane zostanie następujące oprogramowanie:
Wszystkie wskazane powyżej programy są dostępne bezpłatnie – również do użytku komercyjnego. Co więcej, obsługa oprogramowania możliwa jest w języku polskim.
Poniżej przedstawiamy listę oprogramowania, które można bezpłatnie pobrać ze wskazanych stron producentów. W kolejnym kroku określimy w jaki sposób zainstalować i skonfigurować poniższe aplikacje.
Jest to znany program do obsługi poczty, stworzony przez twórców przeglądarki internetowej Firefox. Thunderbirda w polskiej wersji językowej można pobrać tutaj.
Oprogramowanie to nie będzie wykorzystywane bezpośrednio – odpowiednie wywołania wykonywane będą bez naszego udziału – poprzez program Thunderbird.
Wersję dla systemu Windows można pobrać tutaj
Enigmail umożliwia bardzo proste korzystanie z funkcjonalności GPG w kliencie pocztowym Thunderbird. Dzięki Enigmail nie musimy znać skomplikowanej składni wywołań programu GPG.
Najnowszą wersję – zawierającą polskie tłumaczenie interface – można pobrać bezpłatnie ze strony producenta.
Klient poczty Thunderbird oraz GPG – posiadają programy instalacyjne, które zapewniają szybką i niewymagającą zaangażowania instalację.
Dodatek Enigmail można zainstalować poprzez wybranie w Thunderbird, z menu głównego, opcji: Narzędzia -> Dodatki, a następnie kliknięcie przycisku “Zainstaluj”.
Po wybraniu pobranego przez nas wcześniej pliku instalacyjnego Enigmail (np. enigmail-1.5-tb+sm.xpi) oraz restarcie Thunderbird, dodatek jest gotowy do użycia – dostępna staje się nowa pozycja menu głównego: OpenPGP.
Zanim przejdziemy do omawiania konfiguracji Thunderbird, warto poruszyć kwestie dotyczące tzw. kluczy szyfrujących wykorzystywanych w procesie szyfrowania wiadomości.
Środowisko, którego konfigurację omawia artykuł opiera się na tak zwanej kryptografii asymetrycznej. W skrócie, pojęcie wiąże się z wykorzystaniem dwóch kluczy szyfrujących:
Klucz publiczny służy do szyfrowania danych. Jego nazwa (publiczny) umożliwia zapamiętanie, że klucz może być publicznie dostępny dla wszystkich. Jeśli ktoś chce zaszyfrować do mnie informację – wykorzystuje mój klucz publiczny. Każdy może posiadać mój klucz publiczny, więc każdy może zaszyfrować do mnie informację.
Klucz prywatny służy do deszyfrowania danych. Jego nazwa (prywatny) przypomina, że nie powinien być znany nikomu poza właścicielem. Jeśli chcę odszyfrować wysłaną do mnie informację – wykorzystuję klucz prywatny – znany tylko mi. W ten sposób tylko ja mogę odszyfrować przesłaną do mnie zaszyfrowaną wiadomość.
Powyższa para kluczy generowana jest każdorazowo dla użytkownika, który chce korzystać z możliwości szyfrowania wiadomości. Zatem naszą pierwszą czynnością po zainstalowaniu odpowiedniego oprogramowania, będzie wygenerowanie tej pary kluczy.
Zakładamy, iż czytelnik skonfigurował już odpowiednie konto pocztowe (opcje: Narzędzia -> Konfiguracja kont -> Dodaj konto) i może wysyłać oraz odbierać nieszyfrowaną pocztę.
Jak wspomnieliśmy wcześniej, pierwszym punktem na drodze do korzystania z szyfrowanych e-maili jest wygenerowanie pary kluczy – prywatnego i publicznego. Można to wykonać korzystając z opcji:
OpenPGP -> Zarządzanie kluczami -> Generowanie -> Nowa para kluczy.
W oknie generowania klucza powinniśmy uzupełnić następujące dane:
W związku procedurą generacji kluczy mogą nasunąć się następujące pytania:
Jak wspomnieliśmy wcześniej, aby zaszyfrować do kogoś wiadomość, należy skorzystać z klucza publicznego adresata. Klucze publiczne przekazywane są najczęściej w formie pliku tekstowego (umieszczanego na stronie www lub przesyłanego w e-mailu). Alternatywna możliwość to wysłanie wysłanie swojego klucza publicznego na jeden z tzw. serwerów kluczy (OpenPGP -> Zarządzanie kluczami -> Prawy Przycisk Myszy na wybranym kluczu -> Eksportuj klucze publiczne na serwer).
Aby przetestować poprawność szyfrowania, wykorzystać można nasz klucz publiczny dostępny tutaj (umożliwiający przesyłanie szyfrowanych maili na adres: sekurak@sekurak.pl).
Klucz publiczny można zaimportować wybierając z menu głównego Thunderbird:
OpenPGP -> Zarządzanie kluczami -> Plik -> Importuj klucze z pliku
Po zaimportowaniu klucza dostępny jest on na liście kluczy i gotowy do użycia. Warto zauważyć iż zaimportowany klucz skojarzony jest z konkretnym adresem e-mail (np. z sekurak@sekurak.pl).
Jeśli chcemy zaszyfrować e-mail, wystarczy podczas tworzenia wiadomości, w menu OpenPGP zaznaczyć opcję “Szyfruj wiadomość”. Po zredagowaniu maila i naciśnięciu “Wyślij”, wiadomość zostanie zaszyfrowana automatycznie (przy założeniu, że wcześniej zaimportowaliśmy klucz publiczny adresata do którego wysyłamy e-mail).
Podsumowując: aby wysłać zaszyfrowany e-mail należy:
W skrócie – należy przekazać swój klucz publiczny. W ogólności można to zrealizować z wykorzystaniem dwóch metod:
Najprostszy sposób przekazania klucza publicznego to wysłanie e-maila, zawierającego w załączniku klucz.
Pisząc nowy e-mail zaznaczamy opcję: OpenPGP -> Załącz mój klucz publiczny.
Jak wskazuje powyższa opcja, do takiego e-maila automatycznie zostanie dołączony załącznik zawierający klucz publiczny. Jeśli adresat używa Thunderbirda, wystarczy, że kliknie prawym przyciskiem myszy na załącznik i wybierze opcję “Importuj klucz OpenPGP”. W tym momencie adresat może wysyłać do nas szyfrowaną pocztę.
Jeśli ktoś prześle do nas szyfrowaną pocztę, po wybraniu danego e-maila, pojawi się okno z prośbą o wpisanie hasła do klucza prywatnego (definiowaliśmy to hasło przy generowaniu kluczy). Po wpisaniu poprawnego hasła, e-mail zostanie automatycznie odszyfrowany i pokazany w analogicznej formie jak korespondencja nieszyfrowana.
Na przykład w ten sposób:
Aby móc przesyłać i odczytywać zaszyfrowane treści wystarczy wykonać kilka prostych operacji:
Klucz prywatny nie powinien być nikomu udostępniany. Służy do odszyfrowywania poczty.
Przedstawiona w powyższym tekście procedura szyfrowania poczty elektronicznej, istotnie zwiększa bezpieczeństwo przesyłanych maili. Szczególnie w przypadku przesyłania danych o krytycznej istotności, bezpieczeństwo to można podnieść stosując poniższe techniki.
Aby zwiększyć bezpieczeństwo całej procedury warto weryfikować instalowane binaria – np. poprzez kontrolę sumy SHA-1 czy weryfikacja podpisu cyfrowego instalowanej paczki (dla enigmail patrz np. tutaj).
Przekazując klucze publiczne, rekomendujemy weryfikować ich autentyczność. Przykładowe sposoby weryfikacji:
Poza ochroną przed wirusami stacji roboczej, oprogramowanie takie jest w stanie wykryć również aplikacje typu malware, umożliwiające np. wrogie przejęcie dostępu do klucza prywatnego.
—Michał Sajdak (michal.sajdak<at>securitum.pl)
Więcej informacji
Świetny poradnik, naprawdę mi się przydał.
Polecam!
Każdy serwis internetowy powinien mieć opcję szyfrowania wiadomości. Podczas rejestracji można byłoby podawać klucz publiczny.
Nadal w wielu serwisach, po rejestracji, hasło wysyłane jest na maila plaintextem…
Super poradnik. Znajomych w to wciągam. Swoją drogą tyle słyszymy o globalnej inwigilacji, że na przekór to zacznę nawet kawały o Donku przesyłać zaszyfrowane. A usługi pocztowe to prawdziwa masakra, wszystko po gołym http idzie. Porażka.
Dobry, lekki artykuł. Swoją drogą zamiast przyciężkiego gpg4win z całą jego menażerią, preferuję gpg4usb (choć aby Enigmail z niego korzystał trzeba się trochę pobawić).
BTW. Nie wiem czy to wasz oficjalny klucz, czy tylko na potrzeby artykułu, ale właśnie upłynęła jego ważność.
A jak szyfrować kluczem publicznym, który na pewno jest godny zaufania, ale nie ma w sobie zakodowanego prawidłowego adresu e-mail? Nie wnikając dlaczego przyszły odbiorca listu taki klucz wygenerował, moim celem jest zaszyfrowanie listu jego kluczem.
Jak mam to zrobić skoro o szyfrowaniu automatycznym mogę zapomnieć (adres odbiorcy jest rozny od tego w kluczu publicznym)? Importuje obcy klucz publiczny i jesli jest on jedynym obcym, to Thunderbird wybiera go jako domyślny (mimo nieścisłości formalnych)? Wydaje się, że koduje, ale nie mam pojęcia czym…
Przydała by się jeszcze informacja jak przenieść te ustawienia na inny komputer.
Co gdy system z którego korzystamy nagle się rozsypie ?
Przydała by się informacja jak zabezpieczyć się na taki wypadek (kopia kluczy certyfikatów oraz ponowna ich instalacja)
Thunderbird portable i zawsze mamy wszystko pod ręką
Prawdziwym wyzwaniem jest uruchomienie GPG w środowisku firmowym gdzie króluje Microsoft – Exchange i Outlook. Microsoft z definicji nie wspiera PGP GPG i generalnie opensourocowych rozwiązań kryptograficznych. Oczywiście nieodzowne staje sie używanie dodatkowego softu- używam Kleopatry i jakoś to działa, ale nie jest to moim zdaniem stabilne środowisko – czasem sypie błędami i trzeba restartwać. Ciekawi mnie jakie są wasze doswiadczenia i czy możecie poleicic coś stabilnego poza certyfikatem niekwalifikowanym X.509 – W koncu wszystie szanujące się organizacje związane z bezpieczeństwem stosują PGP/GPG?
@Artur W systemach od microsoft jest to możliwe. W pracy (operator komórkowy) używaliśmy programu PGP Desktop. Można było też szyfrować i podpisywać pocztę w Outlooku używając karty PKI. Ale to wszystko było do celów służbowych bowiem dwóch członków zarządu miało możliwość odszyfrowania każdego szyfrowanego maila czy pliku. Z przyczyn oczywistych do zastosowań prywatnych nigdy nie zaleca się rozwiązań z zamkniętym kodem. To co ja mogę polecić to Gpg4usb. Jest to projekt oparty na GPG ale całkowicie przenośny (portable) nie wymaga instalacji, nie wymaga uprawnień administratora, można go uruchomić nawet z pendriva. Działający na windows i na linux. Umożliwia podpisywanie oraz szyfrowanie ale niestety nie jednocześnie. Jak ktoś jest zupełnie początkujący to program jest godny polecenia. Osoby zaawansowane także docenią prostotę i funkcjonalność tego programu. Ale uwaga, wszystko tam robi się ręcznie, nie ma żadnej automatyki nie można powiązać z programem pocztowym jak w przykładzie z artykułu. Szyfrowanie odbywa się przez kopiuj wklej. W przypadku standardowego GPG trzeba mieć nieco doświadczenia. W gpg4usb już łatwiej się nie da :)
Ja ze swojej strony mogę polecić enigma.p-w.co
jako klucz do szyfrowanej wiadomości użyj dowolnego pliku np
zdjęcie ulubionego piłkarza z jego strony na fb
podajemy np przez telefon bądź skype drugiej osobie namiary na klucz i bez zapamiętywania hasła wymieniamy się wiadomościami niemożliwymi do odszyfrowania :)
jest wiele sposobów na szyfrowanie wiadomości ale to zależy od stopnia wtajemniczenia w steganografie itp
Rozumiem, że po terminie ważności certyfikatu lub jego unieważnieniu (np. po kompromitacji) maile zaszyfrowane z jego wykorzystaniem będą nadal widoczne (możliwe do odszyfrowania)?