红队打靶:Nyx: 1打靶思路详解(vulnhub)

news2024/11/23 7:09:59

目录

写在开头

第一步:主机发现和端口扫描

第二步:ssh私钥登录获取初始立足点

第三步:sudo gcc提权 

番外篇:如何掉进web渗透的陷阱无法自拔

总结与思考

写在开头

  我个人的打靶顺序是根据红队笔记大佬的视频顺序,先自己打靶,复杂的靶机可能先看一遍红笔大佬的视频,然后争取自己打一遍,不过这个靶机确实算是相当简单的了。知识点并不多,建议读者先自己盲打一遍。红队笔记大佬的视频详见:

「红队笔记」靶机精讲:NYX - 用十分钟验证一下渗透测试人员的修养和基本功吧!_哔哩哔哩_bilibili

  我感觉这个靶机如果直奔主题,忽略爆破和扫描的等待时间,两分钟就能搞定。  这个靶机涉及到的知识点主要有:nmap漏洞扫描、ssh私钥登录、sudo提权等。难点可能在于不要遗漏信息、也不要掉进陷阱。本文针对的靶机源于vulnhub,详情见:

Nyx: 1 ~ VulnHub

   下载链接见:

https://download.vulnhub.com/nyx/nyxvm.zip

  靶机的目标也是拿到两个flag。将靶机网络设置为NAT,靶机启动后界面如下(ip都告你了):

第一步:主机发现和端口扫描

  常规思路,不细讲了。 命令如下:

nmap -sn 10.10.10.0/24    //主机发现
nmap -sT --min-rate 10000 10.10.10.154     //TCP全端口扫描
nmap -sT -sC -sV -O -p22,80 10.10.10.154      //用默认脚本扫描服务信息、操作系统版本
nmap --script=vuln -p22,80 10.10.10.154  //漏洞脚本扫描
nmap -sU --top-ports 20 10.10.10.154    //探测UDP最常见的20个端口的开放情况

 我的kali的ip是10.10.10.128,靶机ip是10.10.10.154,发现仅仅开放了22,80端口:

 注意漏洞扫描的信息,这里非常关键。通常我们都不会特别在意nmap的漏洞扫描,仅仅把扫描结果当成一个提示而已:

 注意这里好像看到了一个web的目录:/d41d8cd98f00b204e9800998ecf8427e.php ,说实话还挺奇怪的,这么长的文件名都能暴露出来,如果访问能够发现是个私钥文件:

 那这很可能就是ssh的私钥呀?至于是谁的私钥呢?注意看网页标题名称,mpampis key,那说不定就是mpampis的私钥。 当然,也可以看这个私钥最后的==判断是base64编码的形式,找个工具Base64解码一下也能看到mpampis字符串:

第二步:ssh私钥登录获取初始立足点

 那么我们把这个私钥复制下来,随便起个名字,我这里就命名为isa了:

 注意既然是私钥,必须具有保密性,因此权限必须保证只有所有者能够拥有读(写)权限,否则无法利用私钥登录。因此我们修改这个私钥的权限为600(或400):

然后尝试用登录mpampis的ssh,如下:

ssh mpampis@10.10.10.154 -i isa

此处 -i 指定用私钥登录,指定私钥文件,就是我们刚刚储存私钥的文件isa,如下图,登录成功:

   查看一波信息,确认是靶机:

在当前目录下能拿到第一个flag,也就是user.txt:

第三步:sudo gcc提权 

 提权也是常规思路,先sudo -l查看有哪些特殊可利用的二进制可执行文件:

 gcc是常见的C语言编译工具,至于如何利用这个工具提权,可疑参考开源项目GTFOBins,详情见:GTFOBins

 在这个开源项目中可疑找到gcc的利用方法gcc | GTFOBins  

  运行如下指令即可提权(sh和bash都可以,就是Shell的种类不同,bash交互性更好一些):

sudo gcc -wrapper /bin/bash,-s .

   这里还是做个解释:用-wrapper指定包装器,在包装器中添加启动shell的指令,,-s是bash的参数,指定从标准输入读取命令,保证读取到EOF时不会退出,点.表示编译的内容,此时我们并不关心编译啥,随便给个当前目录.即可。如下图,提权成功:

   flag在/root目录下,是root.txt,不过内容好像是空的,whatever,这个靶机就打完了。有关sudo提权和各种二进制文件利用方法的介绍可疑参阅我的博客,我也介绍过GTFOBins这个开源项目,对渗透的帮助非常大!详见我的博客: 

渗透测试:Linux提权精讲(一)之sudo方法第一期-CSDN博客

   这个靶机就打完了,我感觉够容易的,甚至都没有从web端开始渗透。 那么如果进入web渗透会咋样呢?请看下面的踩坑过程:

番外篇:如何掉进web渗透的陷阱无法自拔

   首先浏览器访问web:

貌似就是个NYX的象形文字,看看源代码:

  源代码有一行注释的提示信息:不要在寻找源码或者robot.txt这样的文件上浪费时间,集中精力干实事。问题是啥是实事呀?你不让我找我就非要找,先看卡robot.txt:

果然,没这文件。web目录爆破一波:

dirb 10.10.10.154

 算我倒霉,啥目录也没看到。如果我不服,就要继续爆破,那就试试吧,指定一些可能有信息的文件后缀,比如txt,zip,sql,php,asp啥的,看看能不能爆出来这些后缀的文件。用dirb的-X参数指定即可:

dirb http://10.10.10.154 -X .php,.zip,.txt,.sql,.asp,.jsp

nice,我以为找到了关键key.php,进来看看:

 这个界面有个输入框,标题是:孩子努努力,你能找到key吗?那么我们应该要寻找key才对,最不济就是爆破。如果你随便瞎蒙输入,点提交submit,不会有任何变化。查看源代码:

  这源代码也没啥提示。不过action的值为空,感觉这里好像没啥值得操作的,可能这个页面就没啥交互性。也可以试试SQL注入,不过我尝试了,好像没啥效果。key去哪里找呀?感觉也没有什么突破口了。如果你不服还可以来一波爆破,我这里就用burpsuite尝试一下:

 输入框里随便输入个aaa,然后抓个包,果然是在post请求体中,那么我们就对这个key字段进行爆破,找个稍微厉害点的字典试试:

   然后start attack,爆破结果按照返回包长度排个序,如下:

 不错哈,我以为找到了啥突破口,不过字段就是admin和root,莫非就这么简单?

 果然不行。只是提示语变了而已,root和admin都是一样的结果。总之我没找到这个页面的突破口。如果死磕这里可能会浪费很多时间。

总结与思考

  这个靶机其实够简单的,关键就在于能否发现nmap默认漏洞扫描的关键私钥信息。可能难点就是如何从web的坑中跳出来(及时放弃,脱坑),最后还是总结一下过程:

第一步:主机发现和端口扫描。关键点是nmap默认漏洞扫描显示了关键私钥信息。

第二步:ssh私钥登录获取初始立足点。私钥登录成功。

第三步:sudo gcc提权。

感觉都没啥总结的。

 总结就是,不要深陷泥潭暴力死磕,至于何时放弃,如何确认这里不是突破口,可能还是需要经验与尝试吧。 靶机不难,总结不易,也有很多自己的思考,希望读者能够点赞关注多多支持!学渗透还是要实操呀。如果读者有什么打靶的问题也欢迎评论区留言指出,我一定知无不言!

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

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

相关文章

最新最全Jmeter+InfluxDB1.8+Grafana可视化性能监控平台搭建(win11本地)

本文前置条件: 1.Jmeter自行部署好,且版本最好要5.4以上; 2.目前InfluxDB最新是V2版本,但与Grafana兼容不太好,且和V1版本的配置连接不一样,本文是InfluxDB1.8版本; 3.介绍的是WIN11本地部署…

《PyTorch深度学习实践》第二讲 线性模型 课后练习

《PyTorch深度学习实践》第二讲 线性模型 课后练习 问题描述代码实现实现效果 问题描述 代码实现 import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D# 假设函数为 y 2x 1 x_data [1.0, 2.0, 3.0] y_data [3.0, 5.0, 7.0]# 定义…

【100天精通Python】Day70:Python可视化_绘制不同类型的雷达图,示例+代码

目录 1. 基本雷达图 2. 多组数据的雷达图 3 交互式雷达地图 4 动态雷达图 0 雷达图概述 雷达图(Radar Chart),也被称为蜘蛛图(Spider Chart)或星型图,是一种用于可视化多维数据的图表类型。雷达图通常由…

目标文件格式

目标文件里有什么 目标文件格式 目标文件就是源代码编译后但未进行链接的中间文件(linux下的.o)。 ELF文件:从广义上看,目标文件与可执行文件的格式其实几乎是一样的,可以将目标文件与可执行文件看成是一种类型的文…

【Vue面试题二十】、你有写过自定义指令吗?自定义指令的应用场景有哪些?

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:你有写过自定义指令吗&a…

相似性搜索:第 1 部分- kNN 和倒置文件索引

图片来源:维亚切斯拉夫叶菲莫夫 一、说明 SImilarity 搜索是一个问题,给定一个查询的目标是在所有数据库文档中找到与其最相似的文档。 在数据科学中,相似性搜索经常出现在NLP领域,搜索引擎或推荐系统中,其中需要检索最…

课题学习(七)----粘滑运动的动态算法

一、 粘滑运动的动态算法 在实际钻井过程中,钻柱会出现扭振和粘滑现象(粘滑运动–B站视频连接),但并不总是呈现均匀旋转。如下图所示,提取一段地下数据时,转盘转速保持在100 r/min,钻头转速在0-…

Namomo Summer Camp 23 Day 1

Namomo Summer Camp 23 Day 1 - Virtual Judge B - Brexiting and Brentering AC代码: #include<bits/stdc.h> #define endl \n //#define int long long using namespace std; string s; void solve() {cin>>s;int x-1;for(int is.size()-1;i>0;i--){if(s[i…

YOLOv5训练自己的数据集(超详细)

YOLOv5训练自己的数据集整个过程主要包括&#xff1a;环境安装----制作数据集----模型训练----模型测试----模型推理 一、准备深度学习环境 本人的笔记本电脑系统是&#xff1a;Windows10 首先进入YOLOv5开源网址 &#xff0c;手动下载zip或是git clone 远程仓库&#xff0c;本…

【C++心愿便利店】No.8---C++之重识类和对象

文章目录 前言一、再谈构造函数二、static成员三、友元四、内部类五、匿名对象六、再次理解类和对象 前言 &#x1f467;个人主页&#xff1a;小沈YO. &#x1f61a;小编介绍&#xff1a;欢迎来到我的乱七八糟小星球&#x1f31d; &#x1f4cb;专栏&#xff1a;C 心愿便利店 &…

6、docker下mysql修改配置文件

1、查看mysql镜像 如果没有mysql镜像则下载 docker images |grep mysql 2、查看mysql容器 docker ps |grep mysql 如果没有显示mysql容器信息&#xff0c;则创建 3、创建容器 docker run -it --name mysql-test -e MYSQL_ROOT_PASSWORDroot -p 3306:3306 -d f9653 4、在…

AB实验--科学增长

涉及的内容&#xff1a; AB实验的前置知识 AB实验的架构 AB实验的创建 AB实验的分析 AB实验的展示 AB实验的监控 AB扩展---指标监控 AB扩展---指标异动 AB扩展---异动分析 AB实验参考书籍 1.什么是AB AB 测试&#xff08;也称为拆分测试&#xff09;是一种统计方法&a…

SiC外延片测试方案

外延材料是实现器件制造的关键&#xff0c;主要技术指标有外延层厚度、晶格布局&#xff0c;材料结构&#xff0c;形貌以及物理性质&#xff0c;表面粗糙度和掺杂浓度等。下面阐述SiC外延表面常见的测试手段&#xff1a; 1. 外延层厚度&#xff08;傅里叶变换红外FT-IR&#xf…

xray安装与bp组合使用-被动扫描

xray安装与bp组合使用-被动扫描 文章目录 xray安装与bp组合使用-被动扫描1 工具官方文档&#xff1a;2 xray官网3 工具使用4 使用指令说明5 此为设置被动扫描6 被动扫描-启动成功7 启动bp7.1 设置bp的上层代理7.2 添加上层代理7777 --》指向的是xray7.3 上层代理设置好后&#…

实施运维03

一.制作启动盘&#xff08;老毛桃&#xff0c;大白菜&#xff0c;傲梅&#xff09; 1.网上下载启动盘工具 https://msdn.itellyou.cn/ 二.重装系统 1.1.插上启动盘 2.电脑关机 3.电脑开机&#xff0c;开机的时候按住F12键 4.选择启动盘进去&#xff0c;选择一个要重装的系统…

关于mybatis中collection出现的问题(ofType 和 javaType )

关于mybatis中collection出现的问题 我在代码中的collection标签中使用了javaType导致映射是失败的&#xff0c;我使用了ofType就可以了&#xff0c;下面介绍这两个标签之间的区别。 ofType 和 javaType 属性都用于指定集合或关联对象的类型&#xff0c;但它们的使用方式和含义…

蓝牙资讯|2024年智能家居新趋势,蓝牙助力智能家居发展

2024年将迎来变革&#xff0c;智能家居趋势不仅会影响我们的生活空间&#xff0c;还会提高我们的生活质量&#xff0c;让我们有更多时间享受属于自己的时光。 2024年智能家居新趋势 趋势一&#xff1a;多功能科技 2024年预示着多功能技术的趋势&#xff0c;创新将成为焦点。混…

主机jvisualvm连接到tomcat服务器查看jvm状态

​使用JMX方式连接到tomcat&#xff0c;连接后能够查看前边的部分内容&#xff0c;但是不能查看Visual GC&#xff0c;显示不受此JVM支持&#xff0c; 对了&#xff0c;要显示Visual GC&#xff0c;首先要安装visualvm工具&#xff0c;具体安装方式就是根据自己的jdk版本下载…

【PWN · 栈迁移】[CISCN 2019东南]PWN2

一道非常典型、适合用作学习栈迁移的题目。 前言 当存在栈溢出但是溢出字符数并不多的情况下&#xff0c;可以尝试在别处构造rop链&#xff0c;通过栈迁移到目标内存区域&#xff0c;执行rop链。这里不讲栈迁移原理&#xff0c;仅是对题目的分析&#xff0c;适合对栈迁移有初步…

Java 操作 Excel:生成数据、设置单元格样式、设置数据有效性(hutool)

必读信息 该篇文章&#xff0c;主要通过 Java 代码对 Excel 文件的常用操作&#xff0c;包括&#xff1a;生成表格、修改单元格样式、设置数据有效性。 该篇文章&#xff0c;在官网文献下增加个人的看法和理解&#xff0c;如文中有出现不符、错误或需要补充的地方&#xff0c…