Introducció a la Seguretat de la Informació 6

2015-02-06

En aquest sisè modul del curs d’Introducció a la Seguretat de la Informació, en Federico ens parlarà de criptografia, l’art d’encriptar missatges. Veurem conceptes i elements bàsics, tipus de criptografia i els seus usos. A més, coneixerem els algoritmes que permeten aquesta criptografia; ens aproparem a protocols de xifrat i protecció de dades. I ens parlarà d’esteganografia i la seva part analítica, l’esteganálisis.

Algoritme, clau i protocol

La criptografia és un conjunt de tècniques orientades a l’ocultació o protecció d’informació a ulls de persones no autoritzades. Si bé ja existeix la criptografia des de temps immemoriables, ara s’adapta també en digital. Encriptant les dades es garanteix la seva integritat i confidencialitat.

El criptoanàlisi tracta de l’estudi del xifrat per tal de trencar-lo. Tenim diversos elements en un criptosistema: l’algoritme, la clau i el protocol. L’algoritme és conegut per les dues parts: emisor i receptor. La clau, però, és la part no es coneix en la comunicació i també s’anomena criptovariable perquè és la variable dins el sistema criptogràfic. Finalment, el protocol és la forma en que es posen tots els elements d’acord per tal que es pugui fer aquesta transferència de dades. Pel que diu, i fent una analogia amb els vehicles, el protocol sembla el codi de circulació :)

La criptografia es fa servir per assegurar les comunicacions, garantir els sistemes de firma digital i verificar la integritat de les dades. Respecte a la classificació dels algoritmes, trobem, que segons la clau utilitzada, poden ser:

  • Simètrics (una clau) fan servir la mateixa clau per xifrar i per desxifrar.
  • Asimètrics (dues claus) tenen una clau que emet un codi per xifrar i un per desxifra.
  • Irreversibles (sense clau), que perden informació i no es poden recuperar, és a dir, que no els podem desxifrar.

En una classificació més matemàtica, més pràctica a nivell de les dades que viatgen, es poden classificar els algoritmes en funció de la quantitat d’elements que es xifren a l’hora. Hi ha sistemes que:

  • Treballen per blocs i divideixen el text en fragments iguals per a xifrar-los.
  • També es pot xifrar per fluxe, és a dir, bit a bit. Cada bit viatja xifrat.

També tenim protocols de xifrat com el PGP/GPG (Pretty Good Privacy), SSH (per establir connexions remotes), SSL o la seva evolució TLS (nivell de xifrat en capes superiors 5 o 6), Kerberos és un protocol per les dades que viatgen per la Xarxa i que està basat en algoritmes simètrics, DSS (xifrat per firma digital usat especialment per Estats Units).

Els algoritmes simètrics (d’una sola clau) més coneguts són: DES/3DES, IDEA, Blowfish, RC5, AES (que és l’actual estàndard internacional de xifrat per ser el més fort que hi ha fins al moment). Els asimètrics (de dues claus) més coneguts són el de Diffie Hellman, que bàsicament s’utilitza per a l’intercanvi de claus, el RSA (pels noms dels seus tres creadors), El Gamal (un algoritme més nou), els sistemes de corves elíptiques.

Finalment tenim els algoritmes de Hash, on l’operació es realitza sobre un conjunt de dades de qualsevol mida i se n’obté un resum anomenat digest o hash. El resum tindrà una mida fixa i independent de l’original, estarà associat inequívocament a les dades inicials i és realment difícil trobar dos missatges diferents que tinguin el mateix hash. S’utilitzen per tot allò que tingui a veure amb la identitat: contrasenyes, firmes digitals, integritat i autenticació. Com algoritmes de Hash, trobem el MD5, SHA-1, RIPEMD-160 i HAVAL.

Protecció de dades

Ara atacarem a la ubicació de les dades i al seu ús en termes criptogràfics. Per un cantó tenim dades emmagatzemades a un sistema; de l’altre, hi ha dades que estàn en trànsit, és a dir, que estan viatjant. Les dades emmagatzemats les trobarem als ordinadors personals, als servidos i en unitats extraíbles. Els que viatgen estaran per xarxes internes, per Internet o també en mitjans extraíbles.

En relació a la protecció de dades emmagatzemades, tenim dos escenaris:

  • Discs complets: un disc rígid de xifrat únic. En aquest cas podem fer servir una protecció basada en un sistema d’arxius xifrats (filesystems com NTFS). El xifrat, doncs, es produeix des del propi sistema d’arxius. També tenim sistemes d’arxius esteganogràfics, que tot i tenir a veure amb el xifrat, no és el mateix, com veurem més endavant.
  • Arxius i carpetes: un xifrat particular per a cada arxiu o carpeta. El xifrat pot ser simètric o de control d’accessos locals.

Un software que es fa servir molt tan per xifrar discs complets com arxius o carpetes és Truecrypt, una aplicació que en Federico recomana per ta de protegir les nostres dades, sobretot quan les volem penjar, per exemple, al Núvol sense perdre la confidencialitat de les nostres dades.

En relació a la protecció de les dades en trànsit, es pot donar:

  • Que el canal no sigui segur però que la dada que viatja estigui xifrada, amb el que no corre perill. Si es perdés, no passa res, perquè va xifrat i no és llegible amb el que no es vulnera cap confidencialitat.
  • VPN (Virtual Private Network), una mena de túnel per on viatja la informació, que va totalment xifrada. Qualsevol intrusió no seria efectiva perquè tot va xifrat i està protegit.
  • Els enllaços dedicats, on el mitjà que garanteix la protecció de les dades és que sigui físic i propi i, per tant, es confia la seguretat al mitjà (un servidor propi, per exemple).
  • Transport segur de dades en mitjans extraíbles: en aquest cas, la persona mateixa pot ser la portadora de la informació a través d’un pendrive. Instal·lant un software a algun lloc, per exemple, la persona fa viatjar la informació, amb el que és el canal de les dades en trànsit. En aquest cas, hi ha d’haver protocols o procediments que estableixin com assegurar la informació de l’emissor al receptor.

Un exemple de software per fer viatjar dades per xarxes és un protocol anomenat PGP (de l’anglès, Pretty Good Privacy). Amb ell podem protegir la informació a nivell local i la distribuïda. La idea del PGP és integrar-la als sistemes de correu electrònic per manegar tots els algoritmes.

La cosa és que protegeix les dades a través de xifrat simètric i asimètric, facilita l’autenticació de documents amb firma digital i fins i tot, té un sistema de borrat segur per tal que les dades siguin irrecuperables. El PGP té estàndard propi, el IETF OpenPGP (RFC-4880). I té diferentes versions, la versió lliure és GPG (Gnu Privacy Guard).

Esteganografia

Relacionada, però no sent exactament el mateix, trobem l’esteganografia i la seva part analítica, l’esteganálisis. Es vincula a la criptografia per la manera d’encriptar les dades però no és el mateix. Per definició, l’esteganografia és una tècnica per ocultar informació dins d’una altra informació, com una matrioska, hehe. Imaginem, per exemple, una fotografia que, a dins del seu codi, guarda informació que va més enllà de la pròpia imatge. Podria ser un arxiu de text guardat a dins d’una imatge.

La cosa és que l’efectivitat és molt alta perquè una foto o vídeo, com són arxius pesats, permeten colar un text que no pesa gairebé res. Qualsevol imatge que contemplem i compartim, podria portar missatges esteganografiats dins del seu propi codi. “Cuidadín” amb les fotos de “gatitos”… Cuidadin als clics indiscriminats…Podriem, sense voler-ho, estar fent propaganda terrorista…

Abans d’utilitzar-se en computació digital, l’esteganografia ja s’utilitzava en sistema analògic mitjançant l’escriptura amb tintes invisibles, per exemple. Si bé és possible saber si hi ha informació “de més” en un arxiu, la conya és que aquesta informació podria venir xifrada, amb el que no podriem saber què hi ha…

L’esteganálisis, doncs, seria la tècnica de detecció d’aquests missatges esteganografiats. Aquesta tecnica permet saber si hi ha dades amagades a més de les que es transmeten i determinar si són perilloses, a més d’intentar recuperar-les. La complexitat és molt alta, lògicament.

Conclusions

  • La criptografia permet transformar una dada llegible en un criptograma
  • Per desxifrar una dada s’ha de conèixer la clau i l’algoritme
  • Es poden protegir dades emmagatzemades o en trànsit
  • En funció del seu ús existeixen diversos algoritmes (blocs, fluxe, simètrics, asimètrics, de Hash)
  • A més de la criptografia, tenim altres tècniques d’ocultació de dades com l’esteganografia, que tracta dades dins de dades.

Part 7 Ethical Hacking