|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。木马|破解破解方针:破解一asp木马的经由加密的登破解asp木马暗码陆暗码。因为木马里没有版本申明,详细也不晓得这木马叫甚么名。
破解思绪:两种,用加密后的暗码交换密文和使用密文及加密算法反解出暗码。前者基本算不上真实的破解。
破解目标:没事破着玩。
假如得不到asp源代码,那末能够说对破解暗码,我毫无胜算。有位中原的伴侣说他失掉了一个web的权限,可是没法修正主页,发明个中已有个asp木马,但暗码是经由加密的。那末就有了这篇动画了。好了,空话太多了,那末,作好筹办,此次的讲授将会相称的冗长。
asp木马上岸暗码考证关头代码以下:
ifEpass(trim(request.form("password")))="q_ux624q|p"then
response.cookies("password")="8811748"
...
<%
endselect
functionEpass(pass)
temppass=StrReverse(left(pass&"zxcvbnm,./",10))
templen=len(pass)
mmpassword=""
forj=1to10
mmpassword=mmpassword+chr(asc(mid(temppass,j,1))-templen+int(j*1.1))
next
Epass=replace(mmpassword,"","B")
endfunction
%>
很分明,用的是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位,将是永久准确的,由于前面不存在毗连。以是我们大概失掉两个谜底。
以下即是我编写的解密函数:
functionCcode(code)
fortemplen1=1to10
mmcode=""
forj=1to10
mmcode=mmcode+chr(asc(mid(code,j,1))+templen1-int(j*1.1))
next
Ccode=strReverse(mmcode)
response.write"暗码"&templen1&":"&Ccode&"<br>"
ifmid(Ccode,templen1+1,10-templen1)=left("zxcvbnm,./",10-templen1)andtemplen110then
result=left(Ccode,templen1)
next
response.write"最初暗码:"&result
endfunction
好了,算法大概在这么短的工夫内没法完整把握,这是一般的,那末我将在紧缩包中附送申明文档和加解密的asp源代码,人人拿归去好好研讨吧。一样,暗码10永久准确的。那末我们将asp里原本的密文拿过去看看,会有甚么了局。好,两个暗码都能够上岸。为测试我在当地假定了个iis,假如当地没法架设web服务器,能够接洽自己,用其他言语编写。
asp,你就只能等着微软给你解决,它不乐意你就只好悲催。而且asp跑在windows服务器上,windows服务器跟linux比起来简直弱爆了! |
|