Archivos en la Categoría 'Sistemas'



Comparando SELinux con OpenBSD…

Estaba el otro día leyendo los feeds mientras veía los entrenamientos de F1 del gran premio de China y leí un título interesante: SELinux vs. OpenBSD se titulaba el artículo. Coño, a ver que cuentan…

Pues quieren comparar SELinux que es lo que es con OpenBSD que también es lo que es. Los argumentos son de lo mejorcito:

  • Es complejo: Vale, no es fácil, aunque distros como Fedora y RedHat creo que tienen asistentes. ¿Tiene OpenBSD algo tan potente? ¿Hasta dónde llega TrustedBSD? Solo hay que buscar un poco por internet para leer preguntas como Does OpenBSD have something similar to the NSA`s SELinux, RSBAC, PaX stack smashing protection, Grsecurity etc? y leer esta joya de respuesta: OpenBSD has a “secure-by-default” approach with focus on security and code correctness. There`s no need for extra addons like SELinux and grsec kernel patches.
  • Insinuan, o me lo parece a mi, que APPArmor es mejor que SELinux cuando APPArmor tiene al menos que yo conozca, limitaciones, como que no permite controlar sockets, o que se referencia a los ficheros por su ruta y no mediante labels en el sistema de ficheros (Como si de una ACL o atributo extendido se tratase). Aquí una comparación de ambos.

Os dejo un artículo que me gusta mucho ya que explica muy bien como funciona PaX (Parte de la suite GRSecurity para Linux, que aunque no tenga nada que ver con SELinux, es un elemento más en la fortificación de un sistemas Linux) y W^X de OpenBSD.

Vamos, que en mi opinión no es solamente qué se usa, sino cómo se usa y como de implementa, y en mi opinión Linux ofrece más herramientas para fortificar el sistema que un sistema OpenBSD y quien no quiera ver más allá de la calidad del código en mi opinión no está haciendo una buena evaluación de todo el rol. OpenBSD todos sabemos que tiene fallos. Pocos, pero ahí están y sus paquetes tambien tienen fallos, y los paquetes no son parte del core, luego no son auditados, luego la misma cagada que comete el devel de determinada aplicación de lo que sea en Linux, puede cometerlo en el paquete de OpenBSD (Si lo incluye, claro, y si tiene esa misma versión). Y digo yo… de que sirve tener un sistema base con un muy buen código si luego tu aplicación que escupe html o correo es vulnerable? Creo que es ahí donde entra PaX, SELinux, RSBAC, etc intentando que la explotación de la vulnerabilidad no sea tan fácil de llevar a cabo…

Esa es mi opinión. Un saludo.

Listas de control de acceso en Linux

Hace tiempo que tenía pensado escribir algo al respecto y hoy ha sido el día que me sentía con ganas. Hay veces que me resulta incómodo manejar un sistema linux con multiples usuarios en lo que a permisos de fichero se refiere. En resumidas cuentas, el método UGO (User Group Other) está bien si tenemos un sistema monousuario, pero cuando tienes varios usuarios se hace insostenible, además de degradar la seguridad. Explicaré un poco, sin extenderme, como las ACL pueden solucionarnos el día a día, o al menos hacernosla más cómoda.

Comenzaremos preparando el sistema de ficheros, que en mi caso es ext3 (Todo sistema de ficheros que soporte ACL servirá). Necesitaremos meter en el fichero /etc/fstab la opción acl y luego remontar la partición:

# mount -o remount /dev/hdx

Continuaremos con las ACL sobre el directorio /var/www, por ejemplo. Los ficheros que contiene ya han sido creados con anterioridad, por lo que tendremos que aplicar la ACL recursivamente, dándole al usuario www-data permisos de lectura y ejecución sobre los ficheros/directorios recursivamente.

# setfacl -R -m u:www-data:r-x /var/www

Esto es como utilizar chmod, por lo que estamos en las mismas. Lo bonito, lo que más me gusta, son las Default ACL, que podemos decir que es una especie de heredar permisos del directorio padre. Imprescindibles. La idea será que todo elemento nuevo creado dentro de /var/www herede determinados permisos. Las ACL por defecto solamente se pueden aplicar a directorios, y si intentáis aplicársela a un fichero os mandará a tomar por el saco sutilmente.

# setfacl -d -m u:www-data:r-x /var/www

Lo que acabamos de hacer está bien si comenzamos a crear el arbol de directorios, pero imaginemos que tenemos el directorio /var/www/web1/upload. Ese directorio no se verá afectado por la ACL por defecto, por lo que haremos una cosilla, buscaremos todos los directorios y le aplicaremos la ACL:

# find /var/www -type d -exec setfacl -d -m u:www-data:r-x {} ;

Ahora vamos a comprobar que las ACL se han aplicado bien, algo muy importante. El comando es getfacl y su uso es bien sencillo para lo que vamos a hacer:

# getfacl /var/www
getfacl: Removing leading “/” from absolute path names
# file: var/www
# owner: root
# group: root
user::rwx
user:www-data:r-x
group::r-x
mask::r-x
other::r-x
default:user::rwx
default:user:www-data:r-x
default:group::r-x
default:mask::r-x
default:other::r-x

Vaya! other tiene permiso de lectura y ejecución en ese directorio. No me gusta eso…

# setfacl -R -m other::— /var/www
# find /var/www -type d -exec setfacl -d -m other::— {} ;

Ahora queda utilizar getfacl como hicimos antes para comprobar que los permisos son correctos.

Al igual que hemos utilizado other:: podríamos utilizar user:: o group::, que son elementos especiales.

Antes he puesto un ejemplo en el que aplicaba determinados permisos a un usuario sobre un fichero/directorio. Para hacer lo mismo pero con un grupo, se utilizará:

# setfacl -m g:NombreGrupo:permisos /var/www

Hasta ahora hemos aplicado nuevos permisos, pero por si existe la duda, modificarlos es idéntico, utilizando el flag -m y modificando el penúltimo elemento. Supongamos que queremos que el usuario www-data tenga permisos de escritura en determinado directorio:

# setfacl -R -m u:www-data:rwx /var/www/web1/upload

Ese directorio y todos los existentes podrán ser modificados por ese usuario, pero… ¿Y los ficheros nuevos? No, podrán ser creados, pero no modificados posteriormente, pues no hemos establecido una ACL por defecto para ese usuario con permisos de escritura para los ficheros/directorios nuevos que se vayan a crear en ese directorio, o si existe, puede que sea incorrecta, por lo que lo estableceremos como necesitemos:

# find /var/www/web1/upload -type d -exec setfacl -d -m u:www-data:rwx {} ;

También puede ocurrir algo muy común, que nos equivoquemos e introdujamos un usuario/grupo incorrecto en la ACL, ensuciando esta. Pana ACL usaremos el flag -x.

# setfacl -x u:www-data /directorio/secreto
# setfacl -d -x u:www-data /directorio/secreto

Existen otras opciones interesantes de setfacl como eliminar solamente las ACL por defecto con el flag -k o eliminar todas las ACL normales y por defecto con el flag -b.

Me queda decir que al igual que podéis establecer los permisos con letras, lo podéis hacer en octal, de 0 a 7:

# setfacl -m u:www-data:5 /elemento2

Tenéis algunos ejemplos interesantes que no he ilustrado como copiar las ACL de un elemento a otro en el manual, man setfacl.

Borrado seguro en Mac OS X

Cuando me vine a Madrid tuve que coger lo más importante de mi ordenador de sobremesa y meterlo a mis discos USB y mi portátil. Por las prisas decidí crear unos volúmenes RAR y copiarlos por SSH al portátil la noche antes. En el portátil utilizo FileVault de Mac OS X para el cifrado de mi directorio personal. Por otro lado los datos no sensibles están en otra partición y lo sensible están en imágenes DMG cifradas con AES-128. Pues un despiste hizo que descomprimiese los volúmenes RAR en un directorio normal. Luego los copie a la unidad cifrada y busqué una utilidad de borrado seguro para Mac OS X. Buscando un poco por la documentación oficial di con algo mejor, la utilidad de discos de Mac OS X, con lo que tendría una aplicación menos instalada (Odio tener miles de aplicaciones instaladas. Si te sirve lo que el sistema integra ¿Para qué instalar otra?).

Para utilizar el borrado de Mac OS X puedes utilizar el Vaciar papelera de forma segura o eliminar los datos como de costumbre y luego utilizar la Utilidad de discos para borrar el espacio libre con ceros. Basta con ir a dicha utilidad, seleccionar la partición que deseamos limpiar, ir a la pestaña Borrar y pulsar en Borrar espacio libre. Tenemos varias opciones, de 1, 7 y 35 pasos. Al Pulsar en Borrar espacio libre evidentemente reescribirá el espacio libre con ceros, sin perder datos, claro.

Si por el contrario quieres borrar la partición entera (léase formatear) con la pertinente pérdida de datos, pinchando en Opciones de seguridad escogemos el número de pasos, aceptamos y luego pinchamos en Borrar.

Quizá en otro post me anime a hablar algo acerca de FileVault, como funciona y demás, ya que no es la primera vez que leo que Es malo, desactívalo y no vale para nada. Vamos, lo de siempre.

Abierto el registro para el Microsoft Security Day

No quiero extenderme mucho, solamente invitaros a que visitéis este post, y si os parece interesante y factible, que os registréis en el Microsoft Security Day. Yo ya me he registrado y Churros también, aunque él como no cambien algo las cosas tendrá que asistir al IT Meeting de la empresa, esta vez celebrado en Bélgica, por lo que no podrá asistir.

Para ir haciendo boca, esta es una demo de un Security Day:

Los monjes de “Da SBS Code”

Entre nosotros tenemos a los monjes del final del vídeo promocional de SBS 2003 R2. La foto reveladora:

Monje de SBS

Una jornada productiva

Hoy que ya estoy en plenas facultades me dispongo a escribir el artículo.

Hace poco menos de un mes me apunté a otra de las conferencias que celebraba Microsoft, Informática64 y otras compañías del sector IT. A Chema se le ocurrió hacer una cena la noche antes con los ponentes, ya que muchos ponentes no son de Madrid, y el echo de hacer una cena y poder reunirlos a todos es algo que no se verá en mucho tiempo.

La cena fue en Casa Mingo, un restaurante asturiano cerca de Príncipe Pío. Eramos cosa de 20-22 personas. Allí tuve el placer de conocer a mi tocayo Ricardo Varela (a.k.a. Chico maravillas) y a José Parada (a.k.a. Padre Parada), así como Dani Kachakil, RomanSoft, Mandingo, Andrés Tarasco, Brero, Miguel, Aramosf, Knovas y alguien más que como siempre, se me olvida. Una vez cenamos fuimos a tomar algo a una cervecería Gambrinus cercana al restaurante, luego a una discoteca llamada 35 milimetros también relativamente cerca y finalmente fuimos a casa de uno de los asistentes donde entre más copas me enseñaban un código de intercepción SSL (Disponiendo de la clave privada, claro). Muy WhiteHat a la vez de instructivo.

Al final me vine a eso de las 5 para casa y me levanté a las 6 y media, con dos cojones. Hacía mucho que no me sentía así… creo que desde la última Euskal Encounter a la que asistí.

A las 8 de la mañana quedé con Churros para asistir a la charla, cogimos la línea C-4 y seguimos el itinerario de la otra vez. La gente fue llegando y al rato se abrieron las puertas. Una vez nos dieron los folletos de S21Sec entramos y cogimos un sitio curioso.

La jornada comenzó con Dani Kachakil y Pedro Laguna, con un tema algo masticado quizá, ya que en la anterior charla que hubo en Getafe el tema principal era la inyección SQL, inyección SQL a ciegas, basada en temporizadores, herramientas de automatización. Contenido interesante pero en mi caso ya visto, aunque no viene recordar.

Acto seguido salió Alberto Moro (a.k.a. Mandingo) junto con Román Medina (a.k.a. RomanSoft). El tema de la charla fue Como realizar un test de intrusión a una aplicación web, muy interesante, tocando muchos puntos clave. A Mandingo se le notaba más nervioso a la vez de necesitar más tiempo y estar menos apurado para dar con soltura la charla.

Había llegado el momento cumbre (¿La gente va solo por el cattering no?). Teníamos hambre y sed, y algunos en especial necesitábamos hidratarnos, por lo que se abrió el cattering con lo de siempre: Mini-napolitanas de crema con chocolate, palmeritas, pastas de té, café, zumo de naranja, etc. En este evento se notaba la mayor asistencia de gente, tanto en las charlas, que no quedaba un puñetero sitio libre, como en el cattering que estábamos a tope en la sala. Entre conversación y conversación un zumito, lo que hizo que el tiempo asignado para el tentempié se pasase volando.

Vuelta al sitio. Ahora aparecía en escena Andrés Tarasco de SIA. Personalmente fue la que más me gustó después de la charla del José Parada y de Chema. Me gusto mucho como llevó la charla, la explicación… muy buen locutor a la vez de técnico y conciso. A ver si le volvemos a ver pronto por aquí.

Y para cerrar la jornada José Parada nos dio unas nociones básicas de qué era LDAP, un directorio, un servicio de directorio, etc. Acto seguido Chema comenzó a explicarnos algo que yo desconocía por completo, Blind LDAP Injection a la vez que utilizaba el Reto hacking 4 y algunos servicios de directorio públicos a modo de ejemplo. Os recomiendo leer algo más a fondo acerca de ello, ya que está muy, muy interesante. Esta fue con diferencia la más interesante pues era algo totalmente nuevo para mi.

Bueno, ha sido una jornada productiva, además de estar invitados Churros y yo a visitar Microsoft Ibérica, algo que puede llegar a ser muy interesante.

Al margen de las charlas, Chema ha publicado en su blog unos artículos acerca de la interceptación de los usuarios y contraseñas de LDAP y como mitigarlo, así como otro artículo de LDAP SQL Injection y alguna foto del evento. Los vídeos y diapositivas de las charlas no se dónde lo colgarán. Se que los asistentes recibiremos un certificado de asistencia así como un link a las ppt y que ponentes como Mandingo y RomanSoft pondrán las diapositivas en su web.

Un saludo.

Otra charla más: Asegurate de que está seguro

Que sería de nosotros sin Chemita, que nos tiene al día de las charlas que se celebran por aquí. El día 4 de Octubre se celebrará otra en Getafe donde además contaremos con José Parada de Microsoft. El Churros y yo ya nos hemos pedido el día libre para asistir, que la otra a la que fuimos nos dejó muy buen sabor de boca. Si estás interesado en asistir o siemplemenente ver el temario visita la web de Informática64.

Bueno, aunque aún quedan días… os veo allí.

El dilema de contratar un VPS

Joder, vaya dilema esto de buscar servidores VPS económicos y que cumplan con las necesidades de uno mismo.

Primero, que sea barato. Eso es fácil, ya que desde 20 dólares tienes VPS básico y por 40 dólares algo con 512 de RAM, 300 GB de tráfico mensual, etc.

Segundo, qué tecnología utilizar. Aquí hay de todo, desde UML (User Mode Linux) a Xen Enterprise, pasando con OpenVZ, Virtuozzo, etc. Cada uno con sus ventajas y desventajas, aunque quizá el que mejor me convenga sea algo con Xen Enterprise.

Una vez escogida la tecnología de virtualización me voy a fijar en algo más importante, que quizá tendría que haber mirado antes, la empresa. No es lo mismo una empresa con 10 años de experiencia a la espalda, que una que lleva un año en el mercado.

Ahora vienen los límites… En ningún VPS que yo conozca puedes cambiar el kernel, luego olvídate de meter tu kernel compilado con soporte GRSecurity y PaX. O hacerlo monolítico. Es una limitación que no me gusta tener, pero creo que no me queda otra que pasar por el aro. Además, suelen crearte una partición raíz y pista, con limitaciones como no poder particionar a tu gusto y por lo tanto no poder montar determinadas particiones con nodev, nosuid, noexec, etc, o desplegar DRDB sobre determinados volúmenes. Bueno, siempre podemos crear un fichero, darle formato y montarlo con la opción loop de mount, pero perderemos rendimiento solo y cuando la carga de la máquina sea muy alta en I/O.

Una vez conozco algunas de las limitaciones de los VPS me doy cuenta de los pros y los contras:

Los pros

  • Son máquinas Xeon Dual Core y Quad Core con tecnología Intel VT, con grandes cantidades de RAM, RAID 1, etc.
  • Ellos se ocupan de tener a punto la máquina en lo que a hardware y conectividad se refiere.
  • Todo está alojado en un CPD como dios manda.
  • Ofrece reinicio en remoto, acceso de consola vía web y backups online (Sin parar el servicio, vaya).
  • Puedo reinstalar la máquina cuando me de la gana y cargar la plantilla que más me convenga.
  • Tengo un caudal de datos mensual desmesurado en mi caso.

Los contras

  • Si el kernel lo actualizan ellos. ¿Cómo se que ese kernel no tiene algún fallo conocido sin actualizar?
  • Al igual que en el punto anterior, la máquina host la administran ellos, y como un día creo que David Cervigón decía: La seguridad del host es muy importante, ya que tiene acceso a la memoria de todas las máquinas virtuales.
  • No puedo instalar lo que me de la gana como por ejemplo GRSecurity, PaX, SELinux, etc.
  • Desconozco que ancho de banda de pico que tengo, y supongo que tampoco me garantizarán un ancho de banda mínimo.
  • Aunque algunas empresas indican el número de VPS por core, eso no te garantiza una calidad de servicio.

En resumidas cuentas, esto quedará en casa por ahora, aunque creo que un mes de estos migraré todo al VPS.

En lo que a ofertas se refiere, estoy ojeando SliceHost y NetActuate. En principio creo que me inclinaré por el plan de 512 de RAM de NetActuate. La empresa me ha convencido y podemos ver donde tienen alojado todo en una presentación en flash. El CRG Market Post Tower da la impresión de ser como el CPD de Banco Banesto, pero en EEUU.

Bueno, espero que todo aguante hasta entonces.

Qué curioso

Estos días ando automatizando backups con Norton Ghost 12. Está muy bien tener las backups hechas, pero si no probamos la restauración tras un desastre no sirve para nada. Pues siguiendo el manual de Norton Ghost 12, arranqué con el CD y vi el Windows is loading files… típico de una instalación de Windows Vista. En este momento pensé: Coño, ¿Me habré equivocado de ISO?. Pues no xD. Luego sale la barrita de progreso del arranque y finalmente un panel donde aceptamos una licencia de Symantec, nos cuenta que lo de Microsoft es de Microsoft y lo de Google de Google (Google Desktop Search) y bla bla. Una vez aceptamos carga la utilidad de recuperación de Norton Ghost con todo lo necesario como por ejemplo:

  • Recuperar ficheros individualmente o el sistema al completo.
  • Analizar el disco en busca de virus, errores de disco, explorar el disco duro, o abrir una shell.
  • Configurar las direcciones de red, arrancar el cliente ligero de PCAnywhere, arrancar servicios de red, etc.
  • Editar el boot .ini, ver la tabla de particiones, cambiar la partición activa, etc.

En mi caso las backup se almacenan en red, por lo que tendremos que asignar una IP al host y luego, montar un recurso compartido como unidad Z, por ejemplo. Una vez tengamos el recurso montado mediante unidad de red podemos utilizar la herramienta de recuperación para recuperar ficheros o el equipo entero sin problema.

En fin, tenemos la ventaja de que Vista es el SO Windows que contiene más drivers hasta el momento, aunque por contrapartida no podemos utilizar este CD de rescate en máquinas muy viejas. De todos modos, ya que el formato es v2i, intentaré con una versión antigua hacer una restauración, a ver que tal.

Protección de infraestructuras

El Jueves día 26 Churros y yo asistimos a nuestra primera charla de S.P.E.C.T.R.A.. Tras madrugar y quedar a las 8 y media de la mañana en Atocha Renfe y coger la línea C-4 hacia Getafe Sector 3 nos plantamos allí a eso de las 9 y 10 o así. Fiándome de Churros (Blind Stick) salimos de la estación, cruzamos la pasarela que cruzaba la autopista, cruzamos la urbanización y llegamos a la Avenida no-se-que donde estaba el nuevo centro de Formación en tecnologías de la Información de Madrid Sur. Al parecer este centro ha sido promovido por Sun, Microsoft, Cisco, Oracle e IBM para dar cursos, charlas, etc.

Como llegamos allí a las 9 y cuarto, nos tomamos algo de una máquina de refrescos, y presenté a Churros y a Chema. Mientras llegaba más gente fuimos pasando a la sala de la charla donde en la entrada la azafata nos recogía el papel de la asistencia y nos daba una carpeta de GFI con una libreta y unos productos demo (Que no he tenido tiempo a mirar).

La sesión comenzó con una charla de Victor de GFI, presentándonos especialmente el GFI Event Monitor, un producto que nos centraliza los registros de sucesos de Windows, W3C y syslog de *NIX. Además se pueden crear reglas, crear grupos y que cada grupo tenga una política, etc. Me gustó, aunque queremos probarlo de verdad, verlo funcionar con sistemas *NIX, ya que con Windows damos por sentado que funciona y se integra perfectamente, ya que la presentación se hizo sobre este y me agradó mucho.

Al terminar la charla, cattering. En la sala de al lado teníamos café, zumo, palmeritas de chocolate, mini-napolitanas, etc. Muy buen trato y servicio. Luego nos dió la charla Juan Garrido acerca de Forefront Client Security, su integración en directorio activo, su sistema de actualización, etc. Como Sergio de los Santos se retrasaba a causa del vuelo desde Málaga comenzó Chema Alonso a darnos la charla de Blind SQL Injection con numerosos ejemplos y todo explicado como nos tiene acostumbrados en su blog y en sus reto hacking. Su compañero de charla (Soy malísimo para recordar nombres), un máquina de 16 años que viene de Cádiz nos enseñó algunas herramientas de automatización de SQL Injection.

Finalmente Sergio de los Santos llegó y tras terminar Chema y su compañero con la charla, comenzó con la charla de malware, donde nos explicaba como trabajan a día de hoy las mafias de malware, adware y demás. No voy a decir mucho más, pues lo que nos contó estará en algún vídeo de YouTube de un Security Day grabado en Barcelona.
Terminamos y unos cuantos, cosa de 20-23 personas fuimos a tomarnos unas bravas, alitas de pollo y cerveza a un bar al lado del centro. Allí estuvimos hablando, riéndonos, contacto anécdotas, chistes… me encantó. El chiste cumbre fue, aunque muy bruto:
¿Qué parecido hay entre hacer ala-delta y que te la chupe tu suegra? Que en cualquiera de los casos no querrás mirar hacia abajo.

En fin, salimos a las 2 media de la charla y hasta las 5 y pico estuvimos allí tranquilamente. He conocido a mucha gente donde puedo nombrar a Sergio de los Santos y su compañero de Hispassec (Ya os dije que recordar nombres…), Pedro Laguna de Informática64, Juan Garrido también de Informática64 y demás (No por ello menos importantes).

Una vez dimos por terminado la jornada de ocio-formación fuimos a la empresa a recuperar un sistema que hacía de router redudante (Un sistema activo/pasivo con heartbeat, similar a CARP) pero terminamos a eso de las 9 de la noche pensando: Mañana más. Ando desplegando un piloto de PFSense con CARP y balanceo de carga MultiWAN con FailOver donde todo funciona perfecto incluso la sincronización con PFSync, excepto que el router que en ese momento es el maestro no anuncia que ahora la IP x.x.x.x tiene la MAC 00:00:00:00:00:00 en vez de la 00:00:00:00:00:01. ¿Qué ocurre? Pues que se mete un ostión pues piensa que la IP tiene determinada MAC, pero es errónea. ¿Alguna vez jugásteis con nemesys o arpoison en una red local? Pues el concepto es el mismo. Tampoco me funciona un detalle de puertos, pero creo que con el scheduling que implementa PFSense parece que puede servir.

Cuando estábamos terminando me llamó el Willie, que el Domingo viene a Madrid a una entrevista de trabajo que tenía el Lunes. A ver si tiene suerte el chaval y le cogen.

Por el resto, sigo sin ADSL ni conexión a internet de ningún tipo (Un informático sin internet. Que pecado), en este barrio donde la edad media son los 50 años (Muy tranquilo, eso si), por lo que me plantearé para el mes que viene contratar una tarifa 3G de Vodafone (¿Alguien sabe si el modem USB que ofrecen funciona en Mac OS X PPC además de en Mac OS X Intel?).

Bueno, no os aburro más, pero os adelanto de que preparo un artículo de replicación bidireccional en MySQL 5 y que si finalmente implemento PFSense lo documentaré todo bien explicado (Odio los How-To de Se hace así porque lo digo yo sin profundizar nada). Si me mandan al correo las fotos del tapeo las pondré por aquí.

Agur.

« Página anteriorPágina siguiente »


Las opiniones reflejadas en este blog son personales o ni siquiera son opiniones, y bajo ningún concepto representan las estrategias, opiniones o posturas de mi empresa actual, ni de ninguna en las que he trabajado, así como tampoco de ninguno de los clientes o proveedores de todas ellas.
La información se proporciona como está, sin garantías de ninguna clase, y no otorga ningún derecho. Los comentarios pertenecen a sus autores y bajo ningún concepto el autor del blog se hará responsable de los mismos.

Categorías

Archivos


Seguir

Get every new post delivered to your Inbox.