当前位置:   article > 正文

DC-9靶机渗透学习记录_dc9靶机下载

dc9靶机下载

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

  1. 存在knockd服务, 该服务通过动态的添加iptables规则来隐藏系统开启的服务,
  2. 使用自定义的一系列序列号来"敲门",使系统开启需要访问的服务端口,才能对外访问。
  3. 不使用时,再使用自定义的序列号来"关门",将端口关闭,不对外监听。进一步提升了服务和系统的安全
  4. //配置文件路径
  5. 默认配置文件是:/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文件当中内容进行构造信息

  1. 思路:
  2. 我们可以生成一串类似于/etc/passwd的信息,通过test.py脚本强加入/etc/passwd文件中,
  3. 我们需要知道/etc/passwd文件信息的含义
  4. root:x:0:0:root:/root:/bin/bash
  5. root    用户名(自定义设置)
  6. :x    用户密码(为安全考虑用x代替)
  7. :0    UID
  8. :0    GID
  9. :root    全称,对用户的描述
  10. :/root    用户家目录
  11. :/bin/bash    shell环境变量(查看用户是否作为可交互式,允许登录/bin/bash,
  12. 不允许登录/sbin/nologin)
  13. 之所以写入/etc/passwd文件中,是因为我们要追加一条uid=0的用户
  14. 因为root的UID=0
  15. 我们现在需要使用openssl生成密码
  16. openssl passwd -1 -salt 盐值 密码
  17. -1为MD5加密算法
  18. -salt指定盐值
  19. 如:openssl passwd -1 -salt 123.com zhen
  20. 构造出:zhen:$1$123.com$YbnVgPo30FVuFmFc9.8190:0:0:zhen:/root:/bin/bash
  1. echo 'zhen:$1$123.com$YbnVgPo30FVuFmFc9.8190:0:0:zhen:/root:/bin/bash'>/tmp/zhen
  2. 之所以写到tmp下,是因为tmp的文件所有用户都可写入
  3. cd /tmp
  4. sudo /opt/devstuff/dist/test/test zhen /etc/passwd
  5. su zhen

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/987263
推荐阅读
相关标签
  

闽ICP备14008679号