Opens profile photo
Follow
James Kettle
@albinowax
Director of Research at PortSwigger Burp Suite Check out my website for published research, other social platforms & contact details
Manchester, Englandjameskettle.comJoined January 2010

James Kettle’s posts

When you find response header injection, you can probably do better than mere XSS or open-redir. Try injecting a short Content-Length header to cause a reverse desync and exploit random live users.
11
628
In 2017 I won a CTF, leading to an invite to my first HackerOne live hacking event. I flew to New York, landed in a money-fevered environment, deployed the secret tool I'd spent months developing, and made $100. Sometimes you get money, sometimes you get learning opportunities.
12
453
Following months of research, I've just submitted to Black Hat USA! This talk will feature my feature my messiest, highest-risk attack-technique yet. #BHUSA
14
421
In the last year my understanding of how webservers handle HTTP has been proven wrong so many times, I'm about to try an attack that I believe is completely impossible, just in case I'm wrong 😂
11
426
Sometimes our research hits a brick wall, but that’s nothing to be ashamed of. We’ve created 8 ‘impossible’ labs documenting common unsolved XSS scenarios. By openly declaring what we can’t exploit, we hope to help further research in this field
12
404
Update: I've found my first vulnerability in LinkedIn, and also my account has been suspended 😂
Quote
After about ten years of putting it off, I've joined LinkedIn in case this social network explodes. I'll mostly use it to share notable research: linkedin.com/in/james-kettl
19
410
Turbo Intruder 1.0.15 has a major quality of life enhancement: it now remembers your window size! Also you can use ctrl+enter to start/stop attacks. I've updated the original post to document recent features:
5
344
I'm sorry to say the vaunted 'X-Custom-IP-Authorization' header won't work on real websites because we made it up for a lab as an example of a non-standard custom header name. portswigger.net/web-security/i
Quote
How to find authentication bypass vulnerabilities. Focus. I Added headers. Request GET /delete?user=test HTTP/1.1 Response HTTP/1.1 401 Unauthorized Reqeust GET /delete?user=test HTTP/1.1 X-Custom-IP-Authorization: 127.0.0.1 Response HTTP/1.1 302 Found #bugbounty #bugbountytip
17
335
I'm writing up the results of the Top 10 Web Hacking Techniques of 2021 and the research quality this year is astounding! Could have easily done a top 20.
6
305
Thanks to everyone who attended Browser-Powered Desync Attacks, hope you enjoyed it! If you missed it but you're in the area, I'll be doing a repeat at 15:30 on Friday at #DEFCON. You can find the whitepaper, slides, code and labs at
4
315
My (shaky) understanding of this is that Golang's network stack attempts to parse HTTP headers as ~UTF-8 even though everyone else treats them as ASCII. If correct, this enables quite a range of interesting attacks on both clients and servers.
Quote
I found another way to do HTTP smuggling, you can use T-E: chunKed K is the Kelvin symbol (%E2%84%AA) If the header is converted to lowercase, you get 'chunked' in ascii, if it's converted to uppercase it will stay the same (invalid) cc @albinowax
13
301
I'm attempting to kick off some research on a topic unrelated to request smuggling & cache poisoning, and wow it's a struggle. Specialism is dangerous stuff.
9
304