[英]How to secure URL parameters in java
示例URL http://dineshlingam.appspot.com/guestbook?name=xxx&skills=zzz
示例代碼
public class GuestbookServlet extends HttpServlet
{
public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException
{
String userName = req.getParameter("name");
String userSkills = req.getParameter("skills");
if(userName != null && userSkills != null)
{
res.setContentType("text/plain");
res.getWriter().println("Name : " + userName + ", Skills : " + userSkills);
}
else
res.sendRedirect(req.getRequestURI());
}
}
我手動將此URL輸入到Web瀏覽器。
如何保護參數值。
給我任何一個合適的例子。 因為我不知道java概念和google-app-engine概念。
真的我不知道SSL。 所以我需要用Example詳細解釋SSL。
我正在使用eclipse來開發我的應用程序。 請幫我。 謝謝。
您的代碼是可以訪問CSS(跨站點腳本)攻擊的頁面的典型示例。 使用HTTPS不會減輕這種影響。 相反,您需要在將任何輸入添加到頁面之前將其轉義。
例如,通過使用Apache Commons Lang庫中的StringEscapeUtils.escapeHtml()
和StringEscapeUtils.escapeJavaScript()
。
使用https不會以任何方式保護url參數。 如果要使參數安全,則必須將參數放在標題或正文中。 但是,如果你直接從瀏覽器撥打電話,你就不能把它放在標題中,因為它是一個GET請求。 +1到nfechner,用於在代碼中突出顯示XSS問題。
對於您的問題,這里有https可能的解決方法:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.