Trójai ftp elleni védekezés

Fórumok

Biztos sokan belefutottatok ebbe a Total Commanderes jelszó kilopós trójai progival, ami a jelszó birtokában leszedi a php vagy html fájlokat és belerak mindenféle virusos linket vagy egyebet.

Ki hogy védekezik ellene?

Nekem első körben az jutott eszembe hogy letiltom teljesen az ftp-t és csak azokat a tartományokat engedem ahonnan a fejlesztők ftp-nek. A trójai ahogy nézem főleg külföldi címről jön (brazil, kinai stb) bár gondolom kis idő múlva magyar ipcímekről is jönni fognak, tehát ez a megoldás csak időleges lehet.

Hozzászólások

sftp és winscp-kombó? ott kódolva van a pass a fájlban.

Hát igen, csak nem minden felhasználótól várható el hogy ilyen progit használjon sajnos ebből is ki kell indulni.

Épp nézem a logot már magyar címekről is van trójai (digikabel.hu)

Winscp szvsz barátságosabb cucc, mint a total commander, hihetetlenül könnyen kezelhető, a tömörítés miatt pedig gyorsabb, ráadásul titkosít, így mikor a fejlesztők feltolnak valami olyan dolgot, amibe jelszavak vannak kódolva (sql dump, vagy akármi), az is védetten közlekedik.

Winscp és sftp nem feltételez ssh usert a szerveren? Mert jelenleg mysql adatbázisban tárolt ftp userek vannak.

IMHO ez egy kíváló alkalom, hogy a usereket migráld egy titkosított protokollra, amivel ez is megoldódik.

--
The Net is indeed vast and infinite...
http://gablog.eu

WinSCP semmivel nem jobb (legfeljebb annyival, hogy kevésbé ismert, security by obscurity). Ha trójai van a gépen, az be tud épülni a WinSCP-be is, és módosítgatni a fájlokat, amíg a felhasználó be van jelentkezve, vagy keyloggerrel lelopni a jelszót.

Gyak. ha trójai van a gépen, az bármit tud csinálni, amit a felhasználó, tehát amit a fejlesztő át tud írni, azt a trójai is. Ha webszerverről van szó, az lehet megoldás, hogy a fejlesztők csak vmi fejlesztői branchbe tudnak írni, és a vezető ellenőrzés után, biztonságos környezetben másolja át az éles szerverre.

Ahhoz, hogy menüből módosítsa, elég programspecifikus trójai kell, ami nem lehetetlen, csak minek...marha kevesen használják a winscp-t, vagy bármilyen másik stfp/scp klienst (tc stfp-plugin itt most nem játszik, a régi titkosítatlanul tárolta a jelszavakat, az új meg bugos).

Egy keyloggert pedig nem könnyű többezer gépre felvarázsolni, egy-két napon belül minden vírusvédelmi cég kihozza rá a frissített adatbázist.

Itt is programspecifikusról volt szó (TC specifikus). Igaz, hogy WinSCP-t keveseben használnak, ezért security by obscurity. Amúgy általános keylogger nélkül is ellophatják a jelszót, ha módosítják a WinSCP-t. Ez persze nehezebb, ha rendszergazdaként telepítették a WinSCP-t, nem rendszergazdaként használják a gépet, és a trójai nem tud rendszergazda jogot szerezni. Viszont a legtöbben parancsikonról indítják a WinSCP-t, azt meg át lehet irányítani egy módosított változatra.

Mondjuk ezek olyan módszerek, amiket nyilvánvalóan meg lehetne csinálni, de lehet, hogy nem nagyon használják őket.

most gondolkodunk azon hogy csak a .hu engedjük ezzel az a baj hogy akkor kizárjuk az olyan hostokat amikhez nincsen domain, a másik pedig hogy a ripe nál megvan melyek a magyar ip-k és csak azokat engedjük :>
igaz ez jópár ezer soros tűzfalszabály lesz :D

Core2Duo T7100, 4G, Ubuntu 9.04, 2.6.28

> bár gondolom kis idő múlva magyar ipcímekről is jönni fognak

Ehhez elég átírni a jelszó lopót, hogy az áldozat gépéről módosítsa az ftp tárhely tartalmát. IP alapján ezt nem lehet detektálni.

> Ki hogy védekezik ellene?

Akárhogy töröm a fejem, se jut eszembe "tökéletes" megoldás; marad az hogy valami engedményt kell tenni.

Hogy hangzik, ha mondjuk a felhasználónevet kellene időről időre megváltoztatni? Ez könnyen automatizálható, annyit bonyolítana a felhasználói oldalon, hogy ftp-zés előtt le kéne futtatni egy szkriptet. Cserébe valószínűsíthető, hogy egy jelszólopó program elavult felhasználónevet lop el.

weboldalon elpostolod ftp usert + pw-t, ha stimmel, akkor adott user csak arrol az ip-rol tud csatlakozni, majd cronbol visszaallitgatod idonkent az ipaccess-t

Ha ennyire "durvulunk" akkor már akár port-knocking is lehetne, csak persze ezek mind baromira megbonyolítják az életet.
"Deafult usert" nem lehet semmire kényszeríteni, neki biztosítani kell az egyszerű megoldást (néha még az FTP meg a TC is kínai nekik), de ahol fejlesztők, informatikusok, szakemberek dolgoznak, ott tényleg inkább SSH-t, SCP-t meg SFTP-t kell használni. Sőt, ha nagyjából zárt a fejlesztési hely (pl. céges iroda), még tunnelezni is lehet

Változtass jelszót mindenkinél, és add ki, hogy az utolsó karaktert mindig kézzel írják be. Ezt akár úgy is elérheted, hogy az utolsó karakter a helyi idő szerinti óra utolsó számjegye, és cronból állítgatod.

Nalunk pure-ftpd fut, es clamscan futtatunk a feltoltott fajlokra a pure-uploadscript-en keresztul. Ha virust talal bennuk, akkor loggolja, kuld egy levelet, meg atmozgatja a fajlt. Megtalalja az ilyen Javascript dolgokat is.
A logokbol latjuk, hogy kinek az accountja volt, jelszot modositunk rajta, majd mivel a fail2ban monitorozza az pure-ftp logot, ezert akik hasznalnak mindig szepen letiltjak maguktol az elerest a szerver fele. :)

Nalam a kovetkezo verziok vannak a Debian volatile repositorybol:

clamav 0.94.dfsg.2-1~volatile3
clamav-base 0.95.1+dfsg-0volatile2
clamav-daemon 0.94.dfsg.2-1~volatile3
clamav-freshclam 0.94.dfsg.2-1~volatile3
libclamav2 0.91.2-1~volatile1
libclamav3 0.92.1~dfsg-1volatile2
libclamav5 0.94.dfsg.2-1~volatile3

Itt van 3 pelda, amit probaltak feltolteni: http://c-p.hu/sample.tar

Igy talalta meg oket:

---
./index.html: Exploit.HTML.IFrame-6 FOUND
./index.php: Exploit.HTML.IFrame-6 FOUND
./note80.php: JS.Inor-1 FOUND

----------- SCAN SUMMARY -----------
Infected files: 3
Time: 0.055 sec (0 m 0 s)
---

Amugy, lehet a ClamAV oldalan bekuldeni uj mintakat. ;)

En egyelore ugy vagyok vele, hogy a 40-50% is tobb, mint a semmi, amig nem talalunk egy jobb megoldast. 1-2 hetig volt probalkozas amiota beelesitettuk, de azota lealltak - vagy az ugyfelek jobban vigyaznak. :)

Erre jo megoldas egyreszt a TPM remote attestation, vagy ha kap valamilyen kozpontilag menedzselt, aranylag biztonsagos kornyezetet, ahonnan hozzaferhet a cuccokhoz (pl. vmware ace).

Ha ez nem lehetseges, akkor viszont erdemes one-time passwordoket hasznalni, es minden belepeskor visszajelezni a usernek (pl. emailben), es a lelkere kotni, hogy ha latja, hogy valaki mas is bemaszkal, akkor szoljon.
A titkositott atvitel termeszetesen szep meg jo, de a szoban forgo tamadasi forma ellen nem sokat ved.

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

Felmegy egy weboldalra, ott authentikál, és kap egy jelszót, amit csak egyszer használhat.
Esetleg még valami spec FTP dolog, amit a Total Commander nem tud, hogy rá legyen kényszerítve az user arra, hogy ne azt használja.

Ha érdeklődhetek, akkor milyen környezet? Hostingod van, vagy belső céges fejlesztői dolog?

Lehet, hogy nem segít a trójaiak ellen, de mintha egy másik topicban arról lett volna szó, hogy tiszta gépről, sőt linuxról bejelentkezve is járt pórul fejlesztő, így a lopás helye nem a gép, hanem valahol a neten fogták el a plaintextben utazgató jelszót. Így viszont már megoldás lenne a biztonságos kapcsolat.
Másik dolog pedig, hogy a TC kb. a világ legnépszerűbb fájlkezelője, ami winscpről nem mondható el, így utóbbihoz gondolom nem is készült trójai...

Egyszerű. Nem kell rendszergazdaként nyomulni, nem kell trójait telepíteni. Nagyjából ennyi.

Esetleg az user weboldaláról bizt. másolat egy szeparált mappába (tudom, ez meredek lehet). Ha user módosít, akkor kap egy linket mailben, ahol autentikálja magát. Ha jó, adat feltölt a backup mappába. Ha nem történik meg x időn belül, vagy hibás, akkor a módosítás sem történik meg.

Nalam (ket ceg hosting szolgaltatasat adminolom) is tobb esetben elofordult jelszolopas. Egyelore eddig inkabb kulfoldi ip-rol tortent modositas. Gyors megoldaskent pure-ftpd mysql azonositasat kicsit atirtam, es alatettem egy ip-to-country adatbazist, a fiokokra meg kulon allithato, az orszag, vagy akar ip cim is, igy talan mar nehezebb lett a trojaiak dolga, de sajnos ez nem szazas vedelem.

Az egyik helyen mar allunk at scp-re, ott inkabb csak par fejleszto fer hozza a honlapok mindegyikehez. De pl. a masik helyen sok kiosztott ftp acc van, mivel az ugyfeleknek az a szimpatikus, azt tudjak kezelni. De ki kell talalni valami megoldast, mert az utobbi idoben igen aggaszto mereteket olt a honlapok modositasa, es nem egy site kerult mar fel a rosszindulatu honlapok listajara emiatt.

a megoldás : net2ftp :)
faszán webről lehet feltöltögetni a dolgokat ugyanúgy ..., nálam a felhasználók megértették, hogy ez így nyerő :)

Hát igen, de előbb utóbb az ilyen webes felületeket is lelakják. A captcha se okoz gondot nekik, akkor talán egy ilyen felület sem. Hát ez eléggé elkeserítő, szinte úgy járunk mint a spam-el, egyszerüen bele kell törödni, és együtt kell élni vele.

Vannak olyan oldalak, amik kiraknak egy linket, hogy huu, iszonyat jo Angelina.Jolie.And.Morgan.Fox.Lesbian.XXX-retail-720p.avi, ha le akarod tolteni ker egy captcha-t, amit be is irsz neki, de aztan aztmondja hogy nemjo (gondolod elirtad, megesik), es ker egy ujat, az se jo, es azutan se amig meg nem unod.
Vagy ra nem jossz hogy 8 oldal captcha-jat fejtetted meg nekik eppen.

Nalunk svn-be pakoljak a php/html/css kodot, majd onnan export a megfelelo helyre. ftp van a webhelyen, de csak a gallery kepek feltoltesere.

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

VPN +1 biztonsagi reteg (de nyilvan annak a jelszavat is lehet lopni, ellenben kivulrol nem lehet csak ugy ftpzni).
Masik megoldas ha a fejlesztok verziokezelo rendszerbe commitolnak, es a webszerveren pedig ki lehet checkoutolni. Igy meg ha valaki csunyat is ir a kodban, gyorsan visszaallithato.

Én belefutottam, bár gFTP-t használtam kliensnek.
Mivel a szerver, amit adminolok, nincs kiadva másnak, csak a céges dolgok mennek rajta, leszedtem a teljes ftp elérést és SSH2-vel érjük el a weblapos mappát. Remélem, ezzel nem lesz gondunk...

Úgy látom, itt többek nem értik miről is van szó.
Jelen probléma ellen a titkosított protokoll egyáltalán nem véd.
A baj az, hogy egy trójai települ a gépre, és ellopja a tárolt jelszavakat a gépről.
Akár keyloggert is futtathat, így az sem védelem, hogy nem engeded az FTP kliensnek tárolni a jelszót.
Ha már ott a trójai a gépen, akkor a VPN is hiába, mert annak is ellophatja a jelszavát/kulcsát.
Az egyetlen megoldás az, hogy meg legen akadályozva a trójai gépre kerülése.
Mégegyszer mondom, hogy se SSH, se VPN, se semmi nem véd ez ellen a támadás ellen, mivel ott a gépen a trójai, és az bármit megtehet.
Elszomorító, hogy vannak olyan "szakemberek", akik fel sem fogják a probléma mibenlétét - mert ha valaki azt mondja, hogy használjunk FTP helyett ssh-t, az egyszerűen nem fogta fel a probléma mibenlétét, még így, 235323443342. elmagyarázás után se. Pedig ez k.rvára nem egy bonyolult dolog.

Azért sftp és azért nem ftp, mert nagyobb esélyed van rá, hogy a programspecifikusra írt trójai nem tudja olvasni más kliens konfigfájlját. De egyébként igen, a jelszó ne legyen lementve a gépre és nem kell onnantól parázni (kivéve keylogger esetén, de ha már az is fel tud kerülni és észrevétlen marad, akkor megette a fene az egészet...)

szerk.
De pl. ha egyszer megnézed, hogy zsalnak a titkosítatlan jelszavak a hálózaton és milyen remekül sniffelhető, magadtól is átállsz a biztonságos megoldásra :)

keylogger szinte minden trojaiban van.

Legegyszerubb megoldas: sms auth. Termeszetesen ebben az esetben is meg tudja patchelni a trojai a filet amit feltolt ftpre vki, de ilyet meg nem lattam. Meg amugyis ebben az esetben a felelosseg teljes mertekben a usere, igy neki kell ujra dolgozni. (esetleg fizetesebol neki lesz levonva)

Termeszetesen ez usereknek nem kenyelmes, de SMS authnal meg lehet csinalni, ohgy egyszer kelljen egy IP tartomanybol autholni egy usernek.

"De pl. ha egyszer megnézed, hogy zsalnak a titkosítatlan jelszavak a hálózaton és milyen remekül sniffelhető, magadtól is átállsz a biztonságos megoldásra :)"

Miért nézel hülyének, teljesen tisztában vagyok vele.

"De egyébként igen, a jelszó ne legyen lementve a gépre és nem kell onnantól parázni"
Sóhaj. Úgy látom, nem érted a probléma lényegét.... :(

Azert a nyugodt alvas tulzas, igy is el lehet lopni a mar felepitett kapcsolatot, meg mint egy par hozzaszolassal feljebb irtak, a file-ok on-the-fly is modosithatoak.

Meghat ha az auth sms a compromised iphone-odra jon... :)

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