You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Trust_Boundary_Violation.java 1.1 kB

3 years ago
1234567891011121314151617181920212223242526272829303132333435363738
  1. package Trust_Boundary_Violation;
  2. import java.io.IOException;
  3. import javax.servlet.ServletException;
  4. import javax.servlet.http.HttpServletRequest;
  5. import javax.servlet.http.HttpServletResponse;
  6. import javax.servlet.http.HttpSession;
  7. public class Trust_Boundary_Violation {
  8. protected void bad(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  9. String name = req.getParameter("userName");
  10. HttpSession sess = req.getSession();
  11. sess.setAttribute("user", name); // bad 数据跨越信任边界
  12. }
  13. protected void good(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  14. String name = req.getParameter("userName");
  15. HttpSession sess = req.getSession();
  16. name = SafeCheck(name);
  17. if(name.equals("admin")){
  18. sess.setAttribute("user", name); // good 数据跨越信任边界
  19. }else
  20. return;
  21. }
  22. public String SafeCheck(String input){
  23. if("admin".equals(input)){
  24. return "admin";
  25. }else{
  26. return "baduser";
  27. }
  28. }
  29. }

No Description

Contributors (1)