exatlon

36 lines

893 in disk

52 available

A harder Software Reverse Engineering (SRE) challenge. This one is only available on 64-bit Intel Linux machines.
If you're on windows use WSL or don't run it at all for an added challenge (it's 100% possible!).
If you're on mac you won't be able to run it, but it is still very possible.
Click here for amd64 Linux.
Show the sourcecode

int main(void)
{
    /*i thought you'd learn by now!!*/
    return 0;
}

simplySRE

44 lines

693 in disk

111 available

Ever wondered what's on the inside of an executable file? Try right clicking then hitting edit on an executable. It's all gibberish. Today, we'll learn how to read that gibberish.
Click here for Mac M1.
Click here for x64 Windows.
Click here for x64 Linux.

Programs needed:
- Ghidra downloaded from this direct link and unzipped (it’s fairly large, about 1-2GB)
- A working installation of JRE version 11+; I recommend downloading from here

Show the sourcecode

int main(void)
{
    /*now why would I give you the source code???*/
    return 0;
}

formatme

44 lines

967 in disk

188 available

A super cool demonstration of a format string vulnerability. Your goal is to get the secret which is the macro SUPER_SECRET in the code below.
Click here for Mac M1.
Click here for x64 Windows.
Click here for x64 Linux.
Show the sourcecode

#include <unistd.h>
#include <stdio.h>
int main()
{
    int secret_num = SUPER_SECRET;
    char name[64];
    read(0, name, 64);
    printf("Hello ");
    printf(name);
    printf("! You'll never get my secret!\n");
}

overflowme

34 lines

1365 in disk

129 available

This is a super cool buffer overflow demonstration. Your goal is to get the program to output the "Yay! Your number is '68'"
Click here for Mac M1.
Click here for x64 Windows.
Click here for x64 Linux.
Show the sourcecode

#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
int main(int argc, char **argv)
{
    volatile int modified;
    char buffer[64];
    modified = 0;
    gets(buffer);
    if(modified != 0) {
        printf("Yay! Your number is \'%d\'\n", modified);
    } else {
        printf("Try again?\n");
    }
}

Announcements

11K viewed

627K in disk

46K available

reverse engineering

make a wish! it's 11/11. anyways, today we're doing software reverse engineering (sre) so, open simplySRE!! if you finish that, open exatlon (this can take hours to solve)

buffer overflow

open the overflowme file. after youre finished, open formatme file