Buscador de directorios y ficheros con permiso 777

En entornos web es bastante peligroso y considerado como un agujero de seguridad el tener directorios o ficheros con los permisos 777, es decir, permiso de todo para todos.

Estos recursos pueden usarse por atacantes como vectores de acceso a nuestro sistema. Debemos evitar este tipo de situaciones y chequear de vez en cuando la situación de nuestro sistema de ficheros y en especial el directorio raíz del servidor web, comúnmente /var/www/html

El comando find nos puede ayudar en esta tarea. Por ejemplo:

[djlongo@djlongo ~]$ find /var/www/html -perm 777 -print

Otros parámetros importantes que admite find y que nos pueden ayudar a encontrar ficheros sospechosos pueden ser -nouser, -nogroup, -empty, etc

Además, sobre los resultados que devuelve find se pueden concatenar acciones usando el parámetro -exec orden

. Por ejemplo:

[djlongo@djlongo ~]$ find /var/www/html -type f -perm 777 -exec rm {} \;

En este ejemplo las llaves se reemplazarían por el nombre del fichero que se está procesando.

Puedes encontrar más información sobre find en las páginas del manual (man) de tu sistema.

Auditoría en SAP, ¿y si no está activada?

Todo administrador de SAP con un poco de experiencia conoce la transacción SM20. Esta sirve como herramienta perfecta para conocer si un usuario determinado ejecutó una transacción en SAP o bien que usuarios ejecutaron una determinada transacción entre otras cosas (SM19 y SM18 para activar y gestionar respectivamente).

El motivo de este artículo es determinar como obtener esa información en el caso de que no tengamos activado el log de auditoria en SAP. En un artículo posterior hablaré en más profundidad de la SM20

Como digo, en caso de emergencia y solo si no tenemos activada la auditoria en el sistema podemos obtener esa información con la transacción ST03N. La función principal de esta transacción es la de evaluar la performance de ejecución en los distintos servidores de aplicación pero también se puede usar para nuestro objetivo.

Dentro de la transacción, en Modo Experto, veremos una porción donde se encuentran las instancias de nuestro SAP. Debemos seleccionar una instancia en esta ventana y un período. Luego vamos a la ventana que se encuentra inmediatamente abajo, seleccionamos la vista Estadística de Usuario – Perfil de Usuario. En la ventana principal vemos todos los usuarios con sus datos de performance, y si hacemos doble click en los mismos podemos ver que transacciones ejecutaron en el período de tiempo previamente seleccionado.

Si queremos obtener que usuarios ejecutaron una transacción solo tenemos que usar el perfil de transacción en vez del perfil de usuario. El procedimiento sería el mismo.

¿Quién está usando mi puerto?

A veces se necesita saber que proceso está usando un determinado puerto en nuestro servidor. En esta pequeña guía muestro como hacerlo en tres sistemas operativos: AIX, Linux y Windows

.

En AIX

$ netstat -Aan | grep port-number

El número en exadecimal en la primera columna es el address of protocol control block (PCB) 
el cual debemos usar con este otro comando con el usuario root para que nos devuelva el id
 del proceso

$ rmsock addr-of-PCB tcpcb

Una vez que tenemos el id del proceso solo nos bastaría con un $ ps -ef | grep  para 
averiguar el nombre.

En Linux

# netstat -anp | grep port-number
Alternativamente también se puede usar # fuser -n tcp 

En Windows

C:\ netstat -aon | findstr port-number
El número en la última columna es el id process. Solo nos queda abrir el "Windows Task Manager"
para averiguarl con el nombre del proceso que se corresponde con ese id process.

Buena publicidad de IBM

Forzado de EHPI para que actualice solo ABAP o JAVA

En este último mes he estado trabajando en un proyecto de actualización de un CRM de la versión 6.0 (2007) a la versión CRM 7.0 EHP1.

En el proceso he tenido que usar el programa EHPI en varios momentos. No se si es por mi desconocimiento o por que el proceso en realidad lo requiere, he tenido que forzar el EHPI para que se ejecute solo con el stack Java y otra vez solo con el stack ABAP.

La forma de hacerlo es pasando al EHPI parámetros en el momento de ejecutarlo. Esto no está muy documentado así que los indico aquí por si le es útil a alguien.

  • Sin la parte Java (solo abap):
    ./STARTUP -srvarg=/DSUService/javadisabled=true
  • Sin la parte abap (solo java)
    ./STARTUP dsupg_base70
Distribuir contenido