3 lipca 2002

I-Worm.Scalper - atakuje poprzez serwery "Apache"

Scalper (zwany również "FreeBSD.Scalper.worm", "ELF/FreeApworm", "ELF_SCALPER.A") jest robakiem internetowym infekującym serwery FreeBSD wykorzystując lukę w zabezpieczeniach popularnego serwera WWW "Apache". Wirus działa również jako backdoor.

Robak wykorzystuje dziurę w zabezpieczeniach następujących wersji serwera "Apache": 1.3.x do 1.3.24, wszystkie wersje 2.0.x do 2.0.36 oraz wszystkie wersje 1.2.x. W celu załatania luki należy zainstalować uaktualnioną wersję "1.3.26"/"2.0.39" lub nowszą. Więcej informacji na temat luki w zabezpieczeniach można znaleźć pod poniższymi adresami:

http://httpd.apache.org/info/security_bulletin_20020620.txt

http://www.cert.org/advisories/CA-2002-17.html

Szczegóły techniczne dotyczące robaka

Robak atakuje losowo wygenerowane klasy adresów IP o formacie a.b.x.x, gdzie:

  • element "a" jest wybierany z tablicy składającej się z 162 wpisów;
  • element "b" jest generowany losowo;
  • elementy "c" i "d" są zwiększane od "0.0" do "255.255"

Po wygenerowaniu adresu IP robak sprawdza czy nie prowadzi on z powrotem do lokalnej maszyny (może się tak dziać w przypadku adresu IP o formacie 127.x.x.x), po czym próbuje wysłać poprzez port 80 polecenie "GET /" w celu sprawdzenia, czy na atakowanej maszynie uruchomiona jest "odpowiednia" wersja serwera "Apache". Jeżeli odpowiedź serwera zawiera ciąg "Apache", robak atakuje serwer poprzez lukę w zabezpieczeniach zwaną "Server Chunk Handling" wysyłając zawartość dwóch specjalnie przygotowanych buforów (jest to możliwe tylko w dwóch wersjach serwera "Apache": 1.3.20 oraz 1.3.22-24). Jeżeli wykonywanie powyższych operacji zakończy się pomyślnie, wirus wysyła się w formacie UUENCODE do katalogu "/tmp", rozpakowuje się jako "/tmp/.a" i uruchamia się.

Po uruchomieniu robak ponownie wykonuje procedurę rozprzestrzeniającą oraz aktywuje własny komponent backdoor na porcie UDP 2001. Backdoor akceptuje wiele komend, w tym: bombardowanie zdalnych systemów pakietami UDP, TCP, DNS oraz RAW, uruchamianie lokalnych poleceń, pobieranie i uruchamianie binariów ze zdalnych komputerów poprzez HTTP, wysyłanie wiadomości e-mail, wysyłanie informacji o zainfekowanym komputerze itd.

Robak szyfruje komunikację z backdoorem, jednak jest to szyfrowanie statyczne, użyte prawdopodobnie w celu ukrycia przed bezpośrednią analizą ruchu.