程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> .net Cookies安全性實踐

.net Cookies安全性實踐

編輯:關於ASP.NET

首先,你要相信網絡是不安全的,TCP協議也是不安全的。HTTP訪問是基於TCP協議來完成 的,其能夠被攻擊是一定的。

跨站腳本攻擊一直是Web上常見的手段之一,攻擊一般是劫持用戶會話,拿到私有的鑰匙 。如何劫持這個會話呢?

一、Sniffer(這裡采用的軟件是Sniffer,java版的那個)

Sniffer監聽會話是不可護的,就和KOF裡拉爾夫的宇宙幻影一樣,只要打中,一定是致命 的。

上圖,就是一組偵聽數據,當然這裡偵聽的是我本機的數據。實際上是可以偵聽局域網, 甚至廣域網上的數據。

得到一組16進制的值。可以用以下代碼獲得其值:

string bytestr = "";
string[] byteArray = bytestr.Split(' ');
byte[] b = new byte[byteArray.Length];
for (int i = 0; i < byteArray.Length; i++) {
    b[i] = Convert.ToByte(byteArray[i], 16);
}
string msg = Encoding.UTF8.GetString(b);
Console.WriteLine(msg);

Console.Read();

bytestr 變量就放置16進制字符串就行了。另外這裡使用的編碼是utf-8,實際應用中應 該與網站的編碼匹配。這個實驗是拿博客園做實驗的。博客園登錄狀態的cookie名為 “.DottextCookie”。

在firefox中,退出博客園登錄,然後切換到firebug的控制台,使用命令行鍵入 document.cookie='.DottextCookie=******;',然後刷新頁面,看到了什麼?現在正處於登 錄狀態!

實際上在會話劫持中,一般都是拿登錄cookie的值,無論其是否加密,都可以劫持。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved