( Huncraft | 2015. 12. 06., v – 10:46 )

Svejk (az szokott ennyit feleslegesen beszélni :)). Kicsit szakadj már le a scriptekről pls, mert szerintem pont ez miatt gondolod, hogy védve vagy ; a valóságban külsős scriptek futtatására gyakran szükség sincs, mert maga a már futó program képes elintézni azt amit a támadó akar: Anno ezért is volt a flash közkedvelt támadási felület, mert nagyon sok lehetőséget adott különböző I/O műveletek végrehajtására, vagy akár system call-ra is.
Ha már volt fent a gépeden egy bármilyen böngésző alatt flash (vagy még régebben java) plugin, és azzal meglátogattál egy oldalt, amin egy ilyen kedves kis kód volt, akkor ott már a plugin maga intézte a piszkos munkát a letöltött adattal, nem kellett oda semmiféle script.
/* Különösen veszélyes ez olyan oldalaknál, ahol te magad előzőleg engedélyezted a noscriptnek, hogy hagyja csak futtatni az ilyen jellegű dolgokat (tipikusan youtube, videa, vagy bármi olyan aminek a futtatásához ezen plugin használata elengedhetetlen volt, és az emberek megbíztak benne), mert egy ilyen weboldal megtörése / eltérítése lényegében automatikusan szabad utat enged 1 támadónak, még a biztonság tudatosabb emberek esetén is */
Ezen kívül ne feledd azt se, hogy nem egy gép megtörése lehet a cél - simán a böngésződ által tárolt cookie-k ellopásával már elég nagy károkat lehet tenni azzal ha egy támadó megszemélyesít téged, vagy akár csak simán elkezdi monitorozni a tevékenységed (innen meg már a profil építés is egyszerűbb, és jó ideig valszeg észre se veszed)
Másik eset amikor egy külsőleg elérhető szervizt támadnak, és azt kényszerítik másfajta viselkedésre (szintén valahonnan - tipikusan network, vagy socket - kapott adat alapján, ami végig a memóriában marad). És a vicc ezeknél az, hogy itt se kell külön scriptet hívni, mert a memóriában már egy csomó minden amúgy is elérhető a program számára (tipikusan shared library-k), szóval ha a támadónak mázlija van simán elér egy csomó más funkciót is csak azzal, hogy a library megfelelő memória címét hívja be (ami mögött megfelelő API call csücsül), és annak ad át paraméterben valamit. Persze, ez ellen találták ki a memory randomisation-t, de nem 1 esetben láthattuk, hogy ennek megkerülésére is van lehetőség.

Ezek miatt is mondom, hogy a TPE nem csodaszer.. Igen véd bizonyos típusú támadások ellen, de közel sem az összes ellen (sőt, mi több a legtöbb ellen nem védi). Kb olyan, mint ha azt mondanád, hogy van egy qrva jó zárad (pl Abloy Protect, amit megpickelni még egy tapasztalt pickesnek is nagy kihívás), és teljes biztonsággal ott mered hagyni így a biciklid bárhol, mert ez a zár tutira megvédi, hogy ne lopják el. Közben meg a láncot fél perc alatt csempevágóval át lehet vágni, amihez hozzákötötted fémrúd kihúzható a helyéről (ergo a láncal együtt emelhető el a bicikli), vagy csak simán gyors záras a nyereg/kerék, és "csak" az tűnik el. Vagy ha ezek még mindig védve vannak, akkor simán csak a gumid lyukadhat ki "véletlenül" -> A biztonságot NEM egy tényező fogja neked szavatolni, hanem biztonsági szabályok egymásra rétegződése ahogy azt előzőleg leírtam. Ha bármelyik réteget meg lehet kerülni, akkor a többi is lehet, hogy hatástalanítható.
És azért is pörgök még mindig ezen, mert lehet, hogy nem tekinted a TPE-t csodaszernek, de valóban az jön le, hogy a többi biztonsági intézkedést meg közel sem tanulmányoztad ilyen közelről, és véletlenül se azt nézed, hogy milyen más támadási vektorok vannak ami ellen védekezned kéne (főleg, hogy van egy csomó ami ellen nem is tudsz, mert szimplán nem a te gépedet kell védeni, hanem mondjuk egy cloudban futó szolgáltatást, amiben te az érzékeny adataidat tárolod)

A sudo-s scriptedre rátérve (bár szerintem ez teljesen offtopic): Passz.. Az én esetemben se az volt a hiba amit a bináris csinált, hanem ahogy csinálta. Sőt, a legtöbb esetben pont ezen van a hangsúly, és ezekben a kis részletekben lehet komoly probléma forrásokat találni. Vagy az én saját kedvencem az amikor a kódot az ember jól megírja, de a fordító okosabbnak gondolja magát, és úgy értékeli/optimizálja ki a kódot, hogy a végleges binárisban már nincs bent az a védelem amit te beleírtál.
____________________________________
Az embert 2 éven át arra tanítják hogyan álljon meg a 2 lábán, és hogyan beszéljen... Aztán azt mondják neki: -"Ülj le és kuss legyen!"..