Saturday, November 11, 2023

defcon31 kaggle ctf challenge

Most of the problems were about adversarial machine learning in text, images and sound. This is currently exciting field with a lot of publications each year.

Here I will briefly describe each problem that I solved (19 out of 27 problems)

1) What is the Flag(1-6):

Here you make prompt injection, getting information about hidden context, in which flag is stored. I spent not much time on these 6 problems, just experimenting and googling about prompt attack techniques.

2) Guess Who's back?:

I got this problem not very hard: just tried thresholding with different values and saw the hidden message inside.

3) Pickle:

This one is interesting. I learned all about pickling and about code execution with reduce opcode. But reduce was filtered on checking result. So what I tried is just modify serialized pickle a bit and got the flag.

4) Count MNIST:

This is a really silly problem. Hint expands very much search space. I've not solved problem. I gave up. As it turned out afterwards - the first column should contain labels (0-255), the second - histogram of characters for train+test split.

5) Pixelerated:

This is interesting. You should send images with embedded text, making out from xml body and modifying xml admin flag. Not much time spent.

6) Semantle:

Just used gensim glove to find similar words and hill climbed to the result.

7) Semantle2:

This is just some harder than previous version. I also hill climbing to get to the result.

8) Cluster2:

Very simple. Just brute force k in kmeans while seeing clustering metric.

9) Cluster1:

Some kind of bruteforce was involved here. I tried to remove/add each item and saw the score.

10) Cluster3:

Just following by token embeddings similarity revealed scattered answer.

11)  Granny1:

This is most interesting for me, unfortunutely not solved. Was unable to match local model with remote one. So sticked to black box approach, which was very slow (I tried different approaches, one of them is evasion attack - evolution approach - where you start from target image and slowly converge to source image)

Overall:

The challenge was really fun and pain simultaneously. I disappointed after all because I could perform better. Here is kind of luck involved in these challenges, not only your skills.

No comments:

Post a Comment