Kolege koji koriste Exim verzije 4.87–4.91 na svojim mail serverima trebali bi hitno nadograditi na verziju 4.92, nakon što su prethodno deaktivirali sam Exim kako bi izbjegli hakiranje putem CVE-2019-10149.
Nekoliko milijuna poslužitelja diljem svijeta potencijalno je ranjivo; ranjivost je ocijenjena kao kritična (osnovni rezultat CVSS 3.0 = 9.8/10). Napadači mogu pokretati proizvoljne naredbe na vašem poslužitelju, često kao root.
Molimo provjerite koristite li ispravljenu verziju (4.92) ili već ažuriranu.
Ili zakrpaj postojeći, vidi temu .
Ažuriranje za centos 6cm. - za centos 7 također radi, ako još nije stiglo direktno iz epela.
AŽURIRANJE: Ubuntu je pogođen 18.04 i 18.10, za njih je objavljeno ažuriranje. Verzije 16.04 i 19.04 nisu pogođene, osim ako na njih nisu instalirane prilagođene varijante. Više detalja .
Problem opisan tamo se trenutno aktivno iskorištava (vjerojatno od strane bota). Primijetio sam infekciju na nekim svojim serverima (s verzijom 4.91).
Sljedeće je relevantno samo za one koji su već "pogođeni" - ili trebate sve premjestiti na čisti VPS s novim softverom ili pronaći rješenje. Hoćemo li pokušati? Javite mi može li netko pobijediti ovaj zlonamjerni softver.
Ako ste Exim korisnik koji ovo čita i još uvijek niste ažurirali (ili se uvjerili da imate 4.92 ili zakrpanu verziju), molimo vas da prestanete i ažurirate.
Za one koji su već bili tamo, nastavljamo...
UPS: i daje prave savjete:
Može postojati ogroman broj zlonamjernog softvera. Ako korisnik pokrene pogrešan lijek i izbriše red čekanja, neće biti izliječen i možda neće ni znati za što mu je potreban tretman.
Infekcija je uočljiva ovako: [kthrotlds] opterećuje procesor; na slabom VDS-u je 100%, na serverima je slabija, ali uočljiva.
Nakon infekcije, zlonamjerni softver briše unose u cronu, registrirajući se tamo samo za pokretanje svake 4 minute, dok crontab datoteku čini nepromjenjivom. Crontab -e Ne mogu spremiti promjene, javlja grešku.
Nepromjenjivi se može ukloniti na primjer ovako, a zatim se može izbrisati naredbeni redak (1.5 kb):
chattr -i /var/spool/cron/root
crontab -e Zatim, u crontab editoru (vim), izbrišite redak i spremite:dd
:wq
Međutim, jedan od aktivnih procesa ga ponovno prepisuje, istražujem to.
Istovremeno, postoji hrpa aktivnih wgetova (ili curlova) na adresama iz instalacijske skripte (vidi dolje). Za sada ih pokušavam zaustaviti, ali se ponovno pokreću:
ps aux | grep wge[t]
ps aux | grep cur[l]
echo "Stopping..."
kill -9 `ps aux | grep wge[t] | awk '{print $2}'`
kill -9 `ps aux | grep cur[l] | awk '{print $2}'`
Skriptu za instalaciju trojanskog konja pronašao sam ovdje (centos): /usr/local/bin/nptd… Ne objavljujem ga iz sigurnosnih razloga, ali ako je netko zaražen i razumije shell skripte, molim vas da ga pažljivije prouči.
Dodat ću više informacija čim budu dostupne.
AŽURIRANJE 1: Brisanje datoteka (s prethodnim chattr -i) /etc/cron.d/root, /etc/crontab, rm -Rf /var/spool/cron/root nije pomoglo, kao ni zaustavljanje servisa - morao sam potpuno ukloniti crontab (preimenovati bin datoteku).
AŽURIRANJE 2: Instalacijski program trojanca ponekad se pronalazio i na drugim mjestima; pretraživanje po veličini je pomoglo:
pronađi / -veličina 19825c
UPD 3. XNUMX. XNUMX.: Upozorenje! Osim što onemogućuje selinux, trojanac također dodaje svoj vlastiti SSH ključ u ${sshdir}/authorized_keys! I aktivira sljedeća polja u /etc/ssh/sshd_config ako već nisu postavljena na DA:
PermitRootLogin da
RSAAutentifikacija da
PubkeyAuthentication da
echo UsePAM da
PasswordAuthentication da
AŽURIRANJE 4: Ukratko za sada: onemogućite Exim i cron (uključujući root), hitno uklonite trojanski ključ iz SSH-a, uredite SSH konfiguraciju i ponovno pokrenite SSH! Još nije sigurno hoće li ovo pomoći, ali bez toga, stvari su katastrofa.
Važne informacije iz komentara o zakrpama/ažuriranjima premjestio sam na početak bilješke kako bi čitatelji mogli započeti s njima.
UPD 5. XNUMX. XNUMX.: da je zlonamjerni softver promijenio lozinke u WordPress.
UPD 6. XNUMX. XNUMX.: , testiramo ga! Nakon ponovnog pokretanja ili onemogućavanja lijeka, čini se da se ruši, ali barem za sada.
Ako netko napravi (ili pronađe) stabilno rješenje, molim vas da napišete, pomoći ćete mnogima.
UPD 7. XNUMX. XNUMX.: piše:
Ako već niste čuli, virus se oživljava iz neposlane poruke u Eximu. Kada pokušate ponovno poslati poruku, ona se vraća. Pogledajte u /var/spool/exim4
Cijeli Exim red možete očistiti na sljedeći način:
exipick -i | xargs exim -Mrm
Provjera broja unosa u redu čekanja:
exim-bpc
AŽURIRANJE 8: Opet FirstVDS je ponudio vlastitu verziju skripte za liječenje, testirajmo je!
AŽURIRANJE 9: Izgleda kao djela, Hvala za scenarij!
Glavna stvar koju treba zapamtiti je da je poslužitelj već bio kompromitiran i da su napadači mogli uspjeti postaviti neku drugu nestandardnu štetu (koja nije navedena u dropperu).
Stoga je bolje prijeći na čistu instalaciju poslužitelja (VDS) ili barem nastaviti pratiti ovu temu. Ako se pojavi nešto novo, molimo vas da napišete u komentarima ovdje, jer očito neće svi prelaziti na novu instalaciju...
AŽURIRANJE 10: Hvala još jednom podsjeća da nisu zaraženi samo serveri, već i, na primjer, Raspberry Pi, i sve vrste virtualnih strojeva... Dakle, nakon što spremite poslužitelje, ne zaboravite spremiti svoje video konzole, robote itd.
AŽURIRANJE 11: Od Važna napomena za "manualne iscjelitelje":
(nakon korištenja jedne ili druge metode za borbu protiv ovog zlonamjernog softvera)
Apsolutno morate ponovno pokrenuti računalo - zlonamjerni softver se nalazi negdje u otvorenim procesima i, prema tome, u memoriji, te se svakih 30 sekundi zapisuje natrag u cron.
UPD 12. XNUMX. XNUMX.: Exim ima još jedan(?) zlonamjerni softver u svom redu čekanja i savjetuje prvo proučavanje njegovog specifičnog problema prije početka liječenja.
UPD 13. XNUMX. XNUMX.: Najbolje je prijeći na čisti sustav i prenositi datoteke s krajnjim oprezom, jer je zlonamjerni softver već javno dostupan i može se koristiti na druge, manje očite i opasnije načine.
AŽURIRANJE 14: Oni koji se uvjeravaju da su pametni ljudi i ne pokreću ga iz roota - još jedno :
Čak i ako ne radi pod rootom, bude hakiran... Imam ga na svom OrangePi-ju debian jessie UPD: rastezanje, exim se pokreće iz Debian-exim i dalje je bilo hakiranja, kruna je izgubljena i tako dalje.
AŽURIRANJE 15: Prilikom prelaska na čisti server s kompromitiranog, ne zaboravite na higijenu, :
Prilikom migracije podataka obratite pozornost ne samo na izvršne ili konfiguracijske datoteke, već i na sve što bi moglo sadržavati zlonamjerne naredbe (na primjer, u MySQL-u to mogu biti CREATE TRIGGER ili CREATE EVENT). Također, ne zaboravite na .html, .js, .php, .py i ostale javne datoteke (idealno bi bilo da se te datoteke, kao i ostali podaci, vrate iz lokalne ili druge pouzdane pohrane).
UPD 16. XNUMX. XNUMX.: и Sustav je imao jednu verziju Exima u portovima, ali u stvarnosti je radila druga.
Dakle svima Nakon ažuriranja, vrijedi provjeriti da koristite novu verziju!
exim --versionZajedno smo riješili njihovu specifičnu situaciju.
Server je koristio DirectAdmin i bio je instaliran njegov stari da_exim paket (stara verzija, bez ranjivosti).
Zapravo, korištenjem DirectAdminovog custombuild upravitelja paketa, kasnije je instalirana novija, već ranjiva verzija Exima.
U ovoj konkretnoj situaciji, ažuriranje putem custombuilda također je pomoglo.
Ne zaboravite napraviti sigurnosne kopije prije takvih eksperimenata, a također provjerite jesu li prije/poslije ažuriranja svi Exim procesi stare verzije i nije se "zaglavio" u pamćenju.
Izvor: www.habr.com
