底层架构 Zookeeper安装 分布式调度 Logstash 整数转换 https xml facebook cordova parsing woocommerce swiper vue绑定class vue社区 vue绑定点击事件 vuejs视频教程 网赚视频教程 easyui视频 jquery获取dom对象 edate函数的使用方法 excel加减混合求和 mysql 连接 destoon python获取数据类型 python链接mysql数据库 python中time python字符串匹配 java使用mysql javafor循环 java中new java方法的调用 linux基础教程 磁盘分区软件 vs2010sp1 sql行转列 cmd代码 extjs视频教程 dnf刷什么图赚钱 页面刷新 u盘系统下载
当前位置: 首页 > 学习教程  > 编程语言

【Vulnhub靶机渗透测试】之DC-4(teehee命令提权(在passwd或crontab中追加内容))

2020/12/28 18:51:16 文章标签:

文章目录Vulnhub靶机渗透测试之DC-41. 信息收集2. 漏洞利用3. 提权Vulnhub靶机渗透测试之DC-4 环境搭建 靶机镜像下载地址:https://www.vulnhub.com/entry/dc-4,313/; 需要将靶机和kali攻击机放在同一个局域网里; kali的IP地址:…

文章目录

  • Vulnhub靶机渗透测试之DC-4
      • 1. 信息收集
      • 2. 漏洞利用
      • 3. 提权

Vulnhub靶机渗透测试之DC-4


  • 环境搭建
  1. 靶机镜像下载地址:https://www.vulnhub.com/entry/dc-4,313/;

  2. 需要将靶机和kali攻击机放在同一个局域网里;

  3. kali的IP地址:192.168.40.142。

1. 信息收集

  1. 使用nmap扫描该网段存活的主机IP

在这里插入图片描述

可得知目标靶机IP为:192.168.40.144

  1. 使用nmap扫描靶机开放了哪些端口

在这里插入图片描述

可得知靶机开放了22、80端口;

  1. web指纹识别

在这里插入图片描述

  1. 访问目标靶机的80端口

在这里插入图片描述

是一个Admin的登录界面,考虑bp抓包爆破一下密码。

2. 漏洞利用

  1. 由于它是一个admin登录揭界面,用户名就尝试使用admin,密码字典选择kali的/usr/share/john目录下的password.lst字典:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

爆破结果 :根据状态码和长度判定密码为happy

在这里插入图片描述

测试登录:成功登录

在这里插入图片描述

发现它似乎可以执行一些命令:

在这里插入图片描述

抓包分析:

在这里插入图片描述

发现它执行了 ls+l 的命令,这里空格用+代替了,尝试替换为其他命令:

在这里插入图片描述

成功执行了 whoami 命令,再尝试查看 /etc/passwd 文件:

在这里插入图片描述

发现了几个用户:charles、jim、sam,分别查看一下这里几个用户目录下有什么值得利用的文件:

在这里插入图片描述

发现用户jim的backups目录里有一个文件:old-passwords.bak(关于密码的),查看它:

在这里插入图片描述

我们将这些密码保存为文件,现在我们有三个用户名和一个密码字典而且对方开放了22端口,使用hydra尝试爆破:

hydra -L user.dic -P old-password.bak ssh://192.168.40.144 -vV -o hydra.ssh	

爆破结果:爆破出用户jim,密码为:jibril04

在这里插入图片描述

  1. ssh登录jim用户

在这里插入图片描述

成功登录,查看jim用户有什么sudo命令可供使用:

在这里插入图片描述

结果:失败!

只能找其他切入点,我们查看一下mbox文件:

在这里插入图片描述

似乎是一封root给jim发送的邮件,此时可以查看var目录下的mail:

在这里插入图片描述

发现jim文件,查看内容:

在这里插入图片描述

是用户charles将自己的密码发送给了jim,密码为:^xHhA&hvim0y

  1. ssh登录charles用户

在这里插入图片描述

发现该用户有一个root权限的命令:teehee,查看该命令的使用方法:

在这里插入图片描述

有一个参数 -a,对指定文件进行追加,不覆盖,测试使用:

在这里插入图片描述

新建一个test文件,然后使用teehee命令追加内容,成功追加!

3. 提权

思考:teehee命令可不可以追加内容到任意文件里?

  1. 尝试在/etc/passwd文件下追加内容,该文件的结构:
用户名:是否有密码保护(x即有保护):uid:gid:全称:home目录:/bin/bash

我们追加一个名为hacker的用户,将它的uid和gid也设置为root的0:

在这里插入图片描述
成功追加!

  1. 切换用户

在这里插入图片描述

提权成功,发现flag文件!

  1. 写入定时任务文件

可以在/etc/crontab下写入定时计划,提升到root权限。

crontab介绍

Linux crontab是用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。

时间格式如下:

f1 f2 f3 f4 f5 program
其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程序。
当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推;
当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推;
当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推;
当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其馀类推

*    *    *    *    *
-    -    -    -    -
|    |    |    |    |
|    |    |    |    +----- 星期中星期几 (0 - 7) (星期天 为0)
|    |    |    +---------- 月份 (1 - 12) 
|    |    +--------------- 一个月中的第几天 (1 - 31)
|    +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59)

所以我们可以追加内容为:echo "* * * * * root chmod 4777 /bin/sh" | sudo teehee -a /etc/crontab,表示在/etc/crontab下写入定时计划,一分钟后由root用户给 /bin/bash 命令加权限(chmod 4777即开启suid和rwx权限):

在这里插入图片描述


本文链接: http://www.dtmao.cc/news_show_550131.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?