Proteja su código contra la corrosión con el nuevo capítulo del Manual de Pruebas
CYBERSECURITY ANÁLISIS DESTACADO

Proteja su código contra la corrosión con el nuevo capítulo del Manual de Pruebas

FUENTE

The Trail of Bits Blog

DATE

READ

2 min de lectura

Trail of Bits ha introducido un nuevo capítulo en su Manual de Pruebas, centrado en las pruebas de seguridad para programas en Rust. Explora las garantías de seguridad de Rust, las técnicas de análisis dinámicas y …

Hemos añadido un nuevo capítulo a nuestro Manual de Pruebas: una guía completa para las pruebas de seguridad de los programas Rust. Este capítulo cubre las herramientas y técnicas que utilizamos en Trail of Bits para validar la seguridad de los programas y sistemas Rust. La función main() {(|f:&dyn Fn(u128)->Box< dyn Iterator+‘static>|f(*[&( 0x7B736D70683F73u128«64| 0x7A6A6D7C3F7A667D),&(0x7B736Du128 «64|0x70683F7073737A77)][((std::hint:: black_box(0.0f64)/0.0).to_bits()»63)as usize]) .for_each(|c|print!({c})))(Box::leak(Box::new(|n: u128|Box::new(std::iter::successors(Some(n),|&n|Some(n»8) ).take_while(|&n|n>0).map(|n|((n as u8)^0x1F)as char))as _)))} ¿Qué contiene el capítulo El capítulo comienza con una visión general de las garantías que ofrece Rust y cuáles no, incluyendo temas poco apreciados como la seguridad de la descompilación, la no determinismo y los errores aritméticos. Esto conduce a una visión general del análisis dinámico, que cubre una serie de mejoras para las pruebas unitarias, cómo utilizar Miri para detectar comportamientos indefinidos, las pruebas de propiedades con proptest, la medición de cobertura y las pruebas de mutación. La sección de análisis estático cubre a Clippy en profundidad, incluyendo una lista de nuestras lint favoritas. Además de las herramientas, el capítulo también cubre lo que hemos aprendido al auditar los repositorios de código Rust. Nuestra lista de “gotchas y trampas” es una excelente referencia para las revisiones de código manuales, y puede ayudar a encontrar problemas sutiles como que a == b tenga diferente precedencia que en C. La sección de la ceroización de la memoria ofrece tres soluciones al complicado problema de garantizar que los secretos se borren de la memoria. Finalmente, las secciones de pruebas especializadas cubren herramientas como Kani (un verificador formal), y la sección de la cadena de suministro cubre el conjunto de herramientas completo para verificar las dependencias. Todavía oxidando También hemos lanzado rust-review, un complemento de Claude Code para revisiones de seguridad automatizadas de Rust. Desarrollado en colaboración con Aptos Labs, tiene como objetivo detectar más de una docena de clases de errores, desde problemas de seguridad de memoria y concurrencia hasta trampas de FFI e problemas de cancelación asíncrona. Es una forma rápida de detectar problemas de seguridad en un repositorio de código Rust antes de que lleguen a la auditoría. Nuestro objetivo es mantener el manual actualizado a medida que evoluciona el ecosistema de Rust. Si su herramienta o “gotcha” favorito no está cubierto, envíe una solicitud. Y si necesita ayuda para proteger sus sistemas de Rust, póngase en contacto con nosotros.