Update XssWrapper.java

cyj
pbvfus8to 2 months ago
parent 5561d06618
commit d25ff779e5

@ -16,22 +16,35 @@ import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequestWrapper;
/**
* xss
* `XssWrapper``HttpServletRequestWrapper``HttpServletRequest`XSSCross-Site Scripting
* `<script>` JavaScript
* XSSWeb
*
* @author lgh
*/
public class XssWrapper extends HttpServletRequestWrapper {
/**
* Constructs a request object wrapping the given request.
* `XssWrapper``HttpServletRequest`
* XSS
*
* @param request The request to wrap
* @throws IllegalArgumentException if the request is null
* @param request The request to wrap`HttpServletRequest``null``null``IllegalArgumentException``null`
* @throws IllegalArgumentException `null`
*/
public XssWrapper(HttpServletRequest request) {
super(request);
}
/**
*
* `HttpServletRequestWrapper``getParameterValues`
*
* 1. `getParameterValues`
* 2. `null``null`
* 3. `encodedValues`XSS
* 4. `cleanXss`XSS`encodedValues`
* 5. XSS使
*
* @param name
* @return XSS`null``null`
*/
@Override
public String[] getParameterValues(String name) {
@ -48,7 +61,14 @@ public class XssWrapper extends HttpServletRequestWrapper {
}
/**
*
* `HttpServletRequestWrapper``getParameter`
*
* 1. `getParameter`
* 2. `StrUtil.isBlank``null`0
* 3. `cleanXss`XSS
*
* @param name `name`
* @return XSS
*/
@Override
public String getParameter(String name) {
@ -60,7 +80,15 @@ public class XssWrapper extends HttpServletRequestWrapper {
}
/**
* attribute,
* `attribute``HttpServletRequestWrapper``getAttribute`
* Web`setAttribute`
* 1. `getAttribute`
* 2. `instanceof``StrUtil.isNotBlank`XSS
* `cleanXss`
*
*
* @param name Servlet`setAttribute`
* @return XSS
*/
@Override
public Object getAttribute(String name) {
@ -72,18 +100,33 @@ public class XssWrapper extends HttpServletRequestWrapper {
}
/**
*
* `HttpServletRequestWrapper``getHeader`
* `User-Agent``Referer`
* 1. `getHeader`
* 2. `StrUtil.isBlank`
* 3. `cleanXss`XSS
*
*
* @param name `"Content-Type"``"Authorization"`
* @return XSS
*/
@Override
public String getHeader(String name) {
String value = super.getHeader(name);
if (StrUtil.isBlank(value)) {
return value;
return value;
}
return cleanXss(value);
}
/**
* XSS`XssUtil.clean``XssUtil`XSS
* 使XSS
*
* @param value XSS
* @return XSS
*/
private String cleanXss(String value) {
return XssUtil.clean(value);
}
}
}
Loading…
Cancel
Save