Sistemas & Desarrollo
13 meneos
265 clics

Lo básico sobre la seguridad de aplicaciones web [ENG]  

El desarrollo de páginas web modernas tiene muchos retos. Uno de ellos es la seguridad, que habitualmente está subestimada. Mientras que algunas técnicas, como el análisis de amenazas, son cada vez más reconocidas como esenciales para cualquier desarrollo serio, hay también otras prácticas básicas que todo desarrollador debería estar haciendo como alto rutinario.
8 meneos
69 clics

Ejecutar chequeos de SSL Labs desde la línea de comandos

La herramienta Qualys SSL Labs es sin duda de lo mejor que hay en Internet para auditar el estado de los servicios SSL/TLS y PKI de un servidor. Como es lógico, ejecutar la herramienta vía web genera ciertas limitaciones, como por ejemplo la ejecución masiva o automatizada de tests. A través de la API y la herramienta ssllabs-scan podemos evitar estas restricciones usando la línea de comandos.
9 meneos
153 clics
Presentación de IncusOS, sistema operativo inmutable para ejecutar Incus [ENG]

Presentación de IncusOS, sistema operativo inmutable para ejecutar Incus [ENG]  

IncusOS es una imagen moderna e inmutable del sistema operativo diseñada específicamente para ejecutar Incus. Proporciona actualizaciones atómicas a través de un mecanismo de actualización A/B que utiliza particiones distintas y aplica la seguridad de arranque a través de UEFI Secure Boot y un módulo TPM 2.0. Debajo del capó está construido sobre una base mínima de Debian 13, utilizando las compilaciones Zabbly del kernel de Linux, ZFS e Incus, proporcionando las últimas versiones estables de todos ellos.
9 meneos
177 clics
Entender la pila de audio en sistemas Unix [ENG]

Entender la pila de audio en sistemas Unix [ENG]

El audio en Unix es un pequeño zoológico, hay tantas siglas para proyectos y API que es fácil perderse. ¡Abordemos ese problema! La mayoría de los artículos son confusos porque utilizan jerga técnica de audio o porque apenas rascan la superficie y dejan a la gente sin pistas. Poco de conocimiento puede ser peligroso. En este artículo intentaré cerrar la brecha al no requerir ningún conocimiento previo y al mismo tiempo brindar una buena descripción general de todo el panorama de audio de Unix.
9 meneos
114 clics
Servicios “trampa” para detener la ejecución de ransomware

Servicios “trampa” para detener la ejecución de ransomware

Ollie Whitehouse de NCC Group ha publicado SWOLLENRIVER, una interesante herramienta bajo licencia AGPL que implementa una serie de procesos canarios que se controlan entre sí. Si estos servicios se detienen (a través de net stop o similar) y no durante el cierre del equipo, disparará un token Canary DNS e hibernará el host. Si a algunos no os suenan los Canary Tokens deciros que es un concepto muy interesante en el mundo Deception/honeypots. Es como los clásicos web bugs que se incluían en los correos electrónicos, imágenes transparentes que se cargaban mediante una URL única embebida en una image tag, alertando al “cazador” que está monitorizando.
11 meneos
225 clics
Cómo hackear la unidad de gestión Bosch lcn2kai que traen algunos vehículos Nissan [ENG]

Cómo hackear la unidad de gestión Bosch lcn2kai que traen algunos vehículos Nissan [ENG]  

Mi Nissan Xterra vino con una unidad de gestión con pantalla táctil, navegación incorporada, pantalla de cámara marcha atrás, funciones multimedia y conectividad para teléfonos inteligentes. Algunas de las funciones más avanzadas solo están disponibles a través de la aplicación NissanConnect, que requiere registro y suscripción. Nunca lo he usado y ni siquiera estoy seguro de si todavía es compatible. ¿No sería estupendo si pudiéramos ejecutar código en el dispositivo e incluso desarrollar nuestras propias extensiones y aplicaciones?
15 meneos
660 clics
Siete atajos del historial de BASH que realmente usarás [ENG]

Siete atajos del historial de BASH que realmente usarás [ENG]

La mayoría de las guías de atajos del historial de BASH los enumeran exhaustivamente, pero el problema con esto es que usaría un atajo una vez, luego lo examinaría mientras probaba todas las posibilidades. ¡Entonces pasaría a mi jornada laboral y los olvidaría por completo, acordándome sólo del conocido !! (doble admiración) que aprendí cuando comencé a usar BASH. Así que este artículo describe los atajos que uso en el día a día.
15 meneos
372 clics
Ingeniería inversa práctica, primera parte: buscando puertos de depuración [ENG]

Ingeniería inversa práctica, primera parte: buscando puertos de depuración [ENG]  

En esta serie de publicaciones vamos a seguir el proceso de ingeniería inversa de un router. Más específicamente un Huawei HG533. En las primeras etapas, este es el tipo más básico de ingeniería inversa. Simplemente buscamos un puerto serie que los ingenieros que diseñaron el dispositivo dejaron en la placa para fines de depuración y soporte técnico. Aunque voy a explicar el proceso usando un router, se puede aplicar a toneladas de sistemas integrados domésticos. Desde impresoras hasta cámaras IP.
15 meneos
229 clics
La métrica de utilización de la CPU está mal [ENG]

La métrica de utilización de la CPU está mal [ENG]  

La utilización de la CPU es la medida que todos utilizan para medir el rendimiento de un procesador. Pero el porcentaje de CPU es una medida engañosa de cuán ocupado está realmente su procesador, dice Brendan Gregg, arquitecto de alto rendimiento de Netflix, en lo que él llama un “anuncio de servicio público de cinco minutos” en la 16ª edición de la Exposición de Linux del Sur de California (SCALE). [Vía: opensource.com: CPU utilization is wrong ].
14 meneos
223 clics
Soporte de librerías OpenGL en BASH [ENG]

Soporte de librerías OpenGL en BASH [ENG]

Un proyecto que comenzó como una broma puede ser útil para las personas que desean aprender los conceptos básicos de OpenGL. Este proyecto es un simple ejecutable que lee comandos de OpenGL de la entrada estándar para luego dibujar la salida en una ventana de X11. Cualquier entrada de usuario en esa ventana de X11 será enviada a la salida estándar. Todo esto permite que con cualquier aplicación que sea capaz de leer y escribir texto se puedan crear aplicaciones gráficas interactivas.
8 meneos
333 clics
La potencia de los recortes de código (snipples)

La potencia de los recortes de código (snipples)

Un recorte de código es una pequeña plantilla que podemos reutilizar dentro de un editor de textos. Esta plantilla se pega, en el texto que se está editando, al escribir una palabra y pulsar el tabulador. En el siguiente ejemplo, al escribir html5 y pulsar tabulador, se pega la plantilla correspondiente:
12 meneos
532 clics
En crudo y sin censura: raw sockets I (en C)

En crudo y sin censura: raw sockets I (en C)

Aprovechando que tengo que guardar reposo por un mini accidente laboral, he decidido ponerme con algo que llevaba posponiendo un tiempo (permitirme la redundancia): salsear un poquito con los sockets en C y ya de paso escribir una entrada en el blog. A lo largo de esta serie de entradas intentaré mostrar para qué podemos utilizar la programación de sockets (sobre todo los RAW) siempre mirando desde un prisma, digamos, oscuro. Soy consciente que no es un tema fácil de tratar, y mucho menos hacer que la lectura sea liviana a la […].
9 meneos
572 clics
Aprendiendo de los 10 errores más comunes que comenten los desarrolladores [ENG]

Aprendiendo de los 10 errores más comunes que comenten los desarrolladores [ENG]

En esta lista se presentan los 10 errores más comunes que los nuevos desarrolladores (y a veces incluso los desarrolladores con experiencia) comenten, con el fin de aprender de los mismos y evitarlos. En esta lista se incluyen: no confiar en los datos de entrada del usuario; no hacer tests manuales, automatizarlos; no omitir la documentación; etc.
8 meneos
186 clics
Cómo el depurador (debugger) pone los ‘breakpoints’ [ENG]

Cómo el depurador (debugger) pone los ‘breakpoints’ [ENG]  

Estoy fascinado con los depuradores (debuggers). Tanto que escribí un pequeño y muy básico depurador como uno de mis recientes proyectos. En esta entrada voy a escribir lo que he aprendido acerca de cómo un depurador establece un breakpoint.
10 meneos
200 clics

Buenas prácticas en el desarrollo de interfaces de línea de comandos [ENG]

Las interfaces de línea de comandos se siguen usando para la administración de infraestructuras de software. Aunque la mayoría de estas herramientas suelen ser internas, su calidad no debe ser diferente a las herramientas públicas. Para ello es conveniente seguir una serie de buenas prácticas durante su desarrollo.
10 meneos
161 clics
Cómo evitar errores usando C++ moderno [ENG]

Cómo evitar errores usando C++ moderno [ENG]

Uno de los mayores problemas de C++ es tener un gran número de constructores cuyo comportamiento no está definido o simplemente es inesperado para el desarrollador. Estos problemas se identifican generalmente cuando se pasa el analizador estático que es, hasta donde sabemos, la parte donde mejor se detectan dichos errores, en la fase de compilación. Veamos qué técnicas de C++ moderno nos ayudan a escribir código simple y limpio para evitar este tipo de errores.
8 meneos
218 clics

Xplain: explicando cómo funciona el sistema de ventanas X11 [ENG]  

¿Qué son las X? ¿Cómo interaccionan con mi tarjeta gráfica y mi teclado y ratón? ¿Para qué usan las X las aplicaciones? ¿Qué es Wayland y cómo encaja en el contexto? ¿Cuáles son los problemas de las X que nos han llevado a escribir un nuevo sistema de ventanas? Estas y otras preguntas son las que me han llevado a indagar sobre cómo funciona el sistema de ventanas de X11 y a escribir este artículo.
9 meneos
251 clics
Diez reglas de la NASA de escritura de código fuente crítico y seguro [ENG]

Diez reglas de la NASA de escritura de código fuente crítico y seguro [ENG]

Todo gran proyecto de software utiliza estándares de codificación y reglas de estilo. Estas reglas establecen las bases que se han de seguir a la hora de escribir software como, por ejemplo, “¿cómo se debe estructurar el código?”; o “¿qué característica del lenguaje usado se debe usar y cuál no?”. Los desarrolladores de la NASA son unos de los que las siguen para poder desarrollar código crítico y seguro. Aquí están las 10 principales reglas que usan.
9 meneos
151 clics
Preparándose para HTTP/2: una guía para diseñadores y desarrolladores web [ENG]

Preparándose para HTTP/2: una guía para diseñadores y desarrolladores web [ENG]

El protocolo de transferencia de hipertexto (HTTP) es el protocolo que regula la conexión entre el servidor y los navegadores de los clientes web. Por primera vez desde 1999 tenemos una nueva versión de este protocolo que promete sitios web mucho más rápidos. En este artículo vamos a ver los conceptos básicos de HTTP/2 que se aplican a los diseñadores y desarrolladores web. Además, se explicarán algunas de las características clave del nuevo protocolo mirando la compatibilidad de los navegadores y de los servidores.
10 meneos
138 clics
Puesta a punto de PHP y MySQL

Puesta a punto de PHP y MySQL

Tuning de MySQL y PHP para mejorar el rendimiento aplicaciones web como puede ser un Wordpress.
8 meneos
55 clics
Publicada VirtualBox 5.0.4

Publicada VirtualBox 5.0.4

Hace poco se publicó la versión 5 de VirtualBox, la cual fue una versión muy esperada y que sin duda no ha defraudado desde que salió a la calle. Pero como todos los programas importantes se tiene que seguir actualizando y, por esta razón, el equipo de Oracle ha sacado la versión 5.0.4 de VirtualBox que incluye la siguientes novedades: soporte para el kernel 4.2; solucionado error en la comprobación de versiones de Linux; corregidos problemas de resolución de pantalla; añadidas más resoluciones; otros problemas menores.
9 meneos
74 clics

TSWS, un servidor web básico escrito con BASH y Netcat [ENG]

TSWS es una prueba de concepto de un servidor web básico escrito usando solamente BASH y Netcat.
9 meneos
160 clics
Tipografías gratuitas pero con personalidad [ENG]

Tipografías gratuitas pero con personalidad [ENG]  

La tipografía usada en un diseño puede marcar la diferencia. Sin embargo, si tu proyecto tiene que llevarse bien con un presupuesto limitado y tienes que usar tipografías gratuitas, las buenas nunca son fáciles de encontrar. Por suerte, nosotros nos hemos topado con unas cuantas joyas. La siguiente lista de tipografías puede ser descargada de forma gratuita y usada en tu proyecto (ya sea privado o comercial) para darle un toque de distinción.
8 meneos
194 clics
Diez paquetes de SublimeText para desarrolladores web

Diez paquetes de SublimeText para desarrolladores web  

SublimeText es una de los editores de texto líderes del mercado; la extensibilidad de su sistema de paquetes le hace muy flexible. Cada desarrollador puede seleccionar los paquetes que más le interesan para cada proyecto. Vamos a revisar algunos de los más interesantes para desarrolladores web, empezando por Package Control, el gestor de paquetes de Sublime; debemos instalarlo para poder acceder al resto.
10 meneos
168 clics
La guía definitiva sobre las llamadas al sistema de Linux [ENG]

La guía definitiva sobre las llamadas al sistema de Linux [ENG]  

Esta entrada explica cómo funcionan las llamadas al sistema (system calls) del kernel Linux. Además, también explica diferentes métodos de creación de llamadas al sistema, cómo hacer llamadas al sistema de forma manual, los puntos de entrada y de salida de las llamadas al sistema en el kernel, las funciones relacionadas en glibc, errores y mucho, mucho más.

menéame