Rincón Informático

Un rincon para hablar sobre GNU/Linux, seguridad informatica, y mas!!

Archive for julio, 2009

Feliz Dia A los SysAdmin.

Posted by SpiderM@N On julio - 31 - 2009

PI pie

Si, a nosotros se nos celebra día. Y digo NOSOTROS por que me considero un SysAdmin, o bueno un remedo de SysAdmin.

Cada año el último viernes del mes de Julio se celebra el “System Administrator Appreciation Day” que traducido a un “decente” Español es algo como: El día de agradecimiento al Administrador de sistemas”, pero…¿Quien se puede considerar un SysAdmin?, para ustedes y solo por el día de hoy extraigo y traduzco desde la página oficial del día del Admin. de Sistemas:

  • Un SysAdmin, desempaca el servidor para una página web desde su caja, instala el sistema operativo, lo actualiza por seguridad. Se asegura de que la electricidad y el Aire acondicionado estén funcionando en el datacenter, monitorea el desempeño del servidor, configura el software, hace copias de seguridad y todo para que esta página (también Rincón Informático) se vea como se ve.
  • Un SysAdmin instala Routers, conecta los cables, modela las redes, configura el firewall o los, en caso de ser necesario, y vigila y guía CADA el tráfico de cada dispositivo de la red que corre por cable de cobre, fibra óptica o el mismo aire que el internet le entrega a tu computador. TODO para asegurarse de que esta página web (también Rincón Informático) sea visitado por ti
  • Un Administrador de Sistemas, se preocupa por el SPAM, virus, malware, pero también sobre los “picos” eléctricos, incendios e inundaciones.
  • Cuando el servidor de correos electrónicos se daña o se “cae” a eso de las 2 de la mañana un Domingo, su SysAdmin es alertado, el se despierta y se va a trabajar.
  • Un SysAdmin, es un PROFESIONAL que planea, se preocupa, arregla, configura, se esfuerza, aboga, protege y crea una BUENA red de computadores, para procesas sus datos y ayudar a hacer su trabajo y así dar un potencial computacional bastante cercado a la realidad

Si lees esto, POR FAVOR agradécele a tu SysAdmin, puedes ser con un SMS, un Email o un mensaje instantáneo, el o ella te lo agradecerá.

SCP: Transfiriendo un archivo por medio de SSH

Posted by Epsilon On julio - 30 - 2009

Antes de empezar con este nuevo articulo, queria pedir disculpas a todos nuestros fieles lectores, ya que por diferentes motivos (Trabajo), no he vuelto a publicar  articulos con la regularidad que lo venia haciendo. Espero que esto no vuela a ocurrir,  y que pueda organizar mi tiempo de tal manera que haya espacio para todo.

Ahora si, entrando en materia, alguna vez todos hemos tenido la necesidad de transmitir un archivo de grandes proporciones (en peso) a un amigo o  simplemente a un conocido o desconocido xD, las opciones son varias:

  • Messenger: Si!! Creanlo, he visto personas que transfieren archivos de  mas de 700 Mb, por medio del cliente de mensajeria desarrollado por Microsoft, ¿ventajas? creo que ninguna, se que todos hemos probado el deficiente proceso que hace messenger para tranferir archivos, muy lento y suele caerse a menudo.
  • Servidores: Algunas personas utilizan servidores como megaupload, rapidshare o  4shared, es un proceso mas demorado ya que hay que subir el archivo y que la otra persona lo descargue, ¿Ventajas? Quizas la mas importante es que la informacion despues de qu este en el servidor estara disponible para muchas personas y por un tiempo determinado.
  • Servidor FTP: Otras personas un poco mas tecnicas, configuran un servidor FTP, para transferir los archivos necesarios ¿Ventajas?  un servidor ftp facilita mucho el proceso siempre y cuando sean varios archivos los que hayan que transmitir, ya que maneja listas o colas de proceso. Sin embargo, el unico problema de un servidor FTP es que  no cualquier persona sabe configurarlo con sus debidos permisos y caracteristicas, es decir, es muy facil para cualquier informatico, pero  para otras personas les puede parecer muy complicado.
  • SCP: Otra forma, mucho mas tecnica que la anterior y que explicare mas adelante, se trata de SCP, Este comando nos permite transmitir  un archivo conectandonos a un servidor SSH, obviamente el individuo que recibira el articulo debe tener un servidor SSH, SI!! yo se que es algo mas complicado que un servidor ftp, pero esta opcion tiene algunas ventajas como seguridad y disponibilidad.y es muy util para aquellos que manejan servidores diariamente.

¿Pero que es SCP?

Que mejor que la wiki para responder esta pregunta:

Secure Copy o SCP es un medio de transferencia segura de archivos informáticos entre un host local y otro remoto o entre dos hosts remotos, usando el protocolo Secure Shell (SSH).

El término SCP puede referir a dos conceptos relacionados, el protocolo SCP o el programa SCP.

El protocolo SCP es básicamente idéntico al protocolo rcp de BSD. A diferencia de rcp, los datos son cifrados durante su transferencia, para evitar que potenciales packet sniffers extraigan información útil de los paquetes de datos. Sin embargo, el protocolo mismo no provee autentificación y seguridad; sino que espera que el protocolo subyacente, SSH, lo asegure.

El programa SCP es un cliente que implementa el protocolo SCP, es decir, es un programa que realiza copia segura.

El cliente SCP más ampliamente usado es el programa scp del Intérprete de comandos, que es incorporado en la mayoría de las implementaciones de SSH. El programa scp es el analogo seguro del comando rcp. El programa scp debe formar parte de todos los servidores SSH que quieran proveer el servicio SCP, así como scp funciona como servidor SCP también.

Ya que sabemos la teoria vamos a la practica, la forma de uso, es relativamente sencilla:

scp Archivo_a_transmitir usuario@ip_serverssh:ruta/archivodestino

Donde:

Archivo: es  el que se va a transmitir

Usuario: Es el usuario para conectarse al server SSH

ip_serverssh: Direccion ip del server SSH

ruta: Es la ruta donde se va a guardar este archivo en el otro equipo

Hay que tener cuidado con los : son obligatorios y siempre deben ir,  y que la ruta a donde mandan ese archivo si existe en el PC que va a recibir el archivo.

Este metodo es muy util, cuando diariamente tenemos qu eluchar con servidores, backups,  y el transporte de un lugar a otro  de grandes archivos, ya que nos brinda, seguridad, y  confiabilidad.

Descargar Parche SAP para SAPGUI Windows 7.10

Posted by SpiderM@N On julio - 28 - 2009

SAPGUI

SAP AG hace poco acabo de actualizar su versión 7.10 del SAPGUI para Windows, al mismo tiempo actualizo también las versiones gratis de este software para GNU/Linux, las cuales como ya hemos comentado en Rincón Informático están basadas en JAVA.

Sin Mucho mas que decir al respecto dejo los respectivos enlaces de descarga.

Parche 14 para SAPGUI 7.10 for Windows

SAPGUI for Java 7.10R9

NOTA de los autores: Nadie del RinconInformatico.NET a subido estos parches a la Internet, solo hemos encontrado el link de descarga. Por lo mismo aqui no se da soporte ni se reportan enlaces rotos.

Descargar GRATIS CobIT 4.1 en Español

Posted by SpiderM@N On julio - 27 - 2009

Cobit

Para TODAS las personas interesadas, la gente de ISACA tiene a nuestra disposición la descarga gratis del documento CobIT 4.1 en Español.

¿No sabes que es CobIT?

CobIT significa “Control Objectives for Information and Related Technology”, traduciendo a nuestro hermoso idioma queda algo como “Objetivos de Control para la información y tecnologías relacionadas”. No pienso explicar de que se trata, puesto que en Internet hay mucha información al respecto, pero si puedo decir cual es la idea de CobIT:
Se busca estandarizar los procesos de IT con respecto a las buenas practicas de seguridad de estos departamentos los cuales deben ser seguidos en las organizaciones.

Sin mas que decir queda el enlace de descarga del material.

CobIT 4.1 en Español.

Fuente

OpenVpn (acceda a su red local de forma confiable)

Posted by mirphak On julio - 25 - 2009

openvpn OpenVpn (acceda a su red local de forma confiable)

Primero, que es una VPN?, en este articulo-receta no se va a profundizar en lo que es una red privada virtual, mas bien en como montar OpenVpn , pero veamos segun la enciclopedia libre que es una vpn:

La Red Privada Virtual, en inglés Virtual Private Network (VPN), es una tecnología de red que permite una extensión de la red local sobre una red pública o no controlada, como por ejemplo Internet.

Ejemplos comunes son, la posibilidad de conectar dos o más sucursales de una empresa utilizando como vínculo Internet, permitir a los miembros del equipo de soporte técnico la conexión desde su casa al centro de cómputo, o que un usuario pueda acceder a su equipo doméstico desde un sitio remoto, como por ejemplo un hotel. Todo ello utilizando la infraestructura de Internet.

1) Instalar OpenVpn

Nos podemos bajar el .rpm o .deb de la pagina oficial o  utilizar nuestro gestor de paquetes de preferencia y que lo baje de los repositorios de nuestra distribucion:

apt-get install openvpn  |  yum install openvpn

2) Configuracion

- Necesitamos  crear las llaves y certificados para el  servidor  y  los clientes,  OpenVpn trae algunos scripts que nos permiten realizar esta tarea:

cp -a /usr/share/doc/openvpn-2*/easy-rsa     /etc/openvpn

cd /etc/openvpn/easy-rsa

- Generamos el certificado CA

.   vars = Se inician las variables para trabajar con los scripts
sh clean-all = borramos archivos viejos, es como un make clean, para el directorio
sh build-ca = este comando nos permite general el certificado, es recomendado llenar todos los campos que nos pide

- Generacion del certificado y de la clave de encriptacion para el servidor

sh build-key-server  servidor

Al ejecutar el script nos pedira tambien algunos datos que no debemos obviar,  el campo Common Name no debe ser igual al que se coloco antes (con build-ca).

En /etc/openvpn/easy-rsa/keys/ se debieron haber creado los archivos  servidor.crt y servidor.key

Listos los archivos del servidor.

- Generacion del certificado y de la clave de encriptacion para el/los clientes

sh build-key cliente1

llenamos los datos que nos pide y nos generara dos archivos cliente1.crt y cliente1.key. El procedimiento es igual para n clientes teniendo en cuenta que el nombre debe ser diferente  (cliente1, cliente2….).

- Por ultimo Generamos el parametro de Diffie-Hellman:

sh build-dh

3) Pasando las configuraciones a l servidor:

Al servidor vpn debemos pasar los archivos :

cp /etc/openvpn/easy-rsa/keys/  ca.crt   ca.key  server.key  server.crt   dh1024.dh  /etc/openvpn

-Creando el servidor.conf
en
/usr/share/doc/openvpn-2….  podemos encontrar plantillas para  el archivo de configuracion del servidor y del cliente.

el archivo servidor.conf debe ir en /etc/openvpn  y debe verse algo asi:

port 1194
proto udp
dev tun
ca ca.crt
cert servidor.crt
key servidor.key
dh dh1024.pem
#Direcciones que se asignaran a los
#clientes, el server es .1
server 10.8.0.0 255.255.255.0

ifconfig-pool-persist ipp.

keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 4

ya podemos iniciar el servidor  /etc/init.d/openvpn start

3) Pasando las configuraciones al cliente:

Al cliente vpn debemos pasar los archivos :

ca.crt   cliente1.crt  cliente1.key

el archivo cliente1.conf deberia quedar asi:

client
dev tun
proto udp
remote 201.219.41.38 1194 # ip publica del servidor vpn
resolv-retry infinite
nobind
#Las dos siguientes opciones no van en windows
user nobody
group nobody

persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
comp-lzo
verb 4

Si el cliente tiene como sistema operativo Gnu/linux, solo es pasar estos archivos al directorio /etc/openvpn e iniciar el servicio. Si el sistema operativo es Windows se deben pasar despues de haber instalado el cliente vpn \Program Files\OpenVPN\config .

Esta es una solucion  bastante eficiente para ingresar de una manera “segura” a nuestra red local, la he probado en  muchos casos y ha corrido bastante bien.

por ultimo agradecer a  http://www.ecualug.org por dar luz de esta configuracion ,  Estare atento a cualquier duda.

¿Que es una shell? y algunos tipos

Posted by Epsilon On julio - 23 - 2009

Estoy seguro de que todos los lectores han esuchado alguna vez la palabra shell, tal vez unos mas que otros, tal vez en alguna pelicula (Ghost in the shell) o en una marca de hidrocarburos, o por el contrario muchos de ustedes conozcan este termino y lo manejen diariamente, esta entrada es para todos aquellos que no saben lo que es una shell y  mucho menos han trabajado con ella, aunque se que son pocos, estoy seguro que mas de uno me lo agradecera.

Empecemos con la definicion que nos brinda la wiki:

Un intérprete de órdenes, intérprete de línea de órdenes, intérprete de comandos, terminal, consola, shell o su acrónimo en inglés CLI (por Command Line Interface) es un programa informático que actúa como interfaz de usuario para comunicar al usuario con el sistema operativo mediante una ventana que espera órdenes escritas por el usuario en el teclado, los interpreta y los entrega al sistema operativo para su ejecución

Ahora mi definicion, yo diria que una shell, es un programa que  nos sirve de puente de comunicacion entre el usuario y el sistema operativo, es la forma en la que nos comunicamos con el sistema y le decimos las ordenes que nosotros deseemos. en esta interfaz no existen las imagenes o los menus bonitos (aunque hay menus muy bonitos  para cualquier geek). es solo texto y algunos colores. Una shell se caracteriza por que siempre esta a la espera de recibir instruciones, cuando recibe una orden, la ejecuta y vuelve a quedar a la espera de mas ordenes. En conclusion podemos decir que una shell es el traductor entre el nucleo y el sistema operativo.

Tipos de shell

En esta ocasion solo mencionare cada tipo de shell, y una definicion muy basica, no entrare en detalles ya que se haria muy extenso el articulo:

  • Bash: Esta shell, es la que usamos normalmente en sistemas GNU/Linux, su nombre se debe a que esta fue una derivacion de SH que fue una de las primeras  shell que nacieron.
  • SH: Esta shell venia por defecto en unix version 7, fue escrita por Stephen Bourne, sin embargo,  SH todavia es muy popular en sistemas unix
  • KSH: Una shell compatible con sh, incluso esta trae algunas implementaciones del interprete de comandos de C, tiene varias ventajas, soporta arreglos asociativos y aritmética de punto flotante integrada al igual que posee  funciones avanzadas para manejar archivos de comandos.

Como pueden ver hay mucha variedad en cuanto shell se refiere,existen muchos mas tipos de shell,  si desean aprender mas sobre este tema los invito a que  lean mucha informacion que hay en internet, ya que es un tema muy extenso, y con mucha variedad.

Por ultimo, si eres usuario de GNU/Linux y no sabes que shell usas, puedes averiguarlo digitando esto en consola:

echo $SHELL

Este valor se puede cambiar para tu usuario, si tienes privilegios de root, puedes cambiar la shell a cualquier usuario de tu sistema.

INKSCAPE logo a logo [Libro]

Posted by SpiderM@N On julio - 22 - 2009

LOGO INSKAPE INKSCAPE es un editor de gráficos vectoriales de código abierto (software libre), puede llegar a ser el Illustrator-Killer o Corel-Killer para algunos, lo que si es cierto es que es una de dibujo bastante potente y fácil de usar, y compatible con los estándares como lo es XML o CSS.

Para esta oportunidad les traigo un libro bastante interesante para quienes desean aprender a manejar este programa, el libro es un Curso recapitulado lo que lo hace bastante didáctico, sin más el respectivo link de descarga.

Descargar LOGO a LOGO.

Un DVD para controlarlos a todos, un DVD para todo.

Posted by SpiderM@N On julio - 21 - 2009

Si, hoy estaba pensando en películas, recordé el señor de los anillos con su “Un anillo para controlarlos a todos”. Para cuando me leí el libro jamás me imagine que harían una película con ello.

Pero dejando ese tema a un lado les presento el MultiISO LiveDVD, un DVD con tecnología Live (que permite ejecutar un Sistema Operativo sin necesidad de instalar este en el computador) el cual tiene varias distros dentro de si, a continuación la lista de :

  • Backtrack 3
  • Damn Small Linux (DSL) 4.2.5
  • GeeXboX 1.1
  • Damn Vulnerable Linux (Strychnine) 1.4 edition
  • Knoppix 5.1.1, MPentoo 2006.1
  • Ophcrack 1.2.2 (remastered to contain SSTIC04-5k [720MB] table sets)
  • Puppy Linux 3.01
  • Byzantine OS i586-20040404

¿Para que usarlo? para diferentes necesidades entre ellas; reconocimiento de seguridad, identificación de vulnerabilidades, pruebas de penetración, rescate de sistema, multimedia, recuperación de sistema y cualquier otra cosa que necesitemos.

Es un archivo para descargar en Torrent.

Enlace de descarga.

Enlace de Autor.

Como explotar la vulnerabilidad en Firefox 3.5

Posted by Epsilon On julio - 20 - 2009

Antes de empezar con este articulo quiero dejar muy en claro que este es un laboratorio informativo, es decir, un laboratorio de prueba de concepto, el que haga esto no es un hacker. La idea de esta entrada no es ejecutar un exploit, es tratar de entender como es su funcionamiento y la forma de implementarlo.

Hace poco se hizo publica  una vulnerabilidad que afecta a Firerfox, el navegador preferido de muchos internautas, en la web se comento mucho al respecto sobre este fallo e incluso se publicaron algunos exploits que nos permiten explotar la vulnerabilidad y ejecutar algun programa o obtener una shell remota, dependiendo del exploit utilizado.

En esta oportunidad, mostrare lo sencillo que es explotar esta vulnerabilidad, para obtener una shell remota de nuestra victima, para que nuestro exploit funciona de forma adecuada se necesitan algunos requisitos:

  • Un victima xD
  • Obviamente que tenga Firefox 3.5
  • Que nuestra victima tenga Windows
  • El exploit alojado en un servidor que soporte Python

Antes de entrar a la practica, es bueno, hacer un repaso teorico de lo que se va a realizar, la metodologia es sencilla,  subimos nuestro exploit deseado a un servidor web. (en este caso  utilizaremos 2 exploits con diferente finalidad, esto para que dejen volar un poco la imaginacion). Despues de que tengamos nuestro codigo listo para ser ejecutado necesitamos que nuestra victima visite la url de nuestro codigo, esto se logra  con un poco de ingenieria social, y por ultimo si todo ha salido bien, y hemos tenido suerte nuestro exploit sera ejecutado de forma correctamente.

Exploit 1

Ahora si, la parte emocionante, en este primer ejemplo usaremos este exploit, el cual tiene como finalidad ejecutar la calculadora en el PC victima, si es algo sin sentido, ya que no ganamos nada haciendo que la PC victima ejecute la calculadora, sin embargo esto es solo un ejemplo, por que si dejamos volar un poco nuestra imaginacion  y en vez de que se ejecute la calc  se ejecute algun malware? ahh!! ahora si es interesante este exploit!!!

Para hacer este articulo monte los exploit en un apache local, asi que desde la pc con Firefox 3.5 visitamos la url del  html que en realidad es nuestro exploit, asi:

exploit1 Como explotar la vulnerabilidad en Firefox 3.5

Instantaneamente, al tratar de entrar a esta url, nos aparecera el texto del exploit, como son los datos del creador, el nombre de la vulnerabilidad y tambien Firefox nos mostrara una advertencia, si se da click en detener script, el ataque falla, pero si se da caso omiso a las advertencias (como suele ocurrir)  el ataque tendra efecto:

exploit2 Como explotar la vulnerabilidad en Firefox 3.5

Despues de dar Click en continuar, Firefox se cerrara y como por arte de magia la calculadora se abre xD

exploit3 Como explotar la vulnerabilidad en Firefox 3.5

Exploit 2

Este codigo es muy mas interesante no ejecuta ningun programa en la maquina victima, nos da algo mejor, una shell de el sistema vulnerable,  el funcionamiento es el mismo, previamente he subido el exploit a un servidor web, pero este servidor debe tener el modulo de python instalado, debido a que este ultimo codigo esta hecho en python, asi que tenemos 2 opciones: la primera es montar el codigo en un hosting gratuito que tenga soporte de python,  y la segunda es montar de forma local un apache e instalarle el modulo de python.

El ataque se inicia  de la misma forma que el anterior, la unica diferencia es que cuando la victima entra a la url de nuestro exploit, Firefox se bloquea, pero por debajo lo que esta haciendo es dejar un puerto a la escucha en este caso es  el 5500, y si hacemos un telnet desde nuestra PC a la ip del pc victima al puerto 5500 obtendriamos la shell. (Obviamente se necesita saber con anterioridad la ip de la victima). Algunos de ustedes estaran pensando. ¿Que ocurre si el firefox en el momento que esta bloqueado se cierra? La respuesta es sencilla, no importa si  el firefox se cierra, ya se habra dejado el puerto a la escucha y se podra conectar a  la pc victima. Una imagen de muestra:

exploit4 Como explotar la vulnerabilidad en Firefox 3.5

Ahora tendremos nuestra pc victima en nuestra manos, sera posible hacer cualquier cosa, extraer informacion, borrar informacion, instalar algun malware etc etc etc.

Como pueden ver, es algo sencillo explotar este tipo de vulnerabilidades, solo es cuestion de hacer un poco de ingenieria social, y malicia indigena, Por ultimo que hay que decir  si se le hacen algunas modificaciones al exploit (cambiar la shellcode)  este seria tambien explotable en plataformas Unix, claro que seria un poco mas limitado y no se podria hacer mucho, pero seria explotable.