2017-06-29 76 views
-1

我開發了一個使用JSP + Struts2 + Hibernate和MYSQL作爲後端的web應用程序。對我的應用程序URL執行安全測試時,將重定向到跨域網站。舉一個例子,我跑我在谷歌的Chrome瀏覽器應用不允許有意跨域重定向 - Struts2 web應用程序url重定向問題

本地主機:8080 /測試/ welcome.action

它工作正常。在輸入重定向時:http://google.com應用程序允許重定向谷歌主頁而不是應用程序主頁或自定義頁面。

本地主機:8080 /測試/ welcome.action重定向:http://google.com

以上操作不應該在安全測試中允許的,因爲黑客可以從我的應用程序的數據(會話信息)到其他應用程序。

我需要解決方案停止上面的重定向到其他的URL。請告知或建議我如何阻止顯示我的應用程序主頁而不是跨域頁面。

+0

你是說,添加'?重定向:http:// google.com'到任何動作url重定向到谷歌?你正在使用哪個S2版本?顯示你的動作配置。 –

+0

謝謝你的回覆。配置文件中沒有任何更改或修改。如果我在瀏覽器URL中運行我的應用程序,將顯示像localhost:8080/appname/index.action這裏我手動輸入localhost:8080/appname/index.action?redirect:http://google.com並點擊開始按鈕它是去google.com。它不應該重定向。因爲應用程序不應該允許跨域重定向。希望這個輸入可以幫助你識別錯誤。 – manjuladevi

+0

我已將'?redirect:http:// google.com'添加到我的應用索引操作中,並且沒有任何事情發生! –

回答

0

限制第三方URL的最佳解決方案。更新Struts 2 jar文件最新版本的解決方案。它會自動正常工作。以包括在Struts 2和依賴jar文件

公地文件上傳-1.3.2

公地-IO-2.4

公地-IO-2.4

公地琅2.4

公地lang3-3.4

共享記錄-1.1.3

freemarker的-2.3.23

了Javassist-3.20.0-GA

OGNL-3.1.12

Struts2的核心 - 2.5.10.1

請參考以下鏈接: https://struts.apache.org/docs/s2-016.html

+0

這就是爲什麼我問你使用哪個版本的S2。 –