【问题标题】:Accessing Java applet from another Java applet从另一个 Java 小程序访问 Java 小程序
【发布时间】:2009-12-17 17:44:26
【问题描述】:

Web 应用程序使用 Java 小程序,该小程序将用户提交的密码存储在私有属性中,并在多个公共方法中使用此属性。

我想知道从相同或不同网站加载的另一个 Java 小程序是否有可能调用此小程序的方法或可能访问包含密码的私有属性?

不同的小程序是在相同还是不同的 JVM 中运行?如果它们在同一个 JVM 中运行,一个小程序能否以某种方式获得对另一个正在运行的小程序的引用?

密码存储小程序已签名。我假设想要获取密码的窥探小程序也可以签名。

【问题讨论】:

  • 我重新考虑了我的问题。实际上,如果攻击者设法在受害者的计算机上运行了一个签名的小程序,那么受害者的游戏就结束了。存储或不存储密码都没有关系。攻击者可以安装键盘记录器并获取密码。

标签: java security applet


【解决方案1】:

您可以使用AppletContext 获取从一个小程序到另一个小程序的引用。如果您想调用除Applet 类本身定义的方法之外的任何公共方法,当前的小程序必须知道将结果类型转换成什么。

【讨论】:

  • 谢谢,丹。 AppletContext 允许访问同一页面中的其他小程序。那已经是东西了。有没有办法找到其他页面加载的小程序?
  • 在这种情况下,您必须使用 Javascript。确保调用小程序启用了mayscript,并使用JSObject 调用Javascript 函数,该函数又可以使用DOM 查询其他窗口中的元素。请注意,两个窗口必须来自同一个服务器。
【解决方案2】:

我想你的答案是here。经客户许可,已签名的小程序可以访问沙盒外部,因此理论上您可以访问。

这让我想到——如果我让我的(恶意)小程序签名会怎样?我可以通过炮制可怜的用户点击“是”来获取一些用户数据吗?这个问题留给读者作为练习(好吧,我在这里开玩笑)。

【讨论】:

    猜你喜欢
    • 2016-03-11
    • 2011-08-24
    • 2012-05-16
    • 1970-01-01
    • 2013-02-19
    • 2019-02-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多