BT提权wind2008R2
昨天中午打开电脑,对着菜刀在那翻啊翻,找到一个64bit的os。
因为这个ip不在曾经提权过的主机列表里面,心想这应该是个低权限的网站,顺手打个whoami试试,结果给我返回了"nt authoritysystem"。看来这是一条"漏网之鱼"啊,于是就有了下面一段颇为蛋疼的经历。
查看系统信息,这是一台装了win server 2008 r2企业版的服务器,跑在VMware虚拟机上。
然后翻了下目录,web环境是Tomcat 5.5.7,搭的是SQL Server 2008的数据库。看起来这是一台正常的服务器啊,而且3389也是开着的,那当初为神马没有秒掉呢?
由于是system权限,可以直接REG SAVE服务器本地的hash。分析过后,发现两个管理员账号的密码LM HASH值为空,看来管理员安全意识挺高的。(我记得LM为空意味着密码是8位以上,不知道有木有记错- -)
接着尝试用工具抓取登录过服务器的用户密码,把wce传上去,执行的时候提示超时了。刷新了一下目录,发现wce消失了。到这里大概已经明白了,一定是装了360!

还挺全面的嘛,安全卫士+杀毒。。。
对于我这种菜鸟来说,基本上装了360,工具这条路就走不下去了,因为360的强大不是我这种菜鸟能够解决的。没办法只能使出绝招了,尝试把Guest提为管理员:
net user Guest 12345
net user Guest /active:yes

这两步都顺利执行了,不过在把Guest加入到administrators组的时候碰到问题了:
net localgroup administrators Guest /add

竟然超时了,列下administrators组的成员,也没发现有Guest的身影,看来命令没执行成功。
我想有可能是shell执行命令不稳定,于是连续执行了几次,结果还是一样的:

而且连续执行了几次,所有命令都不返回了= =
这时候我打算用nc做一个反弹shell试试,不过一传上去就马上被360干掉了。。然后又考虑用metasploit做一个jsp的反弹shell,不过我的BT5装在了虚拟机里面,网站肯定弹不进去。(不过现在想了一下,其实可以用lcx做下端口转发,不过得跳2次,略麻烦= =)
到这里常用的思路基本都断了,果然是搞不下啊~无聊着就去翻系统磁盘,希望找到点什么有用的软件。翻着翻着,突然想起这服务器上还有一个mssql 2008呢,如果能搞到sa的权限或许还有点希望。马上转向web目录看配置文件,在一个小站里面找到了sa的密码(目测是测试中的一个站),尝试连接却提示密码错误。看了下配置文件的修改日期是2011年,好吧,看来管理员已经改过了。很快web目录所有的config都看完了,还是没找到可用的sa密码。有点不甘心啊,继续翻之。。过了5分钟,不经意间找到一个主站目录的备份zip,时间是12年8月的。有100多M ,好吧不管了,先down下来看看。功夫不负有心人啊,在这个备份里面找到了一个sa密码,跟之前密码的区别是多了一个逗号!

马上祭出Navicat尝试连接一下,居然成功了!

顺利连接上去,但是没看到有master这个库。(既然是sa登录,为啥木有master库呢,难道一定要用企业管理器登录才看到么- -求解释!)不管那么多了,直奔重点去。这里要用到的就是xp_cmdshell这个存储过程,算是mssql有sa权限下的提权利器,不过有经验的管理员一般都会用各种牛逼的方法去禁止普通用户使用它。尝试用正常的方法打开xp_cmdshell:
EXEC sp_configure 'show advanced options', 1; RECONFIGURE; EXEC sp_configure 'xp_cmdshell', 1; RECONFIGURE; exec sp_configure

错误代码"5″,马上google之。由于xp_cmdshell是严格用%systemroot%system32cmd.exe去执行所提交的命令的,提示"5″,意思是cmd的权限不足,就是说system32下的cmd.exe被降权了。当然也有绕过的方法,比如启用沙盒模式执行shell命令:
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftJet4.0Engines','SandBoxMode','REG_DWORD',1; select * from openrowset('microsoft.jet.oledb.4.0',';database=iasdnary.mdb','select shell("whoami")');

"microsoft.jet.oledb.4.0″这个接口没有跑起来,网上的资料表示mssql 2008用的是12.0了,又试了一下,提示12.0接口尚未注册。那看来要用到OLE DB的绕过方法都行不通了,那意味着所有思路又都断了= =
无奈之下,只好把现在的情况在一个交流群里面发了,希望大牛们指导我一下。有大牛指出可以用sqlmap尝试一下,如果网站是sa权限的话,可以直接用–os-shell生成一个shell。马上按照他所说的去做,还真返回了一个os的shell。看了下sqlmap给出的信息,用的也应该是xp_cmdshell,看来希望不大。先来个简单的whoami看看,结果等了一分钟返回一个"No output"= =

把情况给群里面的人一说,有人提示我说"没有返回没有关系,直接执行命令"。好吧这都行。。那直接执行命令试试。。不过试了好几次都还是no output,管理员组里面还是没有Guest的出现。这时候看到一个被我忽略的提示"do you want to retrieve the command standard output?",之前我都是直接回车的,默认选择的Yes。既然不用管是否返回,那试下选个no会怎么样,结果还真返回了不一样的info。再去查下administrators的成员,发现Guest出现了!!

额,sqlmap真乃神器也,当时就想跪拜了。。由于3389是打开着的,connect it:

到这里整个提权过程终于告一段落了,前后折腾了我快4个小时。。。看了下管理员的密码,一个18位的"数字+字母+符号"的超NB密码,顺便膜拜一下~
这次提权过程,最大的感悟就是贵在坚持,如果当初木有坚持这一说,可能连sa密码都没找到呢。然后是思路一定要广,这次要不是有高人指点,根本就成功不了。最后是"软件报错"有时候也意味着成功~
BT提权wind2008R2的更多相关文章
- 使用powershell提权的一些技巧
原文:http://fuzzysecurity.com/tutorials/16.html 翻译:http://www.myexception.cn/windows/1752546.html http ...
- Linux文件权限;ACL;Setuid、Setgid、Stick bit特殊权限;sudo提权
相关学习资料 http://blog.sina.com.cn/s/blog_4e2e6d6a0100g47o.html http://blog.csdn.net/aegoose/article/det ...
- WINDOWS渗透与提权总结(1)
旁站路径问题: 1.读网站配置. 2.用以下VBS: 01 On Error Resume Next 02 03 If (LCase(Right(WScript.Fullname, 11)) = ...
- 【原创】深入分析Ubuntu本地提权漏洞CVE-2017-16995
*本文首发阿里云先知安全技术社区,原文链接https://xz.aliyun.com/t/2212 前言: 2018年3月中旬,Twitter 用户 @Vitaly Nikolenko 发布消息,称 ...
- iOS冰与火之歌(番外篇) - 基于PEGASUS(Trident三叉戟)的OS X 10.11.6本地提权
iOS冰与火之歌(番外篇) 基于PEGASUS(Trident三叉戟)的OS X 10.11.6本地提权 蒸米@阿里移动安全 0x00 序 这段时间最火的漏洞当属阿联酋的人权活动人士被apt攻击所使用 ...
- CVE-2016-1240 Tomcat 服务本地提权漏洞
catalogue . 漏洞背景 . 影响范围 . 漏洞原理 . 漏洞PoC . 修复方案 1. 漏洞背景 Tomcat是个运行在Apache上的应用服务器,支持运行Servlet/JSP应用程序的容 ...
- linux一句话轻松提权
linux命令: [b@fuckks~]$ printf "install uprobes /bin/sh" > exploit.conf; MODPROBE_OPTI** ...
- Android提权漏洞CVE-2014-7920&CVE-2014-7921分析
没羽@阿里移动安全,更多安全类技术干货,请访问阿里聚安全博客 这是Android mediaserver的提权漏洞,利用CVE-2014-7920和CVE-2014-7921实现提权,从0权限提到me ...
- 用MSF进行提权
在WEB渗透中当我们拿到webshell了,我们可以试试用MSF(metasploit)来进行提权,在MSF里meterpreter很强大的! 我们先用msfvenom生成一个EXE的木马后门. ms ...
随机推荐
- (三)JNI常用示例
针对我之前文章的练习:JNI方法总结 1. 字符串 JAVA层: test.testString("HELLOWORLD"); JNI层: JNIEXPORT jstring JN ...
- IOS Core Image之二
在上篇博客IOS Core Image之一中了解了下CIImage.CIFilter.CIContext三个类的使用,这篇了解下滤镜链(多滤镜)和人脸检测(不是人脸识别). 一.多滤镜 1.有些效果不 ...
- Html-完整表格
表头th 特殊的单元格:加粗.居中 它的用户是取代td的位置即可 <table border="2"> <tr> <th>姓名</th&g ...
- Github - 修改语言统计
前些日子看到有人提到这个问题,于是自己也试着解决了一番,在此记录下来,希望对大家有帮助. Github中创建一个repository后会出现一个统计使用语言的颜色条. 就是下面这个东西: 似乎很多人遇 ...
- Java - 接口还是抽象类
Java有两种机制可以为某个抽象提供多种实现——Interface和abstract class. Interface 和 abstract class, 除了比较明显的区别(也就是能否提供基本实现) ...
- golang命令和VSCode配置
Go是一门全新的静态类型开发语言,具有自动垃圾回收.丰富的内置类型.函数多返回值.错误处理.匿名函数.并发编程.反射等特性 golang常用命令: go env #查看go的环境 echo %GORO ...
- 简单Json序列化和反序列化
序列化是什么: 序列化就是将一个对象的状态(各个属性量)保存起来,然后在适当的时候再获得.序列化分为两大部分:序列化和反序列化.序列化是这个过程的第一部分,将数据分解成字节流,以便存储在文件中或在网络 ...
- java 自定义泛型
package com.direct.demo; import java.util.ArrayList; import java.util.HashMap; import java.util.Link ...
- border实现三角形的原理
前言:网上最普遍的实现三角形的方法,就是通过控制border来实现,那为什么可以呢? 原理 我们先来看看border的表现形式. #box{ width:100px; height:100px; ba ...
- 使用iview时,页面没了滚动条
场景:页面中有一个确认按钮,保存后弹框预览在点保存按钮,实现数据提交.提交后回到数据列表页,用this.$router.push('list'),返回后页面无法滚动了. 原因:排查后发现弹框时在bod ...