Exportar BD Access (MDB) a MySQL (u otro Engine)

0

1 September 2011 at 12:48 Filed in:Debian | Linux | MySQL

La herramienta mdbtools permite entre otras cosas exportar el esquema y los datos de un archivo de access a sentencias SQL que pueden ser importadas en un servidor MySQL sin problema alguno.

Estas herramientas están disponibles en los repositorios de debian y por extensión en los de ubuntu, para instalarlas es tan simple como hacer:
$ aptitude install mdbtools

Con el siguiente set de instrucciones, lo que conseguimos es exportar la estructura de la bd y sus datos en dos archivos separados:
$ mdb-schema BD.mdb mysql > BD_esquema_mysql.sql
$ mdb-tables -S -1 BD.mdb > BD.txt
$ for tabla in `cat BD.txt`; do mdb-export -R \; -I BD.mdb ${tabla}; done > datos.sql
$ rm BD.txt

Si lo que queremos es exportar los datos de cada tabla en archivos separados es tan sencillo como modificar el for por el siguiente:
$ for tabla in `cat BD.txt`; do mdb-export -R \; -I BD.mdb ${tabla} > datos_${tabla}.sql; done

Repetir directorio/archivo

0

14 November 2010 at 2:45 Filed in:Programacion | Seguridad Web

Muchas veces cuando realizamos una auditoria de seguridad web, uno de las vulnerabilidades que buscamos es la de Path Traversal por este motivo hemos realizado este script en Perl, el cual nos genera una salida con el path a repetir, para usarlo en la busqueda de la vulnerabilidad.

Uso:

situ@tux $ perl repetir-path.pl
Uso: repetir-path.pl

Directorio/archivo [ej -> /etc/passwd]
Numero de veces que vamos a repetir [ej -> 10]
[Archivo donde guardamos el resulado -> salida.txt]

Codigo Fuente:

CODE:
  1. #!/usr/bin/perl
  2. if ( @ARGV != 3 ) {
  3.  
  4.     die "\nUse: $0 <path> <cantidad de repeticiones> <salida>\n\n"
  5.  
  6.       . "   <path>    Directorio/archivo         [ej -> /etc/passwd]\n"
  7.       . "   <cantidad de repeticiones>    Numero de veces que vamos a repetir [ej -> 60]\n"
  8.       . "   <salida>    [Archivo donde guardamos el resulado -> salida.txt]\n"
  9.       ;
  10.  
  11. }
  12. $path = $ARGV[0];
  13. chomp $path;
  14.  
  15. $repetir = $ARGV[1];
  16. chomp $repetir;
  17.  
  18. $salida = $ARGV[2];
  19. chomp $salida;
  20.  
  21. open (F,">> $salida");
  22.  
  23. $punto = "";
  24.  
  25. for ($i = 1; $i <= $repetir; $i++){
  26.  
  27.    $punto="$punto" . "../";
  28.     print "$punto" . "$path\n";
  29.    print F "$punto" . "$path\n";
  30.  
  31.  
  32. }
  33.  close (F)

Nuevo diseño, nueva versión!

0

13 November 2010 at 13:00 Filed in:General

Después de mucho tiempo sin actividad, vamos a retomar este proyecto, lo teníamos un poco abandonado pero prometemos publicar nuevos post y seguir adelante!

Comenzamos con una nueva versión de WordPress y un diseño mas renovado ;-)

Forzar a Safari a abrir las paginas en nuevas pestañas

0

19 July 2009 at 14:23 Filed in:Safari

Para ello hay que abrir una ventana de Terminal y escribir esto:
defaults write com.apple.Safari TargetedClicksCreateTabs -bool true

Si cambiamos de opinion y queremos volver todo para atras:
defaults write com.apple.Safari TargetedClicksCreateTabs -bool false

Curso de Seguridad en Aplicaciones Web

0

9 June 2009 at 16:44 Filed in:General

No somos de hacer propagandas, pero en este caso como es un amigo el que dicta el curso lo vamos hacer.

Les paso el link para la gente que le interese mas informacion del curso.

http://www.bonsai-sec.com/es/education/web-security-buenos-aires.php

Saludos.

Ignorar los acentos en las búsquedas con SQL Server

0

11 May 2009 at 13:19 Filed in:SQL Server

El truco está en cambiar la intercalación (Collation en inglés) del campo en el que quieres buscar o bien de la base de datos completa, para que utilice alguna de las intercalaciones que ignoran los acentos, que son aquellas acabadas en _IA (Insensitive Accent).

Por ejemplo si tenemos la siguiente consulta y utilizamos "San" como valor de entrada:

SELECT Nombre, ApellidoPaterno, ApellidoMaterno
FROM Empleados
WHERE ApellidoPaterno LIKE '%' + @Valor +'%'

Esto NO nos devolverá los empleados con apellidos cómo "Sánchez". Para arreglar esta situacion simplemente indicamos que la comparación (LIKE) deberá hacerse utilizado una intercalación especifica, una que no sea sensible a los acentos. Entonces:

SELECT Nombre, ApellidoPaterno, ApellidoMaterno
FROM Empleados
WHERE ApellidoPaterno LIKE '%' + @Valor +'%' COLLATE SQL_LATIN1_GENERAL_CP1_CI_AI

Con esto solucionamos el problema y con el valor establecido a "San" obtendríamos entre los resultados a "Sánchez", "Sandoval", etc.

CheckList Linux

0

12 April 2009 at 5:52 Filed in:Uncategorized

Hemos creado un script en perl el cual todavia se encuentra en fase beta :p, este tiene como objetivo darnos un panorama del estado de seguridad de nuestro sistema.

Pueden obtenerlo de:  https://sourceforge.net/projects/checklistlinux/

Saludos, y espero que los ayude en su labor.

Arbol gráfico de todos los subdirectorios

0

12 April 2009 at 5:46 Filed in:Uncategorized

Con la siguiente secuencia de comandos podemos listar nuestros subdirectoios en forma grafica.

CODE:
  1. ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/   /' -e 's/-/|/'

Fuente: http://rm-rf.es/unix-arbol-grafico-de-todos-los-subdirectorios/

Renombrar todos los archivos de minúsculas a mayúsculas (o viceversa)

0

8 March 2009 at 14:22 Filed in:Uncategorized

Este es un pequeño script que me salvó muchas veces a la hora de bajar un DVD y encontrarme todos los nombres en minúsculas (bien savemos que la carpeta VIDEO_TS debe estar en mayúsculas, así como todo su contenido...)

De minúsculas a mayúsculas:
find . -type f|while read f; do mv $f `echo $f |tr "[:lower:]" "[:upper:]"`; done

De mayúsculas a minúsculas:
find . -type f|while read f; do mv $f `echo $f |tr "[:upper:]" "[:lower:]"`; done

Deshabilitar mod_security para todos los dominios

0

3 March 2009 at 12:11 Filed in:Uncategorized

Para deshabilitar el modulo del Apache mod_security para todos nuestros dominios debemos realizar el siguiente procedimiento:
# a2dismod mod-security2
# apache2ctl restart

Si obtenemos el siguiente error:
Syntax error on line 53 of /etc/modsecurity2/modsecurity_crs_10_config.conf:
Invalid command 'SecRuleEngine', perhaps misspelled or defined by a module not included in the server configuration.

Comentamos las lineas del archivo:
/etc/apache2/mods-enabled/mod-security2.load
/etc/apache2/conf.d/mod-security2.conf
Y con esto nos levanta el apache.

No es el mejor metodo para aveces nos saca de los apuros.