Skip to content

Commit c88355e

Browse files
committed
C#: Introduce Csv validation for kind.
1 parent fdb3cd0 commit c88355e

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

csharp/ql/lib/semmle/code/csharp/dataflow/ExternalFlow.qll

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -348,6 +348,24 @@ module CsvValidation {
348348
msg = "Invalid boolean \"" + b + "\" in " + pred + " model."
349349
)
350350
)
351+
or
352+
exists(string row, string kind | summaryModel(row) |
353+
kind = row.splitAt(";", 8) and
354+
not kind = ["taint", "value"] and
355+
msg = "Invalid kind \"" + kind + "\" in summary model."
356+
)
357+
or
358+
exists(string row, string kind | sinkModel(row) |
359+
kind = row.splitAt(";", 7) and
360+
not kind = ["code", "sql", "xss", "remote", "html"] and
361+
msg = "Invalid kind \"" + kind + "\" in sink model."
362+
)
363+
or
364+
exists(string row, string kind | sourceModel(row) |
365+
kind = row.splitAt(";", 7) and
366+
not kind = "local" and
367+
msg = "Invalid kind \"" + kind + "\" in sink model."
368+
)
351369
}
352370
}
353371

0 commit comments

Comments
 (0)