DC-9靶机渗透学习记录

DC-9靶机下载地址:https://www.vulnhub.com/entry/dc-9,412/

环境准备

kali,DC-9靶机

两台虚拟机连接到同一网段

kali中安装需要的工具,如:nmap,sqlmap,dirb,hydra,nc,burpsuite等等

信息收集

1.靶机页面

2.打开kali,ifconfig确认kali的IP地址。

3.使用nmap扫描同网段主机,确定靶机IP地址为192.168.6.140。

4.扫描靶机开放端口

发现ssh服务端口状态为filtered,思考可能后面会让我们开放该服务。

5.访问靶机web页面

发现search页面有搜索职员记录的输入框,连接着数据库,思考是不是可以进行SQL注入。

渗透流程

1.SQL注入

        1)使用bp抓包,尝试SQL注入

输入Tom' and 1=1 --+的时候有结果

发现输入Tom' and 1=2 --+的时候无结果,所以存在SQL注入漏洞

        2)将bp抓到的包保存到桌面文件123.txt,使用sqlmap进行爆破数据库。

发现users库,猜测有用户名和密码,所以爆users库

爆UserDetails表

发现用户名和密码,尝试在web登陆页面使用,尝试几次后并不能登录,猜测该用户名和密码并不是web登录页面的用户名和密码。所以将username和password分别保存到本地为username.txt和password.txt文件,供之后使用。

再爆Staff库

爆Users表

发现用户名和加密的密码,网页上寻找解密工具解密后得到密码transorbital1

        3)尝试用该用户名和密码登录web页面,登陆成功

发现下方有文件不存在,猜测有文件包含漏洞,尝试利用该漏洞打开/etc/passwd,成功打开。

        4)通过/etc/passwd我们发现拥有很多的用户名,其中包括刚刚保存过的users数据库当中的用户名

所以我们把目光放到ssh服务上去

2.ssh爆破

        1)打开ssh服务。我们可以通过端口探测进行开启ssh服务。通俗来说端口探测可以理解为,我按顺序敲击端口就可以将ssh服务打开,反之敲击关闭,端口顺序存放在/etc/knockd.conf文件中。先找到/etc/knockd.conf文件,发现端口顺序为7469,8475,9842

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

//配置文件路径
默认配置文件是:/etc/knockd.conf

我们使用nc工具进行开启ssh服务

        2)开启之后我们通过hydra使用之前保存的username.txt和password.txt文件对ssh服务进行爆破

得到三个用户,分别登录三个用户,分别sudo -l发现并没有可利用文件

再分别查看目录下有没有可用的文件

发现janitor用户中有个独有的.secrets-for-putin文件

打开后新发现一个密码文件,保存到本地为pass.txt

        3)再利用username.txt和新的pass.txt文件进行ssh爆破

发现新的fredf用户,登录该用户,sudo -l命令查看到以root权限运行的文件,进行查看

        4)进入该目录,发现test是一个python脚本,我们使用find命令进行查找,进行查看

查看test.py发现文件中有读取和写入命令

提权

构造/etc/passwd文件当中的信息,进行追加用户信息即可提权,仿照/etc/passwd文件当中内容进行构造信息

思路:
我们可以生成一串类似于/etc/passwd的信息,通过test.py脚本强加入/etc/passwd文件中,
我们需要知道/etc/passwd文件信息的含义

root:x:0:0:root:/root:/bin/bash

root    用户名(自定义设置)
:x    用户密码(为安全考虑用x代替)
:0    UID
:0    GID
:root    全称,对用户的描述
:/root    用户家目录
:/bin/bash    shell环境变量(查看用户是否作为可交互式,允许登录/bin/bash,
不允许登录/sbin/nologin)

之所以写入/etc/passwd文件中,是因为我们要追加一条uid=0的用户

因为root的UID=0


我们现在需要使用openssl生成密码

openssl passwd -1 -salt 盐值 密码

-1为MD5加密算法

-salt指定盐值

如:openssl passwd -1 -salt 123.com zhen

构造出:zhen:$1$123.com$YbnVgPo30FVuFmFc9.8190:0:0:zhen:/root:/bin/bash
echo 'zhen:$1$123.com$YbnVgPo30FVuFmFc9.8190:0:0:zhen:/root:/bin/bash'>/tmp/zhen
之所以写到tmp下,是因为tmp的文件所有用户都可写入

cd /tmp
 
sudo /opt/devstuff/dist/test/test zhen /etc/passwd
 
su zhen

我们生成了用户名=zhen,密码=zhen的root权限用户,登录该用户。

进入/root目录下,查看并打开theflag.txt文件,完成DC-9靶机渗透。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值