Entradas

JAVA Como prevenir Directorio Transversal Directory Traversal

Prevenir ataque de directorio transversal
Prevent  Transversal Directory Attackhttp://ayudasdesarrollo.blogspot.com/2017/03/owasp-transversaldirectory-java.html


HOLA !, referente a la falla de seguridad OWASP, definida en los siguientes enlaces:

https://www.owasp.org/index.php/Testing_Directory_traversal/file_include_(OTG-AUTHZ-001)
https://en.wikipedia.org/wiki/Directory_traversal_attack

La implementación para prevenir esto en nuestras aplicaciones java WEB es la siguiente:

import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * * @author davidandrade */ public class RestrictURL implements Filter { private FilterConfig fcgConfFiltr_t; private static final org.apache.log4j.Logger log = org.apache…

Too many connections limite de conexiones excedido

Cuando una conexion a mysql nos genera el mensaje "too many connections" quiere decir que el limite de conexiones se ha excedido y por tal motivo no permite ni una mas.

Por defecto mysql trae un limite de 250 conexiones y al parecer nuestros programas que consumen la base de datos estan sobre pasando ese limite.

En versiones anteriores de sistemas operativos era tan simple como agregar una variable a un archivo, pero con las nuevas versiones de CentOS ya no es tan sencillo.


Pasos para corregir este tema:

1. Cambiar el limite maximo de archivos del SO para mysql.

En el archivo /etc/security/limits.conf

AGREGAR:

mysql hard nofile 65535
mysql soft nofile 65535

Luego en:
/usr/lib/systemd/system/mysqld.service, en la sección de servicio [service]

LimitNOFILE=65535

2. Ahora si lo que estabamos acostumbrados:

En el archivo /etc/my.conf
AGREGAR:

[mysqld]

max_connections=2500

3. REINICIAR

systemctl daemon-reload
systemctl restart mysqld

4. VERIFICAR

mysql> show variables like '…

Como instalar open fire para chat interno.

Imagen
En ubuntu  server 16 (OJO nunca se debe poner el super usuario todo con SUDO): Debe instalar JAVA:
sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java7-installer
El instalador se disparara automaticamente, usted debe aceptar todas las condiciones y restriccioones, una vez finalizado, este queda instalado en:
/usr/lib/jvm/java-7-oracle
Esta ruta se debe poner en el JAVA_HOME, para eso y para que quede permanente vamos con este comando:
nano /home/USUARIO/.profile 
Y agregamos al final del archivo:
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
Adicional lo hacemos desde la linea de comandos:
# export JAVA_HOME=/usr/lib/jvm/java-7-oracle
Ahora descargamos OPENFIRE sudo wget http://download.igniterealtime.org/openfire/openfire_4.0.2_all.deb
Una vez descargado, procedemos a instalarlo:

sudo dpkg -i openfire_4.0.0_all.deb

Luego de que se instala el servicio debemos editar la configuracion:


sudo nano /etc/sysconfig/openfire 
La ultima linea debe quedar asi…

Glassfish 4.4.1 falla con jax rs y json

¿PORQUE FALLA MI WEB SERVICE JAX RS CON GLASSFISH 4.1.1 ?

Throw error on glassfish 4.1.1


java.lang.NoClassDefFoundError:Couldnot initialize class org.eclipse.persistence.jaxb.BeanValidationHelper
Este es mi codigo:

package com.dyalogo.cbx.api;

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

/**
 *
 * @author DYALOGOSAS.davidandrade
 */
@ApplicationPath("api")
public class JAXRSConfiguracion extends Application{

}

@Path("mail/sendmailservice")
public class JAXRSEnviarCorreoElectronico {

    public static final Logger log = Logger.getLogger(JAXRSEnviarCorreoElectronico.class.getName());

    @POST
    @Produces(MediaType.APPLICATION_JSON)
    @Consumes({"application/json"})
    public ObjReturnDATA sendEmail(WSData config) {

}



Basicamente porque glassfish tiene un error en la version 4.4.1 pero la solucion es facil:

Descarga este archivo: https://mega.nz/#!Ck0lVSRA!_KIjTl_8scQrak7jNTBepv3oqSKgeYsAVqjlvAarTbU

Reemplazalo en /$GLASSFISHI…

Como configurar un servidor de desarrollo

Imagen
Bienvenidos !!!!!!

En este blog encontraremos como configurar un servidor de desarrollo con las siguientes tecnologias:


Sistema operativo: Linux Centos 5.
Manejador de proyectos: Redmine 2.2.3
Controlador de versiones: Subversion 
Web: apache

(SE ASUME QUE LA INSTALACION DEL SISTEMA OPERATIVO YA SE ENCUENTRA REALIZADA)

Estos son los pasos para realizar la instalacion y configuracion completa:


PASO 0: Preliminares:

Ejecutamos por linea de comandos los siguiente:


yum -y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql mysql-server mysql-devel gcc gcc-c++

Creamos un directorio para  tener todos los instaladores

mkdir /home/instaladores
cd /home/instaladores



PASO 1: INSTALANDO REDMINE...


En la consola del equipo se debe ejecutar los siguientes comandos:

1.1. Obtenemos las librerias necesarias para la instalacion:


wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz




1.2. Configuramos e instalamos yaml.

tar xzvf yaml-0.1.4.tar.gz
cd yaml-0.1.4
./configure --prefix=/u…