邪恶八进制信息安全团队技术讨论组's Archiver

fhod 2007-10-4 22:57

[原创]帮朋友一公司做的入侵可行性分析

信息来源:邪恶八进制信息安全团队([url]www.eviloctal.com[/url])
文章作者:fhod

[size=4][b]PS:因为本人以前一直都是搞入侵..这次也是受朋友之托帮他公司做下安全检测并要求我写份报告出来..我也没有过写报告的经验..就粗糙的记录了下..所有一些地方不尽人意..不过也应该能看的明白了...文章很菜..高手可以直接跳过了..为了朋友公司网站的安全..以下文章所涉及到的图片和URL是经过处理的..转载请注明出处[/b][/size]

首先..程序有明显的注入漏洞
注射点
[url]http://www.hu[/url]*****xx.com/hxgs_csgy_Details.asp?id=6
但因为程序可能是自己开发..猜不到表名..所以无法得到管理员密码…因为这个漏洞无法利用..所以问题不大..
通过webshell查看
D:\web\hxgs_csgy_Details.asp源代码
<% set rs=server.CreateObject("adodb.recordset")
sql="select * from csgy where id="&request.QueryString("id")&""
rs.open sql,conn,1,2
%>
漏洞就出在这句…解决办法,,
新建no_sql.asp内容如下
<%
On Error Resume Next
Dim strTemp
If LCase(Request.ServerVariables("HTTPS")) = "off" Then
strTemp = "http://"
Else
strTemp = "https://"
End If
strTemp = strTemp & Request.ServerVariables("SERVER_NAME")
If Request.ServerVariables("SERVER_PORT") <> 80 Then strTemp = strTemp & ":" & Request.ServerVariables("SERVER_PORT")
strTemp = strTemp & Request.ServerVariables("URL")
If Trim(Request.QueryString) <> "" Then strTemp = strTemp & "?" & Trim(Request.QueryString)
strtempurl = LCase(strTemp)
strTemp=Trim(Request.QueryString)
If Instr(strTemp,"&#39;") or Instr(strTemp,",") or Instr(strTemp,"%20and%20") or Instr(strTemp,"%20or%20") or Instr(strTemp,"select%20") or Instr(strTemp,"insert%20") or Instr(strTemp,"delete%20from") or Instr(strTemp,"count(") or Instr(strTemp,"drop%20table") or Instr(strTemp,"update%20") or Instr(strTemp,"truncate%20") or Instr(strTemp,"asc(") or Instr(strTemp,"mid(") or Instr(strTemp,"char(") or Instr(strTemp,"min(") or Instr(strTemp,"sum(") or Instr(strTemp,"max(") or Instr(strTemp,"xp_cmdshell") or Instr(strTemp,"exec%20master") or Instr(strTemp,"net%20localgroup%20administrators") or Instr(strTemp,"cmd") or Instr(strTemp,"net%20user") then
response.write strtempurl+"<br>你的非法操作已被系统记录 时间:"+cstr(now())
response.write"<script>alert(&#39;ID参数错误,请不要恶意提交非法ID参数~!&#39;);</script>"
response.write"<script Language=Javascript>location.href = &#39;../&#39;;</script>"

  response.end
End If
%>
然后在coon.asp里第一行加如
<!--#include virtual="no_sql.asp"-->

这样以后所有的sql注射攻击发生时都会被拒绝并提示
“你的非法操作已被系统记录 时间
ID参数错误,请不要恶意提交非法ID参数~!

[url]http://www.hu[/url]*****xx.com/admin/login.asp
管理后台也应该修改掉..
防止黑客在得到管理员密码后登陆后台,试图上传木马得到webshell
最好改成自己能记的住的地址..而且黑客难以猜到的
比如
[url]http://www.hu[/url]*****xx.com/admin/^%jkhlogin.asp

通过
[url]http://www.hu[/url]*****xx.com/hx_cs_gy.asp
得到新闻地址
[url]http://www.hu[/url]*****xx.com/hxgs_csgy_Details.asp?id=6

因为新闻中有图片/..得到图片地址
[url]http://hu[/url]*****xx.com/admin/newsupload/uploadfile/2007512144938165.JPG

猜解
[url]http://hu[/url]*****xx.com/admin/newsupload/upload.asp
通过页面判断很有可能是某个在线编辑器
用的最多的是ewebeditor
Ewebeditor默认登陆页面
[url]http://hu[/url]*****xx.com/admin/newsupload/admin_login.asp

[url]http://hu[/url]*****xx.com/admin/newsupload/db/ewebeditor.mdb
默认数据库
返回

图1 [attach]6579[/attach]

通过返回的信息可以判断默认库并没有修改..IIS做了设置不允许下载..

不过..默认密码没有修改

[url]http://hu[/url]*****xx.com/admin/newsupload/admin_login.asp
.
用户名:admin
密码:admin

在后台样式管理拷贝新样式


Flash类型加入asa

图2
[attach]6580[/attach]

预览新样式
上传flash动画

图3
[attach]6581[/attach]

上传成功

图4
[attach]6582[/attach]

Asp木马登陆地址
[url]http://hu[/url]*****xx.com/admin/newsupload/uploadfile/200798165834394.ASA?id=login

图5

[attach]6583[/attach]
解决方法..修改默认库…默认管理员密码

[url]http://hu[/url]*****xx.com/admin/newsupload/admin_login.asp
默认登陆地址最好也改掉


D:\web\admin\newsupload\db
目录要禁止写入..防止黑客再得到密码进入后台时候新增样式并上传asp木马..
D:\web\admin\newsupload\uploadfile
目录要设置禁止运行程序..删除asp.dll的解析.这样就算黑客成功上传asp木马..也不会被执行….最终也无法得到webshell..

拿到webshell后..发现磁盘权限也并未设置…可跨目录访问…
   
图6 7
[attach]6584[/attach]
[attach]6585[/attach]

用webshell读出

当前终端服务端口: 3389
自动登录的系统帐户: adminwindows
自动登录的帐户密码: windows!@*

[align=right] By  fhod
2007-09-08[/align]

huxingru 2007-10-4 23:03

每次找到后台,但没有上传文件管理,总拿不到webshell [s:232]

sunwear 2007-10-4 23:17

[quote]引用第1楼huxingru于2007-10-04 23:03发表的 :
每次找到后台,但没有上传文件管理,总拿不到webshell [s:232][/quote]
未必非需要上传.
也许用户名密码就是FTP的 RDP的。
或者可以通过默板编辑生成ASP页面来写马.
或者是通过数据库.
我对入侵不是很了解,但至少知道没上传页面不意味着没的搞.

ps:
我以为FHOD兄出品必有经典0day,没想到竟然是个弱口令流水帐.罚你请我吃饭一次.

fhod 2007-10-4 23:36

这个是帮刘林一个朋友做的检测..
并没用到什么太高深的技术...一个弱口令就足够攻陷它了...
入侵靠的一半是运气
我是属于运气好的那种
因为没做安检的经验..有些安全措施我也并没提到...

sunwear啥时候来我这..好好招待你..把你吃的像我这么胖[s:264]

neeao 2007-10-5 00:07

看起来更像一个入侵的过程。

inking 2007-10-5 03:16

都快一个月了,总算博客更新了这么一篇文章,虽然没有多大的新意,凑活着看吧不过还有一个问题不知道

[quote]用webshell读出

当前终端服务端口: 3389
自动登录的系统帐户: adminwindows
自动登录的帐户密码: windows!@*

.......[/quote]

什么系统?能够用webshell直接读出系统密码?

落叶树 2007-10-5 03:31

ls要注意看[b]自动登录[/b]这四个字,注册表里面有相应信息存在。

asm 2007-10-5 04:34

那服务器竟然搞自动登陆。。。汗一个。~密码都记录在那啥注册表里的。~~ [s:270]

sunwear 2007-10-5 09:16

[quote]引用第3楼fhod于2007-10-04 23:36发表的 :
这个是帮刘林一个朋友做的检测..
并没用到什么太高深的技术...一个弱口令就足够攻陷它了...
入侵靠的一半是运气
我是属于运气好的那种
因为没做安检的经验..有些安全措施我也并没提到...
.......[/quote]

我一直不知道WBSHELL还有读自动登陆密码这功能.....又长知识了.
PS:我要像你那么胖 恐怕困难 我吃什么都不胖 怎么吃都不长.

恶魔傻蛋 2007-10-5 11:24

[s:265] 呵呵。这边文章可以当作简易的WEB服务器的安全设置指导了。。~
如果再全面点就更好了。
谢谢分享。。~~

pivot 2007-10-5 12:31

标准的测试报告不是这么写的........

更像是一次入侵的可行性分析报告......

fhod 2007-10-5 14:20

我在文章开头也说明了
我以前也没有做测试报告的经验
这次也是受朋友之托就简单帮忙下..已经回应楼上的回复把标题修改了
真正做测试报告的话内网也是可以继续渗透的.

看了下机器也不少..

lovelyl2 2007-10-5 14:29

感觉这篇文章很通俗,就是利用管理员的“ewebeditor”设置不当
通过默认帐号密码进入,然后上传webshell的一个过程
希望不太了解“有情监测”的朋友认真读取,学习LZ的细心
如果是我我肯定就放过了,不会从新闻页面那个图片读到up路径。

像LZ这样细心的人不多
[quote]
猜解
[url]http://hu[/url]*****xx.com/admin/newsupload/upload.asp
通过页面判断很有可能是某个在线编辑器
用的最多的是ewebeditor
Ewebeditor默认登陆页面
[url]http://hu[/url]*****xx.com/admin/newsupload/admin_login.asp

[url]http://hu[/url]*****xx.com/admin/newsupload/db/ewebeditor.mdb
[/quote]

remax 2007-10-10 16:18

[s:266]
新版的ewebeditor不可以传asa的。
服务器居然自动登录,还开了3389,千年难遇。

数字型的注入何必那么麻烦,cint一个不就行了,虽然说用cint比较暴力。

゛小︷帅!﹊ 2007-12-23 08:18

[quote]用户名:admin
密码:admin
[/quote]

错就错在这个地方。

[quote]服务器居然自动登录,还开了3389,千年难遇。
[/quote]

又是一个低级错误…… [s:270]

simpleboy 2007-12-23 16:37

问 csgy  这个不是你得到的表名么

为什么说有了注入点 猜不到表名啊  [s:269]

aqjazz 2007-12-23 18:05

[quote]引用第8楼sunwear于2007-10-05 09:16发表的 :


我一直不知道WBSHELL还有读自动登陆密码这功能.....又长知识了.
PS:我要像你那么胖 恐怕困难 我吃什么都不胖 怎么吃都不长.[/quote]

确实 第一次了解到webshell可以猜读登陆密码 见识了

zczpc2000 2007-12-23 21:08

  能读注册表就行,运气好也可以把其它远控程序的密码读出来。。

lengker 2007-12-27 04:16

webshell有的好象是带注册表读取的帐号密码
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\DefaultPassword 这个是我自己机器的注册表信息.
另外关键这个怎么没有写是否带ser-u?这么垃圾的服务器,怎么可能没开这个啊?证明在服务器漏洞还有很多啊~~! 另外看这个怎么感觉象没什么可写的....拿ewebeditor这个入侵换个话题又来了一遍呢?

qq66565841 2008-1-3 14:10

[s:267] 现在还真有这样的服务器。。。服务器设置自动登陆的我就遇到过两次。。。。。。

小胖子 2008-2-22 17:11

楼主真的很细心,通过图片URL找出编辑器。不错的思路!:loveliness:

扯淡 2008-8-21 13:38

新手学习了
:mad:

漂亮魔鬼 2008-8-26 10:54

:lol:   fhod兄下次有这样的站给我吧 :kiss:

lyiply 2008-8-26 13:35

看了楼主的报告,我觉得如果他们的网站真是这么设计的,只能说明一个问题,,他们的程序还只有不到三年网站建设功底,我的网站也是这么建设的,但我会在把一些东西,转移目录,转到根目录下的二级目录
   你这里指出的,确实都是一些新程序,甚至一两年的程序都没有想到的,/admin/newsupload/uploadfile/2007512144938165.JPG
admin/newsupload/admin_login.asp
这些都是一些新手会犯的错误,,一般我建议用与admin并行的目录来掩饰

还有在Request.QueryString的处理上,有很多方法来处理,如限制长度,类型,非法字符等

vera 2008-8-26 14:25

虽然没有什么技术含量,但是经验!

柔肠寸断 2008-8-26 21:14

[quote]D:\web\admin\newsupload\db
目录要禁止写入..防止黑客再得到密码进入后台时候新增样式并上传asp木马..
D:\web\admin\newsupload\uploadfile
目录要设置禁止运行程序..删除asp.dll的解析.这样就算黑客成功上传asp木马..也不会被执行….最终也无法得到webshell..[/quote]
上传php的看看?????

页: [1]
© 1999-2008 EvilOctal Security Team