<pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
    <pre id="vvttv"></pre>

      <p id="vvttv"></p>

          <p id="vvttv"></p>

                <p id="vvttv"></p>

                <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                  <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                    <p id="vvttv"></p>

                    Hadoop Job Manipulation

                    ABSTRACT

                    向 Hadoop 群集中提交的 Job 在有害環境中可能被篡改。

                    EXPLANATION

                    Hadoop job manipulation 錯誤在以下情況中出現:

                    - 數據從一個不可信賴的數據源進入程序。

                    - 數據用來指定控制客戶端作業的 JobConf 值。

                    Hadoop 群集是一種有害環境。當用來防止對群集設備中 HDFS 未經授權訪問的安全配置設置不當時,攻擊可能會乘機進行控制。從而造成 Hadoop 群集提供的任何數據被篡改的可能性。

                    例 1:下列代碼是典型客戶端應用程序中提交的 Job,其輸入來自 Hadoop 群集中主計算機的命令行:


                    public void run(String args[]) throws IOException {

                    String inputDir = args[0];
                    String outputDir = args[1];

                    // Untrusted command line argument
                    int numOfReducers = Integer.parseInt(args[3]);
                    Class mapper = getClassByName(args[4]);
                    Class reducer = getClassByName(args[5]);

                    Configuration defaults = new Configuration();
                    JobConf job = new JobConf(defaults, OptimizedDataJoinJob.class);
                    job.setNumMapTasks(1);
                    // An attacker may set random values that exceed the range of acceptable number of reducers
                    job.setNumReduceTasks(numOfReducers);

                    return job;
                    }


                    例 2:下列代碼表示攻擊者控制的運行 job 通過命令行參數中止的情形:


                    public static void main(String[] args) throws Exception {

                    JobID id = JobID.forName(args[0]);
                    JobConf conf = new JobConf(WordCount.class);
                    // configure this JobConf instance
                    ...
                    JobClient.runJob(conf);
                    RunningJob job = JobClient.getJob(id);
                    job.killJob();

                    }


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

                      <pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
                      <pre id="vvttv"></pre>

                        <p id="vvttv"></p>

                            <p id="vvttv"></p>

                                  <p id="vvttv"></p>

                                  <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                                    <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                                      <p id="vvttv"></p>

                                      这里只有精品视频