csaw21

Writeups for CSAW 2021 CTF

View on GitHub

checker

Writeup by: GoProSlowYo solved by Perryman

Team: OnlyFeet

Writeup URL: GitHub


What's up with all the zeros and ones? Where are my letters and numbers? (This is a reversing challenge.)

Initial Research

This one is extremely straightforward and they literally tell us: (This is a reversing challenge.).

For this challenge you can work backwards through the provided python code and function calls to end up with the flag ultimately.

Decode then encode

The main function calls an encode function on the flag:

encoded = encode(flag).

If we look at the encode function we see it’s setting d = 24 then it’s calling x = up(input), x = right(x,d), x = down(x), x = left(x,d) and then returns x.

def encode(plain):
    d = 24
    x = up(plain)
    x = right(x,d)
    x = down(x)
    x = left(x,d)
    return x

We need to take the encoded string and run backwards through main and each function.


Victory

Submit the flag and claim the points:

flag{r3vers!nG_w@rm_Up}