 What's going on everybody? My name is John Hammond and we're looking at Uttaroot CTF 2019. This is in the MISC category. This is the challenge called Can You Read Me? It says find what I'm trying to say. It gives us a net cat connection so we can go ahead and connect to that. I will create a connect.sh script so we kind of encapsulate that and we don't have to remember that IP address or any crap like that. So let's run that and it gives us a lot of output. I was just trying to say something. Can you figure it out? And Pikachu, Pika, Pika, Pika, Pika, Pika, Pika. Just a lot of Pikachu with the occasional Pi, Pi and Pika. It says do you get it? Yes. And it closes. Okay so this is what we have to work with. I started this for a long while wondering like what is this? Is this Morse code just kind of hidden in different words or symbols or representations? Is it binary? But no, it looks like we have repeated three notions so that wasn't right. And I actually didn't solve this the other night when I was working. I actually solved it moments ago and I realized oh that is probably an esoteric language. So I tried to Google. You know I went to all right Pikachu, Pikachu esoteric language. And of course there it is. Find a Pika lang and it's a Joe gessoteric programming language by Blake Grotwald. Okay, identical to brainfuck except the instructions are changed the sounds made by Pikachu. Okay, so oh it has a GitHub repository. And I went to that and that is Grotwald or Grotwald and he has Pika Lang the Pikachu programming language. That's very cool. I like that a lot. So looks like there is something you can install with it. So I had done that. I had done PIP install Pika Lang. I needed to do it for PIP 2 because I was working on Python 2 at that point and you might need to pseudo that if you're doing it for the first time. Moral of the story is I did not get back to work. So do I still have my clipboard? Let's create an Ape.py file. So we got some to work with. And I already have a mess that I'm spoiling it. I'm showcasing some things that you shouldn't see there. So Ape.py again, user bin environment, Python, I did it for Python 2. So I should be able to import Pika Lang. And I said source code is equal to multi line string. And no I overwrote it. Okay, great. So let's go ahead and connect one more time just to get all this. This guy, so pasted that in. And then the documentation said you can also use it as a Pika Lang if you install it. So if you do clone that repository and let's do that just for kicks and giggles. I put it in opts, but I'll showcase it in my current directory now. If you run this and again, you'll need to pseudo that you get it all set up. Probably want to do it in a virtual environment, but I'm bad at everything. So now you would be able to run Pika Lang, right? And you need to give it a file. So because I just created that source code, let's copy this. Oh, don't want to move it my bad. Let's create an it dot pokeball, as that is what it's looking for. So Pika Lang it Oh, I need to be in the other directory Pika Lang. Oh, it's dot pokeball. And I got an error for that. Same thing happened when I tried to run it inside the script. I did Pika Lang dot evaluate and then you pass the source code to it. And that also gave me an error. So that did not work. And I'm like, What the heck, I know this has got to be it I know this is it blah, blah, blah. So let's fire up it up pokeball again. And I continued on the hunt. I look for poke a lang or Pika Lang sorry. Lang decoder something online maybe looks like there's a decode tech afar thing. So I tried that. I pasted this in execute but got nothing. There were no results that returned from that. Pika Lang decoder. Pika Lang, Mars in 10 Pika Lang this guy had something in a GitHub repository looks like he created a website for it. So I went to the root of that repository. And it looks like he had the like a web browser already set up for it. So if you will go ahead and input that in there, it gave me the raw brain fuck that it worked with. So I thought, Oh, okay, I can just throw this into ti o dot run, because that's an online thing for trial online. A lot of a lot of online esoteric languages, throw in the brain fuck here paste that in. But that aired to and like what the heck nothing seems to be working. So I continue the hunt because I know that this is the right avenue. Back to my Google results, recognize the cipher the 10 craziest programming language, blah, blah, blah, blah, Pika Lang online. And I found one eventually I actually saw this blog post tro 42, you know, I just keep poking around and trying to find stuff that would work here. And I read through this look like Mo K maybe they didn't have the source code or anything to decode it. But I saw in the comments here, this fellow just finished an interpreter for Pikachu written in Python. Now Pikachu can store programs in Pika files. Okay, great. So now I have a new utility. I thought, let's try that. That was an accidental zoom. I've got to get repository I can work with. Let's work with that. Get clone of this guy. And his documentation, excuse me. Just had you install it and then you can access it as a module. So once you move in there, you can go ahead and install it. Again, want to pseudo that. So you could at this point now use Python, tack m, Pika to as a module, and then you could give him the file it dot pokeball. I realized that I had that wrong. I'm assuming this print st t stack pop and equals that thing that's not normal in Python two, but is normal in Python three. So I tried to run that in Python three. And I didn't have it installed. So now I'll have to go back and do that again for Python three, move into Pikachu interpreter, pseudo Python three. Sorry. Set up install, go, go, go. That will crank through it. Now can I run this? Hello world. That's the output that I was looking for. Cool, looks like we've got something at least maybe right. It's not a flag, but it's something. Did you get it? Let's paste that in. Looks like we can move forward here. Alice is trying to say something. Can you figure it out? This looks like brain fuck. So what I would do is move that into ti o paste that guy. This is fucking my brain. Okay, that looks reasonable. Let's paste that in. And then I got this. So I thought, hmm, this looks like base 85 kind of random letters and stuff. So I tried that I went around to a couple like base 85 decoders online and I didn't get any of those to work. So I thought, well, I'm obviously in the wrong spot here. I need to decode that still doesn't seem to get anywhere. I think I think I switched that around the wrong way. Try to paste in this that didn't get anywhere. Anyway, this is a rabbit hole. I'm wrong. I thought to myself, we've been working with esoteric languages thus far. So this is referenced in Katana. Again, if you were to give up and had something in your mind, like, man, I just got to look through my checklist, what am I missing? You'll see in esoteric languages you do have Malbo. It looks like base 85, but it isn't. It's a reference to inferno or Dante or hell. There is an online decoder here. So I thought, let's paste that in. Let's try it out. See what we get. We got our flag. Cool. So we can go ahead and copy and paste that. I solved this earlier, because I was so excited when I got it. So I submitted that. But that is that. That is the Can You Read Me challenge. It is just a kind of a depth to crawl through between Pika Lang, which I forgot about, didn't know about. I'll have to add it to Katana brain fuck, of course, and Malbo. So keep those in mind. I don't even know how to say this. I'm gonna end the video before I say something stupid as usual. That's all these videos are just me saying stupid stuff. Thanks for watching, everybody. I hope you enjoyed this. If you did, please do like, comment, like, comment and subscribe. That's the order of the words that I'm trying to say. Join the Discord server, link is in the description, link is in the description. And then in the video, man, we're done. We're done.