Sistemas & Desarrollo
2 meneos
10 clics

Los mutex más rápidos [ENG]

Cosmopolitan Libc es conocida por su binario políglota que permite que sus ejecutables se ejecuten en seis sistemas operativos para AMD64/ARM64. Lo que puede sorprenderle es que también podría ser la mejor biblioteca C para sus cargas de trabajo de producción. Para demostrar este punto, comparemos la implementación de los mutex en Cosmo con otras plataformas. Haremos esto escribiendo una prueba simple que genere 30 subprocesos que incrementan el mismo número entero 100.000 veces. Esto prueba qué tan bien funciona una implementación de mutex en un caso de uso muy competitivo.
3 meneos
8 clics
Redis anuncia una nueva era de velocidad con innovaciones y productos avanzados

Redis anuncia una nueva era de velocidad con innovaciones y productos avanzados

Redis, conocido por su capacidad para ofrecer un rendimiento rápido y escalable, ha anunciado una serie de nuevos productos y capacidades que marcan el comienzo de una nueva era para la tecnología de bases de datos. En un evento reciente, Redis presentó varias actualizaciones clave que buscan fortalecer su posición como herramienta esencial en el desarrollo de aplicaciones modernas, especialmente en el contexto de la inteligencia artificial generativa (GenAI).
2 meneos
1 clics

Estado de la representación de texto 2024 [ENG]  

En este documento de estudio cubro los avances en el estándar OpenType y la pila de representación de texto y aplicaciones de código abierto desde 2009. También analizo los avances futuros que se están llevando a cabo actualmente. A grandes rasgos, OpenType agregó soporte para fuentes de color, fuentes variables y Universal Shaping Engine. La pila de código abierto y gratuito admite todos estos avances en el nivel inferior, pero el soporte de la interfaz de usuario de la aplicación ha tardado en llegar. La pila de texto de código abierto también ganó una enorme participación de mercado cuando Android y Google Chrome la adoptaron por completo.
2 meneos
5 clics

Vulnerabilidad crítica en Exim expone a millones de personas a archivos adjuntos maliciosos

Se ha revelado un problema de seguridad crítico en el agente de transferencia de correo Exim que podría permitir a los actores de amenazas enviar archivos adjuntos maliciosos a las bandejas de entrada de los usuarios. Exim es un gestor de transferencia de correo gratuito que se utiliza en hosts que ejecutan sistemas operativos Unix o similares. Fue lanzado por primera vez en 1995 para su uso en la Universidad de Cambridge. La vulnerabilidad, identificada como CVE-2024-39929, tiene una puntuación CVSS de 9,1 sobre 10,0 y se ha solucionado en la versión 4.98.
2 meneos
10 clics

Un viaje inesperado al mundo de las firmas de Microsoft Defender [ENG]  

Microsoft Defender es la solución de seguridad para terminales preinstalada en todas las máquinas con Windows desde Windows 7. Es un software bastante complejo que aborda casos de uso tanto de EDR como de EPP. Como tal, Microsoft comercializa dos productos diferentes. Microsoft Defender for Endpoint es una solución de seguridad para terminales basada en la nube que combina capacidades de sensores con las ventajas de un procesamiento en la nube. Microsoft Defender Antivirus (MDA), por otro lado, es un EPP moderno habilitado de forma predeterminada en cualquier instalación nueva de Windows. MDA es el foco de este análisis.
3 meneos
3 clics

Echemos un vistazo a la relación de amor y odio de Oracle con el software de código abierto (Opinión) [ENG]

Muchas empresas usan código abierto ahora, pero algunas, como Oracle, nunca se han sentido completamente cómodas con él. En 2009, seguí la adquisición de Sun por parte de Oracle tan de cerca como una garrapata en el cuello de un perro. Dudaba mucho de que saliera bien. Pensé que Sun habría estado mejor con IBM. Al final, fue una mezcla. La cartera de hardware de Sun ya no está disponible, pero Java continúa contribuyendo significativamente a los resultados finales de Oracle. Sin embargo, el resto de la cartera de código abierto de Sun ha disminuido lentamente bajo el liderazgo de Oracle, y ahora, su programa más importante, MySQL, parece estar cayendo y desapareciendo.
3 meneos
10 clics

systemd 256 llega con run0, el ‘clon’ de sudo que pretende mejorar la seguridad

systemd 256 ya es una realidad con una interesante novedad que puede representar un cambio importante dentro de Linux en un futuro no muy lejano, si bien eso al final dependerá de las decisiones que tomen las distribuciones. Sin más dilación, procedemos a exponer las principales novedades. En primer lugar tenemos la introducción de run0, una especie de clon de sudo que pretende mejorar la seguridad mediante la reducción de la superficie de ataque. Para ello y según Lennart Poettering, creador de systemd, hace que “el comando de destino se invoque en un contexto de ejecución aislado, recién bifurcado del PID 1, sin heredar ningún contexto del cliente”.
2 meneos
21 clics

Evasión de BitLocker usando un analizador lógico económico en un ordenador portátil Lenovo [ENG]  

¿Alguna vez te han dicho que los datos de la empresa en los portátiles están protegidos gracias a BitLocker? Bueno, resulta que esto depende de la configuración de BitLocker.
2 meneos
31 clics

Instalación de Windows XP en DOSBox-X [ENG]  

En mi artículo anterior, describí cómo logré instalar Windows 2000 en DOSBox-X. Aunque este experimento fue exitoso, no estaba realmente con los resultados. Mientras conseguía que Windows 2000 funcionara, no quería quedarme ahí. El objetivo final del proyecto era hacer que Windows XP se ejecutara en su lugar. Sin embargo, después de varios intentos me di por vencido, pensando que Windows XP era imposible de usar. Bueno, estaba equivocado. Pero empecemos por el principio.
2 meneos
9 clics

Diseño e implementación de variables de condición en el kernel del sistema operativo Haiku [ENG]

Unos meses después de que comenzara mi contrato con Haiku, Inc., reescribí la implementación de las variables de condición del kernel de Haiku (a diferencia de nuestras variables de condición del espacio de usuario, que son de POSIX). Como esta nueva implementación se ha ejecutado en Haiku durante más de un año. y se envió en la última versión sin signos de problemas restantes, pensé que ya era hora de profundizar en la API, su historial de implementación y el diseño de la nueva implementación que escribí.
3 meneos
25 clics

El extraño mundo de las rutas de archivos en Windows [ENG]

Las rutas del sistema de archivos en Windows son más extrañas de lo que se piensa. En cualquier sistema derivado de Unix, una ruta es algo admirablemente simple: si comienza con /, es una ruta. No es así en Windows, que ofrece una desconcertante variedad de esquemas para componer un camino.
2 meneos
10 clics

Gestión de paquetes en el sistema operativo Haiku [ENG]  

La forma en que Haiku maneja la administración de paquetes y su enfoque alternativo a un sistema inmutable es una de esas ideas que encuentro realmente interesantes. Esto es lo que parece desde la perspectiva de un usuario de escritorio: hay todo lo habitual, como una “tienda de aplicaciones”, un actualizador de paquetes, repositorios de paquetes… Todo funciona bien: es tan sencillo como cualquier experiencia de Linux de escritorio. Sin embargo, son los detalles de su implementación los que lo hacen tan interesante.
1 meneos
16 clics

Javascript Fundamentals

If you don't know how to get started with Javascript, do read this blog. Hope this helps you!
2 meneos
12 clics

Yendo a donde NetPositive, el navegador de BeOS, nunca ha ido antes: NetPositive+ [ENG]  

Lo que se muestra en las fotos es un BeBox real de 133 MHz funcionando con BeOS R5 y navegando por Hacker News y Lobste.rs usando un NetPositive modificado y corregido para descargar el cifrado a una copia integrada de Crypto Ancienne. NetPositive es el único navegador conocido en BeOS para PowerPC, probablemente compilando Lynx 2.8.x con BeOS CodeWarrior, pero solo lo he visto creado para Intel, y Mozilla y Opera eran definitivamente solo para Intel/BONE.
2 meneos
42 clics

Visualización de cómo se borran mil millones de objetos en Amazon S3 con Athena y Rust [ENG]  

Hace unas semanas tuve la oportunidad de eliminar 1 petabyte de datos distribuidos en mil millones de objetos de S3. Bueno, en realidad 940 millones, pero lo suficientemente cerca de los mil millones como para poner un titular que enganche. Pensé que sería un desafío interesante probar y visualizar la ejecución de estas eliminaciones y posiblemente obtener algunas ideas sobre cómo funcionan las políticas de ciclo de vida de S3 bajo el capó, así que he generado un GIF animado mostrando este proceso de borrado.
4 meneos
13 clics

Synology obliga a sus clientes a usar sus discos duros que son mucho más caros

El fabricante Synology tiene actualmente varios modelos de discos duros y unidades SSD para utilizarlos en sus servidores, tanto domésticos como empresariales. Sin embargo, estos discos duros de la marca son muchísimo más caros que los de la competencia. Por ejemplo, comprar un Seagate Exos de 18TB vale unos 320€ aproximadamente, sin embargo, el mismo disco duro pero de marca Synology se nos va a 800€ aproximadamente.
2 meneos
13 clics

Una lista (más o menos) nueva de herramientas de línea de comandos [ENG]

Hoy pregunté en Twitter acerca de nuevas herramientas de línea de comandos, como ripgrep, fd, fzf, exa y bat. Recibí un montón de respuestas con herramientas de las que nunca había oído hablar, así que pensé en hacer una lista que aquí os presento.
4 meneos
14 clics

PHP moderno [ENG]

La última vez que usé PHP fue probablemente alrededor de 2017, aunque fue solo en el contexto de admitir algunos sitios de WordPress. Para ese momento ya se había lanzado la 7.2, pero no tenía ni idea. Quería evitar trabajar con PHP a toda costa. Este mes me tomé un tiempo para verificar qué cosas buenas que desconocía se han agregado al lenguaje. Y, para ser honesto, las cosas se ven muy bien.
3 meneos
9 clics

ICMP-TransferTools: transfiriendo archivos desde y hacia sistemas Windows mediante ICMP dentro de redes restringidas [ENG]

ICMP-TransferTools es un conjunto de scripts diseñados para mover archivos desde y hacia sistemas Windows en entornos de red restringidos mediante el protocolo ICMP. Esto se logra utilizando un total de 4 archivos diferentes, que consisten en un servidor Python y un cliente PowerShell para cada dirección de transferencia (subir y descargar). La única dependencia requerida es “impacket” para uno de los scripts de Python, que se puede instalar usando “pip”.
3 meneos
46 clics

Cómo funciona OpenGL: renderizado por software en menos de 500 líneas de código [ENG]  

En esta serie de artículos quiero mostrar la forma en que funciona OpenGL escribiendo su clon (uno muy simplificado). Sorprendentemente, a menudo me encuentro con personas que no pueden superar el obstáculo inicial de aprender OpenGL/DirectX. Por lo tanto, he preparado una breve serie de artículos donde mis alumnos muestran muy buenos resultados implementado renderizadores después de su estudio. La tarea para ellos se formula de la siguiente forma: sin usar bibliotecas de terceros tienen que obtener algo como esta imagen.
4 meneos
8 clics

Una solución práctica a la falta de controladores de dispositivos de GNU/Hurd: la infraestructura ‘rumpkernel’ de NetBSD [ENG]

GNU/Hurd es el sistema operativo de software libre original iniciado en la década de 1980. Su diseño de micronúcleo ha ido evolucionando a lo largo de los años pero el proyecto no ha alcanzado un uso generalizado. Creo que esto se debe a una razón principal: la falta de controladores para periféricos y hardware. En esta charla explico cómo se han reutilizado los controladores del kernel de NetBSD en una configuración de microkernel y demuestro su uso para iniciar un sistema GNU/Hurd a través de un controlador en espacio de usuario.
2 meneos
5 clics

Calcular la media de dos enteros sin signo sin desbordamiento [ENG]

Calcular la media de dos números enteros sin signo redondeando a cero suena sencillo: `unsigned average(unsigned a, unsigned b) { return (a + b) / 2; }`. Sin embargo, esto da una respuesta incorrecta frente al desbordamiento de enteros: por ejemplo, si los enteros sin signo tienen 32 bits de ancho, entonces el resultado de `average(0x80000000U, 0x80000000U)` es cero.
2 meneos
14 clics

Marcas diacríticas en Unicode [ENG]

Al final de este artículo deberías poder escribir tu nombre en con marcas diacríticas locas como este: Ḡ͓̟̟r̬e̱̬͔͑g̰ͮ̃͛ ̇̅T̆a̐̑͢ṫ̀ǔ̓͟m̮̩̠̟. Este artículo es parte de las series Unicode e i18n motivadas por mi trabajo con la internacionalización en Firefox y el subcomité Unicode ICU4X.
2 meneos
10 clics

Blueprint: nueva forma de crear interfaces de usuario para GTK [ENG]

Blueprint es un lenguaje de marcado que se compila en el XML de GtkBuilder. Está diseñado para reflejar el modelo de widget de GTK en una sintaxis sencilla y legible, y es capaz de casi todo lo que es GtkBuilder. El compilador detecta muchos tipos de errores de forma temprana, por lo que se puede desarrollar más rápido y dedicar menos tiempo a depurar.
2 meneos
13 clics

Cómo mejorar el rendimiento del entorno de escritorio en Linux bajo una gran carga de CPU usando CFS Zen Tweaks [ENG]

CFS Zen Tweaks es un script bash y un servicio systemd que ajusta el programador de la CPU de Linux para una mejor capacidad de respuesta del escritorio cuando se utiliza mucho la CPU.
3 meneos
28 clics

El extraño estado del cifrado de disco y arranque autenticado en distribuciones genéricas de Linux [ENG]

Linux ha sido compatible con Full Disk Encryption (FDE) y tecnologías como UEFI SecureBoot y TPM durante mucho tiempo. Sin embargo, la forma en que están configurados por la mayoría de las distribuciones no es tan segura como debería ser y, francamente, de alguna manera bastante extraña. De hecho, en este momento tus datos probablemente estén más seguros si se almacenan en dispositivos ChromeOS, Android, Windows o MacOS actuales que en las distribuciones típicas de Linux.
2 meneos
10 clics

Cómo añadí a Python esta gran característica de Ruby [ENG]

Ruby, a diferencia de Python, hace muchas cosas implícitas, y hay un tipo especial de expresión “if” que lo demuestra bien. A menudo se lo denomina “inline-if” o “modificador condicional”, y esta sintaxis especial puede devolver un valor cuando una condición es verdadera, pero otro valor (nulo, específicamente) cuando una condición es falsa. En Python esto no se puede hacer sin un “else” específico en la expresión. Así que pensé, ¿por qué no implementar una característica similar en Python?
3 meneos
28 clics

Dos empleados de Google muestran en vídeo un tour y una demostración de cómo se programa el sistema operativo Fuchsia OS [ENG]  

A pesar de haberse lanzado oficialmente a principios de este año, todavía hay bastante misterio en torno al próximo sistema operativo de Google, Fuchsia. Para ayudar a explicar los detalles más importantes, dos empleados de Google han compartido un recorrido en vídeo y una sesión de preguntas y respuestas con gran parte de lo que nos gustaría saber sobre Fuchsia OS. [ Vía 9to5Google ].
3 meneos
21 clics

El sistema operativo Haiku lanza la versión Release 1 Beta 3 [ENG]

El sistema operativo Haiku acaba de lanzar su versión Release 1 Beta 3 (R1B3), que continua con la tendencia de de sacar versiones con mayor frecuencia para proporcionar a usuarios y desarrolladores una plataforma estable donde trabajar. Esta versión combina lo mejor de la historia de Haiku como sucesor de BeOS junto con el duro trabajo de la apasionada comunidad. Proporciona varias características nuevas y mejoras en el rendimiento lo que hace que Haiku sea aún mejor.
2 meneos
18 clics

¿Cuál debería ser el uso de CPU de una CPU totalmente cargada cuya velocidad se ha reducido? [ENG]

Por simplicidad, digamos que un sistema tiene una única CPU que admite “escalado de frecuencia dinámico”, una función que permite que el software indique a la CPU que se ejecute a una velocidad más baja, comúnmente conocida como “CPU Throttling”. Supongamos que la CPU se ha reducido a la mitad de la velocidad por cualquier motivo (térmico, por eficiencia energética, por carga de trabajo). Finalmente, digamos que hay un programa que consume mucha CPU. La pregunta es: ¿qué porcentaje de CPU deberían indicar las herramientas que muestran el rendimiento?
6 meneos
62 clics

Arranca en Europa el 'pasaporte COVID' con temor hacia los ciberataques: así es como pueden usarlo para robar tus datos

Los peligros asociados a este certificado se centran en la falsificación y venta ilegal o en su utilización como señuelo para lanzar un ciberataque. Uno de los principales problemas con el 'pasaporte Covid' es que la gran mayoría de ciudadanos no conoce este documento, no sabe qué aspecto tiene, cómo se emite o qué información comparte. Debes informarte bien de todo esto antes de lanzarte a pedir un certificado que se te ofrece.
2 meneos
4 clics

Nuevas políticas de GitHub permiten la eliminación de exploits PoC [ENG]

GitHub anunció el viernes sus pautas comunitarias actualizadas que explican cómo la compañía lidiará con las vulnerabilidades y las muestras de malware alojadas en su servicio. Para dar algunos antecedentes detrás de los nuevos cambios de política, el investigador de seguridad Nguyen Jang subió un exploit de prueba de concepto (PoC) a GitHub en marzo para la vulnerabilidad de Microsoft Exchange ProxyLogon.
3 meneos
15 clics

Cómo identificar problemas de seguridad en archivos ejecutables en Linux mediante la herramienta “checksec” [ENG]

La compilación del código fuente produce un binario. Durante la compilación, se pueden proporcionar indicadores al compilador para habilitar o deshabilitar ciertas propiedades en el binario. Algunas de estas propiedades son relevantes para la seguridad. Checksec es una pequeña herramienta que, entre otras funciones, identifica las propiedades de seguridad que se integraron en un binario cuando se compiló. Este artículo explica cómo usar checksec para identificar las propiedades de seguridad en un binario, incluyendo los comandos utilizados para encontrar las propiedades de seguridad además de ver las opciones del compilador GCC que se pueden activar para mejorar la seguridad de los binarios.
3 meneos
12 clics

El código binario del microkernel seL4 ha sido verificado formalmente para procesadores RISC-V [ENG]

En junio de 2020 anunciamos que el microkernel seL4 fue el primer kernel de sistema operativo del mundo con prueba de corrección de implementación verificada por máquina, también verificada para la arquitectura RV64, lo que lo convierte en el primer sistema operativo verificado formalmente para RISC-V. Ahora nos complace anunciar que esta verificación se ha extendido al código binario ejecutable, lo que significa que se ha demostrado que el código máquina que se ejecuta en el procesador es correcto. // Relacionada: El microkernel seL4 ha sido verificado formalmente para procesadores RISC-V.
2 meneos
6 clics

RotaJakiro: nuevo malware de Linux disfrazado de proceso systemd

El laboratorio de investigación 360 Netlab anunció la identificación de un nuevo malware para Linux, con nombre en código RotaJakiro, que incluye una puerta trasera que permite controlar el sistema. Los atacantes podrían haber instalado software malicioso después de explotar vulnerabilidades no reparadas en el sistema o adivinar contraseñas débiles. El backdoor se descubrió durante el análisis del tráfico sospechoso de uno de los procesos del sistema identificados durante el análisis de la estructura de una botnet usada para ataques DDoS.
3 meneos
22 clics

Diferencias entre ASLR, KASLR y KARL  

A raíz de la publicación de la noticia del lanzamiento del Kernel 4.12 de Linux, el cual trae por primera vez activada por defecto la característica KASLR, y casi simultáneamente la publicación de otra noticia sobre la implementación de una característica llamada KARL en OpenBSD, me ha parecido que sería interesante aclarar las diferencias entre estas técnicas de seguridad, pues pienso que la combinación de ambas va a ser muy importante de cara al futuro de la seguridad de los sistemas, pues van a impedir explotar vulnerabilidades relacionadas con la corrupción de memoria (buffer overflow). Pero antes de entrar a detallar las características de KASLR y KARL, echemos un vistazo ASLR.
2 meneos
10 clics

El C++ moderno no nos salvará de la inseguridad en el uso de la memoria [ENG]

Critico frencuentemente los lenguajes inseguros respecto a la memoria, principalmente C y C++, especialmente cómo inducen un número excepcional de vulnerabilidades de seguridad. Mi conclusión, basada en la revisión de la evidencia de numerosos proyectos de software grandes que utilizan C y C++, es que debemos migrar nuestra industria a lenguajes seguros respecto al uso de la memoria (como Rust y Swift). Una de las respuestas que recibo con frecuencia es que el problema no son C y C++ en sí mismos, sino que los desarrolladores se equivocan. Desafortunadamente mi experiencia en grandes proyectos me indica que hay mucho C++ totalmente moderno que introduce vulnerabilidades.
3 meneos
5 clics

El más rápido y seguro decodificador de archivos PNG del mundo [ENG]

El decodificador de imágenes PNG de Wuffs tiene seguridad de memoria y, además, es entre 1.22x y 2.75x más rápido que libpng, la implementación en C de código abierto más ampliamente utilizada. También es más rápido que las bibliotecas libspng, lodepng y stb_image C, así como las bibliotecas de PNG en Go y Rust más populares. El alto rendimiento se logra mediante la aceleración SIMD, la entrada de 8 bytes de ancho y las copias cuando se cambia de bits y se descomprime en zlib toda la imagen de una vez (en un buffer intermedio grande) en lugar de fila por fila (buffers pequeños y reusables). Además, está desarrollado en el lenguaje de programación Wuffs.
4 meneos
31 clics

Colección de algoritmos implementados en Rust [ENG]

En este repositorio de GitHub se muestra la implementación de diversos algoritmos en el lenguaje de programación Rust con propósitos educacionales. Entre estos algoritmos destacan algoritmos de ordenación como bubble, heap, insertion o merge; algoritmos de gestión de estructuras de datos, como heap, linked list o B-Tree; y algoritmos de gestión de cadenas de caracteres, como el algoritmo Knuth Morris Pratt.
2 meneos
10 clics

Cincuenta años de Pascal y Delphi está en la cima [ENG]

Son 50 años del lenguaje Pascal y Delphi es su heredero, lo que empodera a los desarrolladores de Pascal en los complejos escenarios actuales, a pesar de ser ignorado por el inventor del lenguaje Pascal. Niklaus Wirth publicó el artículo "El lenguaje de programación Pascal" en marzo de 1971, lo que significa que han pasado exactamente 50 años este mes desde que se lanzó oficialmente el lenguaje de programación Pascal. Los célebres informáticos celebraron el aniversario escribiendo un muy interesante artículo de punto de vista para Comunicaciones de la ACM (marzo de 2021, Vol. 64 No. 3, Páginas 39-41) y titulado 50 Años de Pascal.
1 meneos
4 clics

Google está preparando las primeras versiones para desarrolladores de su nuevo sistema operativo Fuchsia OS [ENG]

Durante años hemos estado observando y esperando mientras Google desarrollaba gradualmente su sistema operativo Fuchsia desde cero. Ahora ha aparecido evidencia que apunta a que el sistema operativo Fuchsia de Google ya tiene preparada su primera (y segunda) versión disponible, aunque es probable que inicialmente sea sólo para desarrolladores.
2 meneos
16 clics

Análisis práctico de la arquitectura interna de la Playstation 2 [ENG]

La Playstation 2 no fue una de las consolas más potentes de su generación, sin embargo logró alcanzar un nivel de popularidad impensable para otras compañías. Esta máquina no es tan simple como lo era la Playstation original, pero veremos por qué no compartió el mismo destino que las complicadas consolas anteriores.
2 meneos
11 clics

La revolución de la gestión de ventanas [ENG]  

La versión beta de la próxima versión 5.21 del conjunto de proyectos de KWinFT (reescritura completa del gestor de ventajas KWin) ya está disponible. Contiene una reescritura monumental de la lógica de gestión de ventanas de KWinFT. En este artículo se da una descripción general de dicha arquitectura y por qué fue necesaria dicha reescritura.
2 meneos
12 clics

Una mirada práctica a la seguridad del estándar de comunicaciones GSM 2G después de tres décadas [ENG]  

Observar el tráfico GSM 2G tres décadas desde su inicio puede no parecer muy interesante, pero el protocolo sigue siendo sorprendentemente común en la actualidad. A menudo se utiliza como alternativa cuando la cobertura es limitada y no hay protocolos más modernos disponibles, así como para dispositivos IoT heredados. Hay que tener en cuenta que existen fallos de seguridad bien documentadas en el protocolo GSM y que también hay herramientas disponibles públicamente para explotarlos.
2 meneos
14 clics

Una semana usando Plan 9 [ENG]  

Pasé la primera semana de 2021 aprendiendo un sistema operativo llamado Plan 9 de Bell Labs. Este es un sistema operativo marginal, abandonado durante mucho tiempo por sus autores originales. También es responsable de una gran cantidad de inspiración en otros lugares. Si has utilizado el lenguaje Go, /proc, UTF-8 o Docker, has utilizado funciones diseñadas por Plan 9. Este artículo se sumerge en los aspectos internos del sistema operativo y algunos temas de informática moderadamente difíciles.
2 meneos
8 clics

Chafa, utilidad para mostrar cualquier tipo de imagen en el terminal [ENG]  

Chafa es una utilidad de línea de comandos que convierte todo tipo de imágenes, incluidos GIF animados, en una salida de caracteres ANSI/Unicode que se pueden mostrar en un terminal. Es altamente configurable, con soporte para transparencia y múltiples modos de color y espacios de color, combinando rangos seleccionables de caracteres Unicode para producir la salida deseada.
2 meneos
19 clics

Taller de exploiting: ret2libc en Linux x64

Seguimos con exploiting en Linux, con el mismo código en la entrada anterior pero esta vez activando el bit NX (no-execute), es decir, la protección que nos marcará el stack como no ejecutable.
3 meneos
26 clics

Taller de exploiting: baby BOF en Linux x64

Voy a retomar los ejercicios de exploiting en Linux, esta vez en arquitectura de 64 bits. Básicamente se trata de lo mismo que en 32 bits pero con "pequeños" cambios, principalmente: los registros de propósito general se han ampliado a 64 bits. Así que ahora tenemos RAX, RBX, RCX, RDX, RSI y RDI; el puntero de instrucción (instruction pointer), el puntero de base (base pointer) y el puntero de pila (stack pointer) también se han ampliado a 64 bits como RIP, RBP y RSP respectivamente; se han proporcionado registros adicionales: R8 a R15; etc.
2 meneos
8 clics

v7/x86, el último verdadero UNIX, portado a x86 [ENG]

V7/x86 es una adaptación de la séptima edición del sistema operativo UNIX a ordenadores x86 (i386). UNIX V7 fue la última distribución general (alrededor de 1979) procedente del grupo de investigación de Bell Labs, el hogar original de UNIX. La adaptación se realizó principalmente alrededor de 1999 cuando las licencias de código fuente “Ancient UNIX” estuvieron disponibles por primera vez y se revisaron para su lanzamiento. Después hubo algunas mejoras durante 2006-7.
« anterior123457

menéame