<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    http://www.tkk7.com/ebecket 返還網(wǎng)
    隨筆-140  評(píng)論-11  文章-131  trackbacks-0

    .net Cookies安全性實(shí)踐

    首先,你要相信網(wǎng)絡(luò)是不安全的,TCP協(xié)議也是不安全的。HTTP訪問(wèn)是基于TCP協(xié)議來(lái)完成的,其能夠被攻擊是一定的。

    跨站腳本攻擊一直是Web上常見(jiàn)的手段之一,攻擊一般是劫持用戶(hù)會(huì)話(huà),拿到私有的鑰匙。如何劫持這個(gè)會(huì)話(huà)呢?

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

    Sniffer監(jiān)聽(tīng)會(huì)話(huà)是不可護(hù)的,就和KOF里拉爾夫的宇宙幻影一樣,只要打中,一定是致命的。

    上圖,就是一組偵聽(tīng)數(shù)據(jù),當(dāng)然這里偵聽(tīng)的是我本機(jī)的數(shù)據(jù)。實(shí)際上是可以偵聽(tīng)局域網(wǎng),甚至廣域網(wǎng)上的數(shù)據(jù)。

    得到一組16進(jìn)制的值。可以用以下代碼獲得其值:

     

    Code
    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進(jìn)制字符串就行了。另外這里使用的編碼是utf-8,實(shí)際應(yīng)用中應(yīng)該與網(wǎng)站的編碼匹配。這個(gè)實(shí)驗(yàn)是拿博客園做實(shí)驗(yàn)的。博客園登錄狀態(tài)的cookie名為“.DottextCookie”。

    在firefox中,退出博客園登錄,然后切換到firebug的控制臺(tái),使用命令行鍵入document.cookie='.DottextCookie=******;',然后刷新頁(yè)面,看到了什么?現(xiàn)在正處于登錄狀態(tài)!

    實(shí)際上在會(huì)話(huà)劫持中,一般都是拿登錄cookie的值,無(wú)論其是否加密,都可以劫持。

    二、跨域腳本攻擊

    要實(shí)現(xiàn)跨域腳本攻擊,除了利用瀏覽器漏洞,或者ARP欺騙,一般需要有兩個(gè)要素。首要的要素是,被攻擊的網(wǎng)站,需要能自定義html代碼(除了利用漏洞,一般是要支持script)。在客戶(hù)端使用document.cookie就可以拿到cookie的值,然后進(jìn)行分析,找出需要的鍵值對(duì)。就可以完成攻擊。這里關(guān)于如何跨域保存信息就不討論了。

    比如有以下代碼:

    HttpCookie cookie = new HttpCookie("mmmm", "vvvvvvvvvvvv");
    Response.Cookies.Add(cookie);

    實(shí)現(xiàn)了cookie的寫(xiě)入。而在這個(gè)域下的頁(yè)面中,我有權(quán)限設(shè)置某個(gè)頁(yè)面中包含腳本的話(huà),就可以實(shí)現(xiàn)攻擊。

     <script>
      document.write(document.cookie);
     </script>

    以上代碼是個(gè)簡(jiǎn)單的輸出,如果我把攔截到的document.cookie發(fā)送到我能保存數(shù)據(jù)的地方,那么就可以拿到很多有用的信息。這樣就完成了跨域腳本攻擊。

    三、其它攻擊方法
    其他攻擊方法只要能夠拿到這個(gè)cookie就可以了,不管你是用flash或者其它辦法。

    四、可以防止的和不可防止的
    剛才介紹到Sniffer方法是不可防止,那怎么防止腳本的攻擊呢?可以禁止用戶(hù)使用腳本,很多網(wǎng)站都這么做的,如果一定要使用的話(huà),需要對(duì)cookie做特殊設(shè)置。在dotnet中,可以這樣處理:

    HttpCookie cookie = new HttpCookie("mmmm", "vvvvvvvvvvvv");
    cookie.HttpOnly = true;
    Response.Cookies.Add(cookie);

    這樣,在客戶(hù)端就不可以訪問(wèn)這個(gè)鍵值對(duì)的cookie,從而讓其他人即使能用腳本攔截會(huì)話(huà),但是無(wú)法得到關(guān)鍵數(shù)據(jù)。

    posted on 2010-01-20 01:25 becket_zheng 閱讀(197) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 網(wǎng)頁(yè)web前端技術(shù)C#
    主站蜘蛛池模板: 国产免费久久精品久久久| 久久久久亚洲AV无码麻豆| 免费无码黄网站在线看| 内射干少妇亚洲69XXX| 超pen个人视频国产免费观看| jizz日本免费| 亚洲丝袜中文字幕| 亚洲午夜激情视频| 97国产免费全部免费观看| 免费国产黄网站在线观看动图| 亚洲AV日韩AV永久无码久久 | a一级爱做片免费| 亚洲精品日韩专区silk| 国产伦一区二区三区免费| 污污网站免费观看| 国产亚洲精品仙踪林在线播放| 久久精品国产亚洲AV无码麻豆| 国产免费卡一卡三卡乱码| 亚洲电影在线免费观看| gogo免费在线观看| 亚洲影院天堂中文av色| 亚洲精品天天影视综合网| 五月天婷亚洲天综合网精品偷| 国产香蕉免费精品视频| 野花香高清在线观看视频播放免费| 亚洲色无码专区一区| 亚洲电影一区二区| 亚洲伊人久久成综合人影院| 成人无遮挡裸免费视频在线观看| 手机看片国产免费永久| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 国产一精品一AV一免费| 男女猛烈xx00免费视频试看| 亚洲丝袜中文字幕| 亚洲国产精品自在线一区二区| 亚洲国产av一区二区三区| 成人免费网站在线观看| 国产精品视频免费观看| 久久99青青精品免费观看| 9久热这里只有精品免费| 国产亚洲人成在线影院|