如何解决基于DOM的JavaScript注入如何利用以下代码?
以下代码可用于基于Dom的XSS注入。
<script>
function loadobj(){
var cc=eval('('+aMess+')');
document.getElementById('mess').textContent=cc.message;
}
if(window.location.hash.indexOf('message')==-1)
var aMess="({\"message\":\"Hello User!\"})";
else
var aMess=location.hash.substr(window.location.hash.indexOf('message=')+8);
</script>
URL http://www.domxss.com/domxss/01_Basics/04_eval.html。我正在努力了解如何控制aMess参数。
如果我使用http://www.domxss.com/domxss/01_Basics/04_eval.html?aMess=(在此处插入javascript)
例如,脚本不执行也不反映在页面响应中。有人可以指出我正确的方向吗?
解决方法
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
version="3.0"
exclude-result-prefixes="soapenv"
xmlns:old="random.com/system/i/Modify/1.0/"
xmlns:gcp="http://random.com/G/Modify"
xmlns:ogcph="http://random.com/2/MsgHeader/"
xmlns:hgcph="http://random.com/3/MsgHeader/"
xmlns:ogcpb="http://random.com/2/MsgBody/"
xmlns:hgcpb="http://random.com/3/MsgBody/">
<xsl:namespace-alias stylesheet-prefix="soapenv" result-prefix="#default"/>
<xsl:namespace-alias stylesheet-prefix="old" result-prefix="gcp"/>
<xsl:namespace-alias stylesheet-prefix="ogcph" result-prefix="hgcph"/>
<xsl:namespace-alias stylesheet-prefix="ogcpb" result-prefix="hgcpb"/>
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="*">
<gcp:Modifys>
<gcp:Modify>
<xsl:copy-of copy-namespaces="no" select="/*:Envelope/*:Body/*:Modifys/*:Modify/*"/>
</gcp:Modify>
</gcp:Modifys>
</xsl:template>
</xsl:stylesheet>
指向URL中location.hash
之后的位置。
因此,您将不得不使用#
来代替https://some/url#message=(insert javascript here)
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。