当前位置: 首页 > news >正文

HTB cap wp

没啥渗透经验,开了个引导模式,HTB这一点是真不错

进kali,才发现kali自带zenmap,简单扫一下

端口21,22,80开放,分别对应服务ftp,ssh,http

将ip输入浏览器,得到一个web页面,点左上角下载安全快照,可以看到一个空的数据包5.pcap

image-20250716191316233

尝试在url地址栏中换几个数字,发现数据包0的Number of Packs与其他三个不一样,疑似信息包

进来看一下能不能找到什么信息,因为ftp是明文传输

直接选择ftp,找到登录的用户名和密码,应该是一个ssh登录

image-20250716191909053

ssh登录上来之后拿到第一个flag

image-20250716192858007

这里有一个cve利用脚本,好奇查一下,另外一个脚本linenum.sh是比较流行的提权辅助工具(用于搜集信息

先看cve,简单说就是一个提权漏洞,https://github.blog/security/vulnerability-research/privilege-escalation-polkit-root-on-linux-with-bug/

image-20250716193742455

可利用版本:

image-20250716194025136

然后就陷入了蛋疼的一幕,执行里面的利用脚本固然可以提权,但是执行脚本需要下载软件包,这一步就需要权限

image-20250716195252637

所以还是得回归正常提权

suid提权: SUID (Set UID)是Linux中的一种特殊权限,其功能为用户运行某个程序时,如果该程序有SUID权限,那么程序运行为进程时,进程的属主不是发起者,而是程序文件所属的属主

寻找有suid权限的命令

发现挺多东西都可以用来提权,https://www.freebuf.com/articles/web/272617.htmlSUID

find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} ;

当然这个靶机里有Linenum,用这个脚本直接找即可

image-20250716201159932

接下来丢给ai看看哪些东西可以提权

高风险 SUID 文件(常见提权目标)

文件路径说明已知漏洞/风险
/usr/bin/sudo超级用户权限管理工具历史漏洞(如 CVE-2021-3156)可导致 root 权限提升
/usr/bin/su切换用户命令若配置不当(如允许非特权用户切换 root)
/usr/bin/passwd修改用户密码通常安全,但若被篡改或存在逻辑漏洞可能被利用
/usr/bin/chsh/ /usr/bin/chfn修改用户 shell 和信息某些版本存在缓冲区溢出漏洞
/usr/bin/newgrp/ /usr/bin/gpasswd管理用户组权限组权限配置错误可能导致提权
/usr/bin/mount/ /usr/bin/umount挂载/卸载文件系统若允许挂载恶意设备(如 /dev/sda1
/usr/bin/pkexecPolicyKit 授权工具CVE-2021-4034(PwnKit)可导致本地提权
/usr/lib/snapd/snap-confineSnap 包管理工具历史漏洞(如 CVE-2021-44731)
/usr/lib/openssh/ssh-keysignSSH 密钥签名工具若配置错误可能被滥用
/usr/lib/dbus-1.0/dbus-daemon-launch-helperD-Bus 服务启动助手权限配置不当可能导致命令注入

发现

[+] Files with POSIX capabilities set:
/usr/bin/python3.8 = cap_setuid,cap_net_bind_service+eip
/usr/bin/ping = cap_net_raw+ep
/usr/bin/traceroute6.iputils = cap_net_raw+ep
/usr/bin/mtr-packet = cap_net_raw+ep
/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper = cap_net_bind_service,cap_net_admin+ep

就是说python可以直接设置用户id完成提权

image-20250716202836972

打完后看了看别人的wp,发现其实可以用这个命令查看能力

getcap -r / 2>/dev/null

命令 getcap -r / 2>/dev/null 在 Linux 系统中用于递归查找文件系统中的文件,并显示其设置的 Linux 能力(Capabilities)。Linux Capabilities 是一种细粒度的权限控制机制,允许将 root 的特权拆分为更小的权限单元,分配给特定的进程或文件,而无需赋予完整的 root 权限。Capabilities 比传统的 SUID(Set UID)更安全,因为它们限制了进程的具体权限。

http://www.dtcms.com/a/282286.html

相关文章:

  • 0 - MIT 6.S081 2020 操作系统 实验环境配置
  • 前端性能与可靠性工程:前端韧性工程 - 优雅降级与离线支持
  • Nginx,MD5和Knife4j
  • 使用TIANAI-CAPTCHA进行行为验证码的生成和缓存的二次校验
  • 【后端】.NET Core API框架搭建(6) --配置使用MongoDB
  • 随机链表的复制数据结构oj题(力口138)
  • 数据结构--准备知识
  • 随机链表的复制数据结构oj题(CM11)
  • SOTI MobiControl vs EasyControl:MDM 解决方案对比 —— 理解差异与价值
  • batchnorm1d,layernorm,revin区别
  • 关于程序=数据结构+算法这句话最近的一些思考
  • 【数据结构】「栈」(顺序栈、共享栈、链栈)
  • iOS 抓包工具选择与配置指南 从零基础到高效调试的完整流程
  • 时序大模型为时序数据库带来的变革与机遇
  • Flutter 记录 使用ModalRoute获取参数
  • flutter app内跳转到其他安卓 app的方法
  • qt udp接收时 丢包
  • 安卓开发使用Android Studio配置flutter环境
  • 《Qt信号与槽机制》详解:从基础到实践
  • Flutter运行Android项目时显示java版本不兼容(Unsupported class file major version 65)的处理
  • 《Qt实战开发》:从计算器到音乐播放器的全栈实现指南
  • 7月16日作业
  • QOpenGLWidget自定义控件— 2D点云显示(支持平移、放缩、绘制网格)
  • 桥下的蓝色风景线
  • 数据库连接池调优以及常见问题
  • SSM框架学习——day3
  • 如何解决WordPress数据库表损坏导致的错误
  • Python 测试全景:单元测试、集成测试与端到端测试实战指南
  • 【收银系统源码】-适用于零售餐饮连锁多门店
  • Docker化Web服务部署全景指南:从基础服务器到企业级应用