⑴ 如何獲取HttpOnly Cookie
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
Edit1: TEdit;
procere Button1Click(Sender: TObject);private{ Private declarations }public{ Public declarations }end;varForm1: TForm1;implementation{$R *.dfm}uses unitFunc;function GetIECookiePath():string;varUserProfile :string;
Key ,Name ,CookiePath ,CachePath :string;beginUserProfile := GetEnvironmentVariable('USERPROFILE'); //獲取環境變數帶粗 //...1、Cookies 文件夾路徑
Key := 'Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders';
Name := 'Cookies';
CookiePath := regRead(HKEY_CURRENT_USER ,Key ,Name);
CookiePath := StringReplace(CookiePath,'%USERPROFILE%',UserProfile,[rfReplaceAll]); //...2、Cache 文件夾路徑
Key := 'Software\Microsoft\Windows\CurrentVersion\凳滾Explorer\User Shell Folders';
Name := 'Cache';
CachePath := regRead(HKEY_CURRENT_USER ,Key ,Name);
CachePath := StringReplace(CachePath,'蠢粗鎮%USERPROFILE%',UserProfile,[rfReplaceAll]); Result := CookiePath;
end;procere TForm1.Button1Click(Sender: TObject);varCookiePath :string;
fs :TFileStream;
ms :TMemoryStream;
ss :TStringStream;beginCookiePath := GetIECookiePath + '\index.dat'; fs := TFileStream.Create(CookiePath,fmShareDenyNone);
ms := TMemoryStream.Create;
⑵ php怎麼寫cookies
setcookie() 函數向客戶端發送一個 HTTP cookie。
cookie 是由伺服器發送到瀏覽器的變數。cookie 通常是伺服器嵌入到用戶計算機中的小文本文件。每當計算機通過瀏覽器請求一個頁面,就會發送這個 cookie。
cookie 的名稱指定為相同名稱的變數。例如,如果被發送的 cookie 名為 "name",會自動創建名為 $user 的變數,包含 cookie 的值。
必須在任何其他輸出發送前對 cookie 進行賦值。
如果成功,則該函數返回 true,否則返回 false。
設置並發送 cookie:
<?php
$value = "my cookie value";
// 發送一個簡單的 cookie
setcookie("TestCookie",$value);
?>
<html>
<body>
⑶ php curl獲取的cookie帶httponly怎麼辦
新浪sae平台的所有目錄都是只讀的,不可寫.如果想寫入數據,可以用storage.
或者使用SAE的臨時目錄.
⑷ 如何實現php的安全最大化怎樣避免sql注入漏洞和xss跨站腳本攻擊漏洞
使用php安全模式
伺服器要做好管理,賬號許可權是否合理。
假定所有用戶的輸入都是「惡意」的,防止XSS攻擊,譬如:對用戶的輸入輸出做好必要的過濾
防止CSRF,表單設置隱藏域,post一個隨機字元串到後台,可以有效防止跨站請求偽造。
文件上傳,檢查是否做好效驗,要注意上傳文件存儲目錄許可權。
防禦SQL注入。
1.使用預編譯語句
2.使用安全的存儲過程
3.檢查輸入數據的數據類型
4.從資料庫自身的角度考慮,應該使用最小許可權原則,不可使用root或dbowner的身份連接資料庫。若多個應用使用同一個資料庫,也應該為資料庫分配不同的賬戶。web應用使用的資料庫賬戶,不應該有創建自定義函數,操作本地文件的許可權。
1.假定所有用戶輸入都是「邪惡」的
2.考慮周全的正則表達式
3.為cookie設置HttpOnly,防止cookie劫持
4.外部js不一定可靠
5.出去不必要的HTML注釋
6. 針對非法的HTML代碼包括單雙引號等,使用htmlspecialchars()函數。
⑸ php 創建cookie 時為什麼會默認生成httponly
首先看下php.ini是不是默認配襪清置了httponly.
session.cookie_httponly = On
然後看看是否有頁面設置了默認配置,
ini_set("session.cookie_httponly", 1);
一般沒有配置但是卻纖寬頻了httponlhy一般情況是其 他地方有修告豎前改,要麼是默認配置文件,要麼是在初始化文件裡面修改的。
⑹ 如何取得httponly屬性的cookie
session 分成兩部分,session空間存放於伺服器團侍端,打開空間的ID 存放於 客戶端的cookie, 如果客戶端關閉了cookie,session就不能正常的使用。
來源:
Session 的中文譯名叫做「會話」,其本來的含義是指有始有終的一系列動作/消息,比如打電話時從拿起電話撥號到掛斷電話這中間的一系列過程可以稱之為一個 session。目前社會上對session的理解非常混亂:有時候我們可以看到這樣的話「在一個瀏覽器會話期間,...」,這里的會話是指從一個瀏覽器窗口打開到關閉這個期間;也可以看到「用戶(客戶端)在一次會話期間」這樣一句話,它可能指用戶的一系列動作(一般情況下是同某個具體目的相關的一系列動作,比如從登錄到選購商品到結賬登出這樣一個網上購物的過程;然而有時候也可能僅僅是指一團或做次連接;其中的差別只能靠上下文來推斷了。
然而當session一詞與網路協議相關聯時,它又往往隱含了「面向連接」和/或「保持狀態」這樣兩個含義,「面向連接」指的是在通信雙方在通信之前要先建立一個通信的渠道,比如打電話,直到對方接了電話通信才能開始。「保持狀態」則是指通信的一方能夠把一系列的消息關聯起來,使得消息之間可以互相依賴,比如一個服務員能夠認出再次光臨的老顧客並且記得上次這個顧客還欠店裡一塊錢。這一類的例子有「一個TCP session」或者「一個POP3 session」。
鑒於這種混亂已不可改變,要為session下個定義就很難有統一的標准。而在閱讀session相關資料時,我們也只有靠上下文來推斷理解了。不過我們可以這樣理解:例如我們打電話,從撥通的那一刻起到掛斷電話期間,因為電話一直保持著接通的狀態,所以把這種接通的狀態叫做session。它是訪客與整個網站交互過程中一直存在的公有變數,在客戶端不支持COOKIE的時候,為了保證數據正確、安全,就採用SESSION變數。訪問網站的來客會被分配一個唯一的標識符,即所謂的會話 ID。它要麼存放在客戶端的 cookie,要麼經由 URL 傳遞。
SESSION的發明填補了 HTTP協議的局限:HTTP協議被認為是無狀態協議,無法得知用戶的瀏覽狀態,當它在服務端完成響應之後,伺服器就失去了與該瀏覽器的聯系。這與 HTTP協議本來的目的是相符的,客戶端只需要簡單的向伺服器請求下載某些文件,無論是客戶端還是伺服器都沒有必要紀錄彼此過去的行為,每一次請求之間都是獨立的,好比一個顧客和一個自動售貨機或者一個普通的(非會員制)大賣場之間的關系一樣。
因此通過SESSION(cookie 是另外一種解決辦法)記錄用戶的有關信息,以供用塌衡戶再次以此身份對web伺服器提起請求時作確認。會話的發明使得一個用戶在多個頁面間切換時能夠保存他的信息。網站編程人員都有這樣的體會,每一頁中的變數是不能在下一頁中使用的(雖然form,url也可以實現,但這都是非常不理想的辦法),而 SESSION中注冊的變數就可以作為全局變數使用了。
那麼SESSION到底有什麼用處呢?網上購物時大家都用過購物車,你可以隨時把你選購的商品加入到購物車中,最後再去收銀台結帳。在整個過程中購物車一直扮演著臨時存貯被選商品的角色,用它追蹤用戶在網站上的活動情況,這就是 SESSION的作用,它可以用於用戶身份認證,程序狀態記錄,頁面之間參數傳遞等。
SESSION的實現中採用COOKIE技術,SESSION會在客戶端保存一個包含session_id(SESSION編號)的COOKIE;在伺服器端保存其他session變數,比如 session_name等等。當用戶請求伺服器時也把session_id一起發送到伺服器,通過session_id提取所保存在伺服器端的變數,就能識別用戶是誰了。同時也不難理解為什麼SESSION有時會失效了。
當客戶端禁用COOKIE時(點擊IE中的「工具」— 「Internet選項」,在彈出的對話框里點擊「安全」—「自定義級別」項,將「允許每個對話COOKIE」設為禁用),session_id將無法傳遞,此時SESSION失效。不過php5在linux/unix平台可以自動檢查cookie狀態,如果客戶端設置了禁用,則系統自
請採納評分一下吧!
⑺ php cookie 取消httponly
php cookie 取消httponl
利用HttpResponse的addHeader方法,設置Set-Cookie的值
cookie字元串的格式:key=value; Expires=date; Path=path; Domain=domain; Secure; HttpOnly
//設置cookie
response.addHeader("Set-Cookie", "uid=112; Path=/; HttpOnly");
//設置多個cookie
response.addHeader("Set-Cookie", "uid=112; Path=/; HttpOnly");
response.addHeader("Set-Cookie", "timeout=30; Path=/test; HttpOnly");
//設置https的cookie
response.addHeader("Set-Cookie", "uid=112; Path=/; Secure; HttpOnly");
在實際使用中,我們可以使FireCookie查看我們設置的Cookie 是否是HttpOnly