Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit eb99052

Browse files
committed
C#: Add precision tags to UnsafeDeserialization[UntrustedInput].ql
1 parent b0cf7cb commit eb99052

8 files changed

Lines changed: 26 additions & 90 deletions

File tree

csharp/ql/src/Security Features/CWE-502/UnsafeDeserialization.ql

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,11 @@
55
* @kind problem
66
* @id cs/unsafe-deserialization
77
* @problem.severity warning
8+
* @precision low
89
* @tags security
910
* external/cwe/cwe-502
1011
*/
1112

12-
/*
13-
* consider: @precision low
14-
*/
15-
1613
import csharp
1714
import semmle.code.csharp.security.dataflow.UnsafeDeserialization::UnsafeDeserialization
1815

csharp/ql/src/Security Features/CWE-502/UnsafeDeserializationUntrustedInput.ql

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,11 @@
55
* @kind path-problem
66
* @id cs/unsafe-deserialization-untrusted-input
77
* @problem.severity error
8+
* @precision high
89
* @tags security
910
* external/cwe/cwe-502
1011
*/
1112

12-
/*
13-
* consider: @precision high
14-
*/
15-
1613
import csharp
1714
import semmle.code.csharp.security.dataflow.UnsafeDeserialization::UnsafeDeserialization
1815
import DataFlow::PathGraph

csharp/ql/src/semmle/code/csharp/security/dataflow/UnsafeDeserialization.qll

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import csharp
77

88
module UnsafeDeserialization {
9-
private import semmle.code.csharp.dataflow.flowsources.Remote
109
private import semmle.code.csharp.dataflow.flowsources.Remote
1110
private import semmle.code.csharp.serialization.Deserializers
1211

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
// semmle-extractor-options: /r:System.Runtime.Extensions.dll /r:System.IO.FileSystem.dll
1+
// semmle-extractor-options: /r:System.Runtime.Extensions.dll /r:System.IO.FileSystem.dll /r:System.Collections.Specialized.dll ${testdir}/../../../../resources/stubs/System.Web.cs

csharp/ql/test/query-tests/Security Features/CWE-502/UnsafeDeserialization/SystemWebStub.cs

Lines changed: 0 additions & 34 deletions
This file was deleted.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
// semmle-extractor-options: /r:System.Runtime.Extensions.dll /r:System.IO.FileSystem.dll
1+
// semmle-extractor-options: /r:System.Runtime.Extensions.dll /r:System.IO.FileSystem.dll /r:System.Collections.Specialized.dll ${testdir}/../../../../resources/stubs/System.Web.cs

csharp/ql/test/query-tests/Security Features/CWE-502/UnsafeDeserializationUntrustedInput/SystemWebStub.cs

Lines changed: 0 additions & 45 deletions
This file was deleted.

csharp/ql/test/resources/stubs/System.Web.cs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -346,3 +346,25 @@ public static class AntiForgery
346346
public static void Validate() { }
347347
}
348348
}
349+
350+
namespace System.Web.Script.Serialization
351+
{
352+
// Generated from `System.Web.Script.Serialization.JavaScriptSerializer` in `System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35`
353+
public class JavaScriptSerializer
354+
{
355+
public JavaScriptSerializer() => throw null;
356+
public JavaScriptSerializer(System.Web.Script.Serialization.JavaScriptTypeResolver resolver) => throw null;
357+
public object DeserializeObject(string input) => throw null;
358+
}
359+
360+
// Generated from `System.Web.Script.Serialization.JavaScriptTypeResolver` in `System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35`
361+
abstract public class JavaScriptTypeResolver
362+
{
363+
}
364+
365+
// Generated from `System.Web.Script.Serialization.SimpleTypeResolver` in `System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35`
366+
public class SimpleTypeResolver : System.Web.Script.Serialization.JavaScriptTypeResolver
367+
{
368+
public SimpleTypeResolver() => throw null;
369+
}
370+
}

0 commit comments

Comments
 (0)