1. 程式人生 > >Web專案:會話Cookie中缺少HttpOnly屬性和secure屬性

Web專案:會話Cookie中缺少HttpOnly屬性和secure屬性

當會話Cookie中不含有HttpOnly屬性和secure屬性時,注入站點的惡意指令碼可能訪問此Cookie,並竊取它的值。任何儲存在會話令牌中的資訊都可能被竊取,並在稍後用於身份盜竊或使用者偽裝。

基本上,cookie 的唯一必需屬性是“name”欄位,必須設定“HttpOnly”屬性,才能防止會話 cookie 被指令碼訪問。

解決方法:設立一個過濾器修改每次會話,為之新增”HostOnly”屬性和“secure”屬性。

package ...
public class ExampleFilter implements Filter {

    public void doFilter
(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse resp = (HttpServletResponse) response; Cookie[] cookies = req.getCookies(); if
(tomcat版本>=7) { for(Cookie cookie : cookies) { cookie.setHttpOnly(true); cookie.setSecure(true); } } else if(tomcat版本<=6) { for(Cookie cookie : cookies) { String value = cookie.getValue(); StringBuilder builder = new
StringBuilder(); builder.append("JSESSIONID=" + value + "; "); builder.append("Secure; "); builder.append("HttpOnly; "); Calendar cal = Calendar.getInstance(); cal.add(Calendar.HOUR, 1); Date date = cal.getTime(); Locale locale = Locale.CHINA; SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss",locale); builder.append("Expires=" + sdf.format(date)); resp.setHeader("Set-Cookie", builder.toString()); } } chain.doFilter(request,response); } }

相關推薦

Web專案會話Cookie缺少HttpOnly屬性secure屬性

當會話Cookie中不含有HttpOnly屬性和secure屬性時,注入站點的惡意指令碼可能訪問此Cookie,並竊取它的值。任何儲存在會話令牌中的資訊都可能被竊取,並在稍後用於身份盜竊或使用者偽裝。 基本上,cookie 的唯一必需屬性是“name”欄位,必

會話cookie缺少HttpOnly屬性漏洞--分析解決

詳細描述會話cookie中缺少HttpOnly屬性會導致攻擊者可以通過程式(JS指令碼、Applet等)獲取到使用者的cookie資訊,造成使用者cookie資訊洩露,增加攻擊者的跨站指令碼攻擊威脅。HttpOnly是微軟對cookie做的擴充套件,該值指定cookie是否可

會話cookie缺少secure屬性

What is it and why do I care ? Session cookies (或者包含JSSESSIONID的cookie)是指用來管理web應用的session會話的cookies.這些cookie中儲存特定使用者的session ID標識,而且相同

IBM AppScan 安全掃描加密會話(SSL)Cookie 缺少 Secure 屬性處理辦法

原因分析: 伺服器開啟了Https時,cookie的Secure屬性應設為true; 解決辦法: 1.伺服器配置Https SSL方式,參考:https://support.microsoft.com/kb/324069/zh-cn 2.修改web.config,新增: <

J2EEMyEclipse不能將WEB專案釋出到TOMCAT解決辦法

今天在MyEclipse中下載了新的專案,在其他配置準備好後,準備釋出到TOMCAT中,但是在打開了釋出視窗,選擇了需要釋出的專案後,釋出視窗中的“finish”按鈕始終為灰色,不能點選,剛開始時,沒有任何的報錯提示,然後我選擇了釋出型別中的“Packaged Archi

加密會話(SSL)Cookie 缺少 Secure 屬性

appscan掃出來的漏洞,應用伺服器是was8.5 ,web伺服器是apache http server,配置了ssl加密傳輸,這個問題說的是在ssl傳輸中,系統所用的cookie沒有進行設定secure屬性。 首先cookie分為兩種,一種是使用者瀏覽器請求應用伺

如何把eclipse的web專案匯入到idea

如何把eclipse的web專案匯入到idea中   1、Idea匯入eclipse專案首先需要配置sdk          下面我直接上圖了:     

如何把MyEclipseweb專案匯入到Eclipse執行

如何把MyEclipse中的web專案匯入到Eclipse中執行 有時我們需要將MyEclipse中的專案匯入到Eclipse中執行,如果不注意到一些細節,會造成無法執行的後果。下面就說說具體操作: 如何匯入到Eclipse就不在重述了,匯入後出現如下錯誤: 與上面Eclipse生成的w

thinkphp專案前端介面修改資料時自動新增selected 或者 checked

在做專案的時候,常常碰到寫修改頁面mod 的時候,前端介面中有些多項選擇checkbox或者單項選擇radio或者列表選擇select預設是要給他們自動新增被選擇狀態的。這個時候封裝一個自動選中函式就一勞永逸,很方便呼叫。 可以用純原生js來實現。我這裡是混合著Jquery寫的,必須先引入才

Linux系統,將web專案部署到tomcat

RT 1. 將專案打成war包:執行maven命令 package命令生成的war包 注: eclipse 中使用 maven -install 2. 將 war 包放到Linux環境中 tomcat 目錄下的 wapps 下就好 3. 實現tomcat的熱部署: 即tomcat(L

java web 專案 ssh框架使用的 ClassNotFoundException 異常【找不到**Action】

對 visitAction 類進行了註解配置, 但是在訪問 visitAction 的時候,一直出現下面這個異常提示: 22:23:35,387 ERROR DefaultDispatcherErrorHandler:42 - Exception occurred dur

web專案釋出到tomcat編譯後沒有classes檔案的原因

通常專案編譯釋出到tomcat中後會在WEB-INF下生成classes檔案,這裡麵包含的是編譯後的Java原始碼檔案!那麼在什麼情況下編譯後classes檔案沒有出現在WEB-INF下呢? 在工作空間中每個專案裡都有一個.settings檔案,這個檔案下包含的是專案釋出編

Cookiehttponly屬性作用

response.setHeader("Set-Cookie", "cookiename=httponlyTest;Path=/;Domain=domainvalue;Max-Age=seconds;HTTPOnly"); 

Web專案的類庫引用WebService,在部署後動態配置WebService路徑的方法

   通常我們的專案呼叫WebService都是在Web專案中,VS2005會在Web.config中自動生成如下的配置,方便在部署後動態更改: <applicationSettings>        &l

eclipse下執行web專案設定外部瀏覽器瀏覽

開啟eclipse中的Window->preferences->general->web browser,如下圖所示: user internal web browser:使用eclipse自動的內建瀏覽器 user external web brow

Eclipse 開發WEB專案 webcontent下lib的jar包不自動載入的問題

在專案的應用目錄下找到.settings\org.eclipse.wst.common.component檔案,  在剛新建一個專案時,此檔案下面的內容如下:<?xml version="1.0"encoding="UTF-8"?>  <project-modules id="module

HttpCookieHttpOnlysecure屬性

Cookie語法: Cookie通常是作為HTTP 應答頭髮送給客戶端的,下面的例子展示了相應的語法(注意,HttpOnly屬性對大小寫不敏感):  Html程式碼   Set-Cookie: =[; =]   [; expires=][; domain=]   [

java-hadoop程式設計缺少hadoop.dllwinutils.exe以及產生的classCannotFound異常

一:   現確定自己的windows上有沒有解壓過hadoop的資料夾,環境變數HADOOP_HOME=C:hadoop(hadoop的解壓目錄)是否配置了,         path是否引用了%HADOOP_HOME%bin;%HADOOP_HOME%sbin  如果不行

Pythonbs4 string 屬性 text 屬性的區別及背後的原理

剛開始接觸 bs4 的時候,我也很迷茫,覺得 string 屬性和 text 屬性是一樣的,不明白為什麼要分成兩個屬性。 html = '<p>hello word</p>' soup = BeautifulSoup(html, 'lxml') p = soup.p print(p.

Session CookieHttpOnlysecure屬性

一、屬性說明: 1 secure屬性 當設定為true時,表示建立的 Cookie 會被以安全的形式向伺服器傳輸,也就是隻能在 HTTPS 連線中被瀏覽器傳遞到伺服器端進行會話驗證,如果是 HTTP 連線則不會傳遞該資訊,所以不會被竊取到Cookie 的具體內容。 2 HttpOnly屬