DEFINITIE (neoficiala): Ce este un backdoor? Pentru programator, este “usa din spate a casei tale, usa necunoscuta tie, unde doar EL are cheile” EL e arhitectul casei, dar unul care ascunde planurile complete! Prin aceasta usa iti poate intra in ganduri, proiecte, comunicare, cont bancar, fisa medicala dar si.. accesa armele tale strategice. Cu alte cuvinte: TE STAPANESTE!
Pentru a fi siguri ca nimic nu e hacuit pe un computer, trebuie sa avem in vedere asa-numitul lant de incredere (chain-of-trust); adica TOATE elementele, de la hardware pana la ultimul soft sa fie VERIFICABIL de incredere . Simpla intuitie spune ca asa ceva e imposibil; de la milioanele de transistoare pana la aprox. un milion linii de cod pentru un sistem mediu, NIMENI nu poate si nu va putea sti daca si unde se ascunde un backdoor. In fond unul genial poate fi facut cu doar 3-4 linii de cod! Gaseste acul in carul cu fan!!! Cine naiba are timp de asa ceva?
Dat fiind ca fiecare poate insera cateva linii in schema logica sau in soft, deja un “razboi criptografic TOTAL” se intrevede. Sa luam pe rand elementele acestui …chain-of-trust (sic) :
HARDWARE, cu aspectul principal; microprocesoarele. Exista la orice producator politici de verificare, iar faptul ca multe linii sunt proiectate international poate aduce eventual o liniste; de exemplu Intel activeaza in SUA, EU, Brazilia, Israel, India. Tot astfel ARM are linii de proiectare in in cam aceleasi tari, adaugand insa (la greu) China. Sa vedem insa ce este notat pe net:
Chinese-Built Microprocessor Includes Programmable Backdoor
New Intel Chips Contain Back-Door Processor
AMD and Intel in bed with NSA? Are backdoors built into processors
NSA could have planted Permanent Backdoors in Intel And AMD …
Activist Post: Secret backdoors in microprocessors discovered
China-made US military chip has security backdoor
New Intel Chips Contain Back-Door Processor
Intai o nota; avantajul celui ce a introdus hardware backdoors, este ca poate spiona nu numai computerul ci si acele software backdoors. Mins-punct pentru Rusia!
Iar acestea bazate pe soft, pot fi infinit de variate; cele mai cunoscute noua sunt acele malware/troiene combatute (sau nu) de antivirusi . Insa rafinamentul trece cu muult de nivelul “malware”, care e pentru… amatori . Aceste backdoor-uri au cheie dubla (publica si privata) si nu pot fi detectate prin nici un mijloc, fiind descifrabile cu cheia privata doar de cel ce le-a conceput. Pot transmite informatiile doar conectate la net.
1. COMPILERE: Primele ar fi backdoors generate de compilere. Ce sunt acestea? Sa facem o comparatie: Daca un sculptor face o statuie de bronz, inati o modeleaza in ceara. Se face o forma si in aceasta se toarna bronzul. Lucrarea initiala nu e aceiasi cu ceea ce primeste consumatorul, ci e “imaginea ei”. Ei cam asta fac “compilere”: “toarna” proiectul de soft in alt “material binar” > limbaj-masina sau “executabile” (adica: *.exe, *.jar, etc). Un compiler poate infecta programele inclusiv sistemele de operare. Si fiind putine compilere pe lumea asta, pot infecta milioane de softuri si sisteme de operare, chiar si opensource; de exemplu Linux poate fi compilat eficient doar cu GCC sau CLANG. Doar 2 compilere care la randul lor au fost compilate.. cu ce? 99,9% din cei ce compileaza nu isi pun astfel de probleme. Compilerele (si creatorii lor), pot pune controlul pe guverne, agentii de spionaj, sisteme bancare, net, sisteme militare, etc. Acest tipde backdoor este cunoscut inca din ..1984 (..”1984“, hehe, ce coincidenta! SAU… NU E O COINCIDENTA?) Se numeste: The Ken Thompson Hack. Ciudat; tot in 1984 au aparut primele PC-uri de masa…
2. PRNG: Ce inseamna prng? Orice program existent pe net sau pe PC va folosi candva un cifru. Iar cele mai multe sunt dependabile de un asa-numit pseudo-random-nr-generator. Adica pe romaneste; computerul nu va putea niciodata sa creeze ceva aleatoriu, adica random-numbers, deci se fac algoritmi prin care se genereaza (complicat, dar cu formule totusi) numere aparent aleatorii. Acestea stau LA BAZA celor mai multe coduri secrete ca RSA, AES etc. Daca PRNG-ul nu e destul de random, si contine o anume formula secreta, toate codurile respective pot fi descifrate!!! Iar asta inseamna intregul NET, de la HTTPS si SSL pana la coduri teoretic incracabile de tipul Rijndael/AES cu cheie simetrica. In fapt asta s-a intamplat deja! NSA a introdus un astfel de PRNG falsificat inDual_EC_DRBG, standard folosit in toata lumea!!! Pentru asta, firma RSA, creatorul incriptarii standard, a cerut 10 mil$. Destul de putin… dat fiind ca PRNG-ul standardizat, e folosit in MAI TOATE CODURILE (java & C/C++ au ca default: RSA BSAFE).
3. SISTEME DE OPERARE: Infectarea sistemelor de operare de la creatie: stim datorita Wikileaks si a documentelor “Snowden’ ca Windows are (probabil..
