Going in Reverse⚓︎
Difficulty:
Direct link: Going in Reverse
Objective⚓︎
Request
Kevin in the Retro Store needs help rewinding tech and going in reverse. Extract the flag and enter it here.
Kevin McFarland
Hello, I'm Kevin (though past friends have referred to me as 'Heavy K'). If you ever hear any one say that philosophy is a useless college degree, don't believe them; it's not. I've arrived where I am at because of it. It just made the path more interesting.
I have more hobbies than I can keep up with, including Amateur Astronomy, Shortwave Radio, and retro-gaming. Things like backyard observances of distant galaxies, non-internet involved, around the world communications, and those who program for the Atari 2600 still invoke degrees of awe for me.
One of the most influential books I've read is "Godel, Escher, and Bach" by Douglas Hofstadter. I'm also a bit of a Tolkien fanatic.
My wife and my daughter are everything; without them, I surely would still be kicking rusty tin cans down the lonely highways of my past.
You know, there's something beautifully nostalgic about stumbling across old computing artifacts. Just last week, I was sorting through some boxes in my garage and came across a collection of 5.25" floppies from my college days - mostly containing terrible attempts at programming assignments and a few games I'd copied from friends.
Finding an old Commodore 64 disk with a mysterious BASIC program on it? That's like discovering a digital time capsule. The C64 was an incredible machine for its time - 64KB of RAM seemed like an ocean of possibility back then. I spent countless hours as a kid typing in program listings from Compute! magazine, usually making at least a dozen typos along the way.
The thing about BASIC programs from that era is they were often written by clever programmers who knew how to hide things in plain sight. Sometimes the most interesting discoveries come from reading the code itself rather than watching it execute. It's like being a digital archaeologist - you're not just looking at what the program does, you're understanding how the programmer thought.
Take your time with this one. Those old-school programmers had to be creative within such tight constraints. You'll know the flag by the Christmas phrase that pays.
Solution⚓︎
I was given a BASIC code that hides a flag. According to Kevin, BASIC programmers knew how to hide things in plain sight, and the best way to find what is hidden is to read the code itself.

After analysis, the code seems to take a user's input and compare the length to the ENC_PASS length. If the length is different, it displays "ACCESS DENIED" and exits. If the length is the same, the program performs a character-by-character XOR 7 operation and compares it to the corresponding character in ENC_PASS. In case there is no match, the program displays "ACCESS DENIED" and stops.
In case the password XOR 7 matches the ENC_PASS value, a character-by-character XOR 7 is performed on the ENC_FLAG value and the flag is displayed.
Note: AI was used to clarify some BASIC syntax and logic.
I decided to write a python program that performs a character-by-character XOR 7 on the ENC_FLAG and got the flag.

Answer
CTF{frost-plan:compressors, coolant,oil}
Response⚓︎
Kevin McFarland
Excellent work! You've just demonstrated one of the most valuable skills in cybersecurity - the ability to think like the original programmer and unravel their logic without needing to execute a single line of code.