Skip to content

Open Redirect Vulnerability on /js/a/cms/site/select #28

@NinjaGPT

Description

@NinjaGPT

Summary

The redirect method has an insecure implementation. Since the redirect parameters are user-controllable, this leads to an Open Redirect vulnerability.

Details

  • src/main/java/com/jeesite/modules/cms/web/SiteController.java
	@RequestMapping(value = "select")
	public String select(String siteCode, String redirect, HttpServletRequest request, HttpServletResponse response){
		if (StringUtils.isBlank(siteCode)){
			return REDIRECT + adminPath + "/cms/index";
		}
		UserUtils.putCache("currentSiteCode", siteCode);
		if (StringUtils.isNotBlank(redirect)){
			return REDIRECT + redirect;
		}
		return renderResult(response, Global.TRUE, "切换站点成功!");
	}

POC

http://127.0.0.1:8980/js/a/cms/site/select?redirect=https://google.com/&siteCode=111

Impact

https://www.invicti.com/learn/open-redirect-open-redirection/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions