sl.0g.rip // advanced range

Three Living off the Land tiers. Learn the box, adapt and run your payload, and make the scoreboard record your student ID.

Claim a solve

The payload script is /pop.sh. It reads a randomly generated TIER_ID from the environment and accepts your 8-digit student ID as its argument. It may or may not have some fun anti-cheat mechanisms to see if you're just giving each other answers. I wouldn't dare do something so sneaky.

sh pop.sh 12345678

tier 1

docker run -d --name easy ghcr.io/grownuphacker/0g-rip-tier1-easy:latest

Tier 1, figure out how to download the script and run it appropriately. You got this.

tier 2

docker run -d --name harder --hostname tier2-harder --cap-add=NET_ADMIN ghcr.io/grownuphacker/0g-rip-tier2-harder:latest
docker exec -it --user operator harder bash

On Tier 2, the regular user must escalate to root before retrieving and running it.

tier 3

docker run -d --name hardest -p 127.0.0.1:8080:8080 ghcr.io/grownuphacker/0g-rip-tier3-hardest:latest

On Tier 3, no shell for you. At least not easily. Figure out what else is on this container to retrieve and run the script. Since I'm a super swell guy, I'll give you a freebie - you can inspect metadata of an image without even running it by using the *gasps*

inspect
command. Try this:
docker image inspect ghcr.io/grownuphacker/0g-rip-tier3-hardest
After that, when you're done going cross-eyed... try it with a format flag:
docker image inspect ghcr.io/grownuphacker/0g-rip-tier3-hardest --format='{{json .Config.ExposedPorts}}'

Scoreboard

View recorded solves at /scoreboard. The beacon receiver is POST /beacon.