szukaj

02.10.2013 | 16:49

avatar

Adam Haertle

Bardzo sprytny – choć nieudany – atak na kasyno BTC

Historia zna wiele udanych przypadków ataków na serwisy oferujące usługi związane z rynkiem BTC. Często łupy złodziei sięgały milionów dolarów. Tym razem jednak atakujący, mimo bardzo inteligentnego planu, ponieśli całkowitą porażkę.

Wiele razy opisywaliśmy, jak włamywaczom udawało się uzyskać dostęp do portfeli BTC przechowywanych na serwerach różnych serwisów takich jak giełdy czy internetowe portfele BTC. Włamania nie ominęły w tej branży prawie nikogo – na liście ofiar włamywaczy znajdziecie takie marki jak MtGox, Virvox, BTC-E, Bitcoin7, Bitcoin Central, InstaWallet, Bitfloor, Bitcoinica czy Bitinstant. Niektóre z tych serwisów przetrwały atak i pokaźną stratę, inne zakończyły działalność. Na ich błędach uczyli się administratorzy, którzy wdrażali nowe zabezpieczenia. Przykład nieudanego ataku na kasyno Bitcoin Video Casino pokazuje, że można to zrobić całkiem skutecznie.

Tajemniczy restart

Administratorzy kasyna opisali swój ciekawy przypadek ku przestrodze innym. Dziewiątego września zauważyli, że ich serwer, fizyczna maszyna wynajmowana od firmy hostingowej, zniknął z sieci, by pojawić się ponownie po kilku godzinach. Kiedy się na niego zalogowali sprawdzili, że ktoś go zrestartował. To wzbudziło ich uzasadnione podejrzenia, ponieważ od uruchomienia usługi pół roku wcześniej serwer obywał się bez restartów.

Wstępne przejrzenie systemu potwierdziło przypuszczenia, że dzieje się coś złego. Administratorzy odkryli nieautoryzowaną sesję, korzystającą z fizycznego terminala /dev/tty1. Oprócz tego w wynikach polecenia top zobaczyli, że uruchomiony jest skrypt /etc/bitcoin.sh, którego nie znali. Skrypt był co chwilę wywoływany z crona i kontaktował się z instancją Amazon EC2, powiadamiając ją, ze serwer jest włączony. Co ciekawe, w logu dmesg znaleźli informację o tym, że ktoś podłączył dzień wcześniej do serwera nowe urządzenie. Co to mogło być?

KVM dobry na wszystko

Długa rozmowa z obsługą serwerowni odkryła plan włamywacza. Dzień wcześniej ktoś w nieznany do tej pory sposób, prawdopodobnie przełamując zabezpieczenia systemu zarządzania usługami HostBill, zamówił w imieniu firmy podłączenie fizycznego urządzenia KVM, pozwalającego na zdalne kontrolowanie myszki, klawiatury i ekranu. Pracownik serwerowni zamówienie zrealizował – stąd ślad w logach po podłączeniu nowego urządzenia. Następnego dnia włamywacz, korzystając z dostępu przez KVM, zrestartował serwer do trybu pojedynczego uprzywilejowanego użytkownika. Następnie zmodyfikował listę /etc/sudoers oraz hasło jednego z kont użytkowników, by zachować dostęp do systemu po restarcie. Co powstrzymało włamywacza przed opróżnieniem portfela BTC i kradzieżą kodu źródłowego serwisu?

Szyfrowanie partycji ratunkiem dla portfela

Twórcy serwisu wykazali się dużą roztropnością, ponieważ wszystkie partycje oprócz startowej były od początku zaszyfrowane, a klucz szyfrujący był przechowywany w zupełnie innej lokalizacji w dodatkowo zabezpieczonej formie. Zaszyfrowany był zatem zarówno gorący portfel BTC, jak i cały kod źródłowy serwisu oraz wszystkie jego bazy danych. Konfiguracja ta w żaden sposób nie utrudniała bieżącego funkcjonowania serwisu, a wymagała interwencji administratora jedynie w przypadku restartu całego serwera – który praktycznie nigdy się nie zdarzał. W razie konieczności administrator mógł wydobyć klucz szyfrujący, odkodować go, podać oprogramowaniu szyfrującemu i uruchomić system. Atakujący nie znał tego klucza i nie mógł go zdobyć sam, zatem pozostało mu czekać, aż po restarcie administrator odszyfruje dyski. Na szczęście administrator zorientował się, że coś jest nie tak i dysków nie odszyfrował, zanim nie usunął z systemu włamywacza i śladów jego działalności.

Nauka na przyszłość

Powyższy przykład pokazuje, że serwer z portfelem BTC da się obronić przed nawet całkiem sprytnymi atakami. Oczywiście włamywacz mógł lepiej ukryć swoją obecność w systemie, ale i tak mechanizmy bezpieczeństwa okazały się wystarczające. Podsumowując, jeśli prowadzicie biznes, w którym na serwerze trzymacie BTC, to rekomendujemy:

  • trzymanie w gorącym portfelu minimalnej ilości BTC niezbędnej do prowadzenia interesów
  • szyfrowanie partycji z danymi, w szczególności kodem źródłowym, bazą danych oraz portfelem
  • przechowywanie klucza szyfrującego w innej lokalizacji, niedostępnej z zaszyfrowanego serwera
  • wnikliwe analizowanie wszystkich anomalii
  • w przypadku najmniejszych podejrzeń odtworzenie serwera z zaufanej kopii bezpieczeństwa

PS. KVM to ostatnio całkiem modne narzędzie włamywaczy. Zaglądaliście już dzisiaj pod biurko?

Powrót

Komentarze

Zostaw odpowiedź

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

Bardzo sprytny – choć nieudany – atak na kasyno BTC

Komentarze