当前位置: 首页 > news >正文

实战打靶集锦-006-Stapler

**写在前面:**记录博主的一次打靶经历。

目录

  • 1. 主机发现
  • 2. 端口发现
  • 3. 服务枚举
  • 4. 服务探查
    • 4.1 FTP探查
      • 4.1.1 匿名登录
      • 4.1.2 Elly用户
      • 4.1.3 John用户
      • 4.1.4 EXP搜索
    • 4.2 dnsmasq探查
      • 4.2.1 基础信息获取
      • 4.2.2 EXP搜索
    • 4.3 WEB应用探查
      • 4.3.1 浏览器访问
      • 4.3.2 目录扫描
        • 4.3.2.1 dirsearch扫描
        • 4.3.2.2 dirb 扫描
      • 4.3.3 EXP搜索
    • 4.4 MySQL探查
      • 4.4.1 命令行访问
      • 4.4.2 爆破mysql
    • 4.5 Apache探查
      • 4.5.1 浏览器访问
      • 4.5.2 目录枚举
        • 4.5.2.1 dirsearch扫描
        • 4.5.2.2 dirb 扫描
      • 4.5.3 EXP搜索
    • 4.6 Samba探查
      • 4.6.1 EXP搜索
      • 4.6.2 EXP利用
  • 5. 获取flag


1. 主机发现

目前只知道目标靶机在56.xx网段,通过如下的命令,看看这个网段上在线的主机。

$ nmap -sP 192.168.56.0/24

在这里插入图片描述
锁定靶机IP地址为56.109。

2. 端口发现

通过下面的命令,对靶机进行一下全端口扫描。

$ sudo nmap -p- 192.168.56.109

在这里插入图片描述
额,这个靶机上开放的端口比较多,可以说是琳琅满目了,FTP、WEB、数据库,等等。

3. 服务枚举

通过下面的命令,对端口上的服务进行枚举。

$ sudo nmap -p20,21,22,53,80,123,137,138,139,666,3306,12380 -A -sV -sT 192.168.56.109

在这里插入图片描述
内容还是挺多的,将来我们可能要搜索的公共EXP也会比较多,先逐个探查一下服务。

4. 服务探查

4.1 FTP探查

4.1.1 匿名登录

直接命令行登录。
在这里插入图片描述
anonymous登录直接进去了,接下来看看里面有些啥。
在这里插入图片描述
貌似只有一个note文件,下载下来看看里面都有些啥。
在这里插入图片描述
这个note挺有意思的,貌似是John给Elly的留言,并且Elly的FTP账户下面很有可能有“payload information”。先记下这些,接着到其它目录看看。
在这里插入图片描述
好奇怪,提示切换目录成功了,但是列出来的文件还是note,并且修改日期、大小、权限等等都跟之前是一样的。不管了,作为note2下载下来看看内容再说。
在这里插入图片描述
确认是同一个文件,这说明目录没有切换成功。从目前的来看,基本上anonymous用户可以看到的内容就是唯一的一个note文件。既然note中提到了Elly和John两个用户,尝试分别用这两个用户登录FTP和SSH试试看。

4.1.2 Elly用户

首先用elly用户登录FTP,并且简单试用一下弱密码elly、123、elly123。
在这里插入图片描述
均以失败告终,也可能是elly用户确实不存在。再用这个用户尝试SSH登录试试看。
在这里插入图片描述
同样均以失败告终,后面如果需要的话,回过头来尝试爆破一下。

4.1.3 John用户

在用john用户登录FTP和SSH的时候同样是失败的。
不过这里想更进步一点点,FTP登录的时候会提示Harry,SSH登录的时候会提示Barry,这也有可能是两个用户名,分别用相同的方式试一下,也失败了。后面有空的时候爆破一下。

4.1.4 EXP搜索

$ searchsploit  vsftpd

在这里插入图片描述
从搜索结果来看,还是有EXP可以利用的,先看一下代码再说。
在这里插入图片描述
从代码来看,需要用户名和密码,这一点显然目前是不具备的,但是我们可以使用anonymous用户和空密码试一下。
接下来,修改一下host为目标靶机IP地址,用户名修改为anonymous,密码置空。
在这里插入图片描述
然后通过python3运行一下。
在这里插入图片描述
尽管已经提供了相关的参数,但是无论怎么调测都报这个错误,有些奇怪,实在不行的时候再回来啃这个硬骨头。

4.2 dnsmasq探查

4.2.1 基础信息获取

见识有些少,先看看dnsmasq是个啥再说,度娘给的结果还算明确。
在这里插入图片描述

4.2.2 EXP搜索

虽然知道了dnsmasq是个啥,但是还不知道怎么使用,这个上手可能也会浪费一些时间,接下来简单做一下公共EXP搜索。
在这里插入图片描述
虽然不知道怎么用,但是看上去貌似可以利用的漏洞不少。

4.3 WEB应用探查

4.3.1 浏览器访问

在这里插入图片描述
嗯,80端口是开着的,但是貌似页面找不到。

4.3.2 目录扫描

既然端口开着,那就进行一下目录扫描吧,看看能够扫描出些什么内容。

4.3.2.1 dirsearch扫描

通过下面的命令,采用dirsearch扫描一下。

$ dirsearch -u http://192.168.56.109

在这里插入图片描述

4.3.2.2 dirb 扫描

鉴于上次的经验教训,这里通过dirb挂上字典扫描一下。

$ dirb http://192.168.56.109 /usr/share/wordlists/dirb/big.txt
$ dirb http://192.168.56.109 /usr/share/wordlists/dirb/big.txt -X .php

在这里插入图片描述
貌似确实没有扫出更多的内容。先查看一下这几个扫出来的内容吧。先看看.bash_logout。
在这里插入图片描述
没啥干货,再看看.bashrc和.profile,都没啥干货。

4.3.3 EXP搜索

搜索一下对应版本的WEB应用服务器版本。
在这里插入图片描述
无论怎么优化关键字,搜索结果都不太合适。反正我也不知道这个PHP的cli server是啥,先google一下吧。
在这里插入图片描述
大概意思是,CLI是PHP的一个内置web server,这样在开发代码的时候,就不需要部署庞大的Apache或者Nginx等web服务器了。并且进一步查出了从PHP的5.4.0版本之后,都内置了CLI Server。
在这里插入图片描述
感觉这个CLI Server也只能本机访问,无法在网络上使用,暂时放弃吧。

4.4 MySQL探查

4.4.1 命令行访问

既然3306端口是开放的,那就从命令行访问一下,或者爆破一下试试看。
在这里插入图片描述
看来还是有些问题,直接用hydra爆破一下试试看。

4.4.2 爆破mysql

通过下面的命令,挂在rockyou字典爆破一下mysql的root用户。

$ hydra -l root -P /usr/share/wordlists/rockyou.txt 192.168.56.109 mysql

在这里插入图片描述
需要等待的时间比较长,等待大半个小时没有结果就停止它吧(最后确实放弃了,没有爆破出来)。

4.5 Apache探查

在服务枚举阶段,我们还枚举出了12380端口上运行的Apache httpd。我们在这里探查一下。

4.5.1 浏览器访问

先直接通过浏览器访问一下这个端口(分别用http和https)看看。
在这里插入图片描述
是http,就是一个人畜无害的普通静态页面啊,除了右下角的两个超链接,也没有其它关键信息。点击一下两个超链接试试看。
第一个Creative Tim连接到一个外部站点,如下。
在这里插入图片描述
先放到一边,说不定后面构建攻击字典的时候可以用上。再来看看那个Download的链接。
在这里插入图片描述
也是连接到了外部站点,对于外部站点,暂时不做分析,后面用到了再说。

4.5.2 目录枚举

既然到了这里,那就对12380端口也进行一下目录枚举吧。

4.5.2.1 dirsearch扫描

通过下面的命令,采用dirsearch扫描一下。

$ dirsearch -u http://192.168.56.109:12380

在这里插入图片描述
有些意外啊,竟然是空的,没法解释啊,看看上面提到的txt文件和log看看。
在这里插入图片描述
确实没有这个txt文件,接下来看看log有没有。
在这里插入图片描述
也是空的,太令人失望了,白等了半天。

4.5.2.2 dirb 扫描

通过dirb挂上字典扫描一下。

$ dirb http://192.168.56.109:12380 /usr/share/wordlists/dirb/big.txt

在这里插入图片描述
还是一无所获,暂时放弃这条线。

4.5.3 EXP搜索

搜索一下有没有适用于Apache 2.4.18的公共EXP。
在这里插入图片描述
貌似有一个提权漏洞和一个内存泄露的漏洞适用于靶机版本,这个漏洞利用会比较复杂,暂时放一边。

4.6 Samba探查

最后,探查一下Samba服务,之所以放在最后是因为这一块根本不了解,靶机上的版本是4.3.9版本。先连接一下试试看。
在这里插入图片描述
尝试发送消息试试看。
在这里插入图片描述
还是失败。

4.6.1 EXP搜索

现在本人对于139端口的理解,就是一张白纸,直接搜索一下看看有没有可用的公共EXP吧。
在这里插入图片描述
搜索下来,貌似就只有42084这一个EXP符合我们靶机的版本要求,貌似是一个任意模块加载的漏洞,先快速浏览一下代码再说。
在这里插入图片描述
ruby代码,除了注释,其它基本都看不懂,并且还需要Metasploit,针对的漏洞编号是CVE-2017-7494。

4.6.2 EXP利用

既然看不懂ruby的EXP代码,直接百度一下这个CVE-2017-7494的漏洞吧。
从网上搜索了一下,基本原理是这样的:Samba允许连接一个远程的命名管道,并且在连接建立之前会调用is_known_pipename()函数验证管道名称是否合法;但是在is_known_pipename()函数中,并没有对管道名称的规范性进行检查,这将会导致管道名称中可以包含特殊字符,攻击者可以构造使用包含特殊字符管道名称的恶意动态链接库文件并使用is_known_pipename()函数加载,用于执行任意代码。并且这个漏洞貌似可以直接在Metasploit里面利用,那就试试看吧。
说明:这里重点参照了网络大神的帖子(https://blog.csdn.net/dgjkkhcf/article/details/125902865)。
首先启动Metasploit控制台。

$ msfconsole

在这里插入图片描述
接下来,通过use命令使用is_known_pipename攻击模块。

msf6 > use exploit/linux/samba/is_known_pipename

在这里插入图片描述
通过set命令设置一下主机地址和端口参数,并通过show命令查看是否设置成功。

msf6 exploit(linux/samba/is_known_pipename) > set RHOSTS 192.168.56.109
msf6 exploit(linux/samba/is_known_pipename) > set RPORT 139
msf6 exploit(linux/samba/is_known_pipename) > show options

在这里插入图片描述
配置完成后,直接通过run命令运行一下漏洞利用模块。

msf6 exploit(linux/samba/is_known_pipename) > run

在这里插入图片描述
这是第一次用Metasploit,从上图中最后两行的输出来看,貌似是直接发现了shell并自动创建了反弹shell,直接试试看吧。
在这里插入图片描述
我靠,这也太神奇了,怪不得OSCP不让用Metasploit啊,还没弄明白具体的漏洞是咋回事就攻进去了,并且是突破边界+提权一条龙服务,直接获得了root权限。

5. 获取flag

在这里插入图片描述

相关文章:

实战打靶集锦-006-Stapler

**写在前面:**记录博主的一次打靶经历。 目录1. 主机发现2. 端口发现3. 服务枚举4. 服务探查4.1 FTP探查4.1.1 匿名登录4.1.2 Elly用户4.1.3 John用户4.1.4 EXP搜索4.2 dnsmasq探查4.2.1 基础信息获取4.2.2 EXP搜索4.3 WEB应用探查4.3.1 浏览器访问4.3.2 目录扫描4.…...

致远OAA6版安装

准备工作,操作系统winserver2019,sqlserver2019。致远OA安装包0.SeeyonInstall.zip相关下载:winserver2019下载地址:cn_windows_server_2019_updated_july_2020_x64_dvd_2c9b67da.iso magnet:?xturn:btih:22A410DEA1B0886354A34D…...

python实用脚本(六)—— pandas库的使用(生成、读取表格)

本期主题: python的pandas使用 往期链接: python实用脚本(一)—— 批量修改目标文件夹下的文件名python实用脚本(二)—— 使用xlrd读取excelpython实用脚本(三)—— 通过有道智云AP…...

字符集、ASCII、GBK、UTF-8、Unicode、乱码、字符编码、解码问题等

编码解码一、背景二、字符的相关概念三、字符集3.1 ASCII[ˈski]3.1.1 ASCII的编码方式3.1.2 EASCII3.2 GBK3.2.1 GB 2312-803.2.2 GBK的制订3.2.3 GBK的实现方式3.3 Unicode(统一码、万国码)3.3.1 Unicode的出现背景3.3.2 Unicode的编写方式3.3.3 Unico…...

Java 布隆过滤器

你在么?在!一定在么?不在!一定不在么? 你想要100%的准去性,还是99%的准确性附带较高的速度和较小的资源消耗。 任何算法,任何经营收到的背后,都是时间效益 资源消耗 准确性的平衡&am…...

vscode连接服务器(腾讯云)

文章目录1. vscode远程总是报错2. vscode能连上腾讯云但密码不对或者登录后不能打开文件或文件夹1. vscode远程总是报错 报错如图所示 Could not establish connection to *** 过程试图写入的管道不存在。 在百度、csdn找了好久都是说删掉.ssh文件下的某个文件但我压根没有&a…...

IOS崩溃文件符号化实践

1.背景与项目难点 1.1 背景 由于公司之前使用的友盟要收费,filebase服务由谷歌提供,存在数据合规风险。需要实现稳定性分析功能,通过支持app崩溃信息实时采集、实时上报、实时自动解析并定位出代码问题,帮助研发同学及时定位崩溃…...

设计模式之适配器模式与桥接模式详解和应用

目录1 适配器模式1.1 定义1.2 应用场景1.3 适配器角色1.4 类适配器1.5 对象适配器1.5 接口适配器1.6 实战1.7 源码1.8 适配器与装饰器的对比1.9 适配器模式的优缺点1.10 总结2 桥接模式2.1 原理解析2.2 角色2.3 通用写法2.4 应用场景2.5 业务场景中的运用2.6 源码2.7 桥接模式优…...

Winform控件开发(14)——NotifyIcon(史上最全)

前言: 先看个气泡提示框的效果: 代码如下: 在一个button中注册click事件,当我们点击button1时,就能显示气泡 private void button1_Click(object sender, EventArgs e){notifyIcon1.Visible = true;notifyIcon1...

Verilog 学习第四节(从计数器到可控制线性序列机——LED实验进化六部曲)

从计数器到可控制线性序列机——LED实验进化六部曲一:让LED灯按照亮0.25s,灭0.75s的状态循环亮灭二:让LED灯按照亮0.25s,灭0.5s,亮0.75s,灭1s的状态循环亮灭三:让LED灯按照指定的亮灭模式亮灭&a…...

操作SSH无密登录配置

例如小编有三台服务器需要相互访问,就需要配置三台,这三台分别是hadoop102,hadoop103 , hadoop1041.打开三个服务器,分别生成hadoop102,hadoop103 , hadoop104的公钥和私钥输入命令,然后一直回车,这时候什么…...

Websocket详细介绍

需求背景 在某个资产平台,在不了解需求的情况下,我突然接到了一个任务,让我做某个页面窗口的即时通讯,想到了用websocket技术,我从来没用过,被迫接受了这个任务,我带着浓烈的兴趣,就…...

大数据书单(100本)

大数据书单(100本) 序号 书名 作者 出版社 1 Hadoop权威指南:大数据的存储与分析(第4版)(修订版)(升级版) Tom White 清华大学出版社 2 Hive编程指南 卡普廖洛 (Edward Capriolo) / 万普勒 (Dean Wampler) / 卢森格林 (Jason Rutherglen) / 曹坤 人民邮…...

python实战应用讲解-【语法基础篇】初识Python(附示例代码)

目录 前言 Python基础 基本概念: 为什么使用Python? Python2.x与3.x版本区别...

【2023保研夏令营】网安、CS(西交、华师、科、南等)

文章目录一、基本情况二、投递和入营情况三、考核情况1. 西交软院(面试)2. 川大网安(笔试面试)3. 华东师范数据学院(机试面试)4. 人大信息学院专硕(机试面试,保密)5. 南大…...

Qt COM组件导出源文件

文章目录摘要dumpcpp.exe注册COM组件COM 组件转CPP参考关键字: Qt、 COM、 组件、 源文件、 dumpcpp摘要 由于厂家提供的库不是纯净C库,是基于COM组件开的库,在和厂家友好交流无果下,只能研究下Qt 如何调用,好在Qt 的…...

各数据库数据类型的介绍和匹配

各数据库数据类型的介绍和匹配1. Oracle的数据类型2. Mysql的数据类型3. Sql server的数据类型4. 类型匹配5. Awakening1. Oracle的数据类型 数据类型介绍 VARCHAR2 :可变长度的字符串 最大长度4000 bytes 可做索引的最大长度749; NCHAR :根据字符集而定的固定长度字…...

Rancher 部署 MySQL

文章目录创建 pvc部署 MySQL前置条件:安装 rancher,可参考文章 docker 部署 rancher 创建 pvc MySQL 数据库是需要存储的,所以必须先准备 pvc 创建 pvc 自定义 pvc 名称选择已经新建好的 storageclass,storageclass 的创建可参考…...

Python语言零基础入门教程(二十五)

Python OS 文件/目录方法 Python语言零基础入门教程(二十四) 39、Python os.openpty() 方法 概述 os.openpty() 方法用于打开一个新的伪终端对。返回 pty 和 tty的文件描述符。 语法 openpty()方法语法格式如下: os.openpty()参数 无 返…...

蓝桥杯算法训练合集十五 1.打翻的闹钟2.智斗锅鸡3.文件列表

目录 1.打翻的闹钟 2.智斗锅鸡 3.文件列表 1.打翻的闹钟 问题描述 冯迭伊曼晚上刷吉米多维奇刷的太勤奋了,几乎天天迟到。崔神为了让VonDieEman改掉迟到的坏毛病,给他买了个闹钟。 一天早上,老冯被闹钟吵醒,他随手将闹钟按掉丢…...

CPU扫盲-CPU与指令集

指令集架构就像是特定的CPU的设计图纸,它规定了这个CPU需要支持那些指令、寄存器有那些状态以及输入输出模型。根据指令集结构的设计,在CPU上通过硬件电路进行实现,就得到了支持该指令集的CPU。指令集就像是我们编程语言中的接口,…...

VINS-Mono/Fusion与OpenCV去畸变对比

VINS中没有直接使用opencv的去畸变函数,而是自己编写了迭代函数完成去畸变操作,主要是为了加快去畸变计算速度 本文对二者的结果精度和耗时进行了对比 VINS-Mono/Fusion与OpenCV去畸变对比1 去畸变原理2 代码实现2.1 OpenCV去畸变2.2 VINS去畸变3 二者对…...

jmx prometheus引起的一次cpu飙高

用户接入了jmx agent进行prometheus监控后,在某个时间点出现cpu飙高 排查思路: 1、top,找到java进程ID 2、top -Hp 进程ID,找到java进程下占用高CPU的线程ID 3、jstack 进程ID,找到那个高CPU的线程ID的堆栈。 4、分析堆…...

Android 虚拟 A/B 详解(六) SnapshotManager 之状态数据

本文为洛奇看世界(guyongqiangx)原创,转载请注明出处。 原文链接:https://blog.csdn.net/guyongqiangx/article/details/129094203 Android 虚拟 A/B 分区《AAndroid 虚拟 A/B 分区》系列,更新中,文章列表: Android 虚拟分区详解(一) 参考资料推荐Android 虚拟分区详解(二…...

Python快速入门系列之一:Python对象

Python对象1. 列表(list)2. 元组(tuple)3. 字典(dict)4. 集合(set)5. 字符串(string)6. BIF (Built-in Function)7. 列表、集合以及字…...

【博客626】不同类型的ARP报文作用以及ARP老化机制

不同类型的ARP报文作用以及ARP老化机制 1、ARP协议及报文 2、不同类型的ARP报文作用 3、ARP工作原理 4、ARP老化机制 5、Linux ARP老化机制 ARP状态机: 在上图中,我们看到只有arp缓存项的reachable状态对于外发包是可用的,对于stale状态的…...

nacos discovery和config

微服务和nacos版本都在2.x及之后。1、discovery用于服务注册,将想要注册的服务注册到nacos中,被naocs发现。pom引入的依赖是:yml配置文件中:2、config用于获取nacos配置管理->配置列表下配置文件中的内容pom引入的依赖是&#…...

【算法数据结构体系篇class06】:堆、大根堆、小根堆、优先队列

一、堆结构1)堆结构就是用数组实现的完全二叉树结构2)完全二叉树中如果每棵子树的最大值都在顶部就是大根堆3)完全二叉树中如果每棵子树的最小值都在顶部就是小根堆4)堆结构的heapInsert与heapify操作5)堆结构的增大ad…...

试题 算法提高 最小字符串

资源限制内存限制:256.0MB C/C时间限制:2.0s Java时间限制:6.0s Python时间限制:10.0s问题描述给定一些字符串(只包含小写字母),要求将他们串起来构成一个字典序最小的字符串。输入格式第一行T,表示有T组数据。接下来T…...

已解决ImportError: cannot import name ‘featureextractor‘ from ‘radiomics‘

已解决from radiomics import featureextractor导包,抛出ImportError: cannot import name ‘featureextractor‘ from ‘radiomics‘异常的正确解决方法,亲测有效!!! 文章目录报错问题报错翻译报错原因解决方法联系博…...

做网站的抬头标语怎么/网络营销软件

偶然间在微信公众号奇舞周刊上看到了这篇文章《CSS Painting API》,算是对 conic-gradient的初次见面。 后来有空的时候,百度搜了一下,看了这篇文章《CSS神奇的conic-gradient圆锥渐变》后,对conic-gradient有了深刻的了解。 概述…...

17网站一起做网店普宁轻纺城温馨/win10优化大师好用吗

想必大家都想好好的学习一下CMD中的命令吧,但面对黑黑的屏幕毕竟是计算机高手的专利,如果想自学一下又觉得力不从心,下面就让我为大 家介绍一下CMD中的一些命令及参数。在这里只对以前杂志上没有提到或很少提到的命令进行一下补充&#xff0…...

在线crm厂商/广州推广seo

这篇文章主要介绍了 python 中使用 xlrd、xlwt 操作 excel 表格详解, python 操作 excel 主要用到 xlrd 和 xlwt 这两个库,即 xlrd 是读 excel,xlwt 是写 excel 的库, 需要的朋友可以参考下 python 操作 excel 主要用到 xlrd 和 xlwt 这两个库&#xff0…...

响应式网站怎么写/网站推广要点

// socket已经连接成功 var socketOpen false // socket已经调用关闭function var socketClose false // socket发送的消息队列 var socketMsgQueue [] // 判断心跳变量 var heart // 心跳失败次数 var heartBeatFailCount 0 // 终止心跳 var heartBeatTimeOut null; //…...

网站的下载链接怎么做/网站服务器一年的费用

场景:我们想要在php7扩展中调用用户自定的类中的方法,而且方法有多个参数,找到以下方 法,没有看到可以超过两个参数的方法。所以一直向下查找,发现zend_call_method调用的 zend_call_function,但是并非只能…...

企商网站建设/深圳seo外包

DHT11原理:https://blog.csdn.net/x1131230123/article/details/103665953 MSP430 G2553: MSP430 F5529: 串口端:...