Linux trójai ütötte fel csúnya fejét

Chester Wisniewski, a Sophos biztonsági tanácsadójának blogjából

Az OS X felhasználók mellett a Linux felhasználók a legarrogánsabbak azon meggyőződésükben, miszerint ők immunisak a kártevő fertőzésekre. Számukra sajnálatos, de ezen a reggelen az UnreallRCd.com rendszergazdáinak ki kellett posztolniuk, hogy saját Unix/Linux forráskódjukat kompromittálták és hátsó ajtót tartalmazott 2009 novembere óta.

A Sophos Anti-Virus felhasználói védettek ezen forráskód megmérgezett verziója ellen a Troj/UnIRC-A kártevőazonosítón keresztül. Windows rendszeren nem igazán terjedt el forrásként, ezért a Linux kártevő egyedülálló kihívást jelent az antivírus számára. A Linuxos világban sokkal fontosabbak a rendszergazdák bevált gyakorlatai.

Úgy tűnik, hogy az UnreallRCd letöltő szervereit kompromittálták és a forrás trójaival fertőzött változatát helyezték el a fő letöltőhelyre. A projekt rendszergazdái számos hibát követtek el amelyek a problémához vezettek, többek között hogy megengedték az észrevétlen továbbadását is.

Először is a rendszergazdák nem monitorozták tárhelyüket módosítás után kutatva. Másodsorban leálltak az ellenőrző kódok (checksums) kiadásával. Harmadszor pedig szoftverük tükörjéhez sem kellett ellenőrző kód, ezért vakon elfogadták a megfertőzött kódot és továbbadták felhasználóiknak.

A szerzők most már GPG-aláírást használnak kiadásaikhoz, ezáltal az ügyfeleik megállapíthatják egy archív érvényességét. A legfőbb probléma az összes forrás-alapú csomaggal az, hogy a felhasználók túlságosan lusták és nemtörődömök, hogy aláírásokat vagy ellenőrző kódokat számoljanak. Nem nehéz vagy időrabló, de ehhez hasonló esetek igen ritkán fordulnak elő, éppen ezért minden egyes ellenőrző kódot le tudnánk ellenőrizni 5 évig, majd utána sosem találkoznánk korrupt vagy kártékony archívval (emlékeznek a foo.pad-re?).

Amikor kiadják az ellenőrző kódokat, gyakran az archívval megegyező rendszeren, vagy pedig egy megosztott azonosítókkal rendelkező rendszeren alapulnak. Ez tulajdonképpen semmilyen célt sem szolgál, ahogy arról Paul Ducklin és jómagam is értekeztünk már korábban.

Paul gyakran mutat rá arra, hogy ha Ön egy szervert üzemeltet, elég egy kártékony binárist vagy forrás archívot elhelyezni rajta, akkor könnyedén megváltoztathatja a kiadott ellenőrző kódot hogy egyezzen az Ön kicserélt másolatával. Persze az UnreallRCd csapatának megközelítése, azaz inkább aláírni mint ellenőrző kódozni, a jövőben megváltozhat. Ehhez arra lenne szükség, hogy aláíró kulcsaikról is jobban gondoskodjanak és ne tartsák azokat ugyanazon a hoszton.

Ha Ön egy UnreallRCd felhasználó, kérjük ellenőrizze tarball-ját és md5sum értékét is, amely 7b741e94e867c0a7370553fd01506c66 (a 2.8.1-es verzióhoz). A kompromittált verzió ellenőrző kódja 752e46f2d873c1679fa99de3f52a274d. A szoftver Windows verzióját nem érinti ez a hack. Ha Ön Sophos Anti-Virust használ, lefuttathatja a savscan -tar -gzip Unreal3.2.8.1.tar.gz parancsot a Linux vagy Unix szerverein annak meghatározásához, hogy az Ön rendszere a kompromittált verziót használja.

1

Frissítés: már kiadtuk az eredeti tarball-hoz és a lefordított binárishoz tartozó észlelést is.

A rendszergazdák figyelmébe: amikor egy aláírást vagy ellenőrző kódot kapunk, ellenőrizzük le. Ezért adják ki ezeket, és ez csak egy eset a sok közül minden évben. Ne essenek abba a csapdába, hogy „a vírusok Windows problémák." Ahogy ebből az incidensből is láthatjuk, a Linux sem immunis.

Köszönöm Pete-nek az ausztráliai SophosLabs-ból az összes segítségéért, amit ennek a fenyegetésnek a beazonosításában nyújtott.

További információ angol nyelven