<feed xmlns="http://www.w3.org/2005/Atom"> <id>https://www.ret2libc.com/</id><title>~/werew</title><subtitle>Luigi Coniglio's personal blog about security, computer science and miscellaneous</subtitle> <updated>2026-06-07T22:20:08+00:00</updated> <author> <name>Luigi Coniglio</name> <uri>https://www.ret2libc.com/</uri> </author><link rel="self" type="application/atom+xml" href="https://www.ret2libc.com/feed.xml"/><link rel="alternate" type="text/html" hreflang="en" href="https://www.ret2libc.com/"/> <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator> <rights> © 2026 Luigi Coniglio </rights> <icon>/assets/img/favicons/favicon.ico</icon> <logo>/assets/img/favicons/favicon-96x96.png</logo> <entry><title>AI Data Extraction Lab 1: When Models Remember Too Much</title><link href="https://www.ret2libc.com/posts/Data-Extraction-Lab1/" rel="alternate" type="text/html" title="AI Data Extraction Lab 1: When Models Remember Too Much" /><published>2026-06-07T00:00:00+00:00</published> <updated>2026-06-07T00:00:00+00:00</updated> <id>https://www.ret2libc.com/posts/Data-Extraction-Lab1/</id> <content src="https://www.ret2libc.com/posts/Data-Extraction-Lab1/" /> <author> <name>Luigi Coniglio</name> </author> <category term="AI Security" /> <summary> Neural networks are trained to learn patterns, but sometimes they learn a bit too well. Under the right conditions, ML models can memorize specific samples from their training data, and spit them back out. This has real consequences for privacy, intellectual property, and legal compliance: GitHub Copilot has been caught reproducing GPL-licensed code without attribution, leading to a class-a... </summary> </entry> <entry><title>The Prompt Injection Defence Landscape</title><link href="https://www.ret2libc.com/posts/Prompt-Injection-Defences/" rel="alternate" type="text/html" title="The Prompt Injection Defence Landscape" /><published>2026-04-15T00:00:00+00:00</published> <updated>2026-05-12T11:23:17+00:00</updated> <id>https://www.ret2libc.com/posts/Prompt-Injection-Defences/</id> <content src="https://www.ret2libc.com/posts/Prompt-Injection-Defences/" /> <author> <name>Luigi Coniglio</name> </author> <category term="AI Security" /> <summary> Update: 12 May 2026 I have just released Prompt Injection Defence Atlas, a taxonomy of defences against prompt injection. It includes and summarizes most of the available literature to date. You can explore the interactive graph here. Prompt injection is a class of attacks where an adversary embeds malicious instructions into content that an LLM will process. As LLMs increasingly gain th... </summary> </entry> <entry><title>Using Hermes’s Quicksort to run Doom: A tale of JavaScript exploitation</title><link href="https://www.ret2libc.com/posts/hermes-doom/" rel="alternate" type="text/html" title="Using Hermes’s Quicksort to run Doom: A tale of JavaScript exploitation" /><published>2022-07-20T00:00:00+00:00</published> <updated>2026-04-15T07:53:50+00:00</updated> <id>https://www.ret2libc.com/posts/hermes-doom/</id> <content src="https://www.ret2libc.com/posts/hermes-doom/" /> <author> <name>Luigi Coniglio</name> </author> <category term="Exploitation" /> <summary> TL;DR: JavaScript engines are fascinating and challenging from a security perspective due to their exposure to malicious code, memory corruption risks, frequent vulnerabilities, and exploit-friendly nature. I work at Meta on enhancing the security of the widely used Hermes JS engine, which powers React Native and various other applications. I recently published an article about a unique Hermes ... </summary> </entry> <entry><title>Exploring Execution Trace Analysis</title><link href="https://www.ret2libc.com/posts/Exploring-Execution-Trace-Analysis/" rel="alternate" type="text/html" title="Exploring Execution Trace Analysis" /><published>2019-10-03T00:00:00+00:00</published> <updated>2019-10-03T00:00:00+00:00</updated> <id>https://www.ret2libc.com/posts/Exploring-Execution-Trace-Analysis/</id> <content src="https://www.ret2libc.com/posts/Exploring-Execution-Trace-Analysis/" /> <author> <name>Luigi Coniglio</name> </author> <category term="Reverse Engineering" /> <summary> I have recently published a blogpost showing some of the work I have done during my internship at Quarkslab. The blogpost can be found here. </summary> </entry> <entry><title>Tackling Associative Arrays in Symbolic Execution</title><link href="https://www.ret2libc.com/posts/associative-arrays-symbolic-trees/" rel="alternate" type="text/html" title="Tackling Associative Arrays in Symbolic Execution" /><published>2019-01-29T00:00:00+00:00</published> <updated>2019-01-29T00:00:00+00:00</updated> <id>https://www.ret2libc.com/posts/associative-arrays-symbolic-trees/</id> <content src="https://www.ret2libc.com/posts/associative-arrays-symbolic-trees/" /> <author> <name>Luigi Coniglio</name> </author> <category term="Program Analysis" /> <summary> Recently as part of a small project I have been wondering what is the most efficient data structure for implementing associative arrays when symbolic keys are involved. An associative array is a data type consisting in a collection of key-value pairs such that each key in unique. Normally this data type allows for operations such as lookup, insertion, removal and modification of values associ... </summary> </entry> </feed>
