public string setWebGoatPhaseSettings_example2() { var analysisArtifacts = KAnalysisArtifacts.load(webGoatAnalysisArtifactsFile); // loads AnalysisArtifact xml file XUtils_AnalysisWorkflow.setAllPhasesAndTasksValue(analysisArtifacts, false); // disables all phases and tasks analysisArtifacts.phase_3.run = true; // enable phase #3 analysisArtifacts.phase_3.task2_filterFindings = true; // enable phase #3's tasks #2 analysisArtifacts.phase_3.task2_sourceSink.Clear(); // remove previous entries // note: the SourceSink object should be created with 3 parameters: // - Source // - Sink // - RemoveMatches : when set will remove the findings that matched the Source/Sink pair from the next queries analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("getParameter", "", false)); // add new mappings analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "org.apache", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("getAttribute", "", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "setAttribute", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "setProperty", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "sql", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "print", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "io", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "Cookie", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "exec", true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "log", true)); //analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("get","set",true)); analysisArtifacts.phase_3.task2_sourceSink.Add(new SourceSink("", "external_caller", true)); KAnalysisArtifacts.save((KAnalysisArtifacts)analysisArtifacts, webGoatAnalysisArtifactsFile); return(webGoatAnalysisArtifactsFile); }
public string createWebgoatArtifactsFile() { File.Delete(webGoatAnalysisArtifactsFile); Assert.That(false == File.Exists(webGoatAnalysisArtifactsFile), "webGoatAnalysisArtifactsFile should not exists at this stage: " + webGoatAnalysisArtifactsFile); string workflowName = "webgoat (from O2 Unit test)"; string assessmentFile = webGoatAssessmentFile; string targetFolder = Path.Combine(demoDataFolder, workflowName); string targetAnalysisArtifactsFile = webGoatAnalysisArtifactsFile; // create it var analysisArtifacts = (KAnalysisArtifacts)XUtils_AnalysisWorkflow.createAnalysisArtifact(workflowName, assessmentFile, targetFolder); // save it KAnalysisArtifacts.save(analysisArtifacts, targetAnalysisArtifactsFile); // make sure it exists Assert.That(File.Exists(webGoatAnalysisArtifactsFile), "webGoatAnalysisArtifactsFile was not created: " + webGoatAnalysisArtifactsFile); return(webGoatAnalysisArtifactsFile); }