Skip to content

csharp ssrf #236

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 8 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

Large diffs are not rendered by default.

69 changes: 69 additions & 0 deletions csharp/ql/lib/ext/Azure.Data.Tables.model.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
extensions:
- addsTo:
pack: codeql/csharp-all
extensible: sinkModel
data:
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.String,System.String)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.String,System.String)", "", "Argument[1]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.String,System.String,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.String,System.String,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,Azure.AzureSasCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential)", "", "Argument[1]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Core.TokenCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Core.TokenCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.String)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.String,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Data.Tables.TableSharedKeyCredential)", "", "Argument[1]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.AzureSasCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Data.Tables.TableSharedKeyCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.AzureSasCredential)", "", "Argument[0]", "azure-ssrf", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "azure-ssrf", "manual"]
- addsTo:
pack: codeql/csharp-all
extensible: summaryModel
data:
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.String,System.String)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.String,System.String)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.String,System.String,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.String,System.String,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,Azure.AzureSasCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,Azure.AzureSasCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,Azure.AzureSasCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[2]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Core.TokenCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Core.TokenCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Core.TokenCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[2]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[this]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[this]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", False, "TableClient", "(System.Uri,System.String,Azure.Data.Tables.TableSharedKeyCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[3]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", True, "GenerateSasUri", "(Azure.Data.Tables.Sas.TableSasPermissions,System.DateTimeOffset)", "", "Argument[this]", "ReturnValue", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", True, "GenerateSasUri", "(Azure.Data.Tables.Sas.TableSasBuilder)", "", "Argument[this]", "ReturnValue", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", True, "get_Name", "()", "", "Argument[this]", "ReturnValue", "taint", "manual"]
- ["Azure.Data.Tables", "TableClient", True, "get_Uri", "()", "", "Argument[this]", "ReturnValue", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.String)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.String,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Data.Tables.TableSharedKeyCredential)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.AzureSasCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.AzureSasCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.AzureSasCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[2]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Data.Tables.TableSharedKeyCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Data.Tables.TableSharedKeyCredential,Azure.Data.Tables.TableClientOptions)", "", "Argument[2]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.AzureSasCredential)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.AzureSasCredential)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Data.Tables.TableClientOptions)", "", "Argument[0]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", False, "TableServiceClient", "(System.Uri,Azure.Data.Tables.TableClientOptions)", "", "Argument[1]", "Argument[this]", "taint", "manual"]
- ["Azure.Data.Tables", "TableServiceClient", True, "GenerateSasUri", "(Azure.Data.Tables.Sas.TableAccountSasPermissions,Azure.Data.Tables.Sas.TableAccountSasResourceTypes,System.DateTimeOffset)", "", "Argument[this]", "ReturnValue", "value", "dfc-generated"]
- ["Azure.Data.Tables", "TableServiceClient", True, "GenerateSasUri", "(Azure.Data.Tables.Sas.TableAccountSasBuilder)", "", "Argument[this]", "ReturnValue", "value", "dfc-generated"]
- ["Azure.Data.Tables", "TableServiceClient", True, "get_Uri", "()", "", "Argument[this]", "ReturnValue", "taint", "manual"]
- ["Azure.Data.Tables", "TableUriBuilder", False, "TableUriBuilder", "(System.Uri)", "", "Argument[0]", "Argument[this].Property[Azure.Data.Tables.TableUriBuilder.AccountName,Azure.Data.Tables.TableUriBuilder.Host,Azure.Data.Tables.TableUriBuilder.Port,Azure.Data.Tables.TableUriBuilder.Query,Azure.Data.Tables.TableUriBuilder.Sas,Azure.Data.Tables.TableUriBuilder.Scheme,Azure.Data.Tables.TableUriBuilder.Tablename]", "taint", "manual"]
- ["Azure.Data.Tables", "TableUriBuilder", False, "ToString", "()", "", "Argument[this].Property[Azure.Data.Tables.TableUriBuilder.AccountName,Azure.Data.Tables.TableUriBuilder.Host,Azure.Data.Tables.TableUriBuilder.Port,Azure.Data.Tables.TableUriBuilder.Query,Azure.Data.Tables.TableUriBuilder.Sas,Azure.Data.Tables.TableUriBuilder.Scheme,Azure.Data.Tables.TableUriBuilder.Tablename]", "ReturnValue", "taint", "manual"]
- ["Azure.Data.Tables", "TableUriBuilder", False, "ToUri", "()", "", "Argument[this].Property[Azure.Data.Tables.TableUriBuilder.AccountName,Azure.Data.Tables.TableUriBuilder.Host,Azure.Data.Tables.TableUriBuilder.Port,Azure.Data.Tables.TableUriBuilder.Query,Azure.Data.Tables.TableUriBuilder.Sas,Azure.Data.Tables.TableUriBuilder.Scheme,Azure.Data.Tables.TableUriBuilder.Tablename]", "ReturnValue", "taint", "manual"]
17 changes: 17 additions & 0 deletions csharp/ql/lib/ext/Azure.Security.KeyVault.Certificates.model.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
extensions:
- addsTo:
pack: codeql/csharp-all
extensible: sinkModel
data:
- ["Azure.Security.KeyVault.Certificates", "CertificateClient", False, "CertificateClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Certificates.CertificateClientOptions)", "", "Argument[0]", "azure-ssrf-key-vault", "manual"]
- ["Azure.Security.KeyVault.Certificates", "CertificateClient", False, "CertificateClient", "(System.Uri,Azure.Core.TokenCredential)", "", "Argument[0]", "azure-ssrf-key-vault", "manual"]
- addsTo:
pack: codeql/csharp-all
extensible: summaryModel
data:
- ["Azure.Security.KeyVault.Certificates", "CertificateClient", False, "CertificateClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Certificates.CertificateClientOptions)", "", "Argument[0]", "Argument[this].Property[Azure.Security.KeyVault.Certificates.CertificateClient.VaultUri]", "value", "manual"]
- ["Azure.Security.KeyVault.Certificates", "CertificateClient", False, "CertificateClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Certificates.CertificateClientOptions)", "", "Argument[1]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Certificates", "CertificateClient", False, "CertificateClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Certificates.CertificateClientOptions)", "", "Argument[2]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Certificates", "CertificateClient", False, "CertificateClient", "(System.Uri,Azure.Core.TokenCredential)", "", "Argument[0]", "Argument[this].Property[Azure.Security.KeyVault.Certificates.CertificateClient.VaultUri]", "value", "manual"]
- ["Azure.Security.KeyVault.Certificates", "CertificateClient", False, "CertificateClient", "(System.Uri,Azure.Core.TokenCredential)", "", "Argument[1]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Certificates", "CertificateClient", True, "get_VaultUri", "()", "", "Argument[this].Property[Azure.Security.KeyVault.Certificates.CertificateClient.VaultUri]", "ReturnValue", "value", "manual"]
17 changes: 17 additions & 0 deletions csharp/ql/lib/ext/Azure.Security.KeyVault.Keys.model.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
extensions:
- addsTo:
pack: codeql/csharp-all
extensible: sinkModel
data:
- ["Azure.Security.KeyVault.Keys", "KeyClient", False, "KeyClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Keys.KeyClientOptions)", "", "Argument[0]", "azure-ssrf-key-vault", "manual"]
- ["Azure.Security.KeyVault.Keys", "KeyClient", False, "KeyClient", "(System.Uri,Azure.Core.TokenCredential)", "", "Argument[0]", "azure-ssrf-key-vault", "manual"]
- addsTo:
pack: codeql/csharp-all
extensible: summaryModel
data:
- ["Azure.Security.KeyVault.Keys", "KeyClient", False, "KeyClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Keys.KeyClientOptions)", "", "Argument[0]", "Argument[this].Property[Azure.Security.KeyVault.Keys.KeyClient.VaultUri]", "value", "manual"]
- ["Azure.Security.KeyVault.Keys", "KeyClient", False, "KeyClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Keys.KeyClientOptions)", "", "Argument[1]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Keys", "KeyClient", False, "KeyClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Keys.KeyClientOptions)", "", "Argument[2]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Keys", "KeyClient", False, "KeyClient", "(System.Uri,Azure.Core.TokenCredential)", "", "Argument[0]", "Argument[this].Property[Azure.Security.KeyVault.Keys.KeyClient.VaultUri]", "value", "manual"]
- ["Azure.Security.KeyVault.Keys", "KeyClient", False, "KeyClient", "(System.Uri,Azure.Core.TokenCredential)", "", "Argument[1]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Keys", "KeyClient", True, "get_VaultUri", "()", "", "Argument[this].Property[Azure.Security.KeyVault.Keys.KeyClient.VaultUri]", "ReturnValue", "value", "manual"]
18 changes: 18 additions & 0 deletions csharp/ql/lib/ext/Azure.Security.KeyVault.Secrets.model.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
extensions:
- addsTo:
pack: codeql/csharp-all
extensible: sinkModel
data:
- ["Azure.Security.KeyVault.Secrets", "SecretClient", False, "SecretClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Secrets.SecretClientOptions)", "", "Argument[0]", "azure-ssrf-key-vault", "manual"]
- ["Azure.Security.KeyVault.Secrets", "SecretClient", False, "SecretClient", "(System.Uri,Azure.Core.TokenCredential)", "", "Argument[0]", "azure-ssrf-key-vault", "manual"]
- addsTo:
pack: codeql/csharp-all
extensible: summaryModel
data:
- ["Azure.Security.KeyVault.Secrets", "SecretClient", False, "SecretClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Secrets.SecretClientOptions)", "", "Argument[0]", "Argument[this].Property[Azure.Security.KeyVault.Secrets.SecretClient.VaultUri]", "value", "manual"]
- ["Azure.Security.KeyVault.Secrets", "SecretClient", False, "SecretClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Secrets.SecretClientOptions)", "", "Argument[1]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Secrets", "SecretClient", False, "SecretClient", "(System.Uri,Azure.Core.TokenCredential,Azure.Security.KeyVault.Secrets.SecretClientOptions)", "", "Argument[2]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Secrets", "SecretClient", False, "SecretClient", "(System.Uri,Azure.Core.TokenCredential)", "", "Argument[0]", "Argument[this].Property[Azure.Security.KeyVault.Secrets.SecretClient.VaultUri]", "value", "manual"]
- ["Azure.Security.KeyVault.Secrets", "SecretClient", False, "SecretClient", "(System.Uri,Azure.Core.TokenCredential", "", "Argument[1]", "Argument[this]", "value", "manual"]
- ["Azure.Security.KeyVault.Secrets", "SecretClient", True, "get_VaultUri", "()", "", "Argument[this].Property[Azure.Security.KeyVault.Secrets.SecretClient.VaultUri]", "ReturnValue", "value", "manual"]
- ["Azure.Security.KeyVault.Secrets", "SecretProperties", False, "get_VaultUri", "()", "", "Argument[this]", "ReturnValue", "taint", "manual"]
Loading