打靶练习:WestWild 1.1(一个简单但不失优雅的Ubuntu靶机)

news2024/11/28 6:28:01

主机发现和nmap信息收集

//主机发现
sudo nmap -sn 192.168.226.0/24	//扫描整个C段

//端口扫描

	//初步扫描
sudo nmap -sT --min-rate 10000 -p- 192.168.226.131 -oA nmapscan/ports					//用TCP的三次握手,以速率10000扫描1-65535端口,扫描结果以全格式输出到ports文件中
		
	//详细扫描
sudo nmap -sT -sC -O -p22,80,139,445 192.168.28.43 -oA nmapscan/detail			//扫描端口TCP,服务版本和操作系统的版本	
	//UDP扫描
sudo nmap -sU --top-ports 20 192.168.226.131 -oA nmapscan/udp					//UDP扫描,寻找有用信息可以渗透UDP端口,优先级较后

//漏洞脚本扫描
sudo nmap --script=vuln -p22,80,139,445 192.168.226.131 -oA nmapscan/vuln			//漏洞脚本扫描

-sn 告诉nmap在主机进行发现后不进行端口扫描,只打印响应主机嗅探的可用主机,也被称为ping扫描。sn可以与任何发现探测类型结合使用,如-pn等等,以获得更大的灵活性,如果使用了这些探测类型和端口号选项中的任何一个,则会覆盖默认探测

-sC 用默认脚本进行扫描

也就是说,-sC是用kali自带的默认工具进行扫描,-sn不做端口扫描,只嗅探主机的IP,实际上能确保扫描的隐秘性,这在真实的渗透环境中,是很有必要的。

samba渗透

经过详细的端口扫描,发现139和445端口有Samba服务,并且有一些信息,需要重点查看,如果不行,则看80端口,22端口优先级最后。

sudo smbmap -H 192.168.226.131		//用smbmap扫描驱动盘的敏感信息和共享信息,发现只有wave可以访问
sudo smbclient //192.168.226.131/wave		//使用交互式方式访问samba服务器的共享资源wave
smb: > dir		//查看目录

smbmap允许用户枚举整个域中的samba共享驱动器

smbclient列出某个IP地址所提供的共享文件夹

也就是说,smbmap是枚举Linux中所有Samba服务器共享文件的命令,smbclient是列出某Linux的IP的Samba服务器的共享文件夹

查看smb共享目录后发现flag1:

在这里插入图片描述

//下载文件并查看
smb: > prompt				//关闭交互式的提示
smb: \> mget *.txt				//下载Samba服务器中的所有TXT文件
smb: \> q				//退回到kali
(kali㉿kali)-[~]cat *.txt				//查看文本文件信息

查看后发现一段base64编码和aveng用户提示自己丢失密码,并要求wave用户寻找密码的信息:

在这里插入图片描述

echo RmxhZzF7V2VsY29tZV9UMF9USEUtVZNTVC1XMUXELUIWcmRIcn0KdXNIcjp3YXZleApwYXNzd29yZDpkb29yK29wZW4K | base64 -d	//解码base64编码

发现wavex的用户名和密码,139和445端口渗透结束,获得了通往22端口的账号和密码:

在这里插入图片描述

web渗透

打开web页面,只发现了一张图片,点击复制图片连接,下载并查看是否有隐写信息

在这里插入图片描述

//查看图片是否有隐写信息
wget http://192.168.226.131/bkgro.png		//下载web页面的图片
exiftool bkgro.png				//查看图片信息

没有发现隐藏信息:

在这里插入图片描述

#用samba敏感信息获得立足点

//ssh登录用户
sudo ssh wavex@192.168.226.131		//用之前解码base64编码得到的敏感信息登录ssh
wavex@WestWild;-$ whoami			//查看用户
wavex@WestWild:~$ uname	-a				//查看系统信息
wavex@WestWild:~$ ip  a				//查看网卡信息


//根据之前在Samba中得到的信息,aveng用户丢失了自己的密码要求wave用户找回,寻找文件夹,尝试访问
wavex@aWestWild;-$ ls
wavex@WestWild:~$ cd wave/
wavex@WestWild:~/wave$ ls			//发现是之前找到的两个文件,暂时不管
wavex@WestWild:~/wave$ ls -liah		//尝试查看文件信息,发现没有有用信息
wavex@WestWild:~/wave$ cat .viminfo		//尝试查看viminfo信息,Vim用来记录退出时的状态

查看wave用户的vim文件,发现他对passwd有权限:

在这里插入图片描述

wavex@aWestWild;~$ ls -liah /etc/passwd		//查看后发现只有读权限

用户横向移动

wavex@aWestWild;-$ cat /etc/crontab			//查找是否有自动任务,没有发现

//权限枚举
wavex@aWestWild:~$ find / -writable -type f ! -path '/proc/*' 2> /dev/null				//查找可写文件,并排除路径,丢弃错误信息(防止信息洪水)

简单来讲,横向移动是指攻击者成功攻击一台计算机后,由该计算机横向跨越到另一台计算机,获取相关权限,进而窃取敏感信息的活动。

2 > /dev/null 2是一个文件描述符,表示标准错误,>表示重定向, /dev/null是一个linux的特殊文件,相当于垃圾桶

-path ‘/proc/*’ 排除路径

crontab:定时任务的守护进程, 包含用户任务调度:用户定期要执行的工作,比如用户数据备份、定时邮件提醒等。

查看后发现有一个感兴趣路径usr/share:

在这里插入图片描述

wavex@aWestWild:~$ cat /usr/share/av/westsidesecret/ififoregt.sh		//查看感兴趣的路径

查看路径文件发现aveng的明文密码:

在这里插入图片描述

wavex@aWestWild:~$ su aveng					//横向移动
aveng@awestwild:/home/wavex$ whoami
aveng@awestWild: /home/wavex cd ../aveng/
aveng@awestWild:ls -liah			//查看avenge信息

sudo提权到root

avengawestWild;-$ sudo -l		//查看权限(发现avenge有所有权限)
avengawestwild:-$ sudo /bin/bash
rootaWestWild:~#				//提权完成
rootaWestWild;-$ whoami			//查看用户
rootaWestWild:~$ uname	-a				//查看系统信息
rootaWestWild:~$ ip	a				//查看网卡信息
rootaWestWild:~$ cd root	
rootaWestwild:/root# cat FLAG2.txt		//查看flag2

提示打靶完成:

在这里插入图片描述

总结

先进行主机发现,端口扫描,发现22,80,139,445端口。139,445端口是Sam端口,需要重点查看。在Samba渗透中果然发现了flag1和另一个文件,查看后发现敏感信息,通过敏感信息登录SSH(22端口)获得了系统立足点,而对于80端口,不需要继续查看了

在第一个用户中查看信息发现了一个可写文件bash脚本(bash是一种常用的shell,shell是Linux的接口程序,用户通过shell访问Linux),打开后发现该脚本不是自动任务,而是一个防止用户忘记密码的备份,用里面的明文密码登录到另一个用户,用sudo -l发现该用户有所有的权限,然后使用sudo /bin/bash提权成功。

在root文件夹中发现flag2,查看flag2,它提示我们打靶成功

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

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

相关文章

【CSS】CSS 布局——常规流布局

<h1>基础文档流</h1><p>我是一个基本的块级元素。我的相邻块级元素在我的下方另起一行。</p><p>默认情况下&#xff0c;我们会占据父元素 100%的宽度&#xff0c;并且我们的高度与我们的子元素内容一样高。我们的总宽度和高度是我们的内容 内边距…

制造业企业数字化转型之设备数据采集

导 读 ( 文/ 1894 ) 随着信息技术的快速发展和制造业的转型升级&#xff0c;企业数字化转型已成为保持竞争力和实现可持续发展的关键。在数字化转型过程中&#xff0c;设备数据采集作为重要的一环&#xff0c;发挥着关键的作用。设备数据采集通过收集、分析和利用设备所产生的数…

企业中商业智能BI,常见的工具和技术

商业智能&#xff08;Business Intelligence&#xff0c;简称BI&#xff09;数据可视化是通过使用图表、图形和其他可视化工具来呈现和解释商业数据的过程。它旨在帮助组织更好地理解和分析他们的数据&#xff0c;从而做出更明智的商业决策。 常见的商业智能数据可视化工具和技…

Python+Selenium+Unittest 之selenium11--WebDriver操作方法1-常用操作

目录 1、send_keys("输入的内容") &#xff08;输入文字&#xff09; 2、clear() (清除元素内的内容) 3、click()&#xff08;点击元素&#xff09; 4、quit()关闭浏览器 5、refresh()&#xff08;刷新浏览器页面&#xff09; 6、set_window_size()和用 maxim…

计时器setTimeout()函数、setInterval()函数

文章目录 &#x1f412;个人主页&#x1f3c5;JavaEE系列专栏&#x1f4d6;前言&#xff1a;&#x1f3c5;计时器setTimeout&#xff08;函数名&#xff0c;延迟时间&#xff09;结束计时器setTimeout &#x1f3c5;计时器setInterval&#xff08;函数名&#xff0c;延迟时间&a…

栈和队列经典面试题

目录 一、括号匹配问题 20. 有效的括号 - 力扣&#xff08;LeetCode&#xff09; 题目 思路 完整代码 二、用队列实现栈 225. 用队列实现栈 - 力扣&#xff08;LeetCode&#xff09; 题目 思路 代码实现 构造一个栈 用队列实现栈的接口 第一个接口&#xff1a;创建…

yolo-nas对自定义数据集进行训练,测试详解 香烟数据集 处理损坏的图片数据 对网络摄像头,视频,图片预测

yolov5格式的香烟数据集 https://download.csdn.net/download/qq_42864343/88110620?spm1001.2014.3001.5503 创建yolo-nas的运行环境 进入Pycharm的terminal&#xff0c;输入如下命令 conda create -n yolonas python3.8pip install super-gradients使用自定义数据训练Yo…

微信小程序隐私协议模板

在 设置 中找到 用户隐私保护 进行更新&#xff0c;如下图&#xff1a; 具体协议补充可参考如下&#xff1a; 为了分辨用户&#xff0c;开发者将在获取你的明示同意后&#xff0c;收集你的微信昵称、头像 为了显示距离&#xff0c;开发者将在获取你的明示同意后&#xff0c;收…

E7—使用IBERT IP对QSFP+通信链路眼图测试2023-08-11

1.场景 通常在使用光纤接GT收发器进行通信之前&#xff0c;要测试信号质量以确认硬件链路工作正常&#xff0c;xilinx提供了IBERT&#xff08;Integrated Bit Error Ratio Tester&#xff09;进行高速串行通信接口的测试和调试&#xff0c;以KU系列QSFP光纤收发器4路GTY为例介绍…

一文详解Git

一. Git概述 1.1 什么是 Git Git 是一个免费的、开源的分布式版本控制工具&#xff0c; 主要用于管理开发过程中的源代码文件&#xff0c;在软件开发过程中被广泛使用。通过Git仓库来存储和管理这些文件&#xff0c;Git仓库分为二种&#xff1a; 本地仓库&#xff1a;开发人…

命令执行漏洞

1、命令执行漏洞 1.1、简介 Django是用Python开发的一个免费开源的Web结构&#xff0c;几乎包括了Web使用方方面面&#xff0c;能够用于快速建立高性能、文雅的网站&#xff0c;Diango提供了许多网站后台开发常常用到的模块&#xff0c;使开发者可以专注于业务部分。 1.2、漏…

【博学谷学习记录】超强总结,用心分享 | 产品经理之AAARR模型和RFM模型

&#x1f525;前言 本章重点介绍电商行业常用的AARRR模型和RFM模型&#xff0c;并探讨两个模型的实操和适用范围。 &#x1f4c3;目录 &#xff08;一&#xff09;AARRR模型 1.拉新 2.转化 3.留存 4.活跃 5.传播 &#xff08;二&#xff09;RFM模型 1.三个指标的含义 2.RFM模…

【C++】C++异常

文章目录 1. C语言传统处理错误的方式2. C异常的概念3. 异常的使用3.1 异常的抛出和捕获3.2 异常的重新抛出3.3 异常安全3.4 异常规范 4. C标准库的异常体系5. 自定义的异常体系6. 异常的优缺点 1. C语言传统处理错误的方式 C语言传统的错误处理机制有两个&#xff1a; 终止程…

IoTDB 小白“踩坑”心得:入门安装部署篇

小伙伴介绍&#xff01; 大家好&#xff0c;我是 zai&#xff0c;一个基本功不那么扎实、没有太多经验的大学生。我刚刚加入社区&#xff0c;接触 IoTDB&#xff0c;目前仍处于学习阶段&#xff0c;所以我会跟大家分享我学习过程中踩过的一些雷&#xff0c;以及对应的解决办法&…

【百度翻译api】中文自动翻译为英文

欸&#xff0c;最近想做一些nlp的项目&#xff0c;做完了中文的想做做英文的&#xff0c;但是呢&#xff0c;国内爬虫爬取的肯定都是中文 &#xff0c;爬取外网的技术我没有尝试过&#xff0c;没有把握。所以我决定启用翻译&#xff0c;在这期间chatGPT给了我非常多的方法&…

文件上传以及yml的配置

目录 一、存储本地 二、存储到阿里云 三、配置文件信息 一、存储本地 MultipartFile 常见方法&#xff1a; String getOriginalFilename(); //获取原始文件名 void transferTo(File dest); //将接收的文件转存到磁盘文件中 long getSize(); //获取文件的大小&#xff0c;单…

Vue2-绑定样式、条件渲染、列表渲染、列表过滤、模糊查询、Vue监测数据原理

&#x1f954;&#xff1a;想只有苦难&#xff0c;做才有答案 更多Vue知识请点击——Vue.js VUE2-Day3 绑定样式1、class绑定2、绑定style样式 条件渲染1、v-show2、v-if条件渲染案例 列表渲染1、v-for2、key的作用与原理&#xff08;重要&#xff09;面试题&#xff1a;react、…

Android 高手进阶教程(二)之----Android 数据库SQLiteDatabase的使用!!

直接进入主题~ Android 提供了三种数据存储方式&#xff0c;第一种是文件存储;第二种是SharedPreferences 存储;第三种就是数据库SQLiteDatabase 存储。 文件存储我就不用多说了&#xff0c;而SharedPreferences 可以存取简单的数据(int,double,float.etc)&#xff0c;它经常…

数字孪生有哪些应用场景?

数字孪生技术正在越来越普遍。根据艾瑞咨询2023年调查&#xff0c;2022年中国数字孪生市场规模为104亿&#xff0c;同比增长35.0%。随着各行业数字化转型的推进&#xff0c;国内未来数字孪生市场规模将继续增长&#xff0c;预计2023年国内市场规模将达到375亿元。 数字孪生是指…

图片预览插件vue-photo-preview的使用

移动端项目中需要图片预览的功能&#xff0c;但本身使用mintui&#xff0c;vantui中虽然也有&#xff0c;但是为了一个组件安装这个有点儿多余&#xff0c;就选用了vue-photo-preview插件实现&#xff08;其实偷懒也不想自己写&#xff09;。 1、安装 npm i vue-photo-preview…