Pracujesz z dużą ilością…

9 lipca 2019

Pracujesz z dużą ilością serwerów podczas swojej pracy?
Do każdego z nich logujesz się przy pomocy swojego klucza SSH?
A co w przypadku gdy do wielu serwerów dostęp powinno mieć wielu użytkowników?
Czy klucz każdego z nich należy dopisać do pliku ~/.ssh/authorized_keys?
Co w sytuacji gdy użytkownik straci kontrolę nad swoim kluczem prywatnym albo odejdzie z firmy?
Jak zarządzać taką infrastrukturą?
O tym w dzisiejszym odcinku #od0dopentestera

W SSH możemy skonfigurować opcję TrustedUserCAKeys.
Wtedy to serwer nie oczekuje podczas logowania konkretnego klucza.
Sprawdza natomiast czy podany klucz został podpisany przez klucz CA.

Dzięki temu za każdym logowaniem możemy używać nowo wygenerowanego klucza.
Wystarczy tylko aby był on podpisany.
Dodatkowo klucz ten może mieć określony czas działania.
Przez to nawet jeżeli w przyszłości dostanie się w ręce atakującego, będzie bezużyteczny.

Bezpieczeństwo rozwiązania zależy zatem od prywatności klucza CA.
Nie powinien on być więc w posiadaniu wszystkich administratorów.
Tu do gry wchodzi BLESS – Bastion’s Lambda Ephemeral SSH Service.

Jest to specjalna funkcja AWS Lambda, która służy do generowania tymczasowych kluczy dostępu do naszych serwerów.
Wspiera ona AWS IAM Policy, dzięki czemu możemy ustalić kto ma do niej dostęp.
Teraz, przed zalogowaniem się poprzez SSH używamy klienta w Pythonie, który wywołuje tą funkcję z podanymi przez nas parametrami.
Ona to sprawdza czy należymy do odpowiedniej grupy i jeżeli wszystko się zgadza zwraca podpisany klucz.

Plusy rozwiązania?
Tylko główny administrator posiada dostęp do pliku z kluczem CA.
Wygenerowane klucze są tymczasowe więc ich kradzież nic nie daje.
Jeżeli pracownik odchodzi z firmy wystarczy usunąć go z jednej grupy.
W przypadku pojawienia się nowego serwera – dopisujemy tylko jedną linijkę w konfiguracji.

Subskrybuj kanał na YouTube
Masz pytanie na temat bezpieczeństwa? Zadaj je na grupie od 0 do pentestera na Facebooku.
Jeżeli chcesz być wołany dodaj się do Mirkolisty.

#bezpieczenstwo #programowanie #informatyka #it #nauka #technologia #ciekawostki #swiat #gruparatowaniapoziomu #biznes #security #webdev #programista15k

No Comments

Comments are closed.