This video brilliantly exposes how basic programming oversights like type confusion can compromise even the most advanced AI safety layers. It’s a sobering reminder that robust security starts with fundamental input validation, not just complex algorithms.
Deep Dive
Prerequisite Knowledge
- No data available.
Where to go next
- No data available.
Deep Dive
Make Your Own EVIL Claude That Bypasses Every RestrictionAdded:
Check this out. We have a website which asks us to enter a name. If we check out the back end, this is the request handler for our name entry. And as you can see, it checks whether our name has more characters than 10. If it does, it will tell you, "Hey, please can you just push your name to below 10 characters?"
Meaning, you go change your name.
Literally, I'm just kidding. Otherwise, it gets saved and basically reflected back on another page. As seen here, we can actually see the last entered name.
Now, the problem with all of this, right, is that within just 10 characters, it is almost impossible to put anything malicious. But you're going to see Claude in today's video break open this restriction for length limitation on this back end in a matter of few minutes. Hello everybody and welcome back to the brand new dead overflow video. Literally dead. I've been feeling down. Just kidding, boys.
Hey, what's going on with that? Please click subscribe. We need 66,000 subscribers. So, could you please click that subscribe button to the drank overflow? Drank drunk overflow. I do a lot of cyber security content. Like, look at this. How attackers technically get anything for free. I don't want to bore you with it, but like today's video and subscribe. Also, also, if you want to walk through walls in Among Us or any other game, or you want to see people through walls and you know, uh, it's a hard thing to say, but cheat in multiplayer, which I I I understand. I discourage you from doing that. But if you want to learn how people do this, then I have a course for you. It is in the description and it's currently on 75% discount. So hurry up before that ends. If if you see the offer, that means that's going to end soon. So please hurry up before it ends. This is just one of the time. So please also help me reach 60,000. That'd be really cool. I also have a bug bounty course as a founder of a remote code execution on Windows. I don't know. I'm bragging for no reason, but please check it out if you want to. I don't know. I just I love to what I do. So basically, check it all out so I can buy more beer. Now, let's go with the video. BL. So, this is the website which asks us to enter the name.
Yes, that how convenient. Uh, please also comment down below because I answer to every comment. And if I don't answer to your comment, I'm going to gift you a free Hello Kitty. So, we enter the name, right? And I believe this is below 10 characters. And if I click submit, so let's enter the name. My name is Dead Overflow. And this is obviously more than 10 characters. Then it will tell you names must be below 10 characters.
But if I enter Josh and I click submit, ah Josh was saved successfully. And as you can see here is Josh on the last entered the name. Now we can technically maybe put a button and we can click submit. And as you can see this now looks weird because we were able to successfully put HTML here. As you can see that's a button. Now what the hell is going on? So we can't put technically HTML that that works but we need to understand that there is this restriction which sorry which prevents us from entering anything more than just 10 characters. Now I know that sounds very impossible because how can you do that? Well I have to show you a few things. This right here is the shortest um XSS payload arguably with not DOM XSS. This is just cross-ite scripting for reflected or stored. Don't don't mix this with DOM accesss. But even with DOM XSS, there's technically no way to put it in just 10 characters. Or you technically could actually, but for this, you can't. There's no way to put it with HTML. So, how exactly can Claude do this? Well, let's see the magic because these AIs are actually getting so much better. He's calling me daddy all of a I know. I don't know what's going on with this. I'm not okay with this. So basically we have to give him the entire web page and tell him that this web page allows us to enter HTML as seen but it does not allow us to enter anything more than 10 characters which of course is bad. So we're going to copy all of this literally copy the entire backend code. Go to Claude and tell him in a very nice manner, yo, tell me how to do this or I explode. Uh that was my impression of screaming. I don't know.
So don't do that. Of course, just gently say this is my website. So I told him this is my website and could you please check for any cheeky vulnerabilities mate since XSS um I can inject HTML. So basically I'm talking in my Russian accent and so basically let's paste in the code and this is the whole thing right and we're just going to send this to this bad boy and let's see what he does. You're you're right to be concerned there's some several vulnerabilities here. Let me break them down. Cross script and confirm and exploitable. All right that's bad. So the core issue is that the user input is injected directly into the HTML without any sanitization or escaping into places. And this is the thing, right? He understands that I can do this, right?
That's that's not true, Claude. That's not nine characters.
No. So we have to gently tell him that his payload. They have to tell him that this is way more than 10 in terms of characters. So he has to figure out another idea. He is still having some hard time. But this is where your kind of effort does come into play. If you're not experienced enough, you obviously don't know what you're doing. So, your prompt must be good. You need to kind of point him into the right direction. So, I have to tell him that I don't know. I just basically have to tell him that all of this won't work and I need something that will. So, I told him, "Nah, bro.
Focus please." And this is what he told me. Looking at the code with fresh eyes.
Here's the one that's easy to miss. type confusion in length check. How convenient. Now, I know some of you are like looking at this and being like, I have the thought up my bib, so it's sorry, but you're like looking at this and being like, what the hell is a type confusion? Well, don't worry. I'll explain everything in a minute. But I just wanted to tell you that he did take three messages, long three messages to understand that there is a bug and it takes type confusion. That's a problem.
Let me explain type confusion to you.
See this? what we actually tried this right over here is a string you know because there's double quotes there can be single quotes too but for this time they're double quotes oh there it is so and the length of that string is of course 21 but what happens if we encapsulate this in in an array context and all of a sudden now the length is one so that's exact that's that is exactly what claude is basically pointing out out on so let me actually show you this so I will go to proxy I will just go to HTTP history so I can just capture this request and I need to turn on the proxy proxy for this. So let's go turn this on and let's enable it and let's enter the name graph. Let's click submit and that's it. Now we can go back here to proxy proxy and disable it. We can actually inspect this now in here in burp and we can right click on it and send it to the repeater and this is where we can actually edit it. So since I told you that this falls under the 10 character limit because genuinely it is under 10 characters as a string.
We can turn this into an array just as I showed you here because this code is not context aware on which type of data it is receiving. Is it a string or an array or an object or a list if you code in Python. So let's actually put that into consideration. I'm going to take exactly what he gave me which is this and put it instead of the name. And of course this is a an array. it's not a string and it shouldn't work. But since we have an issue with our with the way we check first stuff within like we we're not checking what type of data this is, we can comfortably send this which is obviously more than 10 characters and it will just tell you that the name was saved successfully. And if we go back here to our page and we can go to of course see the last entered name. Ah we actually see an uh the this is not loading because it's basically separated in so many ways. look with these commas.
That's a problem. So, since it's getting normalized, it is getting normalized and it's also parsing these commas. So, we just have to make this a one big string, which is this. And there we go. Now, you sent this. It tells you that the name was saved successfully. You go back, you hit refresh on the last entered, and boom, you see an alert one. Very cool. Thank you so much for watching this silly little video. Stay safe, stay responsible, stay silly, and as always, peace.
Related Videos
OpenHuman VS Hermes AI: Who Wins?
JulianGoldieSEO
285 views•2026-05-29
Long-Running Agents — Build an Agent That Never Forgets with Google ADK
suryakunju
142 views•2026-05-30
This computer is made from real human brain cells. And you can buy it.
Talktmsmedia
3K views•2026-05-28
BREAKING: Microsoft’s New Image Generating Model Beat Out GPT 1.5 and Nano Banana 2
aimmediahouse
122 views•2026-06-03
I Made the Same Anime Fight Scene in Every AI Video Generator
NobleGooseAnime
295 views•2026-05-30
Nvidia Bets Big On AI PCs | New Chip To Power Windows Laptops | Technology | AI Updates | N18S
cnnnews18
3K views•2026-06-01
I Tested NEW Opus 4.8 on Four Projects (Updated LLM Leaderboard)
AICodingDaily
298 views•2026-05-29
3D Platformer Update - NO CAPES
SolarLune
294 views•2026-05-30











