searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

WEB攻击场景下JS跳转失败问题

2023-06-16 01:51:43
8
0

前端应用中经常会出现使用javascript获取当前页面URL地址进行重定向跳转的问题,例如使用window.open("url")跳转到"url"地址。


代理服务或中间服务器中的逻辑可能会将请求的url地址传入,并给前端返回js可执行文件,以达到重定向的目的。而此时若url是WEB攻击语句,例如url路径中包含javascript语法时就会造成跳转失败,例如url=http://domain/"><script>alert(/xss/)</script>)/AdminLogin.aspx

此时会导致javascript内容变为 window.open("http://domain/"><script>alert(/xss/)</script>)/AdminLogin.aspx")导致js执行失败亦或者执行了url中携带的js语句。

 

为了避免这种情况,可以采用urlencode对传入的url进行编码,将js语法中的关键字进行urlencode编码,上诉例子内容转码为window.open("http%3A%2F%2Fdomain%2F%22%3E%3Cscript%3Ealert(%2Fxss%2F)%3C%2Fscript%3E)%2FAdminLogin.aspx")即可正常执行重定向跳转。

0条评论
0 / 1000
f****n
3文章数
0粉丝数
f****n
3 文章 | 0 粉丝
f****n
3文章数
0粉丝数
f****n
3 文章 | 0 粉丝
原创

WEB攻击场景下JS跳转失败问题

2023-06-16 01:51:43
8
0

前端应用中经常会出现使用javascript获取当前页面URL地址进行重定向跳转的问题,例如使用window.open("url")跳转到"url"地址。


代理服务或中间服务器中的逻辑可能会将请求的url地址传入,并给前端返回js可执行文件,以达到重定向的目的。而此时若url是WEB攻击语句,例如url路径中包含javascript语法时就会造成跳转失败,例如url=http://domain/"><script>alert(/xss/)</script>)/AdminLogin.aspx

此时会导致javascript内容变为 window.open("http://domain/"><script>alert(/xss/)</script>)/AdminLogin.aspx")导致js执行失败亦或者执行了url中携带的js语句。

 

为了避免这种情况,可以采用urlencode对传入的url进行编码,将js语法中的关键字进行urlencode编码,上诉例子内容转码为window.open("http%3A%2F%2Fdomain%2F%22%3E%3Cscript%3Ealert(%2Fxss%2F)%3C%2Fscript%3E)%2FAdminLogin.aspx")即可正常执行重定向跳转。

文章来自个人专栏
WEB攻击场景下JS跳转失败问题
1 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0