OpenAI's GPTs Prompt Leakage Attack and Defense in Practice

I previously wrote an article introducing prompt cracking: bypassing ChatGPT’s security checks. At that time, the main purpose was to bypass some security restrictions when using ChatGPT. I didn’t try much with prompt leakage because there weren’t many applications with custom prompts at that time.

Recently, OpenAI announced GPTs at their first DevDay. You can learn about GPTs’ capabilities by reading Introducing GPTs. Subsequently, GPT creation permissions were opened to Plus users, and a large number of GPTs emerged. With the same prompt words, some people have created interesting GPTs in various ways.

Creating your own GPTs has become very simple

So, is there any way to obtain the prompts of others’ GPTs? And how can we prevent others from getting the prompts of our own GPTs? Let’s look at some interesting attempts.

Read More

ChatGPT Assists in Analyzing a Mysterious "No Such File" Problem

Recently, I encountered a strange issue when executing the binary file ‘protoc’, which reported the error no such file or directory: ./protoc. The file was clearly there, yet it kept reporting this error. Could it be a system bug? Whenever encountering bizarre issues, we tend to suspect the operating system or compiler, but often we end up being the fool. This time was no exception; after continuous attempts, I discovered that this was actually a system feature.

Strange error: No such file

In fact, if you’re a novice encountering this problem for the first time, you’d be at a loss, with no idea how to troubleshoot. Before continuing to read, you might want to guess what could cause this error when executing a binary file.

Read More

In-depth Understanding of eBPF-based C/C++ Memory Leak Analysis

For C/C++ programmers, memory leak is a perennial issue. There are many methods to troubleshoot memory leaks, such as using tools like valgrind, gdb, asan, tsan, etc., but each of these tools has its limitations. For example, valgrind slows down program execution, gdb requires understanding of the code and manual breakpoint setting, while asan and tsan require recompiling the program. For complex services that are already running, these methods are not very convenient.

Memory leak flame graph obtained through eBPF analysis

Fortunately, with eBPF, we can analyze memory leak problems without recompiling the program and with minimal impact on program execution speed. The power of eBPF is evident, but eBPF is not a silver bullet. There are still many issues to be resolved when using it to analyze memory leaks. This article will discuss the common problems encountered in eBPF-based detection.

Read More