某HW行动中的一次渗透测试

2020-12-11 15:28:56 浏览数 (1)

来源:先知社区-喜欢吃三饭烧腊的老涛

在其一个智慧校园管理系统发现了一处sql注入。

可以看到可以选择以什么身份登陆,而且选择学生登陆的时候,还可以选择年级。 抓包看下是否存在数据库交互:

可以看到,会去服务器请求对应年级的数据,尝试添加单引号,出现报错,证实存在sql注入。

因为网站没有waf,所以直接拿sqlmap跑:

可以跑出管理员的账号,并且拿到了os-shell。

因为os-shell不方便,所以想弹个cs的shell或者上个webshell。

但是当时局限于直接在web目录写shell,还有powershell反弹shell,前者不知道web绝对路径(尝试过在os-shell中利用dir命令来寻找web目录,但是他的目录是中文的,os-shell一直出错),后者被杀毒软件阻止。

当时没有想到利用bitsadmin等系统工具来下载木马执行,所以想着利用管理员账号进行网站后台看看。

在后台发现了一处文件上传

尝试上传aspx(简单的前端检测绕过)。

返回500,但是文件却成功上传到了服务器。

访问aspx文件,出现403错误

应该是iis限制了目录文件的权限。

这里有两种办法,一种是上传web.config文件来增加文件的执行权限,一种是尝试进行路径穿越。

这里选择上传web.config文件

再次访问,出现未编译错误

大概是因为整套源码都是已经预编译好的,无法直接使用ASPX脚本。

尝试上传asp文件,成功解析:

附:web.config实战用法(https://www.jianshu.com/p/ca7ea37bb1c1)

接着上传asp webshell,用蚁剑连接:

查看一下权限:

接下来想弹shell到cs进行提权和进一步横向。

tasklist看下有没有杀软:

有赛门铁克会检测流量,所以得绕下流量检测。可以利用合法证书来加密cs的流量。

ssl证书的话可以自己申请,也可以利用keytools伪造。

申请完证书之后用openssl生成 keystore

  1. openssl pkcs12 -export -in fullchain.pem -inkey key.pem -out stao.p12 -name stao.site -passout pass:mypass
  2. keytool -importkeystore -deststorepass mypass -destkeypass mypass -destkeystore stao.store -srckeystore stao.p12 -srcstoretype PKCS12 -srcstorepass mypass -alias stao.site

这里我还替换了cs的profile,c2 profile可以用来控制Beacon payload的行为,直接用了github现成的。

https://github.com/threatexpress/malleable-c2/blob/master/jquery-c2.4.0.profile

其他可以默认,但是要改一下其中ssl修改证书的配置,指定为我们刚刚生成的证书。

修改好profile之后,运行./c2lint2 xxx.profile检测一下。

没问题就可以运行cs服务器,并指定profile nohup ./teamserver x.x.x.x password c2.profile & 启动客户端连接服务器,然后添加一个listeners,选择https的beacon

然后生成C#的payload,利用AVlator进行一下简单的免杀处理

将生成的exe利用蚁剑上传到服务器并执行,成功反弹shell。

接下来进行提权,systeminfo看下补丁。

可以利用https://bugs.hacking8.com/tiquan/进行补丁的对比

尝试下ms16-075,成功提权。

提权之后发现没有什么值得进一步渗透拿分的地方,因此写报告提交,over.

版权申明:内容来源网络,版权归原创者所有。除非无法确认,都会标明作者及出处,如有侵权烦请告知,我们会立即删除并致歉。祝每一读者生活愉快!谢谢!

0 人点赞