Las inteligencias artificiales y los desarrolladores segun McKinsey

Calle estrecha

Mi horario de este curso rompe un poco mis rutinas de publicación. Veremos como lo arreglamos.

Interesante echarle un vistazo a Unleashing developer productivity with generative AI donde McKinsey entra en el tema de los desarrolladores y su productividad cuando tienen ayuda de alguna inteligencia artificial.

El resumen es que, efectivamente, la productividad aumentaría, aunque hay que tomar algunas precacuciones.

A McKinsey study shows that software developers can complete coding tasks up to twice as fast with generative AI. Four actions can maximize productivity and minimize risks.

Yendo más al detalle, la mejora se produciría en el desarrollo (documentación, generación de código y refactorización), pero no se vería en las tareas más complejas.

Yet, while a massive surge in productivity is possible, our research finds time savings can vary significantly based on task complexity and developer experience. Time savings shrank to less than 10 percent on tasks that developers deemed high in complexity due to, for example, their lack of familiarity with a necessary programming framework.

Y esas tareas más complejas serían todas para los desarrolladores con menos experiencia, a los que la ayuda de las IA les puede perjudicar.

A similar result was seen among developers with less than a year of experience; in some cases, tasks took junior developers 7 to 10 percent longer with the tools than without them.

Las IAs ayudan en tareas manuales y repetitivas, en la generación de una primera versión del código para hacer algo, acelerarían las actualizaciones de código ya existente, aumentarían la capacidad de los desarrolladores de enfrentarse a nuevos retos.

Sin embargo, algunas actividades necesitan de la experiencia del desarrollador, como pueden ser el examen de fallos y errores, añadir contexto sobre la organización o satisfacer requerimientos más complejos (tricky).

Las conclusiones serían: proporcionar el acceso a IAs generativas (y ayuda para usarlas) a los desarrolladores, tratar de sacar partido en casos de uso más avanzados, y planificar teniendo en cuenta los cambios en las habilidades que se podrán observar.

Además, hay que preocuparse de controlar los riesgos, teniendo en cuenta la privacidad de los datos y la seguridad de terceros, prestar atención a los cambios regulatorios, así como a los fallos de comportamiento de las IAs. También conviene estar atentos a los temas éticos y de reputación, así como las posibles vulnerabilidades de seguridad.

Una breve historia de los números aleatorios

Los dados del r5

El tema de la aleatoriedad siempre vuelve por aquí. Hoy traemos A Brief History of Random Numbers donde se incluye justamente lo que se anuncia: una historia breve de la aleatoriedad, desde los dados y su primer ejemplar conocido en el siglo 24 antes de Cristo.

The oldest known dice were discovered in a 24th century B.C. tomb in the Middle East.

Pero centrándose en los años 1940 y la necesidad de generar números aleatorios. por ejemplo, la máquina de RAND Corporation que los generaba con ayuda de un generador de pulsos.

But by the mid-1940s, the modern world demanded a lot more random numbers than dice or yarrow stalks could offer. RAND Corporation created a machine that would generate numbers using a random pulse generator.

Y, claro, los primeros generadores de números seudoaleatorios, como el de John von Neumann alrededor de 1946.

John von Neumann developed a PRNG around 1946. His idea was to start with an initial random seed value, square it, and slice out the middle digits.

Para guardar.

Descubrimiento de secretos a partir de la iluminación de los LED

Luz

Los ataques que explotan canales secundarios de información suelen tener presencia en este sitio. En este caso se utilizan grabaciones en vídeo de los LED de encendido de algunos dispositivos para obtener claves. Lo cuentan en Video-based Cryptanalysis BH USA 23 & DEFCON 31 Exploiting a Video Camera’s Rolling Shutter to Recover Secret Keys from Devices Using Video Footage of Their Power LED y se basa en que los cálculos relacionados con operaciones criptográficas son costosos, lo que provoca un cambio de consumo en los dispositivos y, por lo tanto, un cambio de brillo en los LEDS.

We show that cryptographic computations performed by the CPU change the power consumption of the device which affects the brightness of the device’s power LED.

Pueden obtener grabaciones en vídeo de las cámaras (modificando la tasa de captura de imágenes) y, a partir de allí extraer secretos criptográficos.

This is done by obtaining video footage of a device’s power LED (in which the frame is filled with the power LED) and exploiting the video camera’s rolling shutter to increase the sampling rate by three orders of magnitude from the FPS rate (60 measurements per second) to the rolling shutter speed (60K measurements per second in the iPhone 13 Pro Max). The frames of the video footage of the device’s power LED are analyzed in the RGB space, and the associated RGB values are used to recover the secret key by inducing the power consumption of the device from the RGB values.

La intensidad/color del LED se puede utilizar para detectar el inicio de las operaciones criptográficas.

The intensity/color of the power LEDs can be used to detect the beginning and end of cryptographic operations.

También se basa en que las bibliotecas criptográficas tienen vulnerabilidades.

The origin of the vulnerabilities is in the cryptographic libraries.

Estos fallos están relacionados con algoritmos criptográficos sensibles a operaciones de criptoanálisis a través de canales laterales.

We show that the combination of vulnerable cryptographic algorithms (i.e., that are vulnerable to cryptanalytic side-channel attacks)

No tengo claro del todo cómo de fácil/realizable es el ataque, pero las posibilidades son muy interesantes.

En Cameras Watching a Device’s Power LED Prove Enough to Snaffle Cryptographic Secrets hablan del experimento, con seis dispositivos comerciales (lectores de tarjetas) y un teléfono Samsung S8 y algunas configuraciones sofisticadas.

To prove the concept, the team took a pair of seemingly-secure and not known to be compromised gadgets — a selection of six commercial smart card readers connected to a laptop and a Samsung Galaxy S8 smartphone — and proceeded to capture their private cryptographic keys, entirely over-the-air. The first attack used a network security camera located more than 50 feet away from the target; the second an iPhone 13 Pro Max, working around the Galaxy S8’s lack of power LED by instead watching the LED on a set of USB speakers connected to the same USB hub as the smartphone.

ChatGPT, los plugins y el descontrol sobre nuestra información

Muro y decoración

En ChatGPT Plugins: Data Exfiltration via Images & Cross Plugin Request Forgery una mezcla de viejos y nuevos mecanismos de ataque.

Es una entrada curiosa, sobre los sitios que nos facilitan el acceso a la herramienta chatGPT, ofreciendo servicios añadidos.

Por un lado, los añadidos (plugins) pueden generar, por ejemplo, salida en un cierto formato (usan Markdown como ejemplo). Pero claro, una vez que el plugin tiene acceso a la información del usuario en la plataforma, puede aprovechar para extraer información adicional:

The LLM’s response can contain markdown (or instruct the AI to build it on the fly), summarize the past conversation, URL encode that summary and append that as query parameter. And off it goes to the attacker.

ChatGPT y el phishing: no está mal

Pescando

Ya sabemos que el phising es ese engaño que trata de hacernos actuar ante algún tipo de mensaje y nos engaña para conseguir que hagamos algo. También sabemos que muchas veces aprovecha nuestros instintos más básicos (o nuestra falta de atención) para engañarnos. Hay herramientas, que tratan de aligerar el problema, pero lo fundamental es que distinguir un mensaje maligno de uno legítimo puede ser bastante complicado.

En estas condiciones se preguntaban en ¿Qué sabe ChatGPT de phishing? y se realiza un experimento sencillo, que consiste en suministrale direcciones web (URLs) y ver si la cosa las identifica como posible phishing o no.

Las conclusiones dicen que se trata de un reconocedor bastante bueno (asombroso, dice), y que puede ser una buena ayuda para los analistas, pero que también tiene sus defectos.

En definitiva, aunque impresionantes, ChatGPT y LLM todavía no están preparados para introducir cambios radicales en el juego de la ciberseguridad, al menos en lo que respecta a la detección del phishing.