DC-9靶机通关

news2024/11/5 22:34:34

   这是这个系列的最后一个靶机了!!!经过前面的锻炼和学习,这次我的目标是尽量不借助任何教程或者提示来拿下这个靶机!!!下面我们看能不能成功!!!

1.实验环境

攻击机:kali2023.2

靶机:DC-9

2.信息收集

2.1主机扫描

2.2端口扫描

3.功能点收集

3.1查看网页

3.2寻找功能点,看看有什么可以下手的思路

大家这里思考一个问题,我们目前有什么,一个是80端口一个是22端口,22端口无非就是能进行爆破然后远程连接,这种概率肯定很小,需要运气,其次就是80端口的web服务,然后我们发现的功能点一个是搜索一个是登录,那对应的可能的漏洞是不是就是弱口令和sql注入,因为我们想要getshell的话无非就是弱口令,注入漏洞,文件上传,文件包含或者RCE,有人会说那不是还有可能存在其他的一些xss之类的漏洞吗?我们现在不是在挖洞,那些漏洞很鸡肋并不能getshell,所以这里是不去考虑那些的,弱口令需要时间和运气,所以这里优先尝试一下sql注入行不行!

4.SQL注入

4.1找注入点

4.2跑sqlmap

4.3尝试登录

5.文件包含

5.1通过admin寻找线索

这里其实就出现一个问题,目标的22端口被过滤了,那么我们如何判断他到底是开放着的还是关闭着的,只有先判断出开没开,然后才能考虑下一步操作,如果是关着的那还搞个毛,直接跑路。如果是开着的那我们再想办法绕过他,因为这种过滤多半是防火墙设置导致的!这里给一篇文章大家参考一下在这种情况下应该如何判断端口是否开放!nmap扫描之端口“filtered“被过滤的分析_nmap filtered-CSDN博客

再放一篇关于端口状态的文章,大家可以多了解了解!

NMAP 六种端口状态解读_nmap filtered-CSDN博客

5.2端口敲门技术

这个东西我也是第一次听到,咱们去网上搜搜是怎么回事!

DC-9靶机-简单谈一下端口敲门技术 (Port Knocking)-CSDN博客

如何在 Linux 上使用端口敲门(以及为什么不应该) (linux-console.net)

我大致理解了一下就是说对方为了安全起见,在防火墙上对端口进行了保护,只有符合规则的流量才可以通过防火墙访问被保护的端口,正常来说这个规则只有使用者知道,这样的话可以起到防护作用,像22号端口就属于比较危险的端口,被保护起来也是可以理解的!

其实nmap也是通过流量访问来进行检测的,然而我们直接扫描的流量肯定是不符合人家规定的自然打过去以后会被抛弃或者过滤,这种情况下nmap给我们的会先结果要么是filter不确定是否开放甚至说是closed关闭状态!

然后我们在上面的文章中也可以了解到,这鸟毛玩意儿的配置是通过在相关的配置文件中进行设置然后搞出来的,就像我们平常配置中间件什么的一样,所以原来文件包含是用来让我们查看这个端口敲门的配置文件的,到这里豁然开朗了!这个配置文件的路径是 /etc/knockd.conf

nc -z IP 7469 8475 9842 //这个是配置文件里的那三个数字

然后其实就该爆破了,因为做这个就像做数学题一样,每个条件都要用到,既然文件包含已经有它的用处了,那剩下还没用的条件就是22号端口连接ssh了,而且我们现在还有一些账号密码在手上!

5.3ssh爆破远程连接

6.寻找提权思路

6.1ssh登录寻找线索

这里登上来之后发现三个账户下面啥都没有,这里卡住了,找了半天没有找到有用的东西,三个账户都没有可以suid和sudo提权的命令!

find / -user root -perm -4000 -print 2>/dev/null

6.2Linux常用提取方法

在Linux系统中,提权是指从低权限用户提升至超级用户(root)权限的过程。这通常是在渗透测试或系统管理中需要执行的操作,以便执行更多的系统级任务。以下是一些常见的Linux提权方法:

内核漏洞提权

Linux操作系统的内核是系统的核心,一旦存在安全漏洞,攻击者可以利用这些漏洞获取root权限。例如,著名的“脏牛”漏洞就是一种内核漏洞,可以被利用来提升权限。使用uname -a命令可以查看当前系统的内核版本,如果系统版本存在已知的漏洞,可以尝试利用相应的漏洞提权工具或脚本。

SUID提权

SUID(Set Owner User ID)是Linux中的一个特殊权限位,当设置了SUID权限的可执行文件被运行时,该程序将以文件所有者(通常是root)的权限运行。通过查找系统中具有root权限的SUID文件,可以尝试利用这些文件来提升权限。使用以下命令可以查找具有SUID权限的文件:

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

计划任务提权

如果计划任务(Cron Jobs)以root权限运行,并且相关脚本对其他用户具有写权限,或者脚本所属组为其他用户,则可以通过修改这些脚本来提权。可以通过查看/etc/crontab文件来发现系统中的计划任务,并检查相关文件的权限。

sudo滥用提权

在某些情况下,系统中的某些用户可能被授予了可以以root权限运行特定命令的sudo权限。如果可以找到这样的命令,就可以尝试利用它们来提升权限。使用sudo -l命令可以查看当前用户能以root权限运行的命令。

配置错误之利用/etc/passwd提权

如果/etc/passwd文件对其他用户具有写权限,攻击者可以通过向该文件中添加一个UID为0的用户来获取root权限。这通常涉及到修改系统文件,需要谨慎操作。

以上是一些基本的Linux提权方法,每种方法都有其适用的场景和限制。在尝试提权时,应该首先收集尽可能多的系统信息,然后根据情况选择合适的提权方法。提权过程中可能需要使用到各种工具和脚本,如内核漏洞利用工具、密码破解工具等。在实际操作中,提权往往需要结合多种技术和方法,以及对系统的深入了解。

因为suid和sudo提权比较常用,所以我看到不能用之后就跑去看能不能脏牛提权或者定时任务去了,后面看了一下提示才发现跑偏了!这里就有一个坑,登上去之后一定要看一下有没有隐藏目录或者文件!!!!!!!!!!!

6.3隐藏文件

6.4sudo提权

openssl passwd -1 -salt 账号 密码 //这里账号密码尽量简单一些,不然可能会出问题在加密的时候

echo 'topsec:$1$topsec$0sD7IikM54/bEsFnRrIPv/:0:0:root:/root:/bin/bash' > /tmp/tiquan2

sudo /opt/devstuff/dist/test/test /tmp/tiquan2 /etc/passwd

7总结

这个靶机我感觉非常美妙,涉及到的东西还是非常全面的,建议大家多打一打!

我认为涉及到的一些经典的姿势有:端口扫描,sql注入,文件包含,爆破,端口敲门,sudo提权,以及大家对python脚本的理解,还有对Linux的很多命令的理解,就包括那个坑人的隐藏文件!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

百度SEO分析实用指南 提升网站搜索排名的有效策略

内容概要 在数字化时代,搜索引擎优化(SEO)已经成为提升网站曝光度的关键工具。本指南将带您了解SEO的基本知识,帮助您在复杂的网络环境中立足。我们将从关键词优化开始,重点讲解如何选择合适的关键词来提高搜索引擎排…

ML2001-1 机器学习/深度学习 Introduction of Machine / Deep Learning

图片说明来自李宏毅老师视频的学习笔记,如有侵权,请通知下架 影片参考 【李宏毅】3.第一节 - (上) - 机器学习基本概念简介_哔哩哔哩_bilibili 1. 机器学习的概念与任务类型 概念:机器学习近似于寻找函数,用于处理不同类型的任…

用Python打造媒体管理播放器:从零到全功能GUI应用

背景 在日常生活中,我们经常需要管理和播放大量媒体文件。市面上的音频播放器可能功能单一,或者界面复杂。作为一名程序员,我决定使用Python自己打造一个简单yet强大的媒体管理播放器。 C:\pythoncode\new\playsong.py 全部代码 import os…

Cisco Packet Tracer 8.0 路由器静态路由配置

文章目录 静态路由简介一、定义与特点二、配置与命令三、优点与缺点四、应用场景 一,搭建拓扑图二,配置pc IP地址三,pc0 ping pc1 timeout四,配置路由器Router0五,配置路由器Router1六,测试 静态路由简介 …

【HarmonyOS】鸿蒙系统

文章目录 前言一、鸿蒙OS概述1. 定义与特性2. 核心技术理念3. 技术架构设计1. 应用层2. 框架层3. 系统服务层4. 内核层 二、分布式架构分布式架构的核心理念分布式能力的实现关键技术 三、 总结 前言 鸿蒙OS是由华为推出的一款开源操作系统,旨在满足智能终端设备的…

《双指针篇》---移动零

题目传送门 这道题可以归类为 数组划分/数组分块 。 题目制定了一个规则,我们可以在这个规则下,将数组划分为若干个区间。 这道题让我们把所有非零元素移动到左边。所有零元素移动到右边。 将数组划分为: 左区间非0; 右区间&…

网络编程项目之UDP聊天室

项目要求 利用UDP协议,实现一套聊天室软件。服务器端记录客户端的地址,客户端发送消息后,服务器群发给各个客户端软件。 问题思考 客户端会不会知道其它客户端地址? UDP客户端不会直接互连,所以不会获知其它客户端地址…

【NOIP普及组】 FBI树

【NOIP普及组】 FBI树 C语言版本C 版本Java版本Python版本 💐The Begin💐点点关注,收藏不迷路💐 我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又…

Lucene的概述与应用场景(1)

文章目录 第1章 Lucene概述1.1 搜索的实现方案1.1.1 传统实现方案1.1.2 Lucene实现方案 1.2 数据查询方法1.1.1 顺序扫描法1.1.2 倒排索引法 1.3 Lucene相关概念1.3.1 文档对象1.3.2 域对象1)分词2)索引3)存储 1.3.3 常用的Field种类 1.4 分词…

不适合的学习方法

文章目录 不适合的学习方法1. 纯粹死记硬背2. 过度依赖单一资料3. 线性学习4. 被动学习5. 一次性学习6. 忽视实践7. 缺乏目标导向8. 过度依赖技术9. 忽视个人学习风格10. 过于频繁的切换 结论 以下是关于不适合的学习方法的更详细描述,包括额外的内容和相关公式&…

华为OD机试真题(Python/JS/C/C++)- 考点 - 细节

华为OD机试 2024E卷题库疯狂收录中,刷题 点这里。 本专栏收录于《华为OD机试真题(Python/JS/C/C)》。

Linux中使用NGINX

NGINX简介 Nginx(engine x)是俄罗斯人编写的十分轻量级的HTTP服务器是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP代理服务器官方网站:http://nginx.org/ NGINX概述 Nginx默认配置文件:/etc/ngin…

scrapy爬取名人名言

爬取名人名言:http://quotes.toscrape.com/ 1 创建爬虫项目,在终端中输入: scrapy startproject quotes2 创建之后,在spiders文件夹下面创建爬虫文件quotes.py,内容如下: import scrapy from scrapy.spi…

mmsegmentation训练自己的数据集

文章目录 前言一、安装MMSegmentation二、数据集转换1.labelme标签数据转化为voc数据 三、训练设置1.建立数据集文件,并存入数据集2.设置训练配置文件 四、使用官方权重1、选择预测的方法2、查看方法支持的预训练数据集和权重权重位置找到对应的数据集下载权重 3、使…

LeetCode994. 腐烂的橘子(2024秋季每日一题 54)

在给定的 m x n 网格 grid 中,每个单元格可以有以下三个值之一: 值 0 代表空单元格;值 1 代表新鲜橘子;值 2 代表腐烂的橘子。 每分钟,腐烂的橘子 周围 4 个方向上相邻 的新鲜橘子都会腐烂。 返回 直到单元格中没有…

Pinctrl子系统中Pincontroller构造过程驱动分析:imx_pinctrl_soc_info结构体

往期内容 本专栏往期内容: Pinctrl子系统和其主要结构体引入Pinctrl子系统pinctrl_desc结构体进一步介绍Pinctrl子系统中client端设备树相关数据结构介绍和解析 input子系统专栏: 专栏地址:input子系统input角度:I2C触摸屏驱动分析…

地理信息科学专业想搞GIS开发:学前端还是后端?

地理信息科学专业的同学是学前端开发比较好呢还是学后端开发比较好呢? 部分网友:学前端更好 主修前端更好,因为地信学后端,是卷不赢学计算机的 本科卷前端,硕士阶段可以卷后端 甚至有网友直呼,地信根本没有…

批处理之for语句从入门到精通--呕血整理

文章目录 一、前言二、for语句的基本用法三、文本解析显神威:for /f 用法详解四、翻箱倒柜遍历文件夹:for /r五、仅仅为了匹配第一层目录而存在:for /d六、计数循环:for /l后记 for语句从入门到精通 一、前言 在批处理中&#…

第8章利用CSS制作导航菜单(第八次作业)

效果图如下&#xff1a; Html代码如下&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title>山水之间</title><style type"text/css">import url("../css/work1.css");</style…

Ubuntu22.04 安装图形界面以及XRDP教程

一、准备环境 1.一台服务器安装系统ubuntu&#xff08;这里大部分ubuntu系统可以同用&#xff09; 2.安装的ubuntu系统未安装图形界面 二、操作步骤 1.远程ssh或者直接登录服务器命令行界面 ssh -p 远程端口 rootIP 2.更新系统软件包 sudo apt update # 更新本地的软件包…