網絡技術是從1990年代中期發展起來的新技術,它把互聯網上分散的資源融為有機整體,實現資源的全面共享和有機協作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計算機、存儲資源、數據資源、信息資源、知識資源、專家資源、大型數據庫、網絡、傳感器等。 當前的互聯網只限于信息共享,網絡則被認為是互聯網發展的第三階段。 破解目標:破解一asp木馬的經過加密的登破解asp木馬密碼陸密碼。由于木馬里沒有版本說明,具體也不知道這木馬叫什么名。破解思路:兩種,用加密后的密碼替換密文和利用密文及加密算法反解出密碼。前者根本算不上真正的破解。 破解目的:沒事破著玩。 如果得不到asp源代碼,那么可以說對破解密碼,我毫無勝算。有位華夏的朋友說他得到了一個web的權限,但是無法修改主頁,發現其中已經有個asp木馬,但密碼是經過加密的。那么就有了這篇動畫了。好了,廢話太多了,那么,作好準備,這次的解說將會相當的漫長。 asp木馬登陸密碼驗證關鍵代碼如下: if Epass(trim(request.form("password")))="q_ux624q|p" then response.cookies("password")="8811748" ... <% end select function Epass(pass) temppass=StrReverse(left(pass&"zxcvbnm,./",10)) templen=len(pass) mmpassword="" for j=1 to 10 mmpassword=mmpassword+chr(asc(mid(temppass,j,1))-templen+int(j*1.1)) next Epass=replace(mmpassword,"'","B") end function %> 很明顯,用的是Epass函數把輸入的密碼進行加密,然后將得到的密文和原密文進行比對。如果稍有點編程基礎的話,特別是VB,那么Epass里的加密算法將一目了然。如果沒有,那么,沒關系,相經過我的講解,你很快就會明白。函數中,保存密碼的變量是pass。pass&"zxcvbnm,./" 將pass里的內容與zxcvbnm,./相連接得到一個新的字符串。left(pass&"zxcvbnm,./",10)取前10位。StrReverse函數將得到的10位字符串次序顛倒。len(pass)獲得密碼的長度。下面是一個循環。將得到的字符串中的每一位的Ascii碼-密碼長度+取整(字符所在位*1.1),然后將得到的數值轉換成字符重新連接。最后將得到的字符串中有'字符的全部替換成B,這樣密文的產生了。如果我們提取加密算法用自己的密文替換原有密文,那么相映的密碼也會變成你的密碼。但我說過了,這并不是真正意義上的破解。 假如我們輸入的是love,加密過程如下 love lovezxcvbnm,./ '連接 lovezxcvbn '取前10位 nbvcxzevol '次序顛倒 n 110(ascii)-4(位數)+int(1(位置)*1.1)=107 107的ascii碼為k,依次類推,最后密文: k`ucy|hzts 我們可以通過密文和加密算法反推出密碼。從算法的最后一步開始往上推。最后一步用B替換所有',有沒必要將B替換回'呢,答案是否定的。只要我們能得到最后的密文,密碼不一樣也是有可能的。如果有10個B,那原密碼的個數就2的10次方個,雖然原密碼只有一個,但是1024個密碼都是正確的。如果要完美破解的朋友,可以自己試著編寫全部的組合。那么這步可以忽略了。 上面的算法很清晰 chr(asc(mid(temppass,j,1))-templen+int(j*1.1)) 我們只要簡單的將+和-換一下就可以了。 chr(asc(mid(temppass,j,1))+templen-int(j*1.1)) 但是還有一個問題,我們事先不知道密碼的長度,沒關系,幸好密碼在1-10位之間,不太長。 那么我們可以用一個1到10的循環求出所有可能的密碼,再將其用StrReverse函數次序顛倒。 那么最后得到的密碼我們該怎么確定哪個就是呢。可以根據pass&"zxcvbnm,./",看除密碼最后是否有zxvbnm,./的前幾位。 那么這就是真正的密碼。那么如果密碼是10位,將是永遠正確的,因為后面不存在連接。所以我們可能得到兩個答案。 以下便是我編寫的解密函數 function Ccode(code) for templen1=1 to 10 mmcode="" for j=1 to 10 mmcode=mmcode+chr(asc(mid(code,j,1))+templen1-int(j*1.1)) next Ccode=strReverse(mmcode) response.write "密碼"&templen1&":"&Ccode&"<br>" if mid(Ccode,templen1+1,10-templen1)=left("zxcvbnm,./",10-templen1) and templen1<>10 then result=left(Ccode,templen1) next response.write "最后密碼:"&result end function 網絡的神奇作用吸引著越來越多的用戶加入其中,正因如此,網絡的承受能力也面臨著越來越嚴峻的考驗―從硬件上、軟件上、所用標準上......,各項技術都需要適時應勢,對應發展,這正是網絡迅速走向進步的催化劑。 |
溫馨提示:喜歡本站的話,請收藏一下本站!