urlrewrite-------解決大型WEB系統URL暴露安全問題
未經過改寫的的可以洩漏工程檔案的目錄,為了保證WEB系統的安全,免遭的攻擊,我們通常要對URL進行重寫,目的就是使訪問者看不到真實的路徑,從而可以減少駭客攻擊的可能性,下面給出一個簡單的登陸例子,將改寫為
1.首先去下載頻道urlrewrite-2.6.0.jar這個檔案,然後將其放在工程目錄的WEB-INFO/LIB下。
2.配置web.
[java] view plaincopyprint?
xmlns="/xml/ns/javaee" xmlns:xsi="" version="2.5" xsi:schemaLocation="com/xml/ns/javaee com/xml/ns/javaee/web-app_2_5.xsd">
action
org. .struts.action.ActionServlet
config
/WEB-INF/struts-config.xml
debug
3
detail
3
0
>
action
*.do
UrlRewriteFilter
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
logLevel
WARN
UrlRewriteFilter
/*
REQUEST
FORWARD
login.jsp
3.編寫頁面login.jsp.success.jsp以及failure.jsp
[c-sharp] view plaincopyprint?
login.jsp
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
使用者名稱:
密 碼:
success.jsp
success!
failure.jsp
failure!
4.編寫action處理類及其配置struts-config.properties
LoginAction.java
package com.zxc.struts.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class LoginAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
String username=request.getParameter("username")==null?"":request.getParameter("username");
String password=request.getParameter("password")==null?"":request.getParameter("password");
if(username.equals("java")&&password.equals("java"))
return mapping.findForward("success");
else
return mapping.findForward("failure");
}
}
struts-config.properties
path="/login"
type="com.zxc.struts.action.LoginAction"
cancellable="true" >
5.配置urlrewrite.xml檔案,注意將其放到與web.xml同級目錄中,並且配置的時候正向和逆向都得配置
nbsp;
"">
<!--
Configuration file for UrlRewriteFilter
-->
<!-- 正向 -->
Login
^/mylogin[/]?$
/login.do
<!-- 逆向 -->
<!-- Copy of invoice order -->
Login
/login.do
/mylogin/
6.執行結果
輸入使用者名稱和密碼之後,你會發現的地址變成了
------>>轉載於:
1.首先去下載頻道urlrewrite-2.6.0.jar這個檔案,然後將其放在工程目錄的WEB-INFO/LIB下。
2.配置web.
[java] view plaincopyprint?
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
3.編寫頁面login.jsp.success.jsp以及failure.jsp
[c-sharp] view plaincopyprint?
login.jsp
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
使用者名稱:
密 碼:
success.jsp
success!
failure.jsp
failure!
4.編寫action處理類及其配置struts-config.properties
LoginAction.java
package com.zxc.struts.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class LoginAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
String username=request.getParameter("username")==null?"":request.getParameter("username");
String password=request.getParameter("password")==null?"":request.getParameter("password");
if(username.equals("java")&&password.equals("java"))
return mapping.findForward("success");
else
return mapping.findForward("failure");
}
}
struts-config.properties
path="/login"
type="com.zxc.struts.action.LoginAction"
cancellable="true" >
5.配置urlrewrite.xml檔案,注意將其放到與web.xml同級目錄中,並且配置的時候正向和逆向都得配置
nbsp;
"">
<!--
Configuration file for UrlRewriteFilter
-->
<!-- 正向 -->
Login
<!-- 逆向 -->
<!-- Copy of invoice order -->
6.執行結果
輸入使用者名稱和密碼之後,你會發現的地址變成了
------>>轉載於:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29119536/viewspace-1181742/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 解決 requests 庫 URL 編碼問題
- OA系統資料面臨的安全問題及解決方法
- APP安全問題亟待解決APP
- iOS Abort問題系統性解決方案iOS
- 支招 | 如何解決身份驗證系統安全問題
- URL地址中的中文亂碼問題的解決
- js解決url傳引數中文亂碼問題JS
- 解決URL請求中的中文亂碼問題
- 檔案系統變成RAW問題解決
- Flutter Web 跨域問題解決方案FlutterWeb跨域
- Mac 下開啟網站 Invalid URL 問題解決Mac網站
- Struts2 URL 傳參,中文亂碼問題解決
- vue-解決background-image:url不顯示問題Vue
- web安全機制問題詳解之二:CSRFWeb
- 新手linux系統常見問題解決方案Linux
- 解決外匯檢查系統PSN問題
- Windows XP 系統疑難問題巧解決(轉)Windows
- OA系統安全解決方案分析
- 解決「問題」,不要解決問題
- 解決不能訪問 VMware Server Web Access 的問題ServerWeb
- url引數中有+、空格、=、%、&、#等特殊符號的問題解決符號
- ajax使用url傳遞中文引數亂碼問題解決
- 如何解決遠端協同辦公系統的安全問題
- 解決軟體供應鏈安全問題
- 短影片系統開發疑難問題解決方案
- CRM系統能幫助企業解決哪些問題?
- 五大CRM系統流程解決企業問題
- 更改系統路由解決無法上網的問題路由
- 解決戶端連線CentOS系統亂碼問題CentOS
- web安全機制問題詳解之一:XSSWeb
- CRM系統幫助企業解決管理上難解決的問題(下)
- 【系統優化】資料庫系統load飆高問題解決思路優化資料庫
- OWASP 10 大 Web 安全問題在 JEE 體系完全失控Web
- Flutter 解決系統BottomNavigationBar的水波紋問題FlutterNavigation
- ERP系統可以幫助企業解決哪些問題
- 解決“華為雲伺服器Ubuntu系統升級”問題伺服器Ubuntu
- 架構師必備:系統性解決冪等問題架構
- Windows系統解決PhPStudy MySQL啟動失敗問題WindowsPHPMySql