3 vulnerabilidades en el Kernel de Linux permiten escalar privilegios

Durante la ultima semana se dieron a conocer las noticias sobre tres vulnerabilidades que fueron identificadas tres vulnerabilidades en el kernel de Linux que potencialmente permiten a un usuario local elevar sus privilegios en el sistema.

Una de las vulnerabilidades reportadas (CVE-2021-26708) fue encontrada en la implementación de sockets con direccionamiento AF_VSOCK, destinados al networking entre aplicaciones huésped y host. El problema se debe a una condición de carrera al configurar bloqueos para manejar el transporte múltiple (transporte múltiple VSOCK).

El investigador que identificó la vulnerabilidad afirma haber creado un exploit funcional que le permite obtener derechos de root en Fedora Server 33, sin pasar por los mecanismos de protección SMEP (Supervisor Mode Execution Prevention) y SMAP (Supervisor Mode Access Prevention). El código de explotación se publicará después de la distribución general de actualizaciones.

La vulnerabilidad ha aparecido desde v5.5-rc1 y se ha corregido en la actualización 5.10.13. En RHEL, el problema solo se manifiesta desde la versión 8.3 (kernel 4.18.0-240), que introdujo el soporte VSOCK. Las ramas estables de Debian y SUSE no se ven afectadas por el problema. En Ubuntu, el estado de la vulnerabilidad aún no se ha determinado.

Otra de las vulnerabilidades reportadas es (CVE-2021-3347) que podría permitir la ejecución de código a nivel de kernel a través de la manipulación futex. El problema se debe al acceso a un área de memoria ya liberada (use-after-free) mientras se maneja una excepción.

Aún no hay información sobre la existencia de un exploit, pero el exploit para la antigua vulnerabilidad futex CVE-2014-3153, que se encontró en 2014, que apareció en el último mes, puede indicar la posibilidad de explotar esta clase de problemas.

El problema se ha manifestado desde 2008 y potencialmente afecta a todas las distribuciones. La vulnerabilidad ya se ha solucionado en SUSE, Fedora y parcialmente en Debian. En Ubuntu y RHEL, el problema aún no se ha solucionado.

Abordar un problema de larga data en el que el espacio de usuario forma parte de futex no se puede escribir. El kernel regresa con un estado inconsistente que puede, en el peor de los casos, resultar en un UAF de un kernel de tareas apilar.

La solución es establecer un estado de kernel consistente que haga las operaciones futuras en el futex fallan porque el espacio de usuario y el kernel el estado del espacio es inconsistente. No es un problema ya que PI funciona fundamentalmente requieren un mapeo RW funcional y si el espacio de usuario
tira de la alfombra debajo de ella, luego puede guardar las piezas que pidió.

La última de las vulnerabilidades reportadas es (CVE-2021-20226) en la interfaz de E/S asincrónica io_uring, causada por acceder a un bloque de memoria ya liberado (use-after-free) mientras se procesan descriptores de archivos debido a una verificación incorrecta de la existencia de un objeto antes de realizar la operación IORING_OP_CLOSE.

De acuerdo a Red Hat, la vulnerabilidad se limita a una denegación de servicio o pérdida de memoria del kernel, pero de acuerdo a la Iniciativa Día Cero, la vulnerabilidad permite a un usuario local para ejecutar código en el nivel del núcleo.

Se encontró una falla de uso posterior a libre en io_uring en el kernel de Linux, donde un atacante local con privilegios de usuario podría provocar una denegación de servicio problema en el sistema

El problema surge de la falta de validación de la existencia de un objeto antes de realizar operaciones en el objeto sin incrementar el archivo contador de referencia mientras está en uso.

La vulnerabilidad se ha manifestado desde el kernel 5.5 y se ha corregido en el kernel 5.10.2 (según otras fuentes, se incluyó un parche con la eliminación de la vulnerabilidad en el kernel 5.9-rc1). El problema ya se ha solucionado en Fedora.

En las ramas estables de RHEL y Debian, el problema no aparece. El estado de la vulnerabilidad en Ubuntu aún no se ha determinado.

Finalmente si estás interesado en conocer más al respecto, puedes consultar los detalles en los siguientes enlaces.

CVE-2021-26708, CVE-2021-3347, CVE-2021-20226

 

from Linux Adictos https://ift.tt/3oPN53a
via IFTTT

Google propone establecer nuevas reglas para mejorar la seguridad del open source

La seguridad del software de código abierto ha atraído la atención de la industria, pero las soluciones requieren consenso sobre los desafíos y cooperación en la ejecución.

El problema es complejo y hay muchas facetas por cubrir, desde la cadena de suministro, gestión de dependencias, identidad, entre otras cosas más. Para ello Google dio a conocer hace poco un marco («Conocer, prevenir, reparar») en el que explica cómo la industria puede pensar en las vulnerabilidades en el código abierto y en áreas concretas que deben abordarse primero.

Google explica sus motivos:

“Debido a eventos recientes, el mundo del software ha adquirido una comprensión más profunda del riesgo real de ataques a la cadena de suministro. El software de código abierto debería ser menos riesgoso desde una perspectiva de seguridad, ya que todo el código y las dependencias están abiertos y disponibles para inspección y verificación. Y si bien esto es generalmente cierto, se supone que las personas realmente están haciendo este trabajo de inspección. Con tantas dependencias, es imposible monitorearlas todas y muchos paquetes de código abierto no están bien mantenidos.

“Es común que un programa dependa, directa o indirectamente, de miles de paquetes y bibliotecas. Por ejemplo, Kubernetes ahora depende de alrededor de 1000 paquetes. El código abierto probablemente usa dependencias más que software propietario y proviene de una gama más amplia de proveedores; el número de entidades independientes en las que se puede confiar puede ser muy elevado. Esto hace que sea extremadamente difícil comprender cómo se usa el código abierto en los productos y qué vulnerabilidades pueden ser relevantes. Tampoco hay garantía de que lo que se construye coincida con el código fuente.

Dentro del marco propuesto por Google se sugiere dividir esta dificultad en tres áreas problemáticas en gran medida independientes, cada una con objetivos concretos:

Conocer las vulnerabilidades de su software

Conocer las vulnerabilidades de su software es más difícil de lo que se podría esperar por muchas razones. Si bien existen mecanismos para informar vulnerabilidades, no está claro si realmente afectan las versiones específicas del software que está utilizando:

  • Objetivo: datos de vulnerabilidad precisos: En primer lugar, es fundamental capturar metadatos de vulnerabilidad precisos de todas las fuentes de datos disponibles. Por ejemplo, saber qué versión introdujo una vulnerabilidad ayuda a determinar si el software está afectado, y saber cuándo se ha parcheado da como resultado correcciones precisas y oportunas (y una ventana reducida para una posible explotación). Idealmente, este flujo de trabajo de clasificación debería automatizarse.
  • En segundo lugar, la mayoría de las vulnerabilidades se encuentran en sus dependencias, más que en el código que escribe o controla directamente. Entonces, incluso cuando su código no cambia, el panorama de vulnerabilidades que afectan a su software puede cambiar constantemente: algunas se corrigen y otras se agregan.
  • Propósito: Esquema estándar para bases de datos de vulnerabilidad La infraestructura y los estándares de la industria son necesarios para rastrear y mantener las vulnerabilidades de código abierto, comprender sus consecuencias y administrar sus mitigaciones. Un esquema de vulnerabilidad estándar permitiría que las herramientas comunes se ejecutaran en múltiples bases de datos de vulnerabilidades y simplificaría la tarea de seguimiento, especialmente cuando las vulnerabilidades cruzan múltiples lenguajes o subsistemas.

Evitar la adición de nuevas vulnerabilidades

Sería ideal evitar la creación de vulnerabilidades y, si bien las herramientas de prueba y análisis pueden ayudar, la prevención siempre será un tema difícil.

Aquí, Google propone centrarse en dos aspectos específicos:

  • Comprender los riesgos al elegir una nueva adicción.
    Mejora de los procesos de desarrollo de software crítico

Reparar o eliminar vulnerabilidades

Google reconoce que el problema general de la reparación está más allá de su alcance, pero el editor cree que los actores pueden hacer mucho más para abordar el problema específico de administrar las vulnerabilidades en las dependencias.

Además menciona: 

“Hoy en día hay poca ayuda en este frente, pero a medida que mejoramos la precisión, vale la pena invertir en nuevos procesos y herramientas.

“Una opción, por supuesto, es parchear la vulnerabilidad directamente. Si puede hacer esto de una manera compatible con versiones anteriores, la solución está disponible para todos. Pero el desafío es que es poco probable que tenga experiencia en el problema o la capacidad directa para realizar cambios. La reparación de una vulnerabilidad también supone que los responsables del mantenimiento del software son conscientes del problema y tienen el conocimiento y los recursos para revelar la vulnerabilidad.

Fuente: https://security.googleblog.com

from Linux Adictos https://ift.tt/3jrv9up
via IFTTT

La Fundación Linux tomo el control de Magma

 

La Fundación Linux dio a conocer la noticia de que se asociará con Project Magma, con la intención de construir una plataforma central de red móvil de código abierto basada en el proyecto de software.

Para quienes desconocen de Magma, deben saber que es un software que fue desarrollado por Facebook para ayudar a los operadores de telecomunicaciones a implementar redes móviles de forma rápida y sencilla. El proyecto, que Facebook hizo de código abierto en 2019, logra al proporcionar un núcleo de paquetes móviles distribuidos centrados en software y herramientas para automatizar la gestión de la red.

Esta función de red en contenedores se integra con el fondo de una red móvil existente y facilita el lanzamiento de nuevos servicios en el borde de la red.

Y con el anuncio, Magma pasará de Facebook a la Fundación Linux con:

El objetivo de crear una estructura de gobierno neutral para el proyecto que alentará a más organizaciones a participar y desplegar la plataforma, dijo Arpit Joshipura, director gerente de redes y borde de la Fundación Linux.

Con ello, la Fundación Linux ha lanzado una serie de iniciativas de redes, todas destinadas a permitir que los operadores de telecomunicaciones implementen servicios de red programables basados ​​en máquinas virtuales y contenedores. El objetivo es hacer que sea más fácil y rápido para los operadores brindar servicios de red en un momento en que los equipos de TI brindan constantemente recursos de infraestructura en minutos.

Por el contrario, los operadores siguen dependiendo en gran medida de la infraestructura de red patentada existente, que todavía se programa manualmente.

Magma es una alternativa a los productos existentes, pero sin las altas tarifas de licencia que a menudo son prohibitivas para los operadores móviles en los países en desarrollo.

Magma incluye los fundamentos de lo que los operadores necesitan para implementar una red, comenzando con un núcleo de paquetes móviles, con herramientas de automatización y administración en la parte superior.

En un nivel más técnico, Magma tiene tres partes: una puerta de enlace de acceso, que es responsable de los servicios de red y la gestión de políticas; una herramienta Orchestrator que proporciona servicios de monitorización y configuración; y una puerta de enlace de federación que gestiona la interactividad con otros componentes de la red.

Aunque ha sido objeto de algunas implementaciones en el mundo real, principalmente en África subsahariana, no se ha promocionado como un reemplazo de los sistemas LTE (Evolved Packet Core) existentes, sino como algo que puede expandirse, especialmente en áreas rurales que pueden estar en las afueras de una red celular existente.

Otro caso de uso ofrecido por Facebook considera que Magma se utiliza como base para una red móvil privada.

Según Joshipura, “Magama proporciona funciones de aplicación como ‘Mobile Core’ que son complementarias a las telecomunicaciones existentes y software gratuito avanzado como Open Network Automation Platform (ONAP) o Akraino”.

Y es que Magma permite una mejor conectividad al:

  • Permitir a los operadores expandir la capacidad y el alcance mediante LTE, 5G, Wi-Fi y CBRS.
  • Permitir que los operadores ofrezcan servicio celular sin la dependencia del proveedor con una red central moderna y de código abierto.
  • Permitir que los operadores administren sus redes de manera más eficiente con más automatización, menos tiempo de inactividad, mejor previsibilidad y más agilidad para agregar nuevos servicios y aplicaciones.
  • Permitir la federación entre los MNO existentes y los nuevos proveedores de infraestructura para aumentar la infraestructura de la red móvil de manera más eficiente.
  • Apoyando la tecnología 5G de código abierto e incubando futuros casos de uso de redes inalámbricas como Private 5G, IAB, Augmented Networks y NTN.

Otros actores importantes contribuyen al desarrollo de Magma para acelerar la ampliación de redes móviles modernas y eficientes.

La Fundación Linux también ha buscado el apoyo de otros actores importantes de las telecomunicaciones, desde proveedores como Qualcomm y Arm, hasta grupos de interés de la industria como la OpenAirInterface (OAI) Software Alliance y la Open Infrastructure Foundation (OIF).

La empresa alemana Megatelco Deutsche Telekom, que opera redes en varios mercados, principalmente en Europa, Norteamérica y Asia, también brinda soporte, sin olvidar el Instituto de Internet Inalámbrico de las Cosas de Northeastern University y FreedomFi.

Además de que varios miembros de la comunidad Magma también colaboran dentro del grupo de proyecto «Open Core Network» del proyecto Telecom Infra (TIP).

Fuente: https://www.linuxfoundation.org/

from Linux Adictos https://ift.tt/2N38usx
via IFTTT

Debian 10.8 llega con un driver NVIDIA actualizado y muchas otras correcciones

Debian 10.8

Dos meses después de la actualización anterior, el proyecto que está detrás de una de las distribuciones Linux más importantes ha lanzado Debian 10.8. Esta es la octava actualización de punto de Buster, el nombre en clave que usa esta edición desde que se lanzara por primera vez en julio de 2019. Tal y como destacan al principio de la nota, el lanzamiento de punto no constituye una nueva versión de Debian 10.

Las actualizaciones de punto de Debian, como las de las versiones LTS de Ubuntu, son en realidad nuevas imágenes que incluyen las correcciones y pequeñas mejoras introducidas desde el momento en el que se lanzó la imagen anterior, que en este caso fue la 10.7 y nos la entregaron a principios de diciembre. Entre los cambios y corrección de errores, se incluyen actualizaciones de seguridad en todo tipo de paquetes, ofrece la última versión de Steam, un paquete del controlador NVIDIA actualizado y se han actualizado los datos de la zona horaria, entre otras cosas. La lista completa de cambios está disponible en este enlace.

Debian 10.8 prepara el camino para Bullseye

Debian 10.8 también ha mejorado los scripts de compilación que permiten que las imágenes de la versión se compilen significativamente más en paralelo y, así, se puedan producir nuevas versiones mucho más rápido que en entregas anteriores. Se ha confirmado que esto ha funcionado esta vez mucho más rápido.

La siguiente versión debería ser Debian 10.9 y debería llegar en abril. Más tarde ya llegará Debian 11, de nombre en clave Bullseye, cuyo desarrollo ya ha entrado en la congelación esencial, un paso al que le seguirá la congelación más fuerte (hard freeze) a mediados de marzo. El sistema operativo tendrá versión estable durante el verano, pero Debian no nos dirá la fecha exacta del lanzamiento hasta que comprueben que todo está correcto y el sistema está preparado para funcionar sin problemas.

from Linux Adictos https://ift.tt/3jqpBQT
via IFTTT

Firefox 85.0.1 llega a corregir una vulnerabilidad y se prepara para decir adiós a SSB en Firefox 86

Hace poco se dieron a conocer las versiones correctivas de Firefox 85.0.1 y Firefox ESR 78.7.1, las cuales ya están disponibles y llegan para corregir una vulnerabilidad crítica que podría conducir a la ejecución de código en el sistema al abrir cierto contenido.

El problema se debe a un desbordamiento de búfer en la biblioteca Angle con la implementación de OpenGL ES, que está siendo desarrollada por el proyecto Chromium y actúa como una capa para traducir las llamadas de OpenGL ES a OpenGL, Direct3D 9/11, Desktop GL y Vulkan.

Debido al cálculo incorrecto del tamaño de los parámetros de profundidad para texturas comprimidas, surgen condiciones para acceder a un área fuera del búfer asignado. Aún no se han revelado detalles sobre el problema.

En cuanto a las demas correcciones que no son de seguridad en Firefox 85.0.1 se mencionan las siguientes:

  • Se prohíbe el acceso a rutas especiales de NTFS, manipulaciones que pueden provocar daños en el sistema de archivos.
  • Se corrigió una falla al autenticarse en sitios usando SPNEGO (Mecanismo de negociación GSSAPI simple y protegido) en dispositivos macOS con CPU basadas en los nuevos chips ARM M1.
  • Eliminación de la impresión de una página en blanco adicional al final de algunos documentos.
  • Se corrigió un bloqueo al manipular la API de caché.
  • Se mejoró el trabajo de los controladores de esquema de URL externos al iniciar Firefox desde el paquete flatpak.

Además, se puede notar la inclusión del modo Fission para 1/4 de las compilaciones nightly de Firefox con la implementación de la arquitectura multiproceso modernizada para un aislamiento de página más estricto.

Cuando se activa Fission, las páginas de diferentes sitios siempre se asignan en la memoria de diferentes procesos, cada uno de los cuales usa su propia caja de arena.

Al mismo tiempo, la división en procesos no se realiza por pestañas, sino por dominios, lo que le permite aislar adicionalmente el contenido de scripts externos e iframes.

Se puede habilitar el modo de fisión manualmente en la página about:preferences#experimental o mediante la variable «fission.autostart=true» en about: config.

Por otra parte, también no debemos olvidar que Mozilla finalizará el soporte en la versión de escritorio de Firefox 86 para el modo experimental SSB, que permitió crear un acceso directo separado para que un sitio se inicie sin elementos de la interfaz del navegador, con un ícono separado en la barra de tareas, como en toda regla.

¿Como instalar o actualizar la nueva versión de Firefox en Linux?

Los usuarios de Firefox que no hayan desactivado las actualizaciones automáticas recibirán la actualización automáticamente. Aquellos que no quieran esperar a que eso suceda pueden seleccionar Menú> Ayuda> Acerca de Firefox después del lanzamiento oficial para iniciar una actualización manual del navegador web.

La pantalla que se abre muestra la versión actualmente instalada del navegador web y ejecuta una búsqueda de actualizaciones, siempre que la funcionalidad esté habilitada.

Otra opción para actualizar, es si eres usuario de Ubuntu, Linux Mint o algún otro derivado de Ubuntu, puedes instalar o actualizar a esta nueva versión con ayuda del PPA del navegador.

Este lo pueden añadir al sistema abriendo una terminal y ejecutando en ella el siguiente comando:

sudo add-apt-repository ppa:ubuntu-mozilla-security/ppa -y 
sudo apt-get update
sudo apt install firefox

Para el caso de los usuarios de Arch Linux y derivados, basta con ejecutar en una terminal:

sudo pacman -Syu

O para instalar con:

sudo pacman -S firefox

Finalmente para aquellos que prefieren del uso de los paquetes Snap, podrán instalar la nueva versión en cuanto sea liberada en los repositorios de Snap.

Pero pueden obtener el paquete directamente desde el FTP de Mozilla. Con ayuda de una terminal tecleando el siguiente comando:

wget https://ftp.mozilla.org/pub/firefox/releases/85.0.1/snap/firefox-85.0.1.snap

Y para instalar el paquete solo tecleamos:

sudo snap install firefox-85.0.1.snap

Finalmente, pueden obtener el navegador con el último método de instalación que fue añadido «Flatpak». Para ello deben contar con el soporte para este tipo de paquetes.

La instalación se hace tecleando:

flatpak install flathub org.mozilla.firefox

Para el resto de las distribuciones de Linux, pueden descargar los paquetes binarios desde el siguiente enlace.

 

from Linux Adictos https://ift.tt/3pYdIUL
via IFTTT

ENCODYA: videojuego de aventura y puzle para Linux

ENCODYA

ENCODYA era uno de los lanzamientos más esperados para este 2021. Ahora podrás acceder a este título de aventuras con descuento para las plataformas de Linux, Mac y Windows. Todo gracias al buen hacer de los desarrolladores de Chaosmonger Studio y al editor Assemble Entertainment. Además, lo tienes disponible en plataformas tanto de Steam como GOG, con un 80% de críticas positivas.

Ya lo insinué en otro artículo sobre algunos de los títulos de los videojuegos más esperados para este año. Y piensa que el 10% de las ganancias que se obtengan con las ventas de este título se destinarán a una organización benéfica infantil. Una organización que trabaja para promover los derechos de los niños y la igualdad de las niñas en todo el mundo.

ENCODYA sigue el estilo de algunos títulos muy exitosos del pasado, como Day of the Tentacle, Monkey Island, etc. Además, incluye una buena dosis de cyberpunk distópico que tanto suele gustar en la actualidad. Todo para vivir las aventuras con este robot denominado SAM-53 mientras se navega por las calles de un insólito Neo-Berlín junto con Tina para tratar de salvar la difícil situación de la ciudad.

Entre las características más destacadas de ENCODYA están:

  • Tienes a tu alcance una ciudad llamada Neo-Berlín muy grande y con muchas cosas que hacer, con más de 100 ubicaciones únicas.
  • Disfruta de la ciudad y soluciona los rompecabezas que se van generando para ponerte a prueba.
  • Junto con Tina y SAM-53, también encontrarás un gran elenco de personajes de lo más variado y genuino, tanto personas como robots. Con diálogos con unas 4000 líneas.
  • Tendrás que poner todos tus sentidos, ya que tendrás que estar alerta ante todos los pequeños detalles, huevos de Pascua y otras sorpresas que te aguardan.

Si te gusta lo que lees, puedes acceder a las tiendas citadas anteriormente y disfrutar de este título con un descuento del 20% que no durará mucho. Así que, corre para hacerte con la versión estándar o con una edición más especial llamada Save the World Edition que cuesta algo más, pero que tiene más contenido…

from Linux Adictos https://ift.tt/39UC6RA
via IFTTT

Android TV o Google Chromecast: diferencias, ventajas e inconvenientes

Android TV o Google Chromecast: diferencias, ventajas e inconvenientes

Android TV y el Google Chromecast son dos tipos de dispositivo que, pese a tener ciertas similitudes, son muy diferentes. El primero es un sistema operativo; el segundo es un simple reproductor de contenido enviado desde el teléfono. Grosso modo, que hay mucho más que explicar.

Llevar el contenido multimedia a la televisión es sumamente sencillo ya que la mayoría de teles actuales dispone de entrada USB; por lo que basta con subir los archivos a un pendrive y conectarlo para reproducir películas, series o música. Pero ¿y si es contenido en streaming? Los Smart TVs suelen salvar este escollo. Y luego existen otras soluciones, como un Android TV o un Google Chromecast. Ahora bien, ¿cuál elegir? Primero hay que saber las posibilidades de cada uno y sus limitaciones.


Continue reading

Explainshell.com: una web con la que aprender sobre comandos

explainshell.com comandos

Una de las cosas que suelen costar más cuando se llega al mundo *nix son sus comandos. Aprender todos esos comandos, atributos y opciones puede ser en ocasiones algo complejo. Además, muchas veces se deben usar comandos que no son frecuentes, por lo que resultan algo desconocidos incluso para los que ya son más veteranos.

Si tienes problemas con estos comandos, además de las fantásticas Wikis de multitud de proyectos, y todos los tutoriales que puedes encontrar en la red, así como las páginas del manual man, también puedes encontrar otros recursos de gran ayuda en la red. Es el caso de explainshell.com, un sitio donde podrás introducir cualquier comando de Linux y te devolverá una explicación de su uso, tal como se puede apreciar en la imagen destacada de este artículo.

Como puedes comprobar, yo lo que hice fue introducir un comando ejemplo, que en este caso era:


echo Hola LxA!

Y al pulsar sobre el botón Explain, lo que muestra, como puedes ver, son dos cajetines. En uno de ellos se señala al programa en sí, en este caso echo. Y se muestra la expiación, en este caso te muestra que se trata de un comando para mostrar una línea de texto.

Luego existe un segundo cajetín que señala a la cadena de texto que va después. Y en este caso también se explica que se mostrará la cadena de texto a través de la salida estándar, es decir, se mostrará en la pantalla.

Y bajo todo eso, aparece un enlace que te apunta hacia las páginas del manual, por si necesitas más ayuda. Y, arriba, puedes pulsar en Theme para cambiar a un tema en blanco o un tema oscuro, si lo prefieres. También puedes ir al sitio de GitHub o ver información sobre el proyecto.

Por supuesto, puedes probar con los comandos que prefieras, además, si agregas atributos u opciones del comando, también te las especifica en otro cajetín. Y si la opción no es válida, te lo marcaría con un interrogante, lo que te está indicando que esa opción no es correcta.

Si quieres comenzar a usar este recurso, tan solo tienes que dirigirte a esta página web. Verás que el uso es muy sencillo, y te puede ayudar en el día a día…

from Linux Adictos https://ift.tt/2YOeUOR
via IFTTT

Las bases de datos. Una pequeña introducción al tema

Las bases de datos

Las bases de datos son al mismo tiempo uno de los componentes más y menos utilizados. Es verdad que son herramientas infaltables para los profesionales de tecnología de la información. Pero, en el caso de los usuarios que trabajan con su computadora  se puede hablar de una subutilización. Salvo, que estén en alguna aplicación que la traiga incluida como por ejemplo, al navegar y comentar este blog.

Es cierto que el uso de una planilla de cálculo es más intuitivo y hay más documentación disponible. La propia Microsoft solo publicó un libro sobre Access y es el de la preparación para el examen de la certificación. En cuanto a LibreOffice Base, la documentación disponible (en inglés) llega a la versión 6.4.

Pero, la mayor curva de aprendizaje se compensa con las prestaciones ya que son ideales para el trabajo con datos no numéricos.

Las bases de datos ¿Qué son?

Una base de datos es una colección de datos estructurada de determinada forma y almacenada electrónicamente. Mediante un programa llamado gestor de base de datos es el encargado de facilitar el agregado, la modificación y la eliminación de los mismos. Algunos tipos de bases de datos utilizan un lenguaje de programación específico que permiten hacer consultas.

Clasificación

De acuerdo a la ubicación

  • Base de datos centralizada: Se ubica, almacena y mantiene en una sola ubicación. Eso no significa que el usuario tenga que estar en el mismo lugar para acceder.
  • Base de datos distribuida: Se trata en realidad de diferentes bases de datos en distintas locaciones físicas unidas por un gestor que las hace funcionar como si fueran una sola.

De acuerdo a la forma de establecer relaciones entre los datos

  • Relacionales: En este tipo de base de datos estos se organizan en forma de filas y columnas.
  • Orientadas a objetos:  Aquí los datos se almacenan en forma de objetos. Estos objetos se guardan en la base de datos asignándoles atributos y métodos que son los que definen qué hacer con los datos.
  • Orientadas a grafos: Utiliza la teoría de grafos para almacenar, mapear y consultar las relaciones entre datos.
  • NoSQL: Permite almacenar datos no estructurados o semiestructurados.
  • Orientada a documentos: Es un subtipo de la anterior. En lugar de almacenar los datos en filas y columnas utiliza documentos para almacenar y recuperar los datos. Estos documentos organizan los datos utilizando estándares como JSON o XML.

Según la orientación

  • OLTP: Son bases de datos orientadas al procesamiento de transacciones e incluye funciones de introducción, modificación  y borrado de datos.
  • OLAP: Estas bases de datos están orientadas al análisis de los datos para permitir extraer conclusiones.

Otros tipos

  • Autónomas: Están basadas en la nube y utilizan el aprendizaje automático para automatizar el trabajo la base de datos,  la seguridad, las copias de seguridad, las actualizaciones y otras tareas de gestión rutinarias que en las bases de datos tradicionales realiza un administrador.
  • Almacén de datos: Es una base de datos enfocada en el sector corporativo que integra y depura información de varias fuentes distintas para procesarla y analizarla desde diferentes puntos de vista a gran velocidad.

Bases de datos biertas vs privativas

No tiene sentido en este blog que aclare cuál es la diferencia entre ambas. Si es interesante ver como se reparte el uso de ambas. De acuerdo a las estadísticas más actuales,  de las 5 más usadas, 3 son de código abierto. La buena noticia es que dos de las de código abierto; PostgreSQL y MongoDB han tenido un crecimiento impresionante; 44,02% y 25,62% respectivamente.

La gran paliza se la llevó Microsoft SQL server (privativo) con una caída del 70,81% mientras el producto líder, Oracle acumula una baja del 28,08%. Tampoco le fue demasiado bien a MySQL, la más popular de las solucioens de código abierto. con un 24,28% en el marcador.

De todas formas, esta estadística hay que tomarla con pinzas.  Las fuentes para calcular la posición de cada motor de base de datos son:

  • Número de resultados en los motores de búsqueda.
  • Frecuencia de búsqueda según las tendencias de Google.
  • Número de consultas en portales de preguntas y respuestas sobre tecnología.
  • Cantidad de ofertas de trabajo.
  • Frecuencia de menciones en perfiles profesionales.
  • Cantidad de menciones en redes sociales.

 

from Linux Adictos https://ift.tt/2YNUKo6
via IFTTT