小H靶场笔记:DC-9

DC-9

January 10, 2024 10:02 AM
Tags:knockd
Owner:只惠摸鱼

信息收集

  • 使用arp-scan和nmap扫描C段存活主机,探测靶机ip:192.168.199.139,只有80端口开放。

    在这里插入图片描述

  • 再扫一下靶机端口服务的情况吧。发现22端口是被过滤的状态,可能装的有防火墙。

    在这里插入图片描述

  • 扫描80开放端口的服务、版本、操作系统、基础漏洞。发现有CSRF漏洞,还有一些隐藏的目录探测处但没什么太多有用的信息,还有操作系统的一些信息。一会尝试看一下能否利用。

    在这里插入图片描述

    在这里插入图片描述

  • 访问一下80端口看看什么样,有没有有用的信息

    在这里插入图片描述

  • Display All Records这里是用户的一个信息展示,可以看到有17个用户,且有相应的职位信息,邮箱。一会可以作为提权或登陆的依据。

    在这里插入图片描述

  • search页面有一个查询框,因为是查询前面用户的,在页面尝试了一下SQL注入和XSS没用。

    在这里插入图片描述

  • 发现manage.php有登陆页面,尝试弱密码、万能密码没有什么用

    在这里插入图片描述

  • 扫了一下后台目录,也没有什么发现

    在这里插入图片描述

  • 指纹识别一下,也没有发现什么有用的东西。

    在这里插入图片描述

  • 爆破了一下manage.php页面的登录,没有成功

    在这里插入图片描述

  • 用BP抓包再试一下sql注入吧,在manage.php页面进行没有什么效果,但是在search页面有用!(有突破口了!)

    在这里插入图片描述

    在这里插入图片描述

  • 上sqlmap,直接跑吧

    • 爆数据库

      • sqlmap -u http://192.168.199.139/results.php --data “search=1” --dbs

        在这里插入图片描述

    • 拿到数据库,其中users感觉比较有用,爆一下表

      • sqlmap -u http://192.168.199.139/results.php --data “search=1” -D “users” --tables

        在这里插入图片描述

    • 拿到一个表,UserDetails,爆一下字段名

      • sqlmap -u http://192.168.199.139/results.php --data “search=1” -D “users” -T “UserDetails” --columns

        在这里插入图片描述

    • 我们直接爆firstname,lastname,username,password的数据

      • sqlmap -u http://192.168.199.139/results.php --data “search=1” -D “users” -T “UserDetails” -C “firstname,lastname,username,password” --dump

        在这里插入图片描述

  • 根据之前用户信息记录页面中所看到的信息,marym用户是CEO的用户,应该相对权限较高一些,拿他的账号登录一下。marym 3kfs86sfd,尝试manage页面不行,又尝试了其他管理员账号也统统不行,ssh是过滤的无法链接,那只有再看看其他的数据库了。

    在这里插入图片描述

  • 爆一下数据库Staff的表

    • sqlmap -u http://192.168.199.139/results.php --data “search=1” -D “Staff” --tables

      在这里插入图片描述

  • 爆一下Users表的字段名

    • sqlmap -u http://192.168.199.139/results.php --data “search=1” -D “Staff” -T “Users” --columns

      在这里插入图片描述

  • 爆一下Password和Username字段的数据

    • sqlmap -u http://192.168.199.139/results.php --data “search=1” -D “Staff” -T “Users” -C “Username,Password” --dump

      在这里插入图片描述

  • 爆出一个admin账号密码,但密码好像是md5加密的,去找一些在线解密网站解一下。得到密码transorbital1

    在这里插入图片描述

  • 再次尝试登录,成功登录!

    在这里插入图片描述

  • 发现页面下方有一个file does not exist, 翻到Manage前面的页面就没有,可能存在文件包含漏洞。

    在这里插入图片描述

    在这里插入图片描述

  • 尝试一下查一下用户,不断试一下目录(),发现可以爆出目录,确定存在文件包含漏洞。

    在这里插入图片描述

漏洞利用

  • 想起dc-5的时候,文件包含漏洞使用了nginx的日志来保存一句话木马,从而蚁剑连接到后端,指纹识别的时候发现是apache2.4.38版本,查了一下相关路径,尝试了/var/log/httpd/、/var/log/apache2/、/var/log/apache/ 都不行。没办法上传一句话木马想想其他办法吧。

    在这里插入图片描述

  • 想想之前被扫出来的被过滤的ssh端口,以及users数据库中未使用过的用户密码信息,搜一搜ssh被过滤,找到一篇这样的文章https://cloud.tencent.com/developer/article/1782065

    在这里插入图片描述

  • 感觉可能也是使用了Knockd进行了隐藏,查看一下knockd的配置文件是否存在。经过不断尝试,发现存在knockd。

    在这里插入图片描述

  • 通过之前那篇文章学到了knockd如何配置的,我们进行一个反利用,它“关门”,我们“敲开门”

    在这里插入图片描述

  • 用nmap进行敲门

    • for x in 7469 8475 9842;do nmap ‐Pn ‐‐max‐retries 0 ‐p $x 192.168.199.139;done

      在这里插入图片描述

  • 查看22端口是否开放了,成功“敲开“

    在这里插入图片描述

  • 之前收集的有一些用户名和密码,保存到txt文档:users.txt pass.txt,使用hydra对ssh进行爆破。

    在这里插入图片描述

    在这里插入图片描述

    • hydra -L users.txt -P pass.txt 192.168.199.139 ssh

      在这里插入图片描述

  • 爆出了一个,尝试连接,成功拿到shell

    在这里插入图片描述

提权

  • 看一下SUID文件和sudo(无需密码)的文件,权限太低,且没有什么能用的SUID文件

    在这里插入图片描述

  • 看一下用户目录吧,是否能够获得切换到其他用户的信息,发现只能进入本用户的文件内,其他没权限,且本用户的文件夹中没有文件。

    在这里插入图片描述

  • 查看一下用户目录下有没有隐藏目录或文件存在

    • ls -al

      在这里插入图片描述

    • 还真有

  • 看一下secrets(感觉就是不想被人发现的东西)

    • 看起来好像是其他用户的password

      在这里插入图片描述

  • 存pass.txt 字典里,准备再次爆破一遍

在这里插入图片描述

  • 新爆出了两个账户fredf、joeyt,查看之前数据库中的信息,再对比记录表,可以知道fredf是管理员,那就用他的账号一试。

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

  • 查一下SUID文件和无需密码的sudo文件

    在这里插入图片描述

  • 找到这个文件,运行一下,给了一个使用提示,需要python test.py读取追加

    在这里插入图片描述

  • find / -name “test.py” 2>/dev/null (2>/dev/null 代表忽略掉错误提示信息)

    在这里插入图片描述

  • 读一下文件内容:读取参数1的内容,然后将参数1的内容写入到参数2的内容中。

    在这里插入图片描述

    • 那我们可以写一个有root权限的账户到/etc/passwd
  • 进行一个密码加密(/etc/passwd密码直接以明文写进去,登录不成功)

    openssl passwd -1 -salt demo 123-1 使用md5加密算法
    -salt 自动插入一个随机数作为文件内容加密
    demo 123 用户名和密码
    

    在这里插入图片描述

  • 参数1写追加的文件内容(即按/etc/passwd格式写好的root权限的账户),参数2写/etc/passwd

    • echo ‘demo: 1 1 1demo$N8rNOM51XVLc6Sj7cqsmT/:0:0::/root:/bin/bash’ >> /tmp/passwd

      用户名:密码:uid:gid:家目录:登陆后使用的shell(注意使用两个/root前有两个::这个代表的是这一个参数为空【用户的简单说明。可为空】)

    在这里插入图片描述

  • 按文件用法执行,添加root权限新用户:demo 123

    在这里插入图片描述

  • su demo 切换到root权限用户

    在这里插入图片描述

  • 提权成功!查看flag。

  • 在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/338001.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探索Shadowsocks-Android:保护你的网络隐私

探索Shadowsocks-Android:保护你的网络隐私 I. 引言 在数字时代,网络隐私和安全变得愈发重要。我们越来越依赖互联网,但同时也面临着各种网络限制和监控。在这个背景下,Shadowsocks-Android应用程序应运而生,为用户提…

centos安装tomcat

前言 安装tomcat的话,应该没啥难度,只要是java装的没问题,直接拉上去都行 安装java方案之前已经给了: Linux/centos安装python、java、php等编译环境_linux服务器存在java环境安装php环境-CSDN博客 安装方式 1、下载 Apache Tom…

市场复盘总结 20240110

仅用于记录当天的市场情况,用于统计交易策略的适用情况,以便程序回测 短线核心:不参与任何级别的调整,采用龙空龙模式 昨日主题投资 连板进级率 33% 二进三: 进级率低 50% 最常用的二种方法: 方法一&…

创建型模式 | 建造者模式

一、建造者模式 1、原理 建造者模式又叫生成器模式,是一种对象的构建模式。它可以将复杂对象的建造过程抽象出来,使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象。创建者模式是一步一步创建一个复杂的对象&#xf…

IP地址的网络安全防护和预防

网络安全对于保护个人和组织的信息资产至关重要,而IP地址是网络通信的基础。在这篇文章中,IP数据云将探讨IP地址的网络安全防护和预防措施,以确保网络的安全性和可靠性。 IP地址是互联网上每个设备在网络中的唯一标识符。有IPv4和IPv6两种类…

【大数据OLAP引擎】StarRocks为什么快?

StarRocks的优势 StarRocks最初主要的优势是性能,当时在单表查询方面与性能标杆ClickHouse不相上下,而join优化特性使其在多表关联查询场景下的性能表现要远远优于ClickHouse,替换ClickHouse自然也就成了StarRocks的第一个目标。 而StarRoc…

CSS基础笔记-05layout

CSS基础笔记系列 《CSS基础笔记-01CSS概述》《CSS基础笔记-02动画》《CSS基础笔记-03选择器》《CSS基础笔记-04cascade-specificity-inheritance》 文章目录 CSS基础笔记系列什么是CSS布局布局方法normal flowflexboxgridfloats 总结 什么是CSS布局 CSS布局是指在页面中对元素…

前端中什么是DOM对象

DOM(文档对象模型)是一种编程接口,用于HTML和XML文档。它提供了一种将文档结构表示为树结构的方式,这使得程序和脚本能够动态地访问和更新文档的内容、结构和样式。 在前端开发中,DOM是非常重要的概念。当浏览器加载网…

websocket: 了解并利用nodejs实现webSocket前后端通信

目录 第一章 前言 1.1 起源 1.2 短轮询与长轮询 1.2.1 短轮询 1.2.2 长轮询 1.2.3 长连接(SSE) 1.2.4 websocket 第二章 利用Node以及ws创建webSocket服务器 2.1 创建ws服务器(后端部分) 2.1.1 了解一下 2.1.2 代创建W…

Pytorch从零开始实战16

Pytorch从零开始实战——ResNeXt-50算法的思考 本系列来源于365天深度学习训练营 原作者K同学 对于上次ResNeXt-50算法,我们同样有基于TensorFlow的实现。具体代码如下。 引入头文件 import numpy as np from tensorflow.keras.preprocessing.image import Ima…

【昕宝爸爸定制】如何将集合变成线程安全的?

如何将集合变成线程安全的? ✅典型解析🟢拓展知识仓☑️Java中都有哪些线程安全的集合?🟠线程安全集合类的优缺点是什么🟡如何选择合适的线程安全集合类☑️如何解决线程安全集合类并发冲突问题✔️乐观锁实现方式 (具体步骤)。✅…

2024年了,Layui再战三年有问题不?

v2.9.3 2023-12-31 2023 收官。 form 优化 input 组件圆角时后缀存在方框的问题 #1467 bxjt123优化 select 搜索面板打开逻辑,以适配文字直接粘贴触发搜索的情况 #1498 Sight-wcgtable 修复非常规列设置 field 表头选项时,导出 excel 出现合计行错位的…