来源:自学PHP网 时间:2015-04-17 14:47 作者: 阅读:次
[导读] 国内的web安全一直在进步,大家是有目共睹的,但是对于内网方面的安全却一直停滞不前,早在08年时,有幸应邀检测了国内的一家游戏公司,在web方面 的安全的确做的不错,但是偶然...
国内的web安全一直在进步,大家是有目共睹的,但是对于内网方面的安全却一直停滞不前,早在08年时,有幸应邀检测了国内的一家游戏公司,在web方面 的安全的确做的不错,
习惯性的加个index.hTml,返回正常,看来是windows服务器的可能性很高了(IIS默认支持大小写)
经检测发现,站点采用的是.net脚本,多年的渗透经验告诉我,面对大型站,直接检测主站是不靠谱的 Ok,看看他的分站: Member server:member.2cto.com
以及各类分站若干,部分重要站点采用Dns解析集群
开始尝试绕开重要站点 对一些比较偏僻的分站进行检测..
先前已经探测过,站点大部分采用.net脚本,对于.net 我个人比较喜欢检测一些特殊文件,比如.asmx,asmx一般用于站点的webservices服务, 而国内大部分管理员在部署这个接口的时候,都没有 对它做安全设置,这样就导致大堆的漏洞产生,曾经就是通过webservices拿下国内的快递公司宅x送
经过一系列的搜索,筛选,再搜索 最后将目标锁定在user.2cto.com/userservices
测试了几个参数,发现userid存在sqlinjection,过程就不说了,顺利拿到后台账号 那么,接下来就是寻找后台了 由于每个分站都是独立的,所以排除掉后台统一管理的可能,开始针对user.2cto.com 进行后台扫描.... 结果可想而知... 于是开始各种方法尝试找到后台登陆地址
一个商家登陆的后台,顺利登陆之... 进去后发现后台很简陋,主要是处理一些商家旗下的产品以及推销管理等,在产品管理处,可以上传产品附件,禁用js后尝试上传xx.aspx,没想到竟然上传成功, 查看附件,发现文件被强制改成201108042251_wooden.doc 看来是做了后缀处理了,但是仔细看发现文件尾部竟然有个wooden(商家名字),看来在生成文件时, 取值商家的用户名了 继续回到webservices,提交;update [admin] set username='test.asp;' where username='wooden' 接着进后台上传一个.doc后缀的小马,再看附件:201108042367_test.asp;.doc iis的解析成功,小马顺利执行,至此,拿下webshell 进入webshell后,发现是台windows2003的服务器,尝试提权: whoami 发现是.net默认用户,继承的自然是users组了 列了下服务,发现服务器开启了apache,要知道,win下的apache默认继承的是system权限,很好, 立即copy个php马到apache,hosts目录
net view发现若干服务器 net time /domain 返回 找不到域 WORKGROUP 的域控制器。 请键入 NET HELPMSG 3913 以获得更多的帮助。 看来目前所处的网段里并没有域存在
依次ping了下 net view里的服务器,
10.10.2.*
等若干网段,看来内网构造还是比较复杂 而自己所处的网段ip为 10.10.10.106 为了方便操作,反弹了个终端回来,并且开启aspnet用户,提升为administrators组 登上终端的第一件事就是查看系统日志... 在渗透中,系统日志可以告诉入侵者很多事情,例如管理员的日常操作以及如何管理员服务器等,通过分析日志发现10.10.2.13 这台服务器经常连接此服务器,并且使用的是super_user用户 在无域控制,仅仅是内网的情况下,管理员为了方便管理终端,一般会用几种方法:
1,为每个终端设置不同的用户,然后用文件记录起来 3,设置一个通用用户,账号密码一致以方便管理
那么很有可能这个super_user就是第三种情况,抓取hash后破解出了super_user的密码,接着尝试登陆2.13
尝试点开一个会话进入桌面,结果 提示:请等候 System Event Notification Service
一开始以为是event service在响应,于是挂着等他进入,结果2跟烟下来,仍然如此,猜测有可能是system event服务崩溃了,导致无法响应...
提交net use \\10.10.2.13\ipc$ "xxxxxxx" /user:super_user
接着net share \\10.10.2.13
Security' Z" n5 l9 N9 s4 n$ P
在z:盘 创建一个.bat文件 内容为 command>z:\1.txt,再通过at命令来让脚本执行,这样一个基本的cmdshell 就有了... 鄙人更推荐以上方法来执行cmd,当然,也可以用opentelnet来执行cmdshell,但是,在ipc$中,以上方法继承的是system权限, 而通过opentelnet等工具来连接的,继承的仅仅是administrators组,在一些高端策略部署的服务器中,前种就突出了他的优势 在query user后 尝试logoff注销super_user
可是,意外的情况发生了,a.bat执行logoff 2>z:\1.txt 发现1.txt并没有被创建,那么也就是说语句并没有执行?按道理,logoff 执行后,命令返回空值, 1.txt内容为空,可是1.txt并没有创建,那么,有可能的情况只有logoff 执行失败,或拒绝访问。。。 看来管理员做了安全策略了,接着尝试tsdiscon命令,tsdiscon 2>z:\1.txt, 执行后,1.txt创建,看来命令执行成功了, mstsc /z:10.10.2.13 /console 顺利登陆...
例如web对应10.10.10.x data对应10.10.2.x等等,以及一些应用的监控,可惜无法直接控制服务器,不过已经确认了主站和数据库等一些重要服务器的ip地址了... 写了个net use的bat脚本 用户为super_user,开始批量确认用户,结果发现,极大部分服务器都可以正常登陆,其中包括了:
member.2cto.com 已经没有继续渗透的必要了,删日至闪人,给管理员丢了封email
至此,渗透完毕.. |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com