The photograph on the left was provided by Secured By Design.

I love CTFs and though I can’t take part in a lot of them, I make it a point to always play in Secured By Design’s CTF036. Four years in a row now and the events just keep getting better!

I was invited to give a small talk again, this time covering the basics of PKI: public key infrastructure. In short, PKI is one of the ways to solve the challenge of “trust” in an environment: how can you trust that someone or something really is whom they claim to be? We were very much cramped for time, so I had to try and smush everything into half an hour! While the talk went smoothly, I’m not entirely happy: there was just too much info in too little time. And I didn’t even cover it all!

My slide deck for “When Alice met Bob…” is over here.

The CTF itself was, as always, a blast! Roughly a hundred participants, attacking six copies of the same target environment: three servers and two desktop systems, part of a fake school’s infrastructure. Our goal was to grab as many student IDs as possible.

The usual suspects were there yet again: weak passwords on mailboxes, SMB shares without proper ACLs, simulated end-users and a rudimentary daemon which you could try a buffer overflow on.

I spent most of my time on attacking one of the end users: a professor. The school’s website featured an open forum, with sections dedicated to each of the classes taught. One professor warned his students that their final presentations were due any day now and that they should be submitted “through the usual share“. This refers to the aforementioned, open SMB share which had a subfolder “Presentations“.

I recalled that SETookit and Metasploit offered options to create Word/Powerpoint/Office payloads, but had forgotten how to. I’m rusty, it’s been a while since I’ve done this 🙂 After a bit of research, I turned to exploit/windows/fileformat/office_OLE*. When configuring the exploit I simply chose to target all possible options, which generated roughly twenty files with shellcode. In real life this would obviously not work, because who would fall for that?! Twenty files without content, clicking through all of them? Nope 🙂 But in this case the script set up on the workstation (to simulate the professor) was greedy and simply went through all of them.

Using this method I got a nice and shell_reverse_tcp to my port 443. Looking to escalate my privileges on the workstation I tried to get a Meterpreter payload to run in the same way, but failed. I guess the payload was too tricky for the target.

I explained this particular attack vector to two teams (ex-colleagues to my right, the team in #1 slot to my left), which was a fun exercise. I love explaining stuff like this to people who’re just getting their feet wet (my ex-colleagues). The #1 team quickly latched onto the idea and offered an improvement to the attack: use the reverse shell to download a Meterpreter payload .EXE file. Duh! I should’ve thought of that!

Anyway: a wonderful day with fun hacking and meeting cool people! Heartily recommended 🙂

Source: Tess’ personal website https://www.kilala.nl/index.php?id=2455