"Hogy írjunk Linux vírust öt egyszerű lépésben"

Címkék

Ha eltekintünk arról, hogy nem igazán a "vírus" a jó szó arra, amiről szó van "foobar" blogbejegyzésében, akkor akár érdekes is lehet az a desktop Linux rendszerekkel kapcsolatba hozható támadási vektor, amelyről ír. Főleg úgy, hogy nem ő az első, aki felhívja a figyelmet erre a problémakörre. Jonathan Corbet - az LWN főszerkesztője - már három évvel ezelőtt írt ebben a témában.

Hozzászólások

Ja hogy ez egy virus?.. Akkor en tudtam rosszul a definiciot..

A fenti dolog nem vicc, én már telepítettem olyan firefox témát, amiben malware cucc volt...
Nem volt veszélyes, csak kéretlen...de ezen az alapon kárt is tehetett volna a user fiókomban,
és értelemszerűen -mint szinte mindenki- ott tárolok szinte mindent...
Szerintem a valódi vírusveszély a bináris installerek terjedésével,
és a multiplatform telepítővel ellátott játékokkal együtt fog növekedni.
(Szükséges rossz, mivel előbbi a rengeteg LINUX disztró,
utóbbi Lin+Win+Mac miatt egyszerűbb út a fejlesztőknek)
(Mielőtt bárki azt kérdezné, hogy ugyan ki játszik linuxon...
négy gyermekem van, és mindegyik...)
-
"Attempting to crack SpeedLock can damage your sanity"

Ez egy kicsit albán vírus jelegű. Ez inkább egy kis huncut script. Olyasmi mint amilyen vírust én írtam a haverom windowsára annó amikor a 128Mb az sok ram volt.Irtam egy progit, ami annyit csinált hogy lefoglalt a memóriából 112Mb ramot, tömbként (hagytam neki 16 Mb-ot :D) és ezt megtöltötte random számokkal, majd előlről kezdte a töltést. Ismételte a végtelenségig. Fogtam és egy linket ebből az indítópultba behúztam, és istenien működött. A gép lassú lett mint a csiga. :D Na jó ez a "vírus" mást csinál, de hasonló komolyságú.

Itt nem is az a lényeg, hogy mit csinál a felvázolt script, azt bármire át lehet írni.

Ettől függetlenül azért elég sok dolognak teljesülnie kell, hogy ez működjön:
1. Ne tűnjön fel a levelezőben a ".desktop" kiterjesztés
2. Az asztalra kell menteni vagy olyan fájlkezelőt használjak ami elrejti a kiterjesztést
3. Gnome vagy KDE fusson

Másrészről nem kellene mind "felhasználóbarát" funkciót átvenni a Windows-ból.

Megint abbol a teves nezetbol indultok ki, hogy TE mit csinalnal, es nem abbol, h a nep tobbi resze hogy reagalna. Ezek a tamadasi modszerek nem szemelyre szabottak (mint pl. anno a Valve ellen inditott), hanem szeles tomegeket celoznak. Es gyanitom neked is van olyan pillanatod, amikor ezt nem teszed meg.

---
pontscho / fresh!mindworkz

hát nem tudom. nem hiszem, hogy volt olyan, hogy egy manuálisan letöltött fájl nevét ne olvastam volna végig (vagy legalább az első pont előtti és utolsó pont utáni részét). és szerintem ezzel mindenki így van. amikor felugrik egy párbeszédablak, és rákattintunk arra a gombra, ami alapjáraton scoped, az egy másik felhasználói réteg, nem? (és másik OS...) arról nem is beszélve, hogy ha jön és nem hívom, akkor főleg megnézem, mi az.

:: by BRI.
:: config :: Acer TravelMate // Ubuntu Intrepid
:: tothab [a] gmail [pötty] kom
:: black rose immortal's weblog

Megint arrol beszelsz, h _te_. Dicseretes, h _te_ oda figyelsz erre, de millios nagysagu felhasznaloi bazisnal ez hibas hozzaallas es felepul a szazezres meretu zombi halozat. Ezt ket fele modon lehet kivedeni, oktatassa (nahat, h mindig ide lyukadunk ki...) es a technologia megfelelo kialakitasaval. Ez utobbi kezd egetove valni linux vonalon is, mert minnel bonyolultabba valik egy rendszer, annal tobb lyuk is talalhato rajt. Mint a regi idokben az elso makro firgek, amiket kozvetlenul kovettek az interneten terjedni kepes variansok.

---
pontscho / fresh!mindworkz

amíg a spamszűrőm funkcionál, nem fogok ;)

szerk.: ez persze csak vicc, igazad van: a spamekkel nem az a baj, hogy elérnek hozzám, hanem hogy addig valahol (valami helyett) közlekednek fölöslegesen...

:: by BRI.
:: config :: Acer TravelMate // Ubuntu Intrepid
:: tothab [a] gmail [pötty] kom
:: black rose immortal's weblog

~ -20
ismerőseim nagyrésze aki linuxot használ, az xfce-t nyomja, bár ha megkérded tőlük, hogy mi az, nagy az esély hogy nem fogják tudni
:D
van egy szépen beállitott xubuntu telepitőm, és tökéletesen megfelelt eddig mindenkinek...nem is értem miért nem terjedt el jobban. noh de ez már hitvita...

Hidd el, az átlag usernek nem kell elrejteni a kiterjesztést, saját tapasztalat,
annyit ismernek, hogy doc meg xls. Aztán ha jön egy akarmi.doc.pif vagy egyéb, nem érdekli, látja benne a doc-ot és már rákattan, hogy dokumentum, hogy utána még van valami a nevében azt látja, de nem tudja, mi az, ezért figyelmen kívül hagyja, mondván "biztos csak hülyéskedik a gép". Rákattint és nem jön be, akkor nyugtázza, hogy rossz a doksi és részéről a dolog letudva.

Mert az alap UNIX filozofiahoz kepest (h minden file, a '.*'-ot leszamitva nincs megkulonboztetes) igencsak epit ma mar minden a kiterjesztesben foglalt informaciora, ugyanis nem letezik olyan egyseges file azonositasi eljaras ami ezt nelkulozhetove teszi.

A miert feltetelezi egyszeru, nem ert hozza es/vagy nem erdekli a technikai hatter. Konkretan engem sem izgat, h miert sut a nap, amig meleget es fenyt ad. Najo ez eleg sarkos pelda, mert altalanossagban veve tudom mi zajlik le benne, de jol mutatja a lenyeget szerintem.

---
pontscho / fresh!mindworkz

"... ugyanis nem letezik olyan egyseges file azonositasi eljaras ami ezt nelkulozhetove teszi."ű
Na, ez igy, ebben a formaban, nem igaz. Van ilyen fajlazonositasi eljaras, a file parancs is ezt hasznalja, csak a gond vele az, hogy csak letoltott tartalmakat kepes felismerni. Tehat egy olyan fajlt, ami meg nincs a gepeden nem tud elemezni.
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

Mert az o ismeretei csak odaig terjednek el, hogy a .doc az doksi, a .pif meg akarmi is lehet, talan mert Pif kuldte a rajzfilmbol, vagy akarmi.

Itt alapvetoen azt kellene megertened, hogy a nalad sokkal hulyebb emberek is gephez jutnak. Megeccer: az hogy TE meg a BARATAID mit csinalnak, az teljesen intakt a nepesseg durvan 95%-ara nezvest. Menj el egyszer user supportosnak valahova, mert meg tul tapasztalatlan vagy ezen a teren.
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

Ennyi erővel minek szenvedni a .desktop kiterjesztéssel, csatolni kell egy "virus_vagyok_futtass_le.sh" fájlt és kész. Aztán el lehet rajta filozofálni, hogy ha ezt követően megfertőződik a gép akkor az az oprendszer hibája-e.

ui: tudom kellene egy chmod +x, de ez most inkább elvi kérdés

Az e-mailes rész nálam (és valószínűleg a legtöbb normális felhasználónál, a többi szívjon nyugodtan) ott bukna el, hogy a levelező megmutatja a .desktop kiterjesztést.

A su-s rész viszont már nekem is eszembe jutott, és nem értem, hogy hogy lehet, hogy biztonságosnak tartják a su/sudo/gksu/kdesu programokat. Ha egy program megszerezte egy olyan felhasználó jogát, aki időnként su/...-ot használ (ez desktop gépen tipikusan maga a desktop felhasználó), elhelyezhet valahol egy módosított változatot, ami elmenti a jelszót/malware-t futtat root joggal, és a .bashrc-ben beteheti a $PATH-be a könyvtárát. Min. 90 % eséllyel nem veszi észre, mielőtt először futtatja.

Így, ellentétben azzal, amit gyakran írnak, hogy ne jelentkezzünk be root-ként, hanem su*-ot használjunk, az egyetlen biztonságos mód helyi bejelentkezésre a friss rendszerindítás utáni root-ként való bejelentkezés. (Azért friss rendszerindítás utáni, mert a felhasználó jogán futó malware a kijelentkezést és a bejelentkező képernyőt is imitálni tudná. Ezen segít(ene) egy olyan billentyűkombináció, aminek a hatására a kernel feldobja a bejelentkező képernyőt, és user által futtatott program nem tudja felülbírálni.)

"Ezen segít(ene) egy olyan billentyűkombináció, aminek a hatására a kernel feldobja a bejelentkező képernyőt"

Ez a SAK (Secure Access Key), ami linuxon az altgr+sysrq+k-val hozhato elo, es azt csinalja, hogy kilo minden processzt az adott terminalon. X felett persze ez nem olyan jo.

--
Fontos feladatot soha ne bizz olyan gepre, amit egyedul is fel tudsz emelni!

Valóban, KDE-ben is kiterjesztés nélkül, vagy a rendszer által nem ismert kiterjesztéssel rendelkező fájlnál megpróbálja kitalálni, hogy milyen fájl, és a desktop fájlt ki is tudja. Ezt tényleg meg kéne szüntetni (amúgy nem csak desktop fájl lehet potenciálisan veszélyes, úgyhogy ilyenkor mindig jelezni kéne, hogy milyen fájlnak ismerte föl). Ha nincs kiterjesztése, vagy nem ismerem, én akkor se nyitnám meg kapásból (de sok ember valószínűleg igen), de ha ismert a kiterjesztés, csak épp nincs hozzá beállítva program, az különösen könnyenátverheti az embert.

Nagy találmány... vállalati rendszereket is úgy a legjobb feltörni, hogy felhívod K. Gizikét, hogy N. József vagyok az IT-ról, legyen kedves megmondani a felhasználói nevét és jelszavát. Ennek aztán marha sok köze van az OShez.

Bizony, ez a tudatlanság (értsd: felvilágosítatlanság) köre. Egy volt munkakörömben az egész menedzsmentet "köteleztettük" arra, hogy - winkörnyezetről van szó:
- AxCrypt (jelszavak, felh. nevek zárt borítékban faggyúpecséttel lezárva -> páncélszekrény.)
- Még a közvetlen főnöke sem tudhatja ezeket az adatokat.
- Aki kiadja, munkahelyét veszélyezteti.

Majd azért alkalomadtán mutatnék neked néhány céget (nem egyet ismerek), ahol a "hozzáértő" dolgozók dilettáns felsővezetőkkel karöltve és azok hathatós támogatásával csinálnak bohócot a helyi rendszergazdából nap nap után, sipkát is téve rá. Majd amikor a gyökérségük miatt (minden felhasználó rendszergazda a saját gépén, telepíthet és eltávolíthat tetszőlegesen _bármit_ (malware, spyware és ezek ötvözete), újratelepítheti a rendszerét, ha úri kedve úgy tartja, és természetesen rendszergazdaként is használva a gépét a napi munkára, mert ért hozzá) összedől az egész mint egy kártyavár, akkor előveszik a jancsibohócot és közösen jól elverik rajta a port.

:)

--
trey @ gépház

Sajnos en is ismerek ilyet, ilyenkor jon/jott be a 42-es bakancs. Oket is gatyaba lehet razni, csak a rahatas modja kulonbozo emberenkent. Sajnos minden IT supportnak (pontosabban minden emberekkel foglalkozonak) alapfoku pszichologiai ismeretekkel is rendelkeznie _kell_. Ha kepes alkalmazni az adott egyedhez tartozo manualt akkor lehet eredmenyeket elerni.

---
pontscho / fresh!mindworkz

Csak amikor az illető(k) együtt horgászik/vadászik/hajókázik/kurvázik a vezérigazgatóval, akkor nehéz hátba rugdosni. Ilyenkor marad a meghunyászkodok, fogösszeszorítva csinálom a dolgomat, mégha bohócot is csinálnak belőlem, mert kell a meló, zabálni kell a gyerekeknek dolog. Közben meg háttérben fut a melókeresés taszk, és lehet reménykedni, hogy a következő hely csak jobb lesz.

--
trey @ gépház

Szvsz a legtámadhatóbb pont nem az R=1 user lesz hanem az R=0,5-ösök. Akik fel tudnak venni egy sort az apt sources-list-be és ki tudják adni konzolról az apt-get update parancsot.

Nagyon sok olyan program van még mindig, ami nem létezik a disztribució repokban. A gyerek rákeres a guglival és talál egy site-ot, ahol megvan a vágyott program és már teszi is fel. Természetesen root jogokkal. Innentől kezdve bármit megcsinál a feltett program. És tök mindegy, hogy van-e működő program abban a csomagban amit feltett, a kártevő program már települt is. Legfeljebb kiír a feltett program valami kamu hibaüzenetet, hogy ilyen-olyan library inkompatibilitás miatt nem megy, oszt apt-get remove. De a dög fent van és marad is.

Az R=1 user hülyeségeire (pl. melléklet megnyitása) hamar lesznek működő megoldások. A telepítgetősre arra nem.

De van ugyanerre kattintos megoldás is, az opensuse one-click install. Extra dolgok telepítésekor újabb és újabb repokat és gpg key-eket vesz fel úgy, hogy már az osszes hozzáférheto comunity repo fent van. Mindez ok, de amikor már a 29-ediket menti el, elgondolkozik az ember, hogy ez normális-e hogy már lassan bárki bármilyét felteltpítheti az ember gépére frissítésként. :S

A one-click-el nagyobb a veszély mint hogy valaki új repot ír a sources.list-be, ubuntun/debianon épp csak a multimedia és wine repo kell más nem, de ilyen suse-n fene se tudja hányat vesz fel. :(

A Guru-t a 10.3 óta beolvasztották a Packman-ba. Amúgy nekem már sokszor volt, hogy valamit (főleg legújabb verziót) csak valami kisebb repositoryban találtam meg. Viszont mindegyik Build Service-os, és a Packman is közösségi, szóval nem hiszem, hogy jelentősen veszélyesebb.

Szerintem azok nagyrésze, akik bináris repo-ra épülő disztrót használnak már telepítettek programot külső repo-ból vagy *.deb, *.rpm fájlból.

Szerintem maximum a nagyon paranoiások ellenőriznek md5 checksum-ot, átirányítást, stb. Forrásból való telepítésnél se nézi át senki a kódot szerintem.

Nyilvánvalóan éles környezetben nem csinál ilyet az ember ész nélkül és próbál erre vigyázni. De éjjel-nappal nem lehet az ember paranoiás.

Nahat... linuxra is van proof concept firg.

---
pontscho / fresh!mindworkz

Mostmár értem, hogy miért vették ki a desktop ikonokat defaultból a KDE4-ből.

"PHP's coding style pulls common elements from C++, Java, PERL, Python, BASIC, Assembly, Dragonspeak, and Microsoft Office Excel."

Mackenzie Morgan elég szépen leírta mai blogbejegyzésében, hogy miért is nem vírusról van jelen esetben szó, hanem trójairól...

Kicsit olyan ez, mint az albán vírus... :D
Szerintetek működik? :D Körbeküldök egy levelet ezzel a tartalommal:

Szia!
Véletlenül belekerült pár fura dolog a legújabb frissítésbe, de van rá megoldás:
1. Nyiss egy terminált.
2. Írd be a következő parancsot:
echo ZWNobyAiV29ya3MhIgo= | base64 -d | sh

Üdv: Én

Megj.:
Ki lehet próbálni nyugodtan, csak egy echo parancs van benne.

--
Coding for fun. ;)