通过阅读本文,您将了解到:
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
1
、一种手工得到两个版本的
BBSXP
论坛的用户
md5
密码的方法。
2
、如何
Cookie
欺骗。
大家都知道
BBSXP
论坛
5.13
,
5.15
版本的
blog.asp
文件存在注入漏洞,网上也有几种这个漏洞的利用软件,可是有不少网友反映使用这些软件有时候无法成功得到完整的
32
位
md5
密码,还有一些利用软件被捆绑了***,所以我在本文介绍一种手工得到注册用户
32
位
md5
密码的方法。
我们可以通过提交下面的代码测试用户名为
admin
的
32
位
md5
密码中的第十位是否为
3
:
/blog.asp?id=1%09and%09exists%09(select%09*%09from%09[user]%09where%09username=0x610064006D0069006E00%09and%09substring(userpass,10,1)=0x33)
,如果是
3
的话,该日志就会返回正常的页面,否则会提示“该用户暂时没有任何日志”。其中
select%09*%09from%09[user]%09where%09username=0x610064006D0069006E00%09and%09substring(userpass,10,1)=0x33
,
这是一条
select
语句
,
意思是得到从
user
表中选出某条记录的
username
列
=0x610064006D0069006E00
并且该记录的
userpass
列的第
10
个字符
=0x33
。
select
的语法为:
SELECT FieldOFTableList
INTO VariableList
FROM TableName
WHERE Criteria
;
其中FieldOFTableList
代表接收数据的变量名列表
,VariableList代表获得检索结果的变量,TableName
代表被检索的表名
,Criteria
是检索条件
。
0x610064006D0069006E00
是
admin
转换成十六进制得到的,这个字符串我们可以使用“
ASCII
及进制转换”这个小工具转换得到,如图
1
所示。
图1
0x33
是
3
转换成十六进制得到的,从
0
到
9
,
a
到
f
的十六进制对应如下:
0 0x30
1 0x31
2 0x32
3 0x33
4 0x34
5 0x35
6 0x36
7 0x37
8 0x38
9 0x39
a 0x61
b 0x62
c 0x63
d 0x64
e 0x65
f 0x66
如果用户名是汉字,比如一个用户名为“测试”,那“测试”这个字符串转换成十六进制为
0x
B2E200CAD400
,因为一个汉字占用两个字节的内存。这样经过不断的测试,会最终得到一个
32
位的
md5
密码,这时我们可以
md5
密码破解类软件进行破解,或者到一些
md5
密码破解网站进行破解
,如果密码过于复杂,破解不出明文密码,那我们就可以使用
IECookiesView
这款软件进行
cookie
欺骗了,打开
IECookiesView
,找到
BBSXP
论坛的网址,分别将
username
和
userpass
改为要冒充的
ID
和我们得到的密码,并保存,如图
2
所示。
图2
然后重新打开一个
ie
页面,再访问该论坛,就会发现我们成为要冒充的用户了。在这里有个地方需要注意一下,我们在进行
Cookie
欺骗时,要将得到
32
位的
md5
密码中的字母设置为大写的,否则
Cookie
欺骗无法成功。
本文的测试论坛版本为
BBSXP
论坛
5.13SQL
版。