14 de gener 2007

Seguretat a Internet (1)

En molts llocs ens demanen el nostre nom d'usuari i la nostra contrasenya, però és segur escriure la contrasenya a qualsevol lloc? totes les pàgines web que ens demanen una contrasenya disposen de la seguretat necessària perquè ningú ens pugui capturar la nostra contrasenya?


Com que abans hem parlat de PayPal, continuarem seguint aquest portal: quan nosaltres al nostre navegador hi teclegem: www.paypal.com i apretem enter, veiem que un cop carregada la pàgina, l'adreça de la pàgina ha canviat per https://www.paypal.com i a més, si tenim el navegador Firefox, tindrem un fons de color groc:


https, és el protocol: hypertext Transfer protocol secure, vol dir que és un protocol segur per a transferir text, això vol dir que la informació (el nom d'usuari i la contrasenya) viatjaran encriptats (codificats) per internet i que qualsevol que aconsegueixi obtenir els paquets que nosaltres enviem no podrà desxifrar-ho i per tant no podrà obtenir la nostra contrasenya. [1]

Però tot i disposar del protocol https, hi ha pàgines que no l'utilitzen, ja sigui perquè no ho saben implementar o perquè les dades a protegir són tant poc rellevants que ho deixen tot al descobert, així doncs ens podem trobar amb pàgines com miarroba que ens demanen nom s'usuari i contrasenya, però que no disposen de cap protocol de seguretat:


Així en aquest tipus de pàgines, la contrasenya s'envia en mode text normal i corrent i si tenim algú mal intencionat capturant i inspeccionant els nostres paquets que enviem [2] li serà molt fàcil descobrir el nostre nom d'usuari i la nostra contrasenya cosa que ens pot portar a situacions catastròfiques. Per exemple si obtenen la nostra contrasenya del banc, segur que als 15 minuts ja no tenim ni un sol euro al nostre compte :P.

Així, el recomanable és tenir dues contrasenyes totalment diferents, una per les comptes que disposin d'https i l'altre per la que tant sols disposn d'http. Així encara que ens capturin la nostra contrasenya de protocols http, això tant sols ens afectarà en les comptes sense xifrar i el nostre crack no podrà accedir a les pàgines encriptades. [Un mètode de seguretat molt més elevat seria tenir per a cada compte una contrasenya diferent, però és un pal memoritzar 10 contrasenyes totalment diferents entre si].

[1] Per codificar els missatges fan servir algorismes que modifiquen totalment el missatge d'entrada, així per exemple, una encriptació senzilla seria simplement de sumar un número a cada lletra, així, si el número era "1", la lletra "a" seria codificada per la lletra "b". Però clar, la cosa es pot complicar si per exemple, cada lletra la codifico en 4 lletres i faig que els dos primers bits de cada lletra em codifiquin la lletra desitjada. Òbviament per descobrir aquesta codificació un tardaria lo seu si no sap quin codi s'ha fet servir, a més, els exemples que he donat doncs són els típics exemples que implementem els novatos, complicar la cosa no costa gens :P


[2] (fàcil si tenim algun troià o si som un peix gros en algun sector [els crackers no ataquen als dèbils, doncs no en poden treure cap mena de profit ^^])

6 comentaris:

Spiegel ha dit...

merda se ma penjat el anterior misatge...

deia q molt bon post neioo...

deia mes coses pero no m'enrecordu :P

Neioo ha dit...

Ara entenc els missatges d'agraïments que hi ha en tots els fòrums i és que realment, són reconfortants, veus que no has gastat 1/2 hora (o més) fent captures de pantalla, retallant imatges i revisant el text per res ^^

A veure si t'enrecordes de la resta del missatge!!

Unknown ha dit...

Pregunta d'un no-friki: el protocol https és segur en connexions WEP wireless no encriptades?

En altres paraules: si entro a la pàgina del meu banc, que té https, des d'una connexió wireless del veí que no ha sabut o no ha volgut posar-hi password, em puc trobar que m'afaitin tots els diners del compte si algú volta per allà capturant les dades que l'antena del meu ordinador va llançant per totes bandes?

Endavant amb el bloc, us aniré seguint!

Txepph

Neioo ha dit...

L'únic inconvenient que té de fer servir una xarxa que no és la teva és que no pots controlar de cap manera qui es connecta i qui no. I en una xarxa qualsevol que hi estigui connectat pot capturar molt facilment els paquets que passen per la xarxa.

Però com que els paquets que surten del teu ordinador ja surten encriptats (és el que fa https), doncs encara que els capturi poca cosa en podrà fer si no coneix la codificació.

A més, si el veí no ha posat password és perquè no té ni idea de configurar un router, per tant, no tindrà ni idea de capturar els paquets d'una xarxa. [clar, que potser és un hacker/cracker que vol espiar als seus veïns... mmm... O potser tens un altre veí que, aprofitant aquesta connexió del veí ignorant, es passa tardes senceres capturant paquets dels veïns :P (però ja et dic, si estant encriptats, poca cosa podrà fer, a no ser que...[1])].

[1] sigui un mega ultra màster de l'univers capaç de resoldre algorismes d'ordre exponencial en temps lineal, cosa que no s'ha demostrat que sigui impossible, però ningú ha trobat la manera de fer-ho. (res frikades, que ara mateix em costarien explicar perquè estic molt cansat i demà tinc examen i no pas d'això :P).

Unknown ha dit...

Segueixo amb els meus dubtes existencials: si algú es posa a tafanejar una connexió https que ja fa una estona que funciona, no deu tenir manera de saber com s'ha codificat. Però què passa si pot registrar totes les dades que el meu navegador envia i rep, des de l'inici d'establir la connexió https? Perquè entenc que el navegador i el servidor al qual es connecta han de pactar alguna clau.

Més concretament: hi ha alguna part de la clau o del mètode de codificació que el meu navegador es guarda i mai no envia, de manera que mai arriba a circular per la xarxa?

Sort amb els exàmens!

Txepph

Neioo ha dit...

Estimat Txepph,

Com sempre anar cargolant el cargol més del compte...

En fi, realment no sé com explicar-ho perquè no sembli que parlo una altre llengua (efectivament parlo altres llengües).

En fi, a falta de que faci un seguit de posts més descrivint les bases d'Internet. Diré que les versions actuals d'https són capaces de donar suficient seguretat com per esquivar els atacs del "man in the middle" (dit així "l'home del mig", que és qui captura tots els paquets en una comunicació a través de xarxa o internet), però l'altre tema està en que hi ha servidors que no disposen de les últimes versions d'https i per tant, t'has de fotre.

Tot això d'https no és altre cosa que els certificats que de tant en tant ens surten en algunes webs:
"el servidor a que estàs accedint té un certificat caducat" o "no es pot assegurar que el certificat del servidor que estàs accedint sigui realment el que has rebut" vols continuar amb aquest certificat?
1- Només en aquesta sessió
2- Confia sempre amb aquest servidor
3- cancela la connexió
4- Veure Certificat

O alguna cosa així (a veure certificat veus quina versió fan servir), també i ja per acabar, dir que pots tenir una connexió https a la última versió i tu a casa tenir el firewall que més et moli (configurat/programat per tu mateix si vols) i tot el que vulguis, però de res serveix si al cap i a la fi el servidor no té la seguretat que ha de tenir, cosa que els hi va passar amb els senyor de la SGAE, que van veure com les dades de TOTS els seus clients estaven a Internet i què van fer?, doncs demanar als estudiants d'informàtica que els hi configuressin les connexions de totes les màquines, doncs encara anaven amb MS-DOS!!!

Sé d'algun fiber que fins i tot es va pensar la proposta, espero que no hagi caigut al costat obscur.

PS: Els bancs i Caixes tenen les seves dades en MainFrames, (ordinadors bastíssims i caríssims) que fan servir sistemes operatius propis i privats i a sobre donada la importància de les dades que tenen (un Mainframe ot tranquil·lament tenir les dades del Banco Santander, La Caixa i del BBVA, les de la Vanguardia i les del propi govern o Genaralitat tot junt) disposen d'un personal dedicat les 24 hores només vigilant les màquines (i si passa res, t'asseguro que sonen més d'una desena de mòvils al primer nanosegon), que normalment es passen rascant-se la panxa perquè molt poques persones saben com funcionen aquests cacharros i per tant ni cristo es posa a atacar un mauinorro com aquest on tot accés/consulta queda registrat/da. Algú va dir que si es trobava un error crític en tots els ordinadors del món la notícia sortiria als diaris, però que si fallava un sol MainFrame no hi hauria diaris ;)

I ara sí, per acabar xDDDD, dir que això dels Mainframes no m'agrada, prefereixo tenir 20.000 ordinadors petits connectats entre ells i distribuint-se la feina, com fan els de Google que no pas tenir un sol maquinorro.

PS: A quedat llarg, però crec que ha quedat bé a nivell de divulgació xDD