Yasca, un analizador de código estático multi-lenguaje

Yasca es un programa de código abierto que busca vulnerabilidades de seguridad, revisa la calidad de código, el rendimiento y la conformidad con las mejores prácticas existentes en el código fuente del programa. Básicamente se trata de un juego de herramientas multi-lenguaje de análisis estático.


Yasca puede escanear el código fuente escrito en Java, C/C++, HTML, JavaScript, ASP, ColdFusion, PHP, COBOL, .NET y otros lenguajes. Además puede integrarse fácilmente con otras herramientas como:
Yasca se puede utilizar para escanear determinados tipos de archivos y también contiene muchos escáneres personalizados desarrollados para cada uno de ellos. Es una herramienta en línea de comandos que genera informes en HTML, CSV, XML, SQLite y otros formatos. Es fácilmente extensible a través de una arquitectura basada en plugins, de tal forma que escanear cualquier archivo en particular es tan simple como poner la regla correspondiente o integrarlo con una herramienta externa. Yasca también cuenta con un plugin para expresiones regulares que permite escribir nuevas reglas en menos de un minuto.

Yasca está escrito en PHP y liberado bajo la licencia BSD.

Uso:

Usage: yasca [options] directory
Perform analysis of program source code.

        --debug additional debugging
    -h, --help show this help
    -i, --ignore-ext EXT,EXT ignore these file extensions
                            (default: exe,zip,jpg,gif,png,pdf,class)
        --ignore-file FILE ignore findings from the specified xml file
        --source-required only show findings that have source code available
    -f, --fixes FILE include fixes, written to FILE (default: not included)
                    (EXPERIMENTAL)
    -s, --silent do not show any output
    -v, --version show version information

Examples:
    yasca c:\source_code
    yasca /opt/dev/source_code
    yasca -o c:\output.csv --report CSVReport "c:\foo bar\quux"

Puedes descargar Yasca aquí:
yasca-2.1.zip

O leer más aquí.

Fuente: Yasca – Multi-Language Static Analysis Toolset

Resuelve el criptoreto y gana un curso de Especialización en Seguridad Informática y Ciberdefensa

Criptored publicó ayer un criptoreto (el tercero) y la primera persona que lo resuelva antes del 1 de mayo obtendrá como premio una plaza gratuita para la cuarta edición del curso Especialización en Seguridad Informática y Ciberdefensa.


El curso completo, valorado en más de 800€, se impartirá del 4 de mayo al 4 de junio de 2015 y de lunes a jueves de 16:00 a 18:00 vía WebEx. Tendrá una duración total de 40 horas y un elenco de profesores impresionante: David Barroso, Chema Alonso, Alejandro Ramos, José Luis Verdeguer, Javier Rascón, Sergio de los Santos, Pedro Sánchez, Antonio Guzmán, Alfonso Muñoz, Raúl Siles, David Pérez, José Picó y Pablo González. Además la matrícula incluye 4 libros de la editorial 0xWORD y documentación y material de apoyo.

Tenéis el detalle del curso en: http://www.criptored.upm.es/formacion/ciberdefensa/TemarioCursoCiberdefensa4.pdf

Así que si queréis optar a una plaza gratuita es este curso sólo tenéis que poneros manos a la obra y resolver el tercer criptoreto de @mindcrypt:


http://www.criptored.upm.es/paginas/criptoretomarzo2015.pdf
http://www.criptored.upm.es/paginas/retos.htm


¡Suerte!

Malcom: un analizador gráfico de las comunicaciones de malware

Malcom es una herramienta diseñada para analizar las comunicaciones de una red de sistemas usando una representación gráfica del tráfico y cruzando referencias con fuentes de malware conocido. Esto es muy útil cuando se analiza cómo ciertas especies de malware tratan de comunicarse con el mundo exterior.

Malcom puede ayudarte a:

- detectar servidores de comando y control (C&C)
- entender las redes peer-to-peer
- observar infraestructuras fast-flux DNS
- determinar rápidamente si un artefacto en la red es 'malo-reconocido'


Más info y how-to: https://github.com/tomchop/malcom

Reiniciar Squid en RHEL 6.7 borra todos los archivos del disco duro

Tranquilos, Red Hat Enterprise Linux (RHEL) 6.7 todavía está en fase pre-beta y no se ha publicado pero acojona asusta, ¿verdad? 

Peor cara se le quedó a Swapna Krishnan, un empleado de Red Hat que notificaba el bug con el que se ejecutaba «rm -rf / *» (y, en consecuencia, eliminaba todos los archivos del sistema) con sólo reiniciar el demonio de la versión squid-3.1.23-4.el6 del popular proxy:

Descripción del problema:
"Después de instalar los paquetes de prueba para RHEL 6.7, cuando trato de parar o reiniciar Squid cuando está en ejecución, se mantiene a la espera y de repente empieza a borrar todos los archivos del disco duro. En ese punto es difícil diagnosticar nada más porque se elimina una gran cantidad de archivos en la máquina

[root@tyan-gt24-04 ~]# service squid status
squid is stopped
[root@tyan-gt24-04 ~]# service squid start
Starting squid: .[  OK  ]
[root@tyan-gt24-04 ~]#
[root@tyan-gt24-04 ~]# service squid status
squid (pid  9122) is running...
[root@tyan-gt24-04 ~]# service squid restart
Stopping squid: ...........
Stopping squid: ................[  OK  ]
rm: cannot remove `/boot': Device or resource busy
rm: cannot remove `/cgroup/cpuset/libvirt/lxc/cpuset.memory_spread_slab': Operation not permitted
rm: cannot remove `/cgroup/cpuset/libvirt/lxc/cpuset.memory_spread_page': Operation not permitted
rm: cannot remove `/cgroup/cpuset/libvirt/lxc/cpuset.memory_pressure': Operation not permitted
rm: cannot remove `/cgroup/cpuset/libvirt/lxc/cpuset.memory_migrate': Operation not permitted
.....
rm: cannot remove `/dev/shm': Device or resource busy
rm: cannot remove `/home': Device or resource busy


y simplemente se colgó aquí."


Evidentemente es sólo una nota de humor, porque como comentamos la versión con el bug nunca fue publicada y fue descubierta durante un proceso interno de QA del software. 

¿El fallo? Pues no chequear si la variable SQUID_PIDFILE_DIR está vacía en el script de arranque. Un ejemplo:

TEMP = "/tmp";

if [ -z "$TEMP"]; then echo "Vaya, la variable temp esta vacia"; else rm -rf $FEMP/*; fi


Oops, ¿ves el error? La segunda vez TEMP se escribió mal como FEMP, por lo que cuando se llama a la variable FEMP es inicializada y concatena
meramente  como "/"...

Fuente: https://bugzilla.redhat.com/show_bug.cgi?id=1202858

Facebook publica una herramienta de código abierto para simular distintas condiciones de red

Augmented Traffic Control (ATC) es una herramienta de código abierto (GitHub) desarrollada por Facebook para simular distintas condiciones de red para probar como se comportan sus aplicaciones. Se creó sobretodo para simular entornos de peor conectividad que los de sus laboratorios. De forma genérica permite controlar la conexión que tiene un dispositivo hacia Internet, concretamente:

- Ancho de banda
- Latencia
- Pérdida de paquetes
- Paquetes corruptos
- Orden de paquetes

Para que ATC sea capaz de controlar y modificar el tráfico debe ejecutarse en un dispositivo que enrute el tráfico y tengan un IP real, como la del gateway de la LAN del entorno.

ATC está hecho de múltiples componentes que interaccionan entre sí:

- atcd: el demonio de ATC responsable de configurar/desconfigurar el traffic shaping. atcd tiene un interfaz de Apache Thrift para interactuar.
- django-atc-api: Un aplicación Django basada en Django Rest Framework que facilita a atcd un interfaz RESTful.
- django-atc-demo-ui: Un aplicación Django que provee un sencillo Web UI para usar ATC desde un teléfono móvil.
- django-atc-profile-storage: Un aplicación Django que puede ser usada para salvar los perfiles de control de tráfico, haciendo más fácil reusarlo después sin tener que volver a introducir manualmente las configuraciones.

Al dividir ATC en sub-componentes, es más fácil trastear con él. Aunque django-atc-demo-ui se distribuye en el repositorio principal para facilitar su uso, también se facilita una REST API para interactuar con atcd vía comandos y permitir a la comunidad crear nuevas herramientas.


Las 10 mejores técnicas de hacking web en el 2014

Heartbleed elegida mejor técnica de hacking web de 2014
Como todos los años, WhiteHat Security (la empresa fundada en 2001 por Jeremiah Grossman) lleva a cabo un concurso con las mejores técnicas de hacking web

En enero ya os listamos las técnicas nominadas en la fase I y después de semanas de coordinación, investigación, votaciones de la comunidad y las valoraciones de un panel de especialistas por fin tenemos el top 10 final del 2014:
  1. Heartbleed
  2. ShellShock
  3. Poodle
  4. Rosetta Flash
  5. Residential Gateway “Misfortune Cookie”
  6. Hacking PayPal Accounts with 1 Click
  7. Google Two-Factor Authentication Bypass
  8. Apache Struts ClassLoader Manipulation Remote Code Execution and Blog Post
  9. Facebook hosted DDOS with notes app
  10. Covert Timing Channels based on HTTP Cache Headers
Fuente: Top 10 Web Hacking Techniques of 2014

Vulnerabilidad XSS persistente en un plugin de Wordpress para usar Google Analytics

Google Analytics por Yoast es un plug-in para monitorizar el tráfico en  WordPress con Google Analytics. Con aproximadamente siete millones de descargas es uno de las más populares.

Una vulnerabilidad XSS persistente en el plug-in permite a un atacante no autenticado almacenar HTML arbitrario, incluyendo JavaScript en el Dashboard del administrador de WordPress. El JavaScript se ejecutará cuando un administrador visite el panel de configuración del plug-in. No se requiere ninguna intervención del usuario.

Según la configuración predeterminada de WordPress, un usuario malintencionado puede aprovecharse de este problema para ejecutar código arbitrario PHP en el servidor a través de los plugins o editores de temas. Alternativamente, el atacante podría cambiar la contraseña del administrador, crear nuevas cuentas de administrador, o hacer cualquier otra cosa que el administrador actualmente registrado pueda hacer.

El error fue encontrado por el finlandés Klikki Oy a finales de febrero, aunque no se vio el impacto real hasta una investigación más detallada en marzo.

Cisc0wn: el 0wner/script para Cisco SNMP

Cisc0wn es un sencillo script que permite la enumeración SNMP, fuerza bruta, descarga de configuración y cracking de contraseñas de dispositivos con Cisco IOS. 

Fue publicado hace un par de años por NCC Group Plc bajo licencia AGPL y sigue siendo bastante efectivo. Requiere Metasploit, John the Ripper y snmpwalk (se recomienda usarlo en BT5 o Kali) y tiene las siguientes características:

- Comprueba si SNMP está habilitado en el router
- Realiza ataques de fuerza bruta para obtener comunidades de sólo lectura y de escritura (se puede editar el diccionario a utilizar en la cabecera del script)
- Enumera la información como la versión de IOS, nombre de host, tabla Arp, tabla de enrutamiento, lista de interfaces y las direcciones IP utilizando la cadena de comunidad RO o RW.
- Si se encuentra la comunidad RW entonces descarga la configuración del router de forma automática.
- A continuación, busca y muestra cualquier enable o contraseñas de telnet en texto claro.
- Si encuentra cualquier contraseña en tipo 7 la decodifica automáticamente.
- Muestra las contraseñas de tipo 5 y trata de crackearlas.

Uso:
git clone https://github.com/nccgroup/cisco-SNMP-enumeration.git
./cisc0wn.sh

IP-Box: un dispositivo para crackear la clave de 4 dígitos de iPhone

IP-BOX permite por menos de 200€ obtener la contraseña de 4 dígitos de cualquier iPhone con iOS 8 o inferior. 

Realiza un ataque de fuerza bruta (efectivo en menos de 17 horas) y probablemente se aprovecha de la vulnerabilidad CVE-2014-4451 que afecta a todos los iOS anteriores a 8.1.1 que no controlan adecuadamente el límite de intentos de acceso.

IP-BOX realiza de manera agresiva un corte de alimentación después de cada intento fallido, evitando así "Borrar datos después de 10 intentos", aunque no garantiza que el dispositivo no sea "formateado" si tiene activado esta configuración.

Sea como fuere, si no has actualizado a iOS 8.2 - por dejadez o porque tu dispositivo no soporta el nuevo iOS - se recomienda usar una contraseña fuerte: en Configuración > Código de acceso, desactivar 'Simple Passcode' y usar una contraseña de más de 10 caracteres alfanuméricos.

Fuentes:
- http://www.teeltech.com/mobile-device-forensic-tools/ip-box-iphone-password-unlock-tool/
- http://www.fonefunshop.co.uk/cable_picker/98483_IP-BOX_iPhone_Password_Unlock_Tool.html
- http://www.itgovernance.co.uk/blog/ip-box-brute-force-tool-cracks-any-iphone-password/

Yahoo prepara cifrado punto a punto en su correo y acceso sin contraseñas permanentes

Yahoo ha publicado en GitHub el código fuente de un plugin que permitirá el cifrado de extremo a extremo en su servicio de correo electrónico, y están solicitando retroalimentación de la comunidad de seguridad para asegurarse de que está construido correctamente. Se trata de un fork del de Google y se basa en el estándar de criptografía de clave pública de OpenPGP. Yahoo planea extenderlo a sus usuarios antes de fin de año.



Por otro lado, Yahoo también ha enseñado un nuevo sistema de autenticación que no utiliza contraseñas permanentes. En su lugar, asocian la cuenta de Yahoo con un teléfono y se envía bajo demanda un mensaje de texto con un código cada vez que se necesita iniciar sesión. Básicamente es sólo el segundo paso de la autenticación de dos pasos tradicional pero, según ellos, es "el primer paso para eliminar las contraseñas".

Empiezan a explotar de forma masiva el reciente 0-day de phpMoAdmin (MongoDB GUI)

MongoDB, una de las principales plataformas NoSQL de la Web, es una alternativa popular a las bases de datos relacionales basadas ​​en tablas. Una de las herramientas visuales utilizadas para gestionar MongoDB, phpMoAdmin, tiene una vulnerabilidad grave que, si se explota, permite a un atacante ejecutar comandos en el servidor (RCE).

Escrito en PHP, phpMoAdmin es similar a phpMyAdmin, ya que provee una interfaz gráfica de usuario que los desarrolladores y los administradores pueden utilizar para diversas tareas de base de datos. Sin embargo, mientras que phpMyAdmin tiene una comunidad fuerte de desarrollo (dados sus vínculos con MySQL), phpMoAdmin no se ha actualizado en dos años.

Recientemente, un tal "sp1nlock" descubrió que había un fallo grave en el código phpMoAdmin. Como se ha mencionado, si este fallo se pudiera aprovechar, permitiría a un atacante ejecutar comandos en el servidor. El fallo se hizo público a principios de este mes y algunos administradores ya han comenzado a reportar intentos de explotación.

No está claro si los desarrolladores de phpMoAdmin son conscientes del problema. Sin embargo, ya se estaba vendiendo el exploit alrededor de una semana antes de que se desarrollara y publicara un módulo de Metasploit.

Microsoft publica la versión 5.2 de EMET

Microsoft ha actualizado su herramienta anti-exploit de facto Enhanced Mitigation Experience Toolkit (EMET) a la versión 5.2 con algunos ajustes y mejoras interesantes:

- La configuración para la mitigación ASR (Attack Surface Reduction) ha sido mejorada para parar intentos de ejecución de VBScripts cuando se cargan en la zona de Internet del Internet Explorer. Esto evitaría la técnica “VBScript God Mode” observada en recientes ataques.

- Se emplea una técnica de protección nueva llamada Guardia de Control de Flujo (CFG), que detecta y bloquea los intentos de secuestrar código, una nueva característica introducida en Visual Studio 2015 (y soportada en Windows 8.1 y Windows 10). Puedes ver más info de CGC en esta entrada.

- Soporte completo de alarmas e informes de Modern Internet Explorer, o Desktop IE con el Modo de Protección Mejorado activado.

Puedes descargar EMET 5.2 desde microsoft.com/emet o directamente desde aquí.

pd. Si EMET 5.2 bloquea tu Internet Explorer, haga clic aquí para leer la solución. Microsoft es consciente de este problema y trabaja para arreglarlo.

reCAPTCHA: fácil para humanos, ¿difícil para bots?

Si comentáis en blogs como éste veréis que, desde finales del año pasado, Google utiliza un nuevo captcha al que llaman NO CAPTCHA reCAPTCHA que la mayoría de las veces se presenta como un simple checkbox en el que basta con hacer sólo un click para demostrar que no somos un robot:


Partimos de la base de que varios estudios demuestran que actualmente la IA es capaz de resolver el clásico texto distorsionado el 99,8% de las veces, así que había que evolucionar sí o sí. Por ello ahora reCAPTCHA no sólo usa texto distorsionado, si no que añade un buen número de técnicas de riesgo -antes, durante y después- para diferenciar hombres de máquinas.

¿Es posible que se haya mejorado la seguridad de estos captchas y que incluso sean más efectivos sin tener que escribir los clásicos (a veces casi ilegibles) caracteres distorsionados? Eso es lo que aseguran con la nueva API y es que, aunque pudiera parecer sencillo, como comentamos detrás de ese modesto checkbox dicen que hay una alto grado de sofisticación...

Para ponerlo a prueba y medir su efectividad real he empezado escribiendo un bot muy sencillo en Python basado en el reconocimiento de patrones con NumPy y OpenCV que vi en una entrada, muy útil para hacer trampas buscando a Wally/Waldo por cierto.

Scripts PowerShell para enumeración en DA

Interesante repositorio PowerShell-AD-Recon de PyroTek3 en:
https://github.com/PyroTek3/PowerShell-AD-Recon

C:\temp>powershell -exec bypass -Command "IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PyroTek3/PowerShell-AD-Recon/master/Discover-PSMSSQLServers'); Discover-PSMSSQLServers"
Processing XX (user and computer) accounts with MS SQL SPNs discovered in AD Forest DC=UNLUCKY,DC=NET

Domain           : UNLUCKY.NET
ServerName       : unlucklaptop.unlucky.net
Port             :
Instance         : SQLEXPRESS
ServiceAccountDN :
OperatingSystem  : {Windows 8.1 Enterprise}
OSServicePack    :
LastBootup       : 1/10/2015 11:47:55 AM
OSVersion        : {6.3 (9600)}
Description      :

Domain           : UNLUCKY.NET
ServerName       : unluckserver.unlucky.net
Port               : 1433
Instance           :
ServiceAccountDN   : {CN=Svc-blahblah,OU=Service Accounts,,DC=unlucky,DC=net}
OperatingSystem    :
OSServicePack      :
LastBootup         : 12/31/1600 4:00:00 PM
OSVersion          :
Description        :
SrvAcctUserID      : svc-userid
SrvAcctDescription : ---SNIP--- 
   

El resto del repo tiene otros scripts también muy útiles.

https://github.com/PyroTek3/PowerShell-AD-Recon/blob/master/Discover-PSMSExchangeServers
-Encuentra servidores Exchange

 
https://github.com/PyroTek3/PowerShell-AD-Recon/blob/master/Find-PSServiceAccounts
-Obtiene una lista de todas las cuentas de servicio. Estas son siempre buenas candidatas para encontrar algunas por defecto.

 
https://github.com/PyroTek3/PowerShell-AD-Recon/blob/master/Get-PSADForestInfo
-Forest Info

 
https://github.com/PyroTek3/PowerShell-AD-Recon/blob/master/Discover-PSInterestingServices
-Busca una lista de atributos a lo largo del bosque. Esto llevará un LARGO tiempo en bosques/dominios grandes.

 

lista por defecto de atributos:
        [String[]] $StandardSPNServiceFilter = ("ADAM","AGPM","bo","CESREMOTE","Dfs","DNS","Exchange","FIMService","ftp","http","IMAP",

"ipp","iSCSITarget","kadmin","ldap","MS","sql","nfs","secshd","sip","SMTP","SoftGrid","TERMSRV",
"Virtual","vmrc","vnc","vpn","vssrvc","WSMAN","xmpp"),

Fuente: carnal0wnage

Llega CSI:Cyber sobre delitos *ciber*néticos

El pasado jueves 5 de marzo FOX estrenó en nuestras pantallas el cuarto spin-off de CSI que apunta a la tecnología y al underground con un nombre bastante tópico y predecible: CSI: Cyber

La trama gira en torno a la agente especial Avery Ryan (Patricia Arquette) que dirige la División de Delitos Cibernéticos en Quantico, Virginia, una unidad que se encarga de perseguir las actividades ilegales que nacen en la Red. De hecho el personaje de Avery ya apereció en otros dos capítulos (316 y 323) de la famosa serie y se inspira en la vida de Mary Aiken, una psicóloga experta en cibercrimen que además se ha convertido en asesora de la serie. 

El año pasado se estrenó en CBS USA el piloto "puerta trasera" y los capítulos de la primera temporada son:

1. Kidnapping 2.0.
2. CMD:/Crash
3. Click Your Poison
4. L0m1s
5. URL, Interrupted
6. Fire Code
7. Killer en Route
8. Selfie 2.0
9. Crowd Sourced
10. The Evil Twin
11. Ghost in the Machine
12. Family Secrets

μTorrent instala de forma silenciosa software de minería de bitcoins

Los usuarios que hayan instalado o actualizado el popular cliente de BitTorrent uTorrent 3.4.2 Build 28913 (mediados de enero - 6 de marzo) se han llevado también una desagradable sorpresa: también instala sin avisar un software de minado Bitcoins:

"Los usuarios del servicio de intercambio de archivos uTorrent se quejan de que la última actualización de software está instalando silenciosamente una pieza de software no deseada llamada Epic Scale, que es básicamente un software de minería de Bitcoins"


Realmente Epic Scale es un pequeño grupo de desarrolladores que juran y perjuran que destinan sus beneficios a la caridad (Watsi y Proyecto Inmunidad), porque están empezando y quieren tener una gran impacto. También quieren colaborar con investigaciones como la del UCSF para ayudar con los cálculos de genoma y algunos más. 

Eso está muy bien pero ¿no han pensado preguntar a los usuarios de μTorrent si quieren o no instalarlo?. Evidentemente lo han pensado, pero han decidido no hacerlo porque este famoso cliente de torrents tiene la nada despreciable cifra de 150 millones de usuarios al mes...

Además y para más inri el desinstalador no elimina (intencionadamente) completamente la aplicación y derivan a los usuarios a seguir unas instrucciones... en fin...


Fuente: http://www.reddit.com/r/technology/comments/2y4lar/popular_torrenting_software_%C2%B5torrent_has_included/

Libro: Hacking and Penetration Testing with Low Power Devices

Este libro de Philip Polstra editado por Syngress es una guía práctica que muestra cómo realizar pruebas de intrusión usando pequeños dispositivos de baja potencia que pueden ocultarse fácilmente y ser alimentados por baterías.

Concretamente se utiliza una distribución de pentesting y forense llamada The Deck, que funciona en BeagleBoard-xM, BeagleBone y BeagleBone Black y está optimizada para tener un consumo eléctrico muy bajo y que viene con distintos módulos para coordinar ataques mediante un ejercitó de dispositivos interconectados por 802.15.4 (MeshDeck), hacer investigación forense de dispositivos USB (4Deck) o delivery y pentesting de drones (AirDeck).

Tabla de contenidos:
Meet the Deck
A Brief Introduction to the Beagle Family
Installing a Base Operating System
Filling the Toolbox
Powering the Deck
Input and Output Devices
Building an Army of Devices
Keeping your Army Secret
Adding Air Support
Future Direction


ElServier: http://bit.ly/1pyT6wd
Amazon: http://amzn.to/1t4nQuc

Un fallo en la web de GoPro revela las contraseñas WiFi de las cámaras de sus usuarios

Las cámaras GoPro tienen fama de ser ligeras y ultra-resistentes. La gente las usa para el ciclismo de montaña, motociclismo e incluso para los deportes acuáticos.
La popular 'action cams' pueden controlarse desde el smartphone a través de una aplicación que te permite grabar, acceder a tus fotos o subirlas a las redes sociales. Para hacerlo, el usuario tiene que conectarse a un punto de acceso inalámbrico creado por la propia cámara mediante una contraseña definida por el usuario...

Ilya Chernyakov, un investigador de seguridad en Israel, intentaba recuperar la contraseña de la cámara de un amigo mediante el procedimiento del fabricante:

"Si necesitas 'resetear' la configuración de la wifi, tienes que seguir las instrucciones dadas en el sitio web de Gopro. Es un procedimiento bastante sencillo, 'Siguiente', 'Siguiente', 'Finalizar' y obtienes un enlace a un fichero ZIP. Hay que descargar el fichero, y copiarlo a la tarjeta SD, para finalmente reiniciar la cámara." explicó en su blog.

Configurar SSL en Tomcat parte 2 - configurar el conector y la aplicación web

Para configurar SSL en Tomcat en la entrada anterior veíamos como preparar el keystore e instalar un certificado firmado por una CA. Ahora veremos cómo configurar el conector (por defecto AJP) y la webapp correspondiente para usar SSL.

Empezaremos editando el fichero de configuración del servidor "$CATALINA_BASE/conf/server.xml" y añadiremos un conector (o descomentaremos los existentes):

<Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="443" server="prueba"/>
 ...

 <Connector
    SSLEnabled="true" acceptCount="100" clientAuth="false"
    disableUploadTimeout="true" enableLookups="false" maxThreads="25"
    port="443" keystoreFile="mi_keystore.jks" keystorePass="mi_contraseña"
    protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"
    secure="true" sslProtocol="TLS" />
   
Fijaros que hemos especificado la ruta del keystore creado anteriormente y la contraseña correspondiente. Al reiniciar Tomcat el servidor debería ser ya accesible mediante https://servidor/prueba.

Después forzaremos que la aplicación web funcione con SSL.

Configurar SSL en Tomcat parte 1 - preparar el keystore

Al publicar un servidor Tomcat en Internet es recomendable permitir sólo HTTPS y acceder a él mediante un certificado digital firmado por una CA.
El proceso para activar SSL en Tomcat se divide en dos partes: 1/ crear un keystore funcional y 2/ configurar los conectores y aplicaciones para usar SSL. En esta primera entrada, de una serie de dos, veremos la parte acerca del keystore.

Las claves que Tomcat usará para las transacciones SSL se almacenan en un fichero protegido por contraseña llamado "keystore". El formato de este fichero es el estándar de Java JKS ("Java KeyStore") y es creado por la utilidad keytool que incluye el JDK. Para crearlo podemos hacerlo de dos formas:

- importando una clave existente:

keytool -import -alias prueba -file certificado.cer -keystore mi_keystore.jks -storepass changeit

-  o creando un nuevo keystore desde 0:

keytool -genkey -alias prueba -keyalg RSA -keysize 2048 -keystore mi_keystore.jks