Jueves, 3 de diciembre, 2009 | Etiquetas: , , , , ,

Es verdad, hace mucho mucho mucho!!! tiempo que no publico nada de nada… por razones diversas no e tenido el tiempo para hacerlo… pero bueno, aprovechemos que ahora lo tengo y estoy de animo para publicar un mini HowTo sobre hacking de redes 802.11 con codificacion WPA-PSK/WPA2-PSK.
Como sabemos, hoy por hoy es cosa de un par de minutos reventar una red con codificacion WEP, por lo mismo actualmente hasta los usuarios mas noob’s estan comenzando a utilizar codificaciones mas sofisticadas para evitar que leachers se cuelgen de su ancho de banda… Por lo mismo es indispensable ser capaces de poder reventar este tipo de claves. El problema es el siguiente, la codificacion “WPA” utiliza el protocolo de encriptacion AES, el cual hasta el momento no se a podido romper, por consiguiente, la unica manera de obtener la password de una red de estas caracteristicas es el uso de nuestro buen amigo “El Diccionario de Passwords” cuyo procedimiento  se basa en un ataque de fuerza bruta, convirtiendo cada una de las passwords almazenadas en nuestro WordList en un HASH que compara y trata de decodificar contra un HandShake que previamente capturamos. Este procedimiento suele tardar BASTANTE si la clave esta bien construida.

Entonces resumiendo, tenemos 3 opciones…
1.- Nos compramos una PlayStation3 que con su procesador PowerPC basado en la arquitectura RISC sera capaz de  decodificar nuestra clave objetivo en un tiempo razonable (En comparacion a un PC estandard que puede llegar a  demorar una eternidad)
2.- Nos quedamos sin internet… o estamos al beneplacito de todos los vecinos que estan colgados de la UNICA red WEP del sector
3.- Seguimos con este manual y aprendemos a sacarle el jugo a nuestra GPU para asi volver a surfear por la internet con el alto auspicio de nuestro querido vecino.

Entonces, vamos a explicar un poco mas en detalle en que consiste este procedimiento…
Continuar leyendo…

0 comentarios (1.476 visitas)
Lunes, 22 de diciembre, 2008 | Etiquetas: , , , ,

Bueno, estoy ahora trabajando en la automatización de mi servidor Asterisk para que trabaje en conjunto con un sistema que utiliza PostgreSQL, por ello no quiero utilizar los típicos ficheros de configuración que utiliza Asterisk, así que cambiaremos todo a una plataforma PostgreSQL, tanto CDR como configuraciones en RealTime.

[Actualizacion]
Tambien agregaremos Asterisk-GUI, Sincronizacion de VoiceMail mediante IMAP y una que otra sorpresa… (Trabajo en progreso…)

Primero que nada asumiré que tienen instalado un Debian Etch Lenny 5.0 limpio y actualizado. El primero paso para optimizar el funcionamiento de nuestro Asterisk, es cambiar algunos parametros en nuestro Kernel, por lo cual lo recompilaremos, este paso es OPCIONAL.

apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential
cd /usr/src
 
#Descarga un source del kernel
#Yo personalmente utilice el siguiente:
 
apt-get install linux-source-2.6.24
tar xjfv linux-2.6.24
ln -s /usr/src/linux-source-2.6.24 /usr/src/linux
cd /usr/src/linux
make clean && make mrproper
cp /boot/config-`uname -r` ./.config
make menuconfig

Ahora en la configuración seleccionaremos lo siguiente, si es que esta disponible en su versión del kernel.

Processor type and features >> [*]IRQ balancing
Processor type and features >> Timer frequency = 1000 Hz.
Processor type and features >> [*]High Resolution Timer Option
Processor type and features >> [*]HPET Timer Support
Device Drivers >> Character Devices >> [*]Enchanced Real Time Clock Support
Library Routines >> [*]CONFIG_CRC_CCITT

Compilamos y empaquetamos el kernel, para luego instalarlo.

make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
cd /usr/src
dpkg -i linux-image-2.6.24-custom_2.6.24-custom-10.00.Custom_i386.deb
dpkg -i linux-headers-2.6.24-custom_2.6.24-custom-10.00.Custom_i386.deb
reboot -t now!

Con eso ya tenemos nuestro kernel optimizado, podemos ratificar que sea el que estamos utilizando con un simple uname -a. Ahora vamos a preparar la maquina para compilar Asterisk y todas sus posibles dependencias.

aptitude install build-essential libcurl3-dev libvorbis-dev libspeex-dev unixodbc unixodbc-dev libiksemel-dev
aptitude install flex xsltproc odbc-postgresql libusb-dev libnewt-dev libxml2-dev bison
aptitude install linux-headers-`uname -r` g++ libncurses5-dev libnewt-dev libusb-dev subversion git-core
aptitude install postgresql-8.3 postgresql-contrib-8.3 postgresql-client-8.3 postgresql-server-dev-8.3
aptitude install postfix-pgsql postfix-tls sasl2-bin libsasl2-modules postgresql libpam-pgsql uw-mailutils
aptitude install dovecot-imapd dovecot-pop3d linux-source-`uname -r` libncurses5-dev
aptitude install speex libspeex-dev libspandsp-dev libspeexdsp-dev libspandsp1 libosptk3 libosptk3-dev 
aptitude install libiksemel-dev libiksemel3 libiksemel-utils libxml2 libxml2-dev libxml2-utils 
aptitude install libneon27-gnutls-dev libneon27 libical-dev libssl-dev openssl libc-client2007b-dev

Reparando las dependencias para integracion con iCal, Exchange y CalDav

ln -s /usr/include /usr/include/libical

Preparamos los sources para Asterisk, como trabajaremos con la ultima versión de 1.6 bajaremos todo por SVN, no utilizaremos Zaptel, en su lugar la nueva y renombrada version DAHDI y tambien agregaremos mISDN para troncales ISDN

cd /usr/src
mkdir asterisk
cd asterisk
svn co http://svn.digium.com/svn/asterisk/trunk asterisk
svn co http://svn.digium.com/svn/asterisk-gui/branches/2.0 asterisk-gui
svn co http://svn.digium.com/svn/dahdi/linux/trunk dahdi-linux
svn co http://svn.digium.com/svn/dahdi/tools/trunk dahdi-tools
svn co http://svn.digium.com/svn/libpri/branches/1.4 libpri
svn co http://svn.digium.com/svn/thirdparty/mISDN/trunk/ misdn
svn co http://svn.digium.com/svn/thirdparty/mISDNuser/trunk misdn-user
svn co http://svn.igniterealtime.org/svn/repos/openfire/trunk openfire
svn co http://svn.igniterealtime.org/svn/repos/asterisk-im/trunk asterisk-im
git clone git://git.hylafax.org/HylaFAX

Ahora partimos por compilar el modulo de DAHDI que es quien controlara los dispositivos Digium y similares.

cd /usr/src/asterisk/dahdi-linux
make
make install
 
#Y ahora los DAHDI-Tools
 
cd /usr/src/asterisk/dahdi-tools
./configure
make menuselect #Aqui seleccionamos todos los modulos precentes.
make
make install
make config

Ahora para optimizar el tiempo de boot y los modulos que se cargan, vamos a ir a /etc/dahdi/modules y comentaremos todos los modulos a exepcion del utilizado para el modelo de nuestra tarjeta, yo tengo una TDM400P, así que solo dejare des comentado el modulo wctdm

Ahora vamos por la libpri.

cd /usr/src/asterisk/libpri
make && make install

Ahora solo para quienes lo necesitan mISDN es para lineas troncales en tarjetas ISDN, si no utilizas estas tarjetas puedes omitir este paso.

cd /usr/src/asterisk/mISDN
make
make install
cd /usr/src/asterisk/mISDNuser
make && make install
mISDN scan     #Escaneamos en busca de dispositivos
mISDN config   #Configuramos
mISDN start    #Iniciamos el demonio
misdnportinfo  #Para revisar de que todo esta OK
/usr/sbin/update-rc.d mISDN defaults 15 30

Y ahora si compilamos e Instalamos Asterisk.

cd /usr/src/asterisk/asterisk
./configure
make menuconfig     #Aqui seleccionamos los paquetes de Audio que queremos utilizar.
make
make install
make samples
make config
asterisk -vvvc
#Ctrl+C para salir

Hasta ahí ya tenemos un asterisk 1.6 comun y corriente funcionando sin problemas, ahora viene la parte interesante, configurarlo para que tome todas sus configuraciones desde una base de datos PostgreSQL en tiempo real, y además almacene ahí los VoiceMail y los CDR.

Primero que nada tienen que descargar la base de datos que utilizaremos, ya que la que viene incluida en asterisk le faltan algunas tablas y no funciona bien, aquí les dejo la misma pero con las tablas faltantes “Base de Datos“, asi que la descargamos en /usr/src/asterisk y ahora si vamos manos a la obra.

su - postgres
createuser -s -D -R -l -P -e asterisk
createdb -O asterisk -e asteriskDB
psql -U asterisk -h localhost -d asteriskDB < /usr/src/realtime_pgsql.sql

Ahora preparamos la coneccion, editando el fichero de conecciones de postgres

echo "local     asteriskDB     asterisk     md5" >> /etc/postgresql/8.3/main/pg_hba.conf

Y preparamos los ficheros de configuracion de Asterisk para conectarse a la base de datos, son 2 los que nos interesan, uno de la configuracion de tiempo real y el otro del CDR; asi que vamos por el CDR

nano /etc/asterisk/cdr_pgsql.conf

Y lo dejamos asi:

[global]

hostname=localhost
port=5432
dbname=asteriskDB
password=password
user=asterisk
table=cdr

Y ahora la configuracion en tiempo real:

nano /etc/asterisk/extconfig.conf

Y lo dejamos asi:

[settings]

extensions => pgsql,asteriskDB,extensions_conf
sipuser => pgsql,asteriskDB,sip_conf
sippeers => pgsql,asteriskDB,sip_conf
sipregs => pgsql,asteriskDB,sip_conf
voicemail => pgsql,asteriskDB,voicemail_users
queues => pgsql,asteriskDB,queue_table
queue_members => pgsql,asteriskDB,queue_member_table

nano /etc/asterisk/res_pgsql.conf

Y lo dejamos asi:

[general]
dbhost=127.0.0.1
dbport=5432
dbname=asteriskDB
dbuser=asterisk
dbpass=password
requirements=warn

Y listo, ahora reiniciamos Asterisk con un simple

/etc/init.d/asterisk restart

Y luego nos conectamos a nuestro asterisk para revisar que todo este OK

asterisk -r

Y Felicitaciones, ya tienes tu Asterisk trabajando con PostgreSQL

2 comentarios (1.744 visitas)
Miércoles, 27 de agosto, 2008 | Etiquetas: , , ,

Para los que no lo conocen, Vyatta es una suit utilizada generalmente en forma de appliance… En terminos simples es un Debian modificado para hacer todas las tareas de un router profecional. No solo trabajando con protocolos enrutados como es usual ver un mini-router casero, si no tambien con soporte para protocolos de enrutamiento, VPN, QoS, Firewall, etc… En fin, bastante interesante pero proyecto bastante manoceado por muchos… lo que si me llamo la atencion fue cuando quise revisar el codigo y ver como funcionaba esta maravilla, me lleve una muy grata sorpresa. Corre con Live-Helpers! mi proyecto Debian preferido… asi que bueno, ahora manos a la obra, hay mucho q’ picar para ver como funciona este sistemita, y a penas tenga noticias al respecto les voy contando. Aqui tambien por lo demas, les dejo el manual Paso a Paso (Copy&Paste Mode ON ):

VC4 (Glendale) ISO Build Procedures

This document describes how to build a Vyatta VC4 (Glendale) ISO image. The most recent version of this document is the top-level README file of the “glendale” branch of the “build-iso” source tree.

Prerequisites

The Vyatta ISO build uses the “live-helper” tool that is available in several distributions. However, we recommend build hosts based on either Debian “lenny” or Ubuntu “hardy”. The “build-iso” source is maintained as a GIT super-module that references several submodules that each build one or more self named Debian packages. The submodule feature was added to GIT v1.5.2.

Build Host Setup

To set up a build environment (e.g., system or VM), we recommend installing Debian “lenny” (i.e. “testing”) with either business-card or net-install image,


http://cdimage.debian.org/cdimage/daily-builds/
daily/arch-latest/i386/is...
http://cdimage.debian.org/cdimage/daily-builds/daily/arch-latest/i386/is...

The respective installation prompts for distribution mirror. To include Vyatta’s Debian miror, add this to /etc/apt/sources.list,


deb http://packages.vyatta.com/debian/ lenny main
deb http://packages.vyatta.com/debian-security/
lenny/updates main

You also need to add the Vyatta buildtools repository to sources.list,

deb http://packages.vyatta.com/vyatta-dev/ buildtools main

To install the Vyatta repository GPG key,

$ wget -O vyatta-pubkey.gpg
http://packages.vyatta.com/vyatta-dev/vyatta-pubkey.gpg
$ sudo apt-key add vyatta-pubkey.gpg

To build an ISO with all pre-built, binary packages, we’ll need to install some tools on the build host. Before doing that, however, we’ll have to tell apt-get to use older versions of some tools because the latest versions are incompatible with the current livecd build system. Add the following lines to the build host’s /etc/apt/preferences file:

Package: fakechroot
Pin: version 2.5*
Pin-Priority: 1001


Package: live-helper
Pin: version 1.0~a37-2
Pin-Priority: 1001

Next, install these tools on the build host using apt-get:

automake autoconf bzip2 curl debhelper devscripts dpatch fakeroot fakechroot genisoimage git-core sysv-rc-conf live-helper lsb-release rsync sudo

To build submodules, each package should list all build dependencies. However, to save some iteration, install these packages using apt-get:

bison flex docbook-utils gcc g++ git-buildpackage groff gs
gs-gpl imagemagick libncurses5-dev libpam0g-dev
libpcap0.8-dev libreadline-dev libsablot0-dev libtool lintian
manpages-dev tetex-bin texi2html texinfo transfig xmlto
zlib1g-dev libatm1-dev libdb-dev linuxdoc-tools git2cl
kernel-package lynx libcap-dev

Getting Source

The Vyatta ISO builder consists of scripts and config files maintained as a GIT super-module named, “build-iso” that references several submodules within its “pkgs/” sub-directory. To clone the super-module,

$ git-clone http://git.vyatta.com/build-iso.git

To create and checkout a working glendale branch,

$ cd build-iso
build-iso$ git branch --track glendale origin/glendale
build-iso$ git checkout glendale

If you don’t want to build any submodules and just want to build an ISO with all pre-built packages, you can skip the following submodule instructions and go to the next section “Configuration”.

To register the submodules in the cloned repository config,

build-iso$ git-submodule init

It’s most efficient to selectively clone only the submodules needing for review or modifcation. The ISO build downloads the Vyatta pre-built, binary packages of any non-cloned sub-module. To clone a specific sub-module,

build-iso$ git-submodule update pkgs/SUBMODULE

This command clones the SUBMODULE repository in the “pkgs/SUBMODULE” directory, and you need to create and checkout a glendale tracking branch,

build-iso$ cd pkgs/SUBMODULE
build-iso/pkgs/SUBMODULE$ git branch --track glendale origin/glendale
build-iso/pkgs/SUBMODULE$ git checkout glendale

To clone all sub-modules for full verification build,

build-iso$ git-submodule update

Remember to create and checkout a glendale tracking branch for each updated submodule.

Configuration

The Vyatta ISO builder has GNU autotool configuration,

build-iso$ autoreconf -i
build-iso$ ./configure

To see all configure options,

build-iso$ ./configure --help

Build ISO

To build an ISO,

build-iso$ PATH=/sbin:/usr/sbin:$PATH
build-iso$ make

The end results is the following livecd,

livecd/binary.iso

Clean

The Vyatta ISO builder has these standard automake targets to
clean files generated:

mostlyclean during ISO build (excludes package built files) clean during package builds along with ISO files distclean by autoreconf and configure plus all of the above

For example, to clean the ISO build files,

build-iso$ make mostlyclean

Build submodules

When you do a “make”, the build system will build the binary packages for all cloned submodules and include them in the ISO. If you want to work with specific submodules, you can use the commands listed below.

To build binary packages for cloned submodule(s),

build-iso$ tools/submod-mk { --all | SUBMODULE... }

To build binary and source packages for submodule(s),

build-iso$ tools/submod-mk --source { --all | SUBMODULE... }

To build signed binary and source packages for submodule(s),

build-iso$ tools/submod-mk --signed-source { --all | SUBMODULE... }

To clean files generated during submodule build,

build-iso$ tools/submod-clean SUBMODULE...

To clean files generated during all submodule builds,

build-iso# tools/submod-clean

To also clean the submodule build stage(s),

build-iso# tools/submod-clean -d [ SUBMODULE... ]

To clean the source tree of submodules to skip subsequent builds,

build-iso# tools/submod-clean -g [ SUBMODULE... ]

This retains the local bare git repository for quicker updates.

Changes

After making, testing, and commiting your changes to your local repos, publish them to the shared repos with,

build-iso/pkgs/SUBMODULE$ git-push suva.vyatta.com:/git/SUBMODULE.git

Then update and publish the super-module index to include the submodule(s) changes,

build-iso/pkgs/SUBMODULE$ cd ../..
build-iso$ git-update-index pkgs/SUBMODULE
build-iso$ git-commit -m 'update sub-module SUBMODULE'
build-iso$ git-push suva:/git/build-iso.git

Updates

Update the super-module with,

build-iso$ git-pull
or for the paranoid,
build-iso$ git-fetch origin
build-iso$ git-whatchanged HEAD..origin/glendale
build-iso$ git-merge origin/glendale

If new submodules were added, include these in the config,

build-iso$ git-submodule init

To see which checked-out submodules have upstream modifications,

build-iso$ git-status # search for changes in pkgs/

Get the “from” and “to” SHAs with,

build-iso$ git-diff pkgs/SUBMODULE

This will produce output something like,

diff --git a/pkgs/vyatta-cfg-quagga b/pkgs/vyatta-cfg-quagga
index 78124a9..fca1739 160000
--- a/pkgs/vyatta-cfg-quagga
+++ b/pkgs/vyatta-cfg-quagga
@@ -1 +1 @@
-Subproject commit 78124a9754efe0bda1d9c827c593c5e0635fec3c
+Subproject commit fca1739f1985c2ba8d6316b1882365f5e26245cd

To review what changed between these SHAs,

build-iso$ git --git-dir=pkgs/SUBMODULE/.git fetch
build-iso$ git --git-dir=pkgs/SUBMODULE/.git whatchanged FROM_SHA TO_SHA

To merge these submodule changes,

build-iso$ cd pkgs/SUBMODULE
build-iso/pkgs/SUBMODULE$ git checkout glendale
build-iso/pkgs/SUBMODULE$ git merge origin/glendale
build-iso/pkgs/SUBMODULE$ debuild -i -b -us -uc
build-iso/pkgs/SUBMODULE$ cd ../..

The “git-status” for pkgs/SUBMODULE should now be clean. Iterate through the other updated submodules, then rebuild the iso.

1 comentario (1.492 visitas)
Viernes, 25 de julio, 2008 | Etiquetas: , ,

Un sysadmin saca el nuevo servidor para el sitio web de su caja, instala sistema operativo, realiza parches de seguridad, revisa que la electricidad y el aire acondicionado funcionen perfectamente en la sala de servidores, monitorea la maquina para verificar su estabilidad, configura el software, realiza backup’s por si algo llega a salir mal, todo para servir este sitio web.

Un sysadmin instala los routers, tira el cableado estructurado, configura la red, prepara los firewalls y guía el trafico de la red por cada uno de los saltos, atravesando cobre, fibra e incluso el aire para llevar internet a tu computador, todo para estar seguros de que esta pagina web sea visible por tu computador.

Un sysadmin se asegura que tu conexión de red es segura, abierta y funcionando, Un sysadmin se asegura que tu computador funcione de una sana manera en una red segura, Un sysadmin toma respaldos de toda la información para cuando rompas algo, no pierdas nada, se asegura de que las gateways estén seguras para evitar la intromisión de crackers y otro tipo de plasta informática, y sin importar cuantos miles de copias se envíen a la impresora desde el departamento de contabilidad, esta sigue imprimiendo sin problemas.

Un sysadmin se preocupa del spam, virus, spyware y codigos dañinos, pero tambien de los cores de luz, de los incendios y de las inundaciones.

Cuando el servidor de correos se cae a las 2 AM del domingo, Tu sysadmin mas cercano se levantara e ira a trabajar!

Un sysadmin es un profesional, quien planea, se preocupa, hackea, repara, parcha, soluciona, protege y crea exelentes redes de computadores, todo para llevar la data a ti y ayudarte a cumplir tu trabajo – para llevar el potencial de los computadores aun mas seca de la realidad.

Así que si puedes leer esto, GRACIAS SYSADMIN — y siempre ten en cuenta que el o ella hacen posible de que el trabajo llegue a nuestras casillas de correo desde el otro lado del mundo, de que tengamos mensajería instantánea, de las llamadas telefónicas gratuitas a nuestros amigos en Australia, DE ESTA PAGINA WEB!

Demuestrales tu Aprecio

Viernes, 25 de Julio del 2008 ( o el Ultimo Viernes de Julio ), System Adminitrator Apprecioation Day. En este dia internacional tan especia, dale a tu Administrador de sistemas algo que le demuestre cuanto realmente lo aprecias por su duro trabajo y dedicacion.

Porque enfrentemos lo, los Administradores de Sistema no tienen respeto por los 365 días del año. Este es el día donde todos los Administradores de Sistemas alrededor del mundo, serán mimados con Lujosos autos deportivos, montañas de dinero ( en efectivo por favor ), en demostración de todo lo que apreciamos su diligente labor y trabajo duro. Ahora en serio, solo pedimos un pequeño simbólico regalo o un simple agradecimiento publico, sabemos que puedes hacerlo.

P.D.: Feliz Dia para MI, Feliz dia jill-9!  Y feliz Dia a todos los Administradores de Sistema! :D

0 comentarios (304 visitas)
Jueves, 3 de julio, 2008 | Etiquetas: , , ,

Y termino, luego de largas horas sobre un BUS termina la ExpoTalca 2008, proyecto que ideo la escuela de Informatica de la Universidad Santo Tomas de Talca. Un aplauso para ello, en la organizacion realmente se pasaron.. un 7, y evidentemente un especial agradecimiento a debianmandoneao por invitarnos…

0 comentarios (387 visitas)
Pagina 1 de 212