The Information Systems and Computer Applications examination covers material that is usually taught in an introductory college-level business information systems course.

Author Archive

Comunicación entre clientes OpenVPN con tun (routing)

Comunicación entre clientes OpenVPN con tun (routing)

 
TwitterFacebookLinkedInBufferMail
Evernote
+Tag

En el caso que tengamos múltiples clientes conectados a un servidor con OpenVPN con TUN, deberemos configurar la rutas.

 

Los modos de funcionamiento de OpenVPN puede ser mediante TUN o TAP:

  • TAP: Modo de funcionamiento de capa 2, por lo tanto, los equipos se ven como si estubieran conectados al mismo segmento de red. Por lo tanto, ven el tráfico broadcast que se genere en el segmento como si estuvieran directamente conectados.
  • TUN: Modo de funcionamiento de capa 3, por lo tanto, deberemos configurar routing.

Usando TAP podemos comunicar clientes entre sí directamente.

En el caso de TUN, si intentamos hacer un ping entre dos equipos conectados al mismo servidor OpenVPN podemos recibir un ICMP de “Packet filtered“:

# ping 172.16.101.16
PING 172.16.101.16 (172.16.101.16) 56(84) bytes of data.
From 80.80.80.117 icmp_seq=1 Packet filtered
From 80.80.80.117 icmp_seq=2 Packet filtered

Esto se debe a las rutas que hace que el paquete a otro equipo conectado al servidor se vaya por la default gateway. En el siguiente ejemplo podemos ver que todo paquete que no vaya al servidor (172.16.101.1) ni sea de ninguna de las otras redes irá por el default gateway, que en este caso será hacia Internet:

# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
<strong>172.16.101.1    0.0.0.0         255.255.255.255 UH        0 0          0 tun0</strong>
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth1
192.168.254.0   0.0.0.0         255.255.255.0   U         0 0          0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth1
0.0.0.0         192.168.254.1   0.0.0.0         UG        0 0          0 eth0

Por lo tanto, en todos los clientes (con la directiva client-config-dir) que queramos que se comuniquen entre sí deberemos añadir una ruta para la red que queramos configurar. En dicha configuración de cliente, forzamos una IP fija a cada cliente, que su gateway sea 172.16.101.1 y publicamos una ruta para que el segmento 172.16.101.0/24 vaya por dicho gateway:

# cat cliente.systemadmin.es
ifconfig-push 172.16.101.12 172.16.101.1
push "route  172.16.101.0 255.255.255.0 172.16.101.1"

Las rutas de los clientes quedarán como las siguientes:

# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
<strong>172.16.101.1    0.0.0.0         255.255.255.255 UH        0 0          0 tun0
172.16.101.0    172.16.101.1    255.255.255.0   UG        0 0          0 tun0</strong>
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth1
192.168.254.0   0.0.0.0         255.255.255.0   U         0 0          0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth1
0.0.0.0         192.168.254.1   0.0.0.0         UG        0 0          0 eth0

Por lo tanto, ahora deberemos hacer que los paquetes que se entregan por la interfaz tun del servidor se entreguen al cliente destino. Por defecto tendremos el forwarding desactivado, por lo tanto deberemos activarlo mediante el fichero /etc/sysctl.conf modificando la directiva net.ipv4.ip_forward a 1. Aplicamos los cambios mediante sysctl -p

# sysctl -p
(...)
net.ipv4.ip_forward = 1

A continuación definiremos dos reglas de iptables:

  • Una regla que permita el forwarding en las interfaces tun:
    iptables -A FORWARD -i tun+ -j ACCEPT
    
  • Otra regla que lo deniegue en las interfaces eth:
    iptables -A FORWARD -i eth+ -j DROP
    

    En lugar de cambiar la política por defecto de FORWARD, añado el DROP para tener el contador de paquetes para dicha regla.

Si lanzamos un ping entre dos clientes conectados veremos como aumentan los contadores y ya se ven entre sí:

# iptables -L -nv
(...)
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    6   504 ACCEPT     all  --  tun+   *       0.0.0.0/0            0.0.0.0/0
    0     0 DROP       all  --  eth+   *       0.0.0.0/0            0.0.0.0/0

Tags:

Relacionados

Comunicación entre clientes OpenVPN con tun (routing) was first posted on September 10, 2013 at 12:22 pm.


Meet Human, A Beautiful Fitness Tracking App To Help You Effortlessly Stay Healthy

Originally posted on TechCrunch:

Human is a newcomer in the crowded fitness space, but its take is different. Instead of being a stat-heavy activity app like RunKeeper or a life tracker gadget like Withings, Fitbit or Jawbone, Human is a passive iOS app designed to help you stay healthy. The goal is to move for 30 minutes every day, and to keep up with this simple habit. The company calls it the ‘Daily 30′. As it is extremely simple, keeping up with Human is easier than with competitive fitness systems.

“The basic premise of the app is very simple. Human tracks all of your activity and we put the focus on how many minutes you moved today and how many minutes you need to move,” co-founder and CEO Renato Valdés Olmos told me in a phone interview. “Each day of the week that you reach your Daily 30, we send out a push notifications,”…

View original 388 more words


Aside

Security By Default by Yago Jesus  Hemos perdido la batalla de la privacidad

Delicious
 
TwitterFacebookLinkedInBufferMail
+Tag
Si me hubieran dicho hace 7 u 8 años que iba a pronunciar la frase que da título a este post, probablemente me habría negado a creerlo, en ese momento pensaba que existía un notable ‘poder’ técnico al alcance de la gente y que los gobiernos -aun bisoños en el arte de espiar las nuevas tecnologías- tenían más que perdida la batalla del control de Internet.
 
Ahora lo veo todo de una forma radicalmente opuesta. Opino que, de una forma sutil y elaborada, las piezas del tablero han cambiado hasta un punto en el que ya todo está perdido.
 
De entrada el comportamiento de los usuarios ha sido ‘re-educado’ de una forma en la que la gente asume y acepta que la privacidad es algo secundario, se ha conseguido que la gente piense de una forma eminentemente pragmática donde la funcionalidad vale el 90% y las migajas quedan para el resto de cuestiones como la privacidad, moralidad, etc
 
La segunda pata de este problema, los gobiernos, han dado toda una lección de adaptación al medio ante la que hay que quitarse el sombrero. PRISM es el ejemplo superlativo del concepto técnico, pero me llama la atención el concepto sociológico: ahora es muy fácil concentrar esfuerzos.
 
En un momento en el que la gente ha aceptado que la privacidad es algo totalmente secundario, cualquier gobierno puede, de una forma muy cómoda, concentrar esfuerzos en ese pequeño reducto de personas que sí se toman en serio la privacidad y arrinconarlos. Un ejemplo claro es TOR, dejándola ante la opinión pública como un reducto de gente ‘extraña’ y luego atacándola basándose en la linea argumental previamente definida.
 
La tercera pata son las corporaciones, ante este panorama donde el usuario es un dócil corderito ya totalmente domesticado que juzga con absoluta lenidad cualquier violación a su privacidad, se ha abierto la barra libre, y no me refiero a cosas como que Facebook tiene vínculos con la NSA o la CIA (qué, sinceramente, me da igual y no creo que ese sea el problema ya que Facebook deja muy a las claras cual es su juego), me refiero a cosas mucho más oscuras.
 
El otro día, vía el siempre genial Crg, llegué a esta web en la que demostraban como hacer seguimiento a un usuario sin hacer uso ni de javascript ni de cookies. De ahí llego a este otro artículo en el que un estudio demostró como un buen número de webs bastante importantes estaban haciendo uso de estas técnicas para monitorizar usuarios.
 
Igualmente en ZDNet se puede leer un artículo donde se critica la poca transparencia de Microsoft con el sistema de actualización de las CAs del que, por cierto, hablamos por aquí en el 2010
 
Y estos son solo dos ejemplos, pero hay muchos más
 
En definitiva, hemos perdido la batalla de la privacidad

Aside

Why Federate?

TwitterLinkedInFacebookBufferMail

+Tag

Part of my job these days is convincing people to get out of the password business and start “Federating”; that is to say, outsource the login mechanics to an “Identity Provider” (IDP) like Facebook or Google or Microsoft or Twitter (and there are lots more). I’ve given the sales pitch quite a few times now; here it is.

Scenario

You’re putting up a new app and need to sign in users, so you use whatever’s popular with the package you’re using: On Rails, typically Devise, on NodeJS Drywall or Passport, on PHP Usercake, and so on.

These things will take care of storing and checking usernames and passwords for you. But storing and checking passwords is a bad thing to do.

Why?

There are too many passwords. When someone rolls up to your app for the first time and you ask him or her to pick a password, here are some typical reactions:

  • She says “Oh, not another damn password” and closes the browser tab. Kiss a customer goodbye. This is a very common reaction and if you’re Mr Yet-another-password, it’s happening to you right now.

    Oh, and if she’s on a mobile device, the chances that she’ll be willing to put up with Password Pain are dramatically reduced.

  • He picks a short, simple, easy-to-remember password, thereby making life easier for the bad guys.
  • She uses a complex high-quality password, and doesn’t have to actually pick it because it’s the same one she uses on all the sites she visits, including dog-grooming tips and money management. Thereby making life easier for the bad guys.
  • He types some random gibberish into the password field and doesn’t bother to remember it; the site will keep the session active for a few days, and when it asks him to log in again, he’ll hit “Forgot password” and get a password-reset email. Beats trying to remember. (This is the best outcome so far).
  • She uses a password manager like 1Password or LastPass or KeePass. It works pretty well for her — well, maybe a little awkward on mobile devices. But she’s had no luck at all getting her nontechnical friends and family to use it.

Which is to say, by playing the yet-another-password game, you’re decreasing the security of the whole Internet. You’re peeing in the swimming pool. It’s bad for your business, and Google’s business, and for the people using the Internet. So stop doing it.

That should be enough.

Not Convinced?

You still think you might want to do the password thing… so, you better make sure people pick goodpasswords. For an example, type “password rules” into Google and up comes Intel Password Rules, from which I could quote but let’s just screenshot instead.Password Rules

When you impose something like this on human beings, you’re being mean to them. Which is not only evil, and bad for business, it just doesn’t work. So stop doing it.

Still Not Convinced?

Maybe these will help.IEEE password hackDropBox password hackLinkedIn password hackYahoo! password hack

Are you smarter than those guys; the BBC, DropBox, LinkedIn, and so on? Are you sure? This could be you, very easily. The bad guys are out there, and they are probing your defenses every day. So once again: Get out of the password business, start federating, and don’t let this be you.

It’s That Easy?

Um, well, no. There are issues around federation: business, technology, and policy. I’ll write some follow-ups about them. The cost and effort is non-zero. But it’s something you’re going to have to do anyhow, so you might as well get started.


Aside
 

Bring your Own Device (BYOD) es una filosofía empresarial que se basa en la posibilidad de que los empleados utilicen sus propios dispositivos móviles en su lugar de trabajo y para tener acceso a recursos de la empresa tales como correos electrónicos, bases de datos y archivos en servidores, así como datos y aplicaciones personales. En este post se comentaran las soluciones que incorpora el paquete Windows 2012 R2 para mejorar la experiencia de usuario basándose en esta filosofía.

 

image

Imagen 1: Estructura con múltiples dispositivos

En la actualidad, los usuarios disponen de una amplia gama de dispositivos móviles con los que podrían trabajar. Además, deberían ser capaces de acceder a los recursos de la organización en cualquier lugar y en cualquier momento.

Por suerte, con Windows 2012 R2 y sus productos (Windows Server, System Center Configuration Manager, y Windows Intune) se pueden aplicar soluciones dándole prioridad a 3 ideas:

  1. Permitir al usuario escoger el dispositivo, tales como smartphones, portátiles o tablets sin perder el acceso a los recursos de la organización.
  2. Permitir gestionar los sistemas a través de una misma herramienta, sin olvidar la integración con Windows Server, Windows Azure y Windows Intune.
  3. Controlar el acceso de los dispositivos, así como su localización o el recurso que solicita, para salvaguardar los activos de la empresa.

 

image

Imagen 2: Comunicación entre los elementos

Las empresas hoy en día buscan herramientas que les permitan gestionar estos dispositivos eficientemente de forma que sus empleados puedan tener acceso a los recursos empresariales sin comprometer la seguridad de la información. Por esta razón Windows 2012 R2, ha creado un registro específico de usuario@dispositvo en Active Directory para poder mantener la gestión y el inventario de los dispositivos, así como los usuarios que acceden a cada dispositivo.

Por otro lado, los dispositivos podrán acceder a los recursos corporativos y aplicaciones de la organización a través de Windows Intune o del proxy web ofrecido por Windows Azure. Todo esto utilizando autenticación de usuario y contraseña del propio Active Directory, y gestionado por System Center Configuration Manager.

 

image

Imagen 3: Esquema de relaciones entre los dispositivos y los dispositivos

Como parte de la incorporación del dispositivo, los usuarios pueden tener certificados provisionales, perfiles Wi-Fi o VPN.

Dependiendo del escenario, el dispositivo se comportara de una forma u otra, permitiendo desviar el tráfico de las aplicaciones a través de una VPN o acceder directamente a la intranet según sea el caso para conservar la seguridad de la información en todo momento.

 

image

Imagen 4: Esquema de conexión a través de VPN o acceso directo

Un ejemplo de como el sistema podría funcionar:

  • Tras registrar el dispositivo, se le permite el acceso al portal de la organización
  • Desde el portal de la organización, se podría instalar una aplicación empresarial.
  • Cuando se ejecute esta aplicación, la misma contactara con el Proxy de la aplicación Web para obtener información necesaria.
  • El proxy redireccionara la aplicación para que se autentique contra el Active Directory.
  • Active Directory verifica mediante el registro de dispositivo que el usuario está autorizado a usar ese dispositivo.
  • Además puede configurarse Active Directory, para que ejecute una verificación extra la cual le solicitara al usuario un código adicional a la autenticación común.
  • Una vez el proceso de autentificación sea satisfactorio, se habrá completado la validación con Active Directory y el Proxy de la aplicación web obtendrá la información necesaria.

 

image

Imagen 5: Esquema de caso de uso

Como se mencionaba anteriormente, es importante unificar la gestión para simplificar el proceso de gestión y configuración, para ello se puede llevar a cabo con System Center Configuration Manager y Windows Intune desde una misma consola centralizada y fácil de usar.

 

image

Imagen 6: Esquema de gestión centralizada con SCCM y Windows Intune

Otro factor importante a la hora de proteger la información,  son los casos de perdida, robo o reutilización del dispositivo. Con Windows 2012 R2 se puede crear un borrado selectivo del dispositivo, para eliminar toda la información corporativa sin afectar la información personal contenida en el:

 

Contenido eliminado al retirar un dispositivo

Windows 8.1 Preview

Windows 8 RT

Windows Phone 8

iOS

Android

Aplicaciones de la compañía y los datos asociados de Configuration Manager y Windows Intune

Desinstala y se eliminan las claves carga lateral.

Además ninguna de las aplicaciones que utilizan el sistema de limpiado selectivo de Windows tendrán la clave de cifrado revocada y los datos ya no serán accesibles.

Claves de carga lateral eliminadas pero permanecen instaladas

Desinstalado e información eliminada.

Desinstalado e información eliminada.

Las aplicaciones y la información se mantienen.

VPN y perfiles Wi-Fi

Eliminado.

No Aplicable

No Aplicable

Eliminado.

VPN: No Aplicable.

Wi-Fi: No se elimina.

Certificados

Revocados y eliminados

No Aplicable

No Aplicable

Revocados y eliminados

Revocados.

Configuraciones

Requisitos eliminados.

Requisitos eliminados.

Requisitos eliminados.

Requisitos eliminados.

Requisitos eliminados.

Management Client

No aplicable. El agente ya esta integrado

No aplicable. El agente ya está integrado

No aplicable. El agente ya está integrado

Eliminado

Privilegios de administrador eliminados

 

Si quieres conocer más sobre el sistema BYOD y los productos 2012 R2, te animamos a visualizar la presentación completa de los productos en TechEd North America Foundational Session.

 

Si te ha gustado el post, te recomendamos leer el libro de Windows Server 2012 para IT Pro.

Además si te ha gustado el artículo puedes suscribirte al Canal RSS de Windows Técnico, o seguirnos por el  Canal Google+ de Windows Técnico o  Twitter para estar al día de las novedades e información técnica de interés.


Aside
 

En el caso que necesitamos eliminar los datos de un disco duro podemos utilizar la herramienta “Darik’s Boot And Nuke

 

Se trata de un LiveCD, al arrancar con dicho CD si escribimos “autonuke” nos detectará los discos duros y empezará a destruir los datos. Podemos incluso modificar la ISO para que lo haga directamente.

Primero de todo creamos los directorios, montamos la ISO original y copiamos los datos (no podemos modificar directamente la ISO)

# mkdir dban.orig dban.new
# mount dban-2.2.7_i586.iso dban.orig/ -o loop
mount: warning: dban.orig/ seems to be mounted read-only.
# cp dban.orig/* dban.new/

A continuación, pare hacer que destruya los datos directamente modificamos el fichero isolinux.cfgcon:

(...)
# Set this option to zero if you wish to skip the boot prompt.
<strong>PROMPT 0</strong>

# This label will be started if you just push enter at the boot prompt, or if
# you set the PROMPT option above to zero.
<strong>DEFAULT autonuke</strong>


# NOTE: If you create a custom label, then ensure that the first eight
#       characters in the label are unique.

LABEL  autonuke
KERNEL dban.bzi
APPEND nuke="dwipe --autonuke" silent vga=785

LABEL  dban
KERNEL dban.bzi
APPEND nuke="dwipe" silent vga=785
(...)

También podemos modificar los mensajes que aparecen, se encuentran en los ficheros about.txt,quick.txtraid.txt y warning.txt. A continuación deberemos generar la ISO con genisoimage:

# genisoimage -l -r -J -V "autonuke" -b isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -c isolinux.cat -o autonuke.iso dban.new/
I: -input-charset not specified, using utf-8 (detected in locale settings)
Size of boot image is 4 sectors -> No emulation
 92.43% done, estimate finish Tue Jul 30 19:35:55 2013
Total translation table size: 2048
Total rockridge attributes bytes: 826
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
5416 extents written (10 MB)

Con la nueva iso creata (autonuke.iso) podemos ya arrancar el PC y automáticamente eliminará los datos.

Darik's Boot And Nuke

Darik’s Boot And Nuke

Tags: 

Relacionados

  • No hay posts relacionados.

Eliminar los datos de un disco duro (sin intervención) was first posted on July 30, 2013 at 10:48 am.


Aside
 
 
Tal y como avanzamos en el anterior post de esta serie sobre ‘crypters’, los Antivirus, en adelante AVs, escanean los archivos en el disco del ordenador y no en la memoria RAM y este comportamiento es el que aprovechan los ‘crypters’ para evadir la detección de los AVs. Veamos como lo hacen.

Cifrado

Los ‘crypters’ utilizan técnicas de ‘cifrado‘ para ocultar los archivos maliciosos. Repasemos rápidamente en qué consiste un cifrado. Un cifrado es un procedimiento que utiliza un algoritmo y unaclave para transformar un mensaje legible en otro indescifrable.
 
Veámoslo con un ejemplo: vamos a ‘cifrar’ el mensaje “HOLA” con el algoritmo de cifrado ROT (también conocido como cifrado César) y la clave de cifrado será “1”. Este algoritmo lo que hace es, para cada caracter del alfabeto, avanza tantas posiciones como el valor de la clave de cifrado establecida, en este caso “1”. Así pues, tras aplicar el algoritmo, la letra “A” se transforma en la “B”, la “B” en la “C” y así sucesivamente. Por tanto el mensaje “HOLA” se transforma en “IPMB”. De este modo hemos ocultado nuestro mensaje y para que alguien pueda descifrarlo, necesitará conocer tanto el algoritmo empleado (ROT) como la clave de cifrado (1). Obviamente este es un algoritmo muy sencillo y una clave igualmente sencilla, lo cual permitiría llevar a cabo ataques con el propósito de deducir el algoritmo y la clave, sin embargo, existen infinidad de algoritmos de cifrado enormemente complejos que pueden utilizarse y son utilizados para cifrar ‘malware’.

 

Cifrando malware

La idea básica que subyace en el concepto de ‘crypter’ es la siguiente: si se cifra un archivo malicioso, éste será transformado en un archivo ‘ininteligible’ para el AV y por tanto no será detectado. Lo cual es cierto, pero claro, existe un pequeño problema, y es que el archivo malicioso cifrado no funciona, no puede ejecutarse, así que es necesario encontrar una solución, una técnica que se encargue de descifrar y ejecutar el archivo malicioso. Esta pieza de software se denomina ‘stub‘.

 

‘Crypter’ y ‘stub’

Por regla general un ‘crypter’ consiste en dos elementos: el ‘crypter‘ y el ‘stub‘. Esta última es la pieza más importante del conjunto.

El ‘crypter’ consiste generalmente en un programa que permite buscar y seleccionar en el sistema de archivos del ordenador el ejecutable a cifrar (generalmente un archivo malicioso, pero es posible cifrar cualquier archivo que se desee). Algunos, permiten adicionalmente introducir la contraseña de cifrado de forma manual o generarla aleatoriamente. Y en ocasiones, algunos permite activar cierta medidas anti-forenses, pero esto es otra historia que trataremos más adelante.
 
Una vez seleccionado el archivo a cifrar y pulsado el botón de ‘cifrar’ (Build en el ejemplo de la imagen) nos generará un ‘nuevo ejecutable‘, el cual en realidad consiste en una composición del ‘stub’ y un ‘payload’, que no es más que el malware cifrado.
 
 
 
Crypter (malware) = Stub + [malware cifrado]
 
 

Como puede observarse, ‘crypter’ y ‘stub’ están relacionados, ya que el ‘crypter’ se encarga de ejecutar el algoritmo de ‘cifrado’ y el ‘stub’ se encarga de ejecutar el algoritmo de ‘descifrado’. Para que el ‘stub’ pueda descifrar el malware necesita conocer la clave utilizada en el proceso de cifrado. En algunos casos, el programador del ‘crypter’ no da opción al usuario a elegir una clave, sino que la ha definido de antemano en su código, y en otras sí permite elegirla o generarla aleatoriamente, en cualquier caso, al generar el ‘nuevo ejecutable’ el ‘crypter’ ha de almacenar la clave en el algún lugar para que el ‘stub’ pueda encontrarla y descifrar el malware.

Si se observa en detalle este ‘nuevo ejecutable’, lo que vemos es una configuración bastante habitual, en la que tras el archivo ejecutable que constituye el ‘stub’, se añaden unos separadores de delimitan el lugar en el que se encuentra la almacenada la clave y a continuación se añade elmalware cifrado. Obviamente cada programador puede organizar esta distribución como más le guste y en ocasiones, en lugar de añadir directamente el malware cifrado tras el stub, lo introducen en un recurso del ejecutable  PE.

 
Cuando este ‘nuevo ejecutable’, valga la redundancia, es ejecutado, el ‘stub‘ se encarga de copiar a la ‘memoria RAM’ el malware cifrado, descifrarlo allí mismo, y a continuación ejecutar dicho ‘malware’ ya descifrado. Trataremos este punto en detalle en el siguiente artículo de la serie.

Artículo cortesía de Abraham Pasamar

Follow

Get every new post delivered to your Inbox.

Join 21,398 other followers