<dd id="sga4y"><optgroup id="sga4y"></optgroup></dd>
<nav id="sga4y"><code id="sga4y"></code></nav>
  • <optgroup id="sga4y"></optgroup>

    Unsafe Mobile Code: Unsafe Public Field

    ABSTRACT

    該程序違反了移動代碼的安全編碼原則,它聲明了成員變量 public,而不是 final

    EXPLANATION

    在 Applet 及其所使用的類中,所有 public 的成員變量都應聲明 final,以防止攻擊者未經授權,操縱或獲取對 Applet 內部狀態的訪問權。

    例 1:以下 Java Applet 代碼錯誤地聲明了成員變量 public,而不是 final


    public final class urlTool extends Applet {
    public URL url;
    ...
    }


    移動代碼,在本例中也就是 Java Applet,通過網絡進行傳遞并在遠程機器上運行。因為移動代碼的編寫者很難控制其所編寫代碼的運行環境,所以在安全上提出特別的要求理所當然。一個最大的環境威脅在于,移動代碼可以伴隨其他潛在的惡意移動代碼一起運行。因為所有的主流 web 瀏覽器會在同一 JVM 中執行來自多個來源的代碼,所以,許多移動代碼的安全指導原則都很關注可以訪問到運行著您程序的同一虛擬機的攻擊者,避免他們操縱您的對象的狀態和行為。

    REFERENCES

    [1] Standards Mapping - Common Weakness Enumeration - (CWE) CWE ID 493

    [2] G. McGraw Securing Java.Chapter 7:Java Security Guidelines


    Copyright 2013 Fortify Software - All rights reserved.
    (Generated from version 2013.1.1.0008 of the Fortify Secure Coding Rulepacks)
    desc.structural.java.unsafe_mobile_code_unsafe_public_field

    97av