Skip to content

Commit 2d4912b

Browse files
committed
Updated issue descriptions
1 parent 65b04dc commit 2d4912b

File tree

13 files changed

+30
-35
lines changed

13 files changed

+30
-35
lines changed

README.md

Lines changed: 18 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -29,45 +29,41 @@ codeql database analyze database.db --format=sarif-latest --output=./tob.sarif -
2929

3030
| Name | Description | Severity | Precision |
3131
| --- | ----------- | :----: | :--------: |
32-
|[Custom allocator leak](./cpp/src/docs/crypto/CustomAllocatorLeak.md "crypto, security")|Finds memory leaks from custom allocated memory|warning|medium|
33-
|[Custom allocator use-after-free](./cpp/src/docs/crypto/CustomAllocatorUseAfterFree.md "correctness, crypto")|Finds use-after-frees related to custom allocators like `BN_new`|warning|medium|
34-
|[Invalid key size](./cpp/src/docs/crypto/InvalidKeySize.md "correctness, crypto")|Tests if keys passed to EncryptInit_ex have the same size as the key size of the cipher used|warning|medium|
35-
|[Legacy cryptographic algorithm](./cpp/src/docs/crypto/UseOfLegacyAlgorithm.md "correctness, crypto")|Detects potential instantiations of legacy cryptographic algorithms|warning|medium|
36-
|[Missing engine initialization](./cpp/src/docs/crypto/MissingEngineInit.md "correctness, crypto")|Finds created OpenSSL engines that may not be properly initialized|warning|medium|
37-
|[Missing zeroization of random BIGNUMs](./cpp/src/docs/crypto/MissingZeroization.md "correctness, crypto")|Determines if random bignums are properly zeroized|warning|medium|
38-
|[Proper error handling](./cpp/src/docs/crypto/ErrorHandling.md "correctness, crypto")|Checks if returned error codes are properly checked|warning|high|
39-
|[Random buffer too small](./cpp/src/docs/crypto/RandomBufferTooSmall.md "crypto, security")|Finds buffer overflows in calls to CSPRNGs|warning|high|
40-
|[Static key flow](./cpp/src/docs/crypto/StaticKeyFlow.md "crypto, security")|Finds crypto variables initialized using static keys|error|high|
41-
|[Static password flow](./cpp/src/docs/crypto/StaticPasswordFlow.md "crypto, security")|Finds crypto variables initialized using static passwords|error|high|
42-
|[Weak randomness taint](./cpp/src/docs/crypto/WeakRandomnessTaint.md "crypto, security")|Finds crypto variables initialized using weak randomness|error|high|
43-
32+
|[Crypto variable initialized using static key](./cpp/src/docs/crypto/StaticKeyFlow.md)|Finds crypto variables initialized using static keys|error|high|
33+
|[Crypto variable initialized using static password](./cpp/src/docs/crypto/StaticPasswordFlow.md)|Finds crypto variables initialized using static passwords|error|high|
34+
|[Crypto variable initialized using weak randomness](./cpp/src/docs/crypto/WeakRandomnessTaint.md)|Finds crypto variables initialized using weak randomness|error|high|
35+
|[Invalid key size](./cpp/src/docs/crypto/InvalidKeySize.md)|Tests if keys passed to EVP_EncryptInit and EVP_EncryptInit_ex have the same size as the key size of the cipher used|warning|medium|
36+
|[Memory leak related to custom allocator](./cpp/src/docs/crypto/CustomAllocatorLeak.md)|Finds memory leaks from custom allocated memory|warning|medium|
37+
|[Memory use after free related to custom allocator](./cpp/src/docs/crypto/CustomAllocatorUseAfterFree.md)|Finds use-after-frees related to custom allocators like `BN_new`|warning|medium|
38+
|[Missing OpenSSL engine initialization](./cpp/src/docs/crypto/MissingEngineInit.md)|Finds created OpenSSL engines that may not be properly initialized|warning|medium|
39+
|[Missing error handling](./cpp/src/docs/crypto/ErrorHandling.md)|Checks if returned error codes are properly checked|warning|high|
40+
|[Missing zeroization of potentially sensitive random BIGNUM](./cpp/src/docs/crypto/MissingZeroization.md)|Determines if random bignums are properly zeroized|warning|medium|
41+
|[Random buffer too small](./cpp/src/docs/crypto/RandomBufferTooSmall.md)|Finds buffer overflows in calls to CSPRNGs|warning|high|
42+
|[Use of legacy cryptographic algorithm](./cpp/src/docs/crypto/UseOfLegacyAlgorithm.md)|Detects potential instantiations of legacy cryptographic algorithms|warning|medium|
4443

4544
#### Security
4645

4746
| Name | Description | Severity | Precision |
4847
| --- | ----------- | :----: | :--------: |
49-
|[CStrNFinder](./cpp/src/docs/security/CStrnFinder/CStrnFinder.md "security")|Finds calls to functions that take as input a string and its size as separate arguments (e.g., `strncmp`, `strncat`, ...) and the size argument is wrong|error|low|
50-
|[Missing null terminator](./cpp/src/docs/security/NoNullTerminator/NoNullTerminator.md "security")|This query finds incorrectly initialized strings that are passed to functions expecting null-byte-terminated strings|error|high|
51-
|[Unsafe Implicit Conversions](./cpp/src/docs/security/UnsafeImplicitConversions/UnsafeImplicitConversions.md "experimental, security")|Finds implicit integer casts that may overflow or be truncated, with false positive reduction via Value Range Analysis|warning|low|
52-
48+
|[Invalid string size passed to string manipulation function](./cpp/src/docs/security/CStrnFinder/CStrnFinder.md)|Finds calls to functions that take as input a string and its size as separate arguments (e.g., `strncmp`, `strncat`, ...) and the size argument is wrong|error|low|
49+
|[Missing null terminator](./cpp/src/docs/security/NoNullTerminator/NoNullTerminator.md)|This query finds incorrectly initialized strings that are passed to functions expecting null-byte-terminated strings|error|high|
50+
|[Unsafe implicit integer conversion](./cpp/src/docs/security/UnsafeImplicitConversions/UnsafeImplicitConversions.md)|Finds implicit integer casts that may overflow or be truncated, with false positive reduction via Value Range Analysis|warning|low|
5351

5452
### Go
5553

5654
#### Cryptography
5755

5856
| Name | Description | Severity | Precision |
5957
| --- | ----------- | :----: | :--------: |
60-
|[Message not hashed before signature verification](./go/src/docs/crypto/MsgNotHashedBeforeSigVerfication/MsgNotHashedBeforeSigVerfication.md "security")|Detects calls to (EC)DSA APIs with a message that was not hashed. If the message is longer than the expected hash digest size, it is silently truncated|error|medium|
61-
58+
|[Message not hashed before signature verification](./go/src/docs/crypto/MsgNotHashedBeforeSigVerfication/MsgNotHashedBeforeSigVerfication.md)|Detects calls to (EC)DSA APIs with a message that was not hashed. If the message is longer than the expected hash digest size, it is silently truncated|error|medium|
6259

6360
#### Security
6461

6562
| Name | Description | Severity | Precision |
6663
| --- | ----------- | :----: | :--------: |
67-
|[File permission flaws](./go/src/docs/security/FilePermsFlaws/FilePermsFlaws.md "security")|Finds non-octal (e.g., `755` vs `0o755`) and unsupported (e.g., `04666`) literals used as a filesystem permission parameter (`FileMode`)|error|medium|
68-
|[Missing MinVersion in tls.Config](./go/src/docs/security/MissingMinVersionTLS/MissingMinVersionTLS.md "security")|This rule finds cases when you do not set the `tls.Config.MinVersion` explicitly for servers. By default version 1.0 is used, which is considered insecure. This rule does not mark explicitly set insecure versions|error|medium|
69-
|[Trim functions misuse](./go/src/docs/security/TrimMisuse/TrimMisuse.md "security")|Finds calls to `string.{Trim,TrimLeft,TrimRight}` with the 2nd argument not being a cutset but a continuous substring to be trimmed|error|low|
70-
64+
|[Invalid file permission parameter](./go/src/docs/security/FilePermsFlaws/FilePermsFlaws.md)|Finds non-octal (e.g., `755` vs `0o755`) and unsupported (e.g., `04666`) literals used as a filesystem permission parameter (`FileMode`)|error|medium|
65+
|[Missing MinVersion in tls.Config](./go/src/docs/security/MissingMinVersionTLS/MissingMinVersionTLS.md)|This rule finds cases when you do not set the `tls.Config.MinVersion` explicitly for servers. By default version 1.0 is used, which is considered insecure. This rule does not mark explicitly set insecure versions|error|medium|
66+
|[Trim functions misuse](./go/src/docs/security/TrimMisuse/TrimMisuse.md)|Finds calls to `string.{Trim,TrimLeft,TrimRight}` with the 2nd argument not being a cutset but a continuous substring to be trimmed|error|low|
7167

7268
## Query suites
7369

@@ -79,7 +75,6 @@ The recommended suit - `tob-cpp-code-scanning.qls` - is chosen and executed when
7975
* `tob-<lang>-security.qls` - queries targeting standard security issues
8076
* `tob-<lang>-full.qls` - all queries, including experimental ones
8177

82-
8378
## Development
8479

8580
#### Prepare environment

cpp/src/crypto/CustomAllocatorLeak.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Custom allocator leak
2+
* @name Memory leak related to custom allocator
33
* @id tob/cpp/custom-allocator-leak
44
* @description Finds memory leaks from custom allocated memory
55
* @kind problem

cpp/src/crypto/CustomAllocatorUseAfterFree.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Custom allocator use-after-free
2+
* @name Memory use after free related to custom allocator
33
* @id tob/cpp/custom-allocator-use-after-free
44
* @description Finds use-after-frees related to custom allocators like `BN_new`
55
* @kind problem

cpp/src/crypto/ErrorHandling.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Proper error handling
2+
* @name Missing error handling
33
* @id tob/cpp/error-handling
44
* @description Checks if returned error codes are properly checked
55
* @kind problem

cpp/src/crypto/MissingEngineInit.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Missing engine initialization
2+
* @name Missing OpenSSL engine initialization
33
* @id tob/cpp/missing-engine-init
44
* @description Finds created OpenSSL engines that may not be properly initialized
55
* @kind problem

cpp/src/crypto/MissingZeroization.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Missing zeroization of random BIGNUMs
2+
* @name Missing zeroization of potentially sensitive random BIGNUM
33
* @id tob/cpp/bignum-clearing
44
* @description Determines if random bignums are properly zeroized
55
* @kind problem

cpp/src/crypto/StaticKeyFlow.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Static key flow
2+
* @name Crypto variable initialized using static key
33
* @id tob/cpp/static-key-flow
44
* @description Finds crypto variables initialized using static keys
55
* @kind problem

cpp/src/crypto/StaticPasswordFlow.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Static password flow
2+
* @name Crypto variable initialized using static password
33
* @id tob/cpp/static-password-flow
44
* @description Finds crypto variables initialized using static passwords
55
* @kind problem

cpp/src/crypto/UseOfLegacyAlgorithm.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Legacy cryptographic algorithm
2+
* @name Use of legacy cryptographic algorithm
33
* @id tob/cpp/use-of-legacy-algorithm
44
* @description Detects potential instantiations of legacy cryptographic algorithms
55
* @kind problem

cpp/src/crypto/WeakRandomnessTaint.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* @name Weak randomness taint
2+
* @name Crypto variable initialized using weak randomness
33
* @id tob/cpp/weak-randomness-taint
44
* @description Finds crypto variables initialized using weak randomness
55
* @kind problem

0 commit comments

Comments
 (0)