简介

简介

简介

  那几个经过请求(如查询字符串和表单数据)钦点重定向USportageL的Web程序或然会被曲解,而把用户重定向到表面包车型地铁恶意U凯雷德L。那种歪曲就被称作开发重定向攻击。

  那个通过请求(如查询字符串和表单数据)内定重定向U安德拉L的Web程序或者会被歪曲,而把用户重定向到表面的恶意U陆风X8L。那种歪曲就被称为开发重定向攻击。

  那一个通过请求(如查询字符串和表单数据)钦定重定向U牧马人L的Web程序可能会被曲解,而把用户重定向到表面包车型客车恶意UXC90L。那种歪曲就被叫作开发重定向攻击。

场地分析

此情此景分析

现象分析

 
图片 1

 
图片 1

 
图片 1

  即便有一个正经网址

  倘使有三个标准网址

  假诺有二个业内网址

  一天,小白收到了人家发的链接:

  一天,小白收到了人家发的链接:

  1天,小白收到了人家发的链接:

  1.
打开链接后跻身了登录界面,小白输入了祥和的帐号名密码实行登录。

  1.
开辟链接后跻身了登录界面,小白输入了协调的帐号名密码进行登录。

  ①.
开拓链接后跻身了登录界面,小白输入了本人的帐号名密码进行登录。

  二. 登录成功后重定向到了恶意网址。

  二. 报到成功后重定向到了恶意网址。

  二. 签到成功后重定向到了恶意网址。

  三. 恶心网址是一个仿制正规网址的登录页面,并在上边提醒用户名或密码错误。

  叁. 黑心网址是四个克隆正规网址的记名页面,并在地方提醒用户名或密码错误。

  3. 恶意网址是1个仿制正规网址的报到页面,并在上头提醒用户名或密码错误。

  ④. 小白依据提示重新输入了帐号密码消息。

  四. 小白依据提醒重新输入了帐号密码新闻。

  四. 小白根据提示重新输入了帐号密码新闻。

  5.
黑心网址保存了客户的用户名密码,然后重定向会正规网址。

  5.
恶心网址保存了客户的用户名密码,然后重定向会正规网址。

  5.
恶意网址保存了客户的用户名密码,然后重定向会正规网址。

  陆.
小白继续平常例行的操作。

  6.
小白继续日常健康的操作。

  陆.
小白继续常常例行的操作。

 

 

 

提防开放重定向

谨防开放重定向

防止开放重定向

  防止开发重定向只必要看清重定向的链接是本地的链接或许是官方的链接即可。

  幸免开发重定向只要求看清重定向的链接是本地的链接或然是合法的链接即可。

  幸免开发重定向只必要判定重定向的链接是地面的链接或许是官方的链接即可。

  一.
即使登录链接和站点别的页面都在同二个域名,在ASP.MVC中得以用Url.IsLocalUrl(string
url)来判断。

  一.
万一登录链接和站点别的页面都在同1个域名,在ASP.MVC中得以用Url.IsLocalUrl(string
url)来判定。

  一.
假如登录链接和站点别的页面都在同三个域名,在ASP.MVC中能够用Url.IsLocalUrl(string
url)来判断。

  贰.
只要登录链接和站点其余页面不在同二个域名,如单点登录,则须求团结去贯彻判断的逻辑。
 
基本代码

  2.
1旦登录链接和站点别的页面不在同多个域名,如单点登录,则要求团结去落到实处判断的逻辑。
 
基本代码

  2.
比方登录链接和站点其余页面不在同3个域名,如单点登录,则需求自个儿去落到实处判断的逻辑。
 
基本代码

 1        [HttpPost]
 2         public ActionResult LogOn(LogOnModel model, string returnUrl)
 3         {
 4             //Your logon logic here.
 5             FormsAuthentication.SetAuthCookie(model.UserName, false);
 6            //Comment out this code will cause open redirection 
 7             if (!string.IsNullOrEmpty(returnUrl)&& Url.IsLocalUrl(returnUrl))
 8             {
 9                 return Redirect(returnUrl);
10             }
11             return RedirectToAction("Index", "Home");
12         }
 1        [HttpPost]
 2         public ActionResult LogOn(LogOnModel model, string returnUrl)
 3         {
 4             //Your logon logic here.
 5             FormsAuthentication.SetAuthCookie(model.UserName, false);
 6            //Comment out this code will cause open redirection 
 7             if (!string.IsNullOrEmpty(returnUrl)&& Url.IsLocalUrl(returnUrl))
 8             {
 9                 return Redirect(returnUrl);
10             }
11             return RedirectToAction("Index", "Home");
12         }
 1        [HttpPost]
 2         public ActionResult LogOn(LogOnModel model, string returnUrl)
 3         {
 4             //Your logon logic here.
 5             FormsAuthentication.SetAuthCookie(model.UserName, false);
 6            //Comment out this code will cause open redirection 
 7             if (!string.IsNullOrEmpty(returnUrl)&& Url.IsLocalUrl(returnUrl))
 8             {
 9                 return Redirect(returnUrl);
10             }
11             return RedirectToAction("Index", "Home");
12         }

 

 

 

联想到XSS

联想到XSS

联想到XSS

  一.
恶心用户在正规网址下挂了跳转到恶意网址的剧本。
  二.
普通用户访问到含恶意脚本的页面会跳转到恶意网址。
  3.
黑心网址是二个克隆正规网址的记名页面,并在上头提醒供给再行登录。
  四.
小白遵照提醒重新输入了帐号密码新闻。
  伍.
恶心网址保存了客户的用户名密码,然后重定向会正规网站。
 
  注:那种艺术每一遍访问含恶意脚本的页面都会跳转到恶意网址(提醒重新登录),而盛开重定向只会唤起用户名密码错误二回,相对而言,开放重定向的无感知效果要好一些。  

  一.
恶意用户在正规网址下挂了跳转到恶意网址的剧本。
  贰.
普通用户访问到含恶意脚本的页面会跳转到恶意网址。
  三.
黑心网址是3个仿制正规网址的记名页面,并在上头提醒须求再行登录。
  四.
小白根据提醒重新输入了帐号密码消息。
  伍.
恶意网址保存了客户的用户名密码,然后重定向会正规网址。
 
  注:那种措施每一次访问含恶意脚本的页面都会跳转到恶意网址(提醒重新登录),而开放重定向只会提示用户名密码错误3回,绝对而言,开放重定向的无感知效果要好一些。  

  一.
黑心用户在正式网址下挂了跳转到恶意网址的台本。
  贰.
普通用户访问到含恶意脚本的页面会跳转到恶意网址。
  3.
恶意网址是一个克隆正规网址的报到页面,并在上边提醒须求重新登录。
  四.
小白根据提醒重新输入了帐号密码新闻。
  5.
恶心网址保存了客户的用户名密码,然后重定向会正规网址。
 
  注:那种格局每回访问含恶意脚本的页面都会跳转到恶意网址(提醒重新登录),而盛开重定向只会提醒用户名密码错误一回,相对而言,开放重定向的无感知效果要好一些。  

   图片 4

   图片 4

   图片 4

源码下载

  如果我们想尝尝开放重定向的效果,能够去下载代码,把判断本链接的语句Url.IsLocalUrl(returnUrl)注释掉,然后在登录页面加上想要跳转到的页面,如

  下载地址:

 

 小说转发自:

源码下载

  假诺大家想尝试开放重定向的功用,可以去下载代码,把判断本链接的语句Url.IsLocalUrl(returnUrl)注释掉,然后在报到页面加上想要跳转到的页面,如

  下载地址:

 

 作品转载自:

源码下载

  假若大家想尝试开放重定向的功用,能够去下载代码,把判断本链接的语句Url.IsLocalUrl(returnUrl)注释掉,然后在报到页面加上想要跳转到的页面,如

  下载地址:

 

 小说转载自:

相关文章