当前位置: 首页 > 面试题库 >

MALICIOUS_CODE EI_EXPOSE_REP中

包丁雨
2023-03-14
问题内容

我针对我的所有代码运行findbugs,仅解决最重要的问题。我终于解决了头等大事,现在正在研究细节。用户说,我有一个简单的实体:

public class User implements Serializable
{
    protected Date birthDate;

    public Date getBirthDate()
    {return(birthDate);}

    public void setBirthDate(final Date birthDate)
    {this.birthDate = birthDate;}
}

此类尚不完整,所以不要因为缺少serialVersionUID标准和其他标准内容而使我烦恼,我只关心birthDate安全漏洞。

现在,根据findbugs报告,由于我要返回对可变对象的引用,因此存在潜在的安全风险。但是实际上,这到底有多重要?

http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP

我想我仍然没有真正看到这种情况下的问题所在。我应该输入a long并据此设定日期吗?

沃尔特


问题答案:

我认为这里的关键是 如果

如果实例是由不受信任的代码访问的,并且对可变对象的未经检查的更改会损害安全性或其他重要属性,那么您将需要做一些不同的事情。

换句话说, 如果 您想要一个不可变的对象(即您没有setBirthdate()方法),则您的代码是不正确的,因为有人可以编写:

Date date = user.getBirthDate();
date.setMonth(1);  // mutated!

因此,您可能需要以下内容:

public Date getBirthDate()
{return new Date(birthDate.getTime());}  // essentially a clone


 类似资料:
  • 问题内容: 用最简单的方法,在java中如何创建一个文件并写入内容? 问题答案: 创建一个文本文件: 创建一个二进制文件: Java 7+用户可以使用Files该类来写入文件: 创建一个文本文件: 创建一个二进制文件:

  • 问题内容: 我对事实背后的想法有一个疑问,那就是只有这个属性。为什么在接口中未指定属性?您现在可能会说这是由于向后兼容性,但是我更愿意破坏兼容性,让实现该接口的用户还为prependId事情实现方法。 就组件中的prependId而言,我的主要问题是,它会中断, 我希望如果我使用,行为会发生变化,不仅与渲染有关,而且还与想要在组件树中搜索组件有关。 这里有个简单的例子: 现在,当我想获取panel

  • 问题内容: 我有一个很长的页面,可在用户滚动浏览时动态加载图像。 但是,如果用户快速滚动离开页面的某个部分,我不希望图像继续加载到页面的该部分视图之外。 除了图像加载外,页面上还同时发生了许多其他请求,因此在scroll事件上触发钝化window.stop()是不可接受的。 我尝试删除并清除不再可见的图像的img src属性,但是,由于请求已经启动,因此图像会继续加载。 请记住,当用户短暂滚动经过

  • 问题内容: 几天前,我发布了一个有关如何在我正在开发的自定义Wordpress模板中滚动到“单个帖子 ”的问题。我需要的是在单击特定链接时将单个帖子加载到定义的DIV中,然后向下滚动到包含新加载内容的DIV。考虑到Wordpress或任何其他CMS的动态内容性质,该链接的URL不能是绝对的。 不幸的是,那时没有任何具体的答案,所以我决定稍作观察。由于主要问题是动态加载内容,因此我决定放大如何在Wo

  • 本文向大家介绍列举一个你觉得互联网中存在价格歧视的产品,并从开发者与用户的角度来分析这种歧视是否合理。相关面试题,主要包含被问及列举一个你觉得互联网中存在价格歧视的产品,并从开发者与用户的角度来分析这种歧视是否合理。时的应答技巧和注意事项,需要的朋友参考一下 举例:携程会就同一产品对不同画像的用户提供不同面额的优惠券,从而导致不同用户购买同一产品所支付的实际价格有差异。 开发者角度:合理。不同画像

  • 本文向大家介绍描述您在使用淘宝的过程中,五个用户体验痛点。请指出痛点并详细描述你的理由。相关面试题,主要包含被问及描述您在使用淘宝的过程中,五个用户体验痛点。请指出痛点并详细描述你的理由。时的应答技巧和注意事项,需要的朋友参考一下 1.消息页面框架不够清晰 消息过度冗余,没有明确分类,反而容易错过重要消息:如与卖家的来往消息。 2.缺少分享购物车功能 希望能够一次分享多个产品 3.个性化推荐需要加

  • 本文向大家介绍1、时下最火的共享单车概念已经开始进入到洗盘期间,目前最大的两家市场引导者,在后续的发展中,你觉得还会遇见那些挑战?2、如果公司现在还要入局共享单车这个市场,你认为从那些地方进行突围更有机会?相关面试题,主要包含被问及1、时下最火的共享单车概念已经开始进入到洗盘期间,目前最大的两家市场引导者,在后续的发展中,你觉得还会遇见那些挑战?2、如果公司现在还要入局共享单车这个市场,你认为从那

  • 本文向大家介绍1、你经常用的地图APP是什么?2、分析一下现有地图app的五个优化方向。3、你理想中的地图是什么样的?相关面试题,主要包含被问及1、你经常用的地图APP是什么?2、分析一下现有地图app的五个优化方向。3、你理想中的地图是什么样的?时的应答技巧和注意事项,需要的朋友参考一下 1、你经常用的地图APP是什么?  2、分析一下现有地图app的五个优化方向。  3、你理想中的地图是什么样