jueves, 17 de julio de 2008
Congreso de Seguridad en Cómputo 2008
El "Congreso de Seguridad en Cómputo" 2008 permite reunir a investigadores reconocidos a nivel mundial quienes podrán compartir las nuevas tendencias de la seguridad informática con los distintos asistentes provenientes de una gran variedad de universidades e instituciones de educación superior, organizaciones comerciales del sector público y privado.
Recomendable la asistencia, yo ya aparte mi lugar en dos talleres, claro solo 2 porque no hay tanto dinero, pero algo es algo.
TestDrive con varios Sistemas operativos
Por el momento yo me registre para accesar a sistemas como HP-UX, FreeBSD, Red Hat, SuSe, Debian y Windows Server, todo en distintas arquitecturas de hardware, por lo cuál nos puede ayudar para probar algunas configuraciones así como los distintos comandos en estos sistemas.
Casí no he publicado porque me quede sin SO, mi Arch Linux dijo adios, por lo que ahora instale FreeBSD, del cuál pronto publicare algunas cosas.
Y recuerden si no se animan a instalar algún sistema pues esta es una buena opción para ir aprendiendo.
viernes, 27 de junio de 2008
Libros O'reilly and más libros México
Otra opción es el evento de "salva un libro", el cuál se presenta en el Auditorio Nacional, donde hay remate de libros, buenos precios y libros de todo tipo, comenzo desde este martes y finaliza el domingo 29 de junio, por lo cuál nos queda el sabado y domingo para asistir, espero puedan, yo ire por unas cuantas publicaciones ;) .
viernes, 20 de junio de 2008
Hacking Ético II
viernes, 6 de junio de 2008
Hacking Ético
Estimados, tengo la gran alegria de contarles que en dos semanas sera el lanzamiento del libro que escribi en estos ultimos 19 meses.
La obra se titula "Hacking Etico", lo edito por mi cuenta, ademas tiene un temario muy interesante en 328 paginas de contenido y el prologo es de Cesar Cerrudo.
"(extracto) ...Basandose en su experiencia y conocimiento del
tema, Carlos nos brinda esta obra, que ayudara a adentrarlos en
el mundo del hacking etico presentando los conceptos basicos mas
importantes en forma clara y eficiente, asi como tambien, los
orientara en como profundizar mas sus conocimientos.
Si estas interesado en aprender sobre seguridad informatica y
hacking etico, esta obra sera entonces un excelente punto de
partida en tu viaje a este apasionante mundo. Cesar Cerrudo"
A Carlos lo conozco (por medio de internet) desde hace algún tiempo y creo que este material va a ser excelente, les dejo la liga hacia su sitio para que vean el temario y demás. Yo ya pedi mi copia :)
Saludos y ¡Felicidades! Carlos por tu trabajo.
http://www.hackingetico.com/
Servicio de Hushmail
lunes, 7 de abril de 2008
Neuromante
Esta novela es una de las mejores de ciencia ficción, es impresionante la manera en que maneja el desarrollo de la historia, que por cierto esta muy interesante, bueno en fin espero que la puedan leer y a romper el hielo se ha dicho.
lunes, 24 de marzo de 2008
Seguir el rastro (Parte 1)
Hoy publicaré sobre como seguir el rastro, esto significa utilizar algunos métodos que un posible atacante realizará como primera fase, antes de continuar para realizar un ataque.
¿Para que le sirve a un atacante realizar un seguimiento o porque tomarse la molestia?
Si nos fuéramos a robar el estéreo de un carro sigilosamente (en teoría), es decir, cuando el dueño no este presente, pues debemos de tomarnos algunas medidas antes de actuar, como ver si el estéreo vale la pena, si es uno de casete mejor nada, podríamos comenzar por observar si tiene alarma, o alguna cosa que pueda ser un contratiempo a la hora de actuar, implementando estos métodos, puede haber casos en los que se requiera un buen análisis debido a que el auto contenga buenas medidas de protección, sin embargo también habrá casos en los que el conductor hasta deje la puerta sin seguro.
En el ámbito informático se aplica la misma metodología, un atacante buscara primero toda la información posible, incluso creara perfiles para ver cuál es el sistema más sencillo o más difícil de atacar.
Dentro de esta fase no existen pasos a seguir (seguimiento específico), ya que hay muchas maneras de obtener información comenzando por la Ingeniería Social, hasta un análisis completo del sitio, por lo tanto lo que muestre aquí será una pequeña parte de todo lo que involucra (análisis de sucursales, teléfonos de los contactos, direcciones físicas, correos electrónicos, horarios de trabajo, nombres de dominio, bloques de red, etc).
Ahora viene la parte interesante ¿Como obtienen toda esa información?
Voy a mostrar algunos ejemplos, un poco más enfocados hacia la utilización de software.
1.- Como primer lugar de búsqueda tomaremos en cuenta el sitio web de la victima si tiene alguno, ahí podremos buscar bastante información acerca de las sucursales que tiene, las direcciones y algunos POC (point of contact).
Para realizar esto podemos utilizar la herramienta wget de gnu, para bajar el sitio completo y realizar un mejor análisis, podremos revisar los comentarios en el código de este para ver su estructura, etc.
Aquí le dejo un ejemplo de utilización de wget para este blog.
rooter@rooterlap:~/prueba$ wget -rv rooterkir.blogspot.com
--22:58:43-- http://rooterkir.blogspot.com/2008/02/ligas-grep-y-strings.html?widgetType=BlogArchive&widgetId=BlogArchive1&action=toggle&dir=open&toggle=MONTHLY-1201852800000&toggleopen=MONTHLY-1204358400000
=> `rooterkir.blogspot.com/2008/02/ligas-grep-y-strings.html?widgetType=BlogArchive&widgetId=BlogArchive1&action=toggle&dir=open&toggle=MONTHLY-1201852800000&toggleopen=MONTHLY-1204358400000'
Connecting to rooterkir.blogspot.com|72.14.207.191|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
[ <=> ] 47,895 25.68K/s
22:58:45 (25.57 KB/s) - `rooterkir.blogspot.com/2008/02/ligas-grep-y-strings.html?widgetType=BlogArchive&widgetId=BlogArchive1&action=toggle&dir=open&toggle=MONTHLY-1201852800000&toggleopen=MONTHLY-1204358400000' saved [47895]...................
Dentro de todo esto podemos también incluir una búsqueda en la base de datos EDGAR en www.sec.gov que dentro de sus palabras lo que realizan ellos es: “La función principal de la U.S. Securities and Exchange Commission (SEC) es proteger a los inversionistas y mantener la integridad de los mercados de valores.” Por lo cuál hay muchas empresas registradas ahí como un ejemplo les dejo esta imagen.
A la hora de utilizar un buscador necesitamos encontrar alguna herramienta que nos permita buscar, dentro de los sitios web (google, ask, yahoo) o utilizar www.dogpile.com que nos muestra los resultados de varios servicios de búsqueda. Todo esto para evitar encontrarnos un día con una restricción como esta:
En los sistemas Windows también disponemos de una herramienta, que a mi parecer es muy buena se llama Sam Spade (la cuál también dispone también de una interfaz web) por el momento solo utilizaremos una opción (de las muchas que trae) para obtener todos los link externos en un sitio Web, para esto nos vamos al menú de tools y nos vamos a la pestaña de Crawl website después de esto seleccionamos el checkbox de "Search website for:" y seleccionamos "link to other servers", a partir de esto obtendremos una respuesta como la que se muestra en la imagen
Tomando en cuenta algunos de los peligros que pueden existir al tener mucha información en nuestro sitio, es recomendable leer el RFC 2196, el cuál trata sobre el desarrollo de procedimientos y políticas de seguridad para los sitios conectados a Internet.
Algo importante para recordar es no brindar más información de la necesaria en nuestros sitios y en la mayoría de tramites que se realicen como dominios, alojamiento, comentarios en el código, etc.
domingo, 2 de marzo de 2008
spoofing MAC address
En el ejemplo mostrado mi interfaz de red será eth0, ustedes deberan colocar la suya.
Primer vamos a detener nuestra interfaz ejecutando esto como root
1.- ifconfig eth0 down
Despues vamos a asignar la dirección, ether es el tipo de protocolo (ethernet)
2.- ifconfig eth0 hw ether 45:67:89:AB:CD:EF
Por ultimo se inicia de nuevo la interfaz y listo tendremos ahora otra dirección MAC.
3.- ifconfig eth0 up
sábado, 1 de marzo de 2008
Umask
rooter@rooterlap:~$ umaskel resultado nos indica los permisos preestablecidos con los que se crearan los ficheros, esto lo podemos ver más facilmente si tomamos los permisos predeterminados (archivos 666 y directorios 777) y les restamos el valor de la umask
0022
archivos
666
-022
------
644
rooter@rooterlap:~/prueba$ touch a.txt
rooter@rooterlap:~/prueba$ ls -l
total 0
-rw-r--r-- 1 rooter users 0 2008-03-01 23:25 a.txt
directorios
777
-022
-------
755
rooter@rooterlap:~$ mkdir prueba
rooter@rooterlap:~$ ls -l
total 0
drwxr-xr-x 2 rooter users 4096 2008-03-01 23:25 prueba/
La verdad esta no es la operación mediante la que se obtienen los permisos, la forma en que realmente se realiza es permisos_predeterminados&~umask.
Ejemplo:
Aqui tenemos la buena calculadora, digo no sería difícil sacarlo a mano, pero nos ahorramos una hoja.El resultado:

Bueno espero les sirva de algo y comprendan un poco más acerca de los permisos.
USB y scroll del mouse en Slackware
Una de ellas es que por ejemplo en mi laptop el botón para hacer el scroll al comenzar no funciona, pero el problema es mas fácil de resolver de lo que se podría pensar solo hay que cambiar el protocolo en el archivo de configuración de Xorg (/etc/X11/xorg.conf)
rooter@rooterlap:~$ cat /etc/X11/xorg.conf | grep PS/2Solo tenemos que cambiar el protocolo de PS/2 a IMPS/2 reiniciamos el servidor X y con esto ya tendremos funcionando el scroll en Slackware.
# Auto BusMouse GlidePoint GlidePointPS/2 IntelliMouse IMPS/2
# Logitech Microsoft MMHitTab MMSeries Mouseman MouseManPlusPS/2
# MouseSystems NetMousePS/2 NetScrollPS/2 OSMouse PS/2 SysMouse
# ThinkingMouse ThinkingMousePS/2 Xqueue
# Option "Protocol" "PS/2"
Option "Protocol" "IMPS/2"
Adicionalmente para que al introducir una memoria USB la reconozca y nos abra la carpeta (al menos en KDE) lo único que tenemos que realizar es introducir la siguiente linea en el archivo /etc/fstab
/dev/sda1 /mnt/memory auto users,umask=0000 0 0sustituyendo por sus respectivos valores (recuerden dejar una nueva linea al final del archivo, es decir, un enter).
Diskless Ubuntu
domingo, 10 de febrero de 2008
Ligas, grep y strings
Bueno comencemos con la liga, para crear una liga solo necesitamos ejecutar el siguiente comando:
ln -s archivo_fuente nombre de liga, ejemplo:
rooter@rooterlap:~/prueba$ touch b.txt
rooter@rooterlap:~/prueba$ ln -s b.txt c.txt
Con esto hemos creado una liga llamada c.txt que apunta hacia b.txt
rooter@rooterlap:~/prueba$ ls -l
total 20
-rw-r--r-- 1 rooter users 101 2008-01-05 23:33 Hola.java~
-rw-r--r-- 1 rooter users 0 2008-02-10 23:14 a.txt
-rw-r--r-- 1 rooter users 0 2008-02-10 23:14 b.txt
-rw-r--r-- 1 root root 0 2007-12-25 14:14 bit.txt
lrwxrwxrwx 1 rooter users 5 2008-02-10 23:15 c.txt -> b.txt
-rw-r--r-- 1 root root 413 2008-01-06 00:55 hola.class
-rw-r--r-- 1 rooter users 115 2008-01-06 00:55 hola.java
-rw-r--r-- 1 root root 133 2008-01-06 00:31 hola.java~
drwxr-xr-x 2 rooter users 4096 2007-12-17 15:49 homie/
-rw-r--r-- 1 rooter users 0 2007-12-25 14:40 php.txt
-rw-r--r-- 1 root root 0 2007-12-25 14:15 shellcode.txt
Ahora busquemos con grep:
Si tenemos muchos archivos y queremos encontrar alguna cadena, para saber en que archivo está utilicen el comando grep con el cúal es rápido y eficiente.
Por ejemplo en mi caso lo utilizaremos para ver en que archivos de los listados anteriormente contiene la cadena main.
rooter@rooterlap:~/prueba$ grep -H main ./*
./Hola.java~: public static void main(String[] args) {
Binary file ./hola.class matches
./hola.java: public static void main(String [] args) {
./hola.java~: public static void main(String [] args) {
Como se puede observar nos menciona en que archivo encuentra la cadena, lo cúal es muy útil para ya no buscar archivo por archivo.
Por ultimo finalizaremos con el comando strings el cúal nos muestra las cadenas o mensajes imprimibles en los archivos binarios.
Aquí en mi ejemplo, les muestro el resultado de aplicarlo a una aplicación de java (hola.class)
rooter@rooterlap:~/prueba$ strings hola.class
Êþº¾
Code
LineNumberTable
main
([Ljava/lang/String;)V
SourceFile
hola.java
Hello world
hola
java/lang/Object
java/lang/System
Ljava/io/PrintStream;
java/io/PrintStream
println
(Ljava/lang/String;)V
Esto para que nos sirve, podemos analizar distintos binarios, un ejemplo es en caso de los virus se puede buscar las cadenas imprimibles sin ni siquiera ejecutarlo.
Creo que es todo por el momento: Solo descubriendo la seguridad obtendremos la libertad tan anhelada.