URL跳转漏洞:借助未验证的URL跳转,将应用程序引导到不安全的第三方区域,从而导致的安全问题。
URL跳转常见原理
中奖率,或者给XXX投票
如http://qt.qq.com/safecheck.html?flag=1&url=http://jtvx518.cc
将恶意网站与正规网站混合在一起,
实现URL的跳转:
Header头跳转
Javascript跳转
META标签跳转
把恶意的网站生成短链接,就更JJ了
php的页面跳转
<?php
header("Content-Type:text/html;charset=utf-8");
if(isset($_REQUEST["url"]))
{
$url = $_REQUEST["url"];
}else{
$url = "url.html";
}
header("HTTP/1.1 301 Moved Permanently");
header("Location: $url");
?>
<script type="text/javascript" >
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
var site = getQueryString("site");
window.location.href=site;
</script>
meta方法的跳转
<html>
<head>
<title></title>
<?php
header("Content-Type:text/html;charset=utf-8");
if(isset($_REQUEST["url"]))
{
$url = $_REQUEST["url"];
}else{
$url = "url_meta.php";
}
?>
<meta http-equiv="Refresh" content="5; url=<?php echo $url?>" />
</head>
<body>
</body>
</html>