Przewodnik po najlepszych praktykach bezpieczeństwa dla zespołów zdalnych
Opublikowany: 2022-03-11Kiedy mówię znajomym, że pracuję zdalnie dla klienta, którego nigdy nie spotkałem, pytają mnie: Czy praca zdalna jest dla Ciebie bezpieczna? Moja odpowiedź brzmi: „Tak… ale to zależy od tego, jak dobrze utworzysz politykę bezpieczeństwa pracownika zdalnego”.
Mieszkam w Pakistanie, gdzie tworzę kod, który ma wartość dla klientów po drugiej stronie globu. Moi klienci nigdy nie podali mi ręki ani nie zobaczyli, gdzie pracuję. A jednak oczekuje się, że zapewnię ochronę sekretów klienta i kodu. Jak zapobiegać naruszeniom bezpieczeństwa w świecie, w którym członkowie zespołu nie znają Twojej twarzy ani głosu? Odpowiedź brzmi: będąc bardzo ostrożnym.
Nie tak dawno temu wierzyliśmy, że aby zagwarantować wydajność i bezpieczeństwo naszych aplikacji, musimy uruchamiać je w naszym prywatnym centrum danych. Potem pojawiła się chmura i skorzystaliśmy z korzyści związanych z kosztami i wydajnością uruchamiania naszych aplikacji na skalowalnej platformie na żądanie bez utrzymywania floty serwerów w jednym pomieszczeniu.
Pozwól, że wprowadzę Cię w znany sekret:
To tylko czyjś komputer.
Obecnie firmy takie jak Uber 1 i Stripe 2 przechowują i przetwarzają informacje o lokalizacji klienta w czasie rzeczywistym oraz karty kredytowe i płatności na serwerze dostawcy chmury, przestrzegając przy tym surowych standardów bezpieczeństwa, takich jak zgodność z PCI. Robią to, stosując surowe zasady, które zapewnią, że ich dane produkcyjne pozostaną bezpieczne.
Jeśli firmy mogą zagwarantować, że całe ich środowisko produkcyjne pozostanie bezpieczne, mimo że działają poza ich prywatnymi centrami danych, z pewnością możemy zapewnić bezpieczeństwo Twojego rozwoju, korzystając ze zdalnych zespołów programistycznych. W końcu całe firmy są w stanie działać całkowicie zdalnie. Toptal jest firmą działającą wyłącznie zdalnie i zatrudniamy.
Co to jest „bezpieczeństwo” i jak mam „być bezpiecznym”
W całym tym artykule, kiedy mówię o „bezpieczeństwie”, mam na myśli bezpieczeństwo informacji .
Termin „bezpieczeństwo informacji” oznacza ochronę informacji i systemów informatycznych przed nieautoryzowanym dostępem, wykorzystaniem, ujawnieniem, zakłóceniem, modyfikacją lub zniszczeniem. – 44 Kodeks USA § 3542
Nie ma czegoś takiego jak doskonałe bezpieczeństwo , ale „bycie bezpiecznym” oznacza, że podjąłeś rozsądne środki w celu wymuszenia bezpieczeństwa informacji.
W szczególności, kiedy mówisz „moje środowisko pracy jest bezpieczne”, masz na myśli, że podjąłeś rozsądne środki w celu ochrony danych, kodu lub innych poufnych informacji znajdujących się pod Twoją opieką i zapewniłeś ich integralność. Podjęto również kroki, aby upewnić się, że Twoje uprawnienia dostępu do systemów informacji poufnych nie będą wykorzystywane przez Ciebie lub nieupoważnioną osobę w sposób szkodliwy dla celów organizacji będącej właścicielem tych informacji i tych systemów.
Zespoły zdalne mają znacznie większą powierzchnię ataku niż zespoły scentralizowane. W przeciwieństwie do scentralizowanego zespołu, w którym możesz fizycznie zablokować poufne informacje za zaporami ogniowymi i firmowymi stacjami roboczymi, jako pracownik zdalny jesteś zachęcany, a nawet zobowiązany do przyniesienia własnego urządzenia (BYOD). Co więcej, ponieważ większość komunikacji odbywa się online, jesteś znacznie bardziej podatny na socjotechnikę i kradzież tożsamości. Jednak mając odpowiedni zestaw zasad, z pewnością możesz zminimalizować ryzyko naruszenia.
Nie ma srebrnej kuli dla bezpieczeństwa. Często istnieje kompromis między odcieniami bezpieczeństwa a wygodą i od Ciebie zależy, jak daleko chcesz posunąć się do swoich praktyk bezpieczeństwa, ale pamiętaj, że Twój zespół jest tak bezpieczny, jak jego najsłabszy członek. Przyjrzyjmy się niektórym typowym atakom na bezpieczeństwo, strategiom obrony, a na koniec omówmy przykładowe zasady zdalnego pracownika bezpieczeństwa.
Trzy najczęstsze typy ataków kontradyktoryjnych
Nie jesteś przygotowany, jeśli nie wiesz, z czym przyjdzie ci się zmierzyć. Przeciwnik może używać wielu strategii w swoim ataku, ale większość z nich można podzielić na trzy kategorie. Chociaż ta lista nie jest wyczerpująca, są to trzy popularne typy wektorów ataku, z których mogą korzystać złośliwi hakerzy:
- Inżynieria społeczna
- Wyłudzanie informacji
- Infekcje złośliwym oprogramowaniem
Inżynieria społeczna
Inżynieria społeczna, uważana również za hakowanie przez ludzi, to praktyka manipulowania ludźmi, aby działali w sposób, który nie leży w ich najlepszym interesie; może to obejmować ujawnianie informacji poufnych.
Ataki socjotechniczne mogą albo próbować wykorzystać twoje współczucie, aby zmusić cię do obejścia dobrych praktyk, albo stworzyć poczucie pilności, w którym zmuszają cię do ominięcia najlepszych praktyk, obawiając się negatywnych działań przeciwko tobie, jeśli nie zastosujesz się do nich.
Przykłady socjotechniki obejmują:
- Kobieta dzwoni do operatora komórkowego i namawia agenta pomocy do zmiany czyjegoś konta, podczas gdy w tle odtwarzany jest klip z YouTube, na którym widać płacz dziecka.
- Atakujący wysyła wiadomość e-mail do dyrektora generalnego na adres e-mail dyrektora finansowego i autoryzuje transfer środków o wartości 1,8 miliona USD.
Wyłudzanie informacji
Wyłudzanie informacji to najczęstsza metoda kradzieży danych uwierzytelniających. Wyobraź sobie stronę internetową, która wygląda jak Facebook, na której logujesz się, myśląc, że jest prawdziwa. Phishing ma miejsce wtedy, gdy osoba atakująca tworzy witrynę, która wygląda na legalną, ale nie jest.
Czy potrafisz rozpoznać fałszywego facebooka? Podpowiedź: to ten, którego nie ma na Facebook.com.
Czasami hakerzy mogą zatruć Twój internet i wstrzyknąć swoją witrynę do domeny Facebooka, nazywa się to atakiem Man in The Middle, ale nie martw się, Twoja przeglądarka może Cię o tym ostrzec.
Spear phishing to kolejna forma phishingu, w której strona phishingowa może być przygotowana specjalnie dla Ciebie lub Twojej organizacji. To sprawia, że bardziej prawdopodobne jest, że się na to zakochasz, zwłaszcza w połączeniu z socjotechniką.
Opowiem ci pewną historię: kiedy byłem w szkole, ktoś, kto niedawno dowiedział się o phishingu, stworzył fałszywą stronę na Facebooku i zmienił strony domowe w laboratorium komputerowym na swoje własne. Następnie wiedział, że ta osoba miała trzysta haseł do konta na Facebooku. Atak ten był specjalnie wymierzony w moją szkołę i okazał się skutecznym atakiem typu spear phishing.
I pomyśleć, że wszystkie te hasła pozostałyby bezpieczne, gdyby tylko ktoś zadał sobie trud, by spojrzeć na pasek adresu.
Infekcja złośliwego oprogramowania
Istnieją setki różnych rodzajów złośliwego oprogramowania. Niektóre są nieszkodliwe lub po prostu irytujące, ale niektóre mogą być bardzo niebezpieczne. Najważniejsze rodzaje złośliwego oprogramowania, na które należy zwrócić uwagę, to:
- Oprogramowanie szpiegujące: po cichu instaluje i nagrywa naciśnięcia klawiszy, ekran, dźwięk i wideo.
- Narzędzia administracji zdalnej (RAT): pozwalają na pełną kontrolę nad komputerem.
- Ransomware: Szyfruje wszystkie ważne pliki i sprawia, że płacisz za klucz odszyfrowywania.
Aby celowo skłonić Cię do zainstalowania niestandardowego złośliwego oprogramowania na komputerze, osoby atakujące zwykle wykorzystują socjotechnikę:
- Atakujący umieszcza „zgubione” dyski USB wokół firmowego parkingu, aby przechwycić dane logowania pracowników.
- Mężczyzna, który rozlał kawę na swoim CV, prosi recepcjonistę o wydrukowanie mu kopii czegoś, ponieważ ma wywiad, co powoduje, że komputer firmowy zostaje zainfekowany złośliwym ładunkiem na USB. (Przykład z The Art of Human Hacking).
Siedem strategii cyberobrony, których potrzebujesz teraz
Omówiliśmy najczęstsze metody ataków przeciwnika, ale jak możemy się przed nimi chronić?
Strategia nr 1: Właściwe zarządzanie hasłami
Nienawidzę haseł. Powiedziałem to. Głęboko wierzę, że kombinacja nazwy użytkownika i hasła jest najsłabszą istniejącą formą uwierzytelniania użytkownika. Hasło to nic innego jak krótki ciąg znaków generowany przez najgorszy istniejący generator liczb pseudolosowych: ludzki umysł.
Potrzebuję sekretnego słowa, co? A co z moim drugim imieniem i rokiem urodzenia, na pewno nikt nie będzie w stanie tego odgadnąć! – Każdy człowiek w historii
Co gorsza, dla wygody ludzie mają tendencję do ponownego wykorzystywania haseł. Dzięki temu ktoś może użyć tego samego hasła do logowania do banku i domowej sieci Wi-Fi, jednocześnie sprawiając, że hasło kończy się nazwą ulubionego zespołu . Horror!
Lata temu postanowiłem wykonać następujące czynności:
- Użyj menedżera haseł
- Używaj silnych haseł zamiast haseł
Użyj menedżera haseł
Kiedy powiedziałem, że istnieje kompromis między odcieniami bezpieczeństwa a wygodą, nie ma to tutaj zastosowania. Albo jesteś bezpieczny i używasz menedżera haseł, albo nie. Nie ma pomiędzy. Korzystanie z menedżera haseł jest obowiązkowe, aby zapewnić dobre bezpieczeństwo haseł. Wytłumaczę.
- Czy wszystkie twoje hasła są unikalne?
- Jeśli odkryję niektóre z Twoich haseł, czy reszta Twoich haseł pozostanie bezpieczna?
- Czy wszystkie twoje hasła zostały utworzone przy użyciu co najmniej 32 bitów entropii?
- Czy Twoje hasła są przechowywane tylko w postaci zaszyfrowanej?
- Czy doskonale pamiętasz każde hasło, którego użyłeś podczas rejestracji?
- Czy jesteś pozytywnie nastawiony do wycieku hasła na tej stronie?
Jeśli odpowiedziałeś „nie” na którekolwiek z powyższych pytań, potrzebujesz menedżera haseł. Dobry menedżer haseł losowo wygeneruje dla Ciebie hasła i bezpiecznie je przechowa. Nie ma znaczenia, jakiego menedżera haseł używasz, o ile go używasz!
Używam LastPass, ponieważ podoba mi się to, jak przejrzyste są ich raporty o incydentach, możliwość udostępniania moich danych uwierzytelniających znajomym i odwoływania udziału, kiedy tylko chcę, i podoba mi się fakt, że synchronizacja mobilna jest częścią ich bezpłatnego planu.
Używam LastPass od lat, a ich wyzwanie w zakresie bezpieczeństwa mówi mi, że jestem wśród ich najlepszych 1% użytkowników świadomych bezpieczeństwa.
Silne hasła zamiast haseł
Może to brzmieć sprzecznie z intuicją, ponieważ poprosiłem Cię o użycie menedżera haseł powyżej, ale są przypadki, w których hasła są nieuniknione: będziesz potrzebować silnego hasła głównego do swojego menedżera haseł lub zalogować się do komputera. W takich przypadkach użyj bezpiecznego i łatwego do zapamiętania hasła o wysokiej entropii.
Mówiąc o entropii, porozmawiajmy o tym trochę. Czym jest ta „entropia”, o której mówię?
Entropia jest parametrem statystycznym, który mierzy w pewnym sensie, ile informacji jest średnio wytwarzanych dla każdej litery tekstu w języku. Jeśli język jest tłumaczony na cyfry binarne (0 lub 1) w najbardziej efektywny sposób, entropia H jest średnią liczbą cyfr binarnych wymaganych na literę języka oryginalnego. – Claude Shannon
W porządku, jeśli ten cytat był trudny do strawienia. Zasadniczo entropia hasła, losowo wybranego z zestawu, to całkowita liczba elementów w zestawie wyrażona w bazie 2. Na przykład: Jeśli masz hasło o długości 4 znaków, które może zawierać tylko małe litery alfabetu, entropia dla losowo wygenerowane hasło miałoby 19 bitów, ponieważ:
- W alfabecie małymi literami jest 26 elementów
- Czteroznakowy ciąg składający się z tych liter to
26^4
= 456,976 - 456 976 wyrażone w podstawie 2 to
log(456,976) / log(2)
= 19 bitów (zaokrąglone do najbliższego bitu)
Problem z hasłami o wysokiej entropii polega na tym, że są one trudne do zapamiętania, takie jak c05f$KVB#*6y
. Aby były bardziej zapadające w pamięć, co by było, gdyby zamiast pojedynczych liter użyliśmy całych słów? I użyłeś słownika tysiąca słów? Nagle nasz alfabet staje się długi na tysiąc elementów i możemy osiągnąć taką samą entropię w 7 słowach, jaką mielibyśmy przy 11 znakach.
Różnica polega teraz na tym, że zamiast hasła hasła używamy frazy hasła, która jest znacznie dłuższa.
Poniższy komiks XKCD najlepiej wyjaśnia tę koncepcję:
Najłatwiejszym sposobem wygenerowania bezpiecznego losowego hasła jest przejście tutaj.
Strategia nr 2: Użyj uwierzytelniania wieloskładnikowego (MFA)
Uwierzytelnianie dwuskładnikowe (2FA) lub weryfikacja dwuetapowa to nazwy tej samej rzeczy. Jest to jedna z tych rzeczy, do których trzeba się trochę przyzwyczaić, ale korzyści związane z bezpieczeństwem 2FA znacznie przewyższają koszty i osobiście dwukrotnie uratowały mnie przed naruszeniami kont!
Idea MSZ jest prosta. Istnieją trzy rzeczy, których możemy użyć do uwierzytelnienia Cię:
- Coś, co wiesz (sekret)
- Coś, co masz (token)
- Coś, czym jesteś (twoja biologia)
Używanie dwóch jest bezpieczniejsze niż używanie tylko jednego.
Większość witryn obsługuje pierwszy czynnik uwierzytelniania, wymagając hasła, ale coraz więcej usług zaczęło wspierać również drugi czynnik. Trzeci czynnik jest zwykle pomijany przez usługi sieciowe, ponieważ wymaga specjalistycznego sprzętu; jak czujnik odcisków palców w telefonie.
Jeśli jesteś administratorem zespołu, rozważ utworzenie obowiązkowej zasady dla użytkowników, aby mieć konfigurację 2FA. Gwarantuje to, że złamanie hasła nie spowoduje złamania zabezpieczeń konta.
Istnieją dwie popularne formy „coś, co masz”:
- Twój telefon
- Klucz U2F
Używanie telefonu do 2FA
Chciałbym to powiedzieć od razu: nie używaj kodów SMS do 2FA. Przejmowanie Twojego numeru telefonu przez złośliwe osoby staje się powszechną praktyką. Historia jest prawie zawsze taka sama: ktoś zmusił operatora do przeniesienia Twojego numeru telefonu do innego operatora. Znam przynajmniej jedną osobę, która padła ofiarą tego ataku.
Zamiast tego używaj haseł jednorazowych opartych na czasie (TOTP), zwanych również metodą „Google Authenticator”. Jednak zamiast korzystać z Google Authenticator, polecam używać Authy, ponieważ szyfruje i tworzy kopie zapasowe tokenów 2FA w chmurze. Następnie możesz przywrócić swoje tokeny 2FA, nawet jeśli zmienisz urządzenia… w rzeczywistości możesz używać tych samych tokenów na wielu urządzeniach. To bardzo wygodne.
Korzystanie z klucza U2F dla 2FA
Jest to najprostsza i najpotężniejsza metoda 2FA. Mam Yubikey Neo, którego mogę używać z telefonem i komputerem. Aby udowodnić swoją tożsamość, po prostu podłączam token sprzętowy i naciskam przycisk. Mój token jest unikalny i jest fizycznym tokenem; Mogę nosić go na pęku kluczy lub w portfelu.
Strategia nr 3: Stała czujność
Bez względu na to, jak bardzo jesteś bezpieczny, zdrowa ilość podejrzeń to dobra rzecz. Uważaj na ludzi proszących Cię o zrobienie czegoś niezwykłego. Czy otrzymałeś SMS-a od kogoś z prośbą o zresetowanie hasła? Poczekaj chwilę i rozpocznij z nimi rozmowę wideo. Poproś ich, aby udowodnili swoją tożsamość. Nikt nie może cię winić za ostrożność.
To nie paranoja, jeśli naprawdę chcą cię dopaść. – Harold Finch, osoba zainteresowana
Naprawdę chcą cię dopaść. Czasami nie ma powodu, aby złośliwy użytkownik robił to, co robi, poza chęcią zrobienia tego.
Mój przyjaciel otrzymał kiedyś wiadomość od starego znajomego z pytaniem, czy chciałby być ich „zaufanym kontaktem” na Facebooku. Mój przyjaciel zgodził się i został poproszony o odpowiedź z kodem, który otrzyma na swój telefon, który mój przyjaciel natychmiast podał… i w ten sposób moja przyjaciółka została stworzona, aby dać token resetowania dla swojego konta Gmail. Gdyby moja przyjaciółka od początku była czujna, nigdy nie straciłaby swoich e-maili.
Strategia nr 4: Projektowanie systemów zgodnie z zasadą najmniejszych przywilejów
Zasada najmniejszych uprawnień wymaga, aby w określonej warstwie abstrakcji środowiska komputerowego każdy moduł (np. proces, użytkownik lub program, w zależności od tematu) miał dostęp tylko do niezbędnych informacji i zasobów. w swoim uzasadnionym celu. – Wikipedia
Jeśli użytkownik, aplikacja lub usługa nie wymagają pewnych uprawnień, nie nadawaj im ich. Z tej zasady można wyprowadzić wiele reguł, ale zachowam je do następnej sekcji o politykach bezpieczeństwa.
Pozwólcie, że opowiem wam historię: kiedyś projektowałem aplikację, która przyjmowałaby płatności Bitcoin od użytkowników na adresy wygenerowane specjalnie dla nich, a następnie przekazywała je na centralny adres bezpiecznego przechowywania. Jeśli nie wiesz, jak działa Bitcoin, oto uproszczone wyjaśnienie: potrzebujesz klucza publicznego, aby otrzymać Bitcoin (np. numer konta) i odpowiedniego klucza prywatnego, aby go wydać (np. PIN do konta). Numery kont i piny w Bitcoin są połączone kryptograficznie i nie można ich zmienić.
Miałem kilka możliwości zaprojektowania tego systemu, ale zdecydowałem się na nieco dłuższą trasę. Uznałem, że do nakłaniania użytkownika do zapłaty aplikacja nie potrzebuje dostępu do kluczy prywatnych. Tak więc zamiast projektować jeden duży system, który odbierałby i przekazywał płatności Bitcoin, stworzyłem dwa systemy:
- System odbiorczy: otrzymał Bitcoin od użytkowników i był hostowany w publicznym Internecie. Zawierała tylko klucze publiczne dla adresów.
- System przekazywania: był to całkowicie niezależny i zablokowany system, którego jedynym zadaniem było obserwowanie sieci Bitcoin pod kątem transakcji na adresach i przekazywanie ich na bezpieczny adres. Zawierała zarówno klucze publiczne, jak i prywatne dla adresów.
Długo później, po tym, jak przestałem utrzymywać aplikację, system odbioru publicznego został naruszony. Natychmiast go zamknąłem, ale atakującemu nigdy nie udało się ukraść Bitcoina, ponieważ system publiczny w ogóle nie zawierał żadnych kluczy prywatnych.
Strategia nr 5: Stosuj najlepsze praktyki oparte na zdrowym rozsądku
Niektóre praktyki nie wymagają wyjaśnienia. Zapewne wiesz, że są ważne, ale ciągle jestem zaskoczony tym, jak wiele osób (w tym ja) zapomina przestawić kilka przełączników. Zostawię tę listę kontrolną tutaj:
- Włącz zaporę sieciową
- Zaszyfruj swój dysk
- Włącz szyfrowane kopie zapasowe
- Użyj kluczy SSH
- Korzystaj z bezpiecznego połączenia internetowego
Włącz zaporę sieciową
Zapora kontroluje ruch sieciowy do iz komputera na podstawie zestawu reguł. Działa poprzez wyraźne pytanie, czy zezwolić nowym programom na dostęp do Twojej sieci i jest Twoją pierwszą linią obrony.
Twój system operacyjny prawdopodobnie ma wbudowaną zaporę. Upewnij się, że jest włączona.
Zaszyfruj swój dysk
Pełne szyfrowanie dysku to magiczna zdolność do uczynienia całej zawartości dysku bezużyteczną bez hasła. W przypadku zgubienia lub kradzieży laptopa możesz mieć pewność, że nikt nie będzie miał dostępu do Twoich danych. Włączenie tego może być tak proste, jak włączenie FileVault na komputerze Mac.
Nowoczesne telefony komórkowe mają również domyślnie włączone pełne szyfrowanie dysku.
Zaszyfruj swoje kopie zapasowe
Sprzęt zawodzi, to fakt. Twój komputer pewnego dnia ulegnie awarii lub wirus zainfekuje Twój komputer lub (drżenie) wirus ransomware przejmie kontrolę nad Twoim komputerem. Ale jako osoba pragmatyczna, prawdopodobnie masz już konfigurację przepływu zapasowego, jestem pewien… nieprawdaż?
Jednak nawet z kopiami zapasowymi musisz zachować czujność. Upewnij się, że Twoje kopie zapasowe są szyfrowane, dzięki czemu nawet w przypadku ich zgubienia lub kradzieży możesz mieć pewność, że podjęto rozsądne środki w celu ochrony bezpieczeństwa powierzonych danych.
Jeśli masz komputer Mac, aplikacja Time Machine na komputerze Mac automatycznie szyfruje kopie zapasowe.
Użyj kluczy SSH
Jeśli odejdziesz od tego artykułu, przestań używać haseł do SSH na komputerach. Hasła są trudne do udostępnienia, a jeśli kiedykolwiek zostaną ujawnione, cała maszyna zostanie naruszona. Zamiast tego utwórz klucz SSH, uruchamiając po prostu ssh-keygen
.
Aby zalogować się na zdalnym komputerze, po prostu skopiuj zawartość lokalnego ~/.ssh/id_rsa.pub
do ~/.ssh/authorized_keys
na zdalnym komputerze. Może być konieczne ponowne uruchomienie usługi SSH na komputerze zdalnym, ale to wszystko.
Dodaj klucze SSH całego zespołu do zdalnego komputera, a nikt już nigdy nie będzie musiał ponownie wpisywać hasła. Odwołanie klucza członka zespołu jest tak proste, jak wyjęcie klucza z komputera zdalnego.
Korzystaj z bezpiecznego połączenia internetowego
Udostępniając komuś połączenie internetowe, udostępniasz więcej niż przepustowość. W zależności od konfiguracji stron internetowych i twojego Internetu, mogą przynajmniej wykryć, jakie strony odwiedzasz, a w najgorszym przypadku odczytać wszystkie przesyłane informacje, w tym hasła, wiadomości lub e-maile.
Jest to bardzo proste do włączenia i niezwykle łatwe do zepsucia. Podejmij rozsądne środki ostrożności, aby zapewnić prywatność połączenia. Upewnij się, że nikt nieupoważniony nie ma dostępu do Twojego połączenia internetowego.
Użyj WPA2 do ochrony hasłem swojego osobistego Wi-Fi, a jeśli pracujesz w lokalnej kawiarni (lub dowolnym publicznym Wi-Fi), załóż, że jesteś obserwowany i użyj proxy VPN.
Waham się przed korzystaniem z VPN opartych na subskrypcji, zwłaszcza że rozwijanie własnego jest tak proste. Użyj tego jednoliniowego rozwiązania VPN do hostowania własnego.
Strategia nr 6: Traktuj tajemnice ostrożnie
Sekrety nie mają być ujawniane. Dlatego nazywają się tajemnicami . Mimo to, ile razy byłeś winny wysłania hasła do produkcyjnej bazy danych PostgreSQL przez Facebook Messengera? Upewnij się, że zawsze:
- Szyfruj sekrety w tranzycie
- Często je obracaj
Szyfruj sekrety w tranzycie
Jeśli musisz udostępniać sekrety za pośrednictwem kanałów, takich jak czat, upewnij się, że są one zaszyfrowane. W ramach ćwiczenia odwiedź często używanego i najstarszego klienta czatu. Mogą to być wiadomości z Facebooka lub Whatsapp. Niezależnie od tego, co to jest, otwórz i wyszukaj frazę „hasło” w swoich wiadomościach.
Gdyby te tajemnice zostały zaszyfrowane, nie byłyby dostępne dla nikogo, kto ma dostęp do twoich wiadomości.
Często zmieniaj sekrety
Im dłużej istnieje tajemnica lub im częściej jest udostępniana, tym bardziej prawdopodobne jest, że została naruszona. Za dobrą praktykę uważa się rotację sekretów i haseł po pewnym czasie.
Strategia nr 7: Ustalenie tożsamości kryptograficznych
Jest to z pewnością zaawansowana strategia, ale osobiście nie rozumiem, dlaczego nie jest to powszechna praktyka. Pomyśl o tym: Twój współpracownik uważa, że zostałeś skompromitowany. Jak przekazują wiadomość do prawdziwego ciebie? Jeśli ktoś z Internetu musi udostępniać ważne informacje o luce w zabezpieczeniach, w jaki sposób przesyła je bezpiecznie? W jaki sposób zapewniasz swoim pracownikom bezpieczne udostępnianie informacji podczas przesyłania?
Moim ulubionym przykładem jest profil bazy kluczy Coinbase, w którym kryptograficznie podpisują klucze PGP swoich pracowników. Poszli dalej i przekazali swojemu działowi zgodności klucz PGP. Poważnie, Coinbase, świetna robota!
Dla mnie osobiście, jeśli ktoś ma uzasadnione wątpliwości, że moja tożsamość online została naruszona, po prostu poproś mnie o podpisanie wiadomości przy użyciu klucza PGP dostępnego w moim profilu bazy kluczy. Jestem jedyną osobą, która ma dostęp do tego klucza PGP i podjąłem rozsądne środki ostrożności, aby zapewnić bezpieczeństwo tego klucza, nawet jeśli inne moje tożsamości zostaną naruszone.
Jeśli masz wątpliwości co do autentyczności wiadomości, poproś mnie o jej podpisanie. Jeśli chcesz przesłać mi sekret, zaszyfruj go moim kluczem publicznym.
Wdróż jasną politykę bezpieczeństwa pracowników zdalnych
Polityka bezpieczeństwa to definicja tego, co oznacza bycie bezpiecznym dla systemu, organizacji lub innego podmiotu. W przypadku organizacji zajmuje się ograniczeniami zachowania jej członków, a także ograniczeniami nakładanymi na przeciwników przez mechanizmy takie jak drzwi, zamki, klucze i ściany. – Wikipedia
Polityka bezpieczeństwa to obowiązkowa reguła lub protokół, którego należy przestrzegać podczas wykonywania działań. Powyższe strategie są pomocne, ale aby ułatwić ich przestrzeganie, daj swojemu zespołowi prosty zestaw zasad, których należy przestrzegać. Trudniej jest zepsuć bezpieczeństwo, gdy Twój zespół dokładnie wie, co robić.
Omówmy przykłady zasad bezpieczeństwa pracowników zdalnych do wdrożenia.
Polityki do wdrożenia dla swoich pracowników :
- Umowy NDA i umowy: Upewnij się, że żaden pracownik nie ma dostępu do żadnych poufnych zasobów bez odpowiednich podstaw prawnych.
- Informacje kontaktowe w nagłych wypadkach: Zanotuj pełne i awaryjne informacje kontaktowe pracownika na wypadek, gdyby zdalny członek zespołu przestał odpowiadać.
- Przyznawaj tylko niezbędne uprawnienia: jeśli członek Twojego zespołu nie potrzebuje dostępu do pewnych obszarów do wykonywania swojej funkcji, nie udzielaj mu dostępu. Członek zespołu sprzedaży nie potrzebuje dostępu do Twojego repozytorium kodu.
- Menedżery haseł: Upewnij się, że Twoi pracownicy mają dostęp do menedżera haseł
- Silne zasady uwierzytelniania
- Minimalna siła hasła: Osobiście nienawidzę haseł, a w przypadku organizacji, w których jestem administratorem, wymagam hasła składającego się z co najmniej pięćdziesięciu znaków alfanumerycznych. Stosowanie się do tej zasady jest trywialne, jeśli używasz menedżera haseł.
- Obowiązkowe resetowanie haseł: upewnij się, że hasła pracowników często wygasają, aby często zmieniać hasła.
- Uwierzytelnianie dwuskładnikowe : wszędzie używaj 2FA
- Klucze PGP
- Szyfrowane dyski twarde
- Zaszyfrowane kopie zapasowe
Pracownicy odchodzą, ale nie powinni zabierać ze sobą Twoich informacji. Dostosuj te zasady, aby zachować dane nawet po opuszczeniu firmy przez pracowników:
- Firmowe konta e-mail: przydzielenie swoim pracownikom kont e-mail we własnej domenie umożliwia wyłączenie i kontrolę ich komunikacji.
- Komunikacja w czasie rzeczywistym: mimo że poczta e-mail jest świetna, czasami Twój zespół musi rozmawiać w czasie rzeczywistym. Upewnij się, że Twój zespół ma scentralizowany kanał Slack lub IRC. Daje to możliwość wyłączenia lub audytu ich komunikacji zgodnie z wymaganiami.
- Scentralizowane repozytoria kodów: Upewnij się, że cały kod firmy jest przechowywany w firmowym repozytorium kodów. Plany firmy dotyczące publicznych ofert SaaS, takich jak GitHub, są w porządku, dopóki nie będziesz potrzebować szczegółowej kontroli nad całym kodem pracowników. W tym drugim przypadku rozważ zaopatrzenie się w własną instancję GitLab.
Zasady ochrony Twojej infrastruktury :
- Aktualizuj systemy: Luki w zabezpieczeniach są wykrywane i łatane każdego dnia, Twoim zadaniem jest upewnić się, że zastosujesz te poprawki. Nie ma nic gorszego niż odkrycie, że naruszenie zostało spowodowane przez lukę, którą załatano kilka tygodni temu.
- Zablokuj środowiska produkcyjne i pomostowe: Żaden pracownik nie powinien mieć dostępu do środowisk produkcyjnych ani pomostowych. Czasami po prostu bałagan.
- Stwórz silny przepływ CI/CD: zawsze chcesz wdrażać „dobry” kod, a prosty proces CI/CD zawsze to zapewnia.
- Chroń błogosławione repozytorium: Jeśli masz zautomatyzowany proces CI/CD, upewnij się, że błogosławione repozytorium może być edytowane tylko przez kierownika projektu.
- Zdefiniuj proces recenzji: Aby mieć pewność, że żaden „zły” kod nie przejdzie niezauważony, utwórz proces recenzji. Może to być tak proste, jak wymaganie co najmniej jednego niezależnego komentarza „Wygląda mi dobrze” (LGTM) przed połączeniem.
- Klucze SSH: Jeśli Twoja aplikacja wymaga dostępu SSH, upewnij się, że używają kluczy SSH zamiast haseł.
- Rozważ porzucenie BYOD: Zespół budżetowy może pomyśleć, że BYOD jest najlepszą innowacją w zakresie polityki od czasu biura bez papieru, ale jeśli możesz sobie na to pozwolić, rozważ zaopatrzenie zespołu w komputery firmowe, na których można wdrożyć rygorystyczne zasady bezpieczeństwa.
- Zaszyfrowane kopie zapasowe: Twoje dane są ważne.
Zasady dotyczące pisania kodu :
- Brak wpisów tajnych w kodzie: Ze względu na charakter kontroli wersji, usunięcie danych dodanych w kodzie może być bardzo trudne, gdzie tajne klucze są bardzo łatwe do znalezienia.
- Bcrypt podczas przechowywania haseł: Projektując system uwierzytelniania, użyj bcrypt do haszowania i solenia haseł zamiast projektowania systemu lub (gulp) przechowywania w postaci zwykłego tekstu.
- Filtruj poufne informacje z dzienników: niezależnie od tego, czy jest to Twój globalny pieprz, klucz podpisywania sesji aplikacji, czy próba logowania użytkownika, upewnij się, że nie przedostają się one do plików dziennika systemowego, gdzie każdy, kto ma do nich dostęp, może je odczytać.
- Przyznaj najmniej wymaganych uprawnień: Jeśli Twoja aplikacja potrzebuje tylko uprawnień
READ
, nie nadaj jej uprawnieńWRITE
. Przestrzegaj zasady najmniejszych przywilejów.
Utwórz plan odpowiedzi
Naruszenia bezpieczeństwa zdarzają się czasami i chociaż podczas sekcji zwłok będzie mnóstwo czasu na naukę, ważne jest, aby istniała jasna ścieżka do zabezpieczenia wszystkich zasobów cyfrowych.
Poświęć trochę czasu na opracowanie planu awaryjnego na wypadek naruszenia bezpieczeństwa. Rozważ swoje działania w następujących scenariuszach:
- Tracisz urządzenie z wrażliwymi danymi.
- Dostęp do Twojej infrastruktury mógł uzyskać nieupoważniony podmiot.
- Obserwujesz, jak ktoś z twojego zespołu zachowuje się dziwnie do siebie niepodobny.
- Wykryto lukę w zabezpieczeniach.
Rzeczy, które należy uwzględnić w swoim planie odpowiedzi:
- Rzetelna dokumentacja: Włącz nagrywanie ekranu, skonfiguruj wiki dla swojego zespołu, aby udostępniać wszystko, co napotka.
- Powstrzymywanie naruszeń : w zależności od zakresu naruszenia może to być tak proste, jak wyłączenie konta użytkownika, przełączenie serwera w tryb offline lub zamknięcie produkcji i skontaktowanie się z użytkownikami.
- Nawiąż komunikację wewnętrzną: Uruchom dedykowany kanał Slack lub znajdź sposób, aby każdy mógł zgłosić to, co napotka.
- Sprowadzanie pomocy: Zadzwoń do wszystkich zespołów, których dotyczy naruszenie. Może to być również dobry moment na skontaktowanie się z władzami.
- Zbadaj: Dowiedz się, co zostało naruszone, w jakim stopniu i co możemy zrobić, aby wznowić normalne operacje.
- Powrót do trybu online: Utwórz, przetestuj i opublikuj poprawkę, aby jak najszybciej wznowić normalne działanie. Twoi użytkownicy polegają na Twojej usłudze, aby działała, a w momencie, gdy możesz zagwarantować stabilną i bezpieczną usługę, wróć do trybu online.
- Porozmawiaj z użytkownikami: nie zostawiaj użytkowników w ciemności. Najgorsze, co możesz zrobić, to zatrzymać usługę bez wyjaśniania, co dzieje się z użytkownikami. Stwórz kanał aktualizacji na żywo; może to być tak proste, jak używanie Twittera do informowania ich. Po rozwiązaniu incydentu opublikuj raport z sekcji zwłok mówiący o tym, co się stało, jak to się stało i co zrobiłeś, aby zapobiec podobnym naruszeniom w przyszłości.
Zdarzają się incydenty związane z bezpieczeństwem. Liczy się to, jak poradzisz sobie z odpowiedzią. Jedną z moich ulubionych odpowiedzi było zdecydowanie w 2015 roku, kiedy LastPass wydał obowiązkowe resetowanie hasła głównego po wykryciu nietypowej aktywności sieciowej. Jestem długoletnim użytkownikiem LastPass i pomimo ich ostatnich problemów z bezpieczeństwem, uwielbiam sposób, w jaki reagują na swoich klientów, stawiając ich potrzeby na pierwszym miejscu.
rekomendowane lektury
Powtórzę: nie ma czegoś takiego jak doskonałe bezpieczeństwo. Liczy się tylko to, abyś upewnił się, że dołożyłeś rozsądnych starań, aby Twoje dane były bezpieczne.
Te praktyki bezpieczeństwa powinny znacznie utrudnić zhakowanie Ciebie i Twojego zdalnego zespołu.
Jeśli chcesz przeczytać prawdziwą historię zbiegłego hakera uciekającego przed prawem, polecam Ghost in the Wires Kevina Mitnicka.
Jeśli chcesz dowiedzieć się więcej o tym, jak myśli druga strona, polecam lekturę:
- Inżynieria społeczna: sztuka ludzkiego hakowania Christophera Hadnagy
- Sztuka oszustwa Kevina Mitnicka i Williama L. Simona
Moją zbrodnią jest ciekawość.