Bug list entry about the signed immutables bug.

This commit is contained in:
chriseth 2021-09-28 17:36:54 +02:00
parent 90f4ca1048
commit ffe6e7dcf4
2 changed files with 44 additions and 5 deletions

View File

@ -1,4 +1,14 @@
[ [
{
"uid": "SOL-2021-3",
"name": "SignedImmutables",
"summary": "Immutable variables of signed integer type shorter than 256 bits can lead to values with invalid higher order bits if inline assembly is used.",
"description": "When immutable variables of signed integer type shorter than 256 bits are read, their higher order bits were unconditionally set to zero. The correct operation would be to sign-extend the value, i.e. set the higher order bits to one if the sign bit is one. This sign-extension is performed by Solidity just prior to when it matters, i.e. when a value is stored in memory, when it is compared or when a division is performed. Because of that, to our knowledge, the only way to access the value in its unclean state is by reading it through inline assembly.",
"link": "https://blog.soliditylang.org/2021/09/29/signed-immutables-bug/",
"introduced": "0.6.5",
"fixed": "0.8.9",
"severity": "very low"
},
{ {
"uid": "SOL-2021-2", "uid": "SOL-2021-2",
"name": "ABIDecodeTwoDimensionalArrayMemory", "name": "ABIDecodeTwoDimensionalArrayMemory",

View File

@ -1333,6 +1333,7 @@
}, },
"0.6.10": { "0.6.10": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1342,6 +1343,7 @@
}, },
"0.6.11": { "0.6.11": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1351,6 +1353,7 @@
}, },
"0.6.12": { "0.6.12": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1402,6 +1405,7 @@
}, },
"0.6.5": { "0.6.5": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1415,6 +1419,7 @@
}, },
"0.6.6": { "0.6.6": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1427,6 +1432,7 @@
}, },
"0.6.7": { "0.6.7": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1439,6 +1445,7 @@
}, },
"0.6.8": { "0.6.8": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1448,6 +1455,7 @@
}, },
"0.6.9": { "0.6.9": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1458,6 +1466,7 @@
}, },
"0.7.0": { "0.7.0": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1467,6 +1476,7 @@
}, },
"0.7.1": { "0.7.1": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1477,6 +1487,7 @@
}, },
"0.7.2": { "0.7.2": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy", "EmptyByteArrayCopy",
@ -1486,6 +1497,7 @@
}, },
"0.7.3": { "0.7.3": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching", "KeccakCaching",
"EmptyByteArrayCopy" "EmptyByteArrayCopy"
@ -1494,6 +1506,7 @@
}, },
"0.7.4": { "0.7.4": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching" "KeccakCaching"
], ],
@ -1501,6 +1514,7 @@
}, },
"0.7.5": { "0.7.5": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching" "KeccakCaching"
], ],
@ -1508,6 +1522,7 @@
}, },
"0.7.6": { "0.7.6": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching" "KeccakCaching"
], ],
@ -1515,6 +1530,7 @@
}, },
"0.8.0": { "0.8.0": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching" "KeccakCaching"
], ],
@ -1522,6 +1538,7 @@
}, },
"0.8.1": { "0.8.1": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching" "KeccakCaching"
], ],
@ -1529,6 +1546,7 @@
}, },
"0.8.2": { "0.8.2": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory", "ABIDecodeTwoDimensionalArrayMemory",
"KeccakCaching" "KeccakCaching"
], ],
@ -1536,28 +1554,39 @@
}, },
"0.8.3": { "0.8.3": {
"bugs": [ "bugs": [
"SignedImmutables",
"ABIDecodeTwoDimensionalArrayMemory" "ABIDecodeTwoDimensionalArrayMemory"
], ],
"released": "2021-03-23" "released": "2021-03-23"
}, },
"0.8.4": { "0.8.4": {
"bugs": [], "bugs": [
"SignedImmutables"
],
"released": "2021-04-21" "released": "2021-04-21"
}, },
"0.8.5": { "0.8.5": {
"bugs": [], "bugs": [
"SignedImmutables"
],
"released": "2021-06-10" "released": "2021-06-10"
}, },
"0.8.6": { "0.8.6": {
"bugs": [], "bugs": [
"SignedImmutables"
],
"released": "2021-06-22" "released": "2021-06-22"
}, },
"0.8.7": { "0.8.7": {
"bugs": [], "bugs": [
"SignedImmutables"
],
"released": "2021-08-11" "released": "2021-08-11"
}, },
"0.8.8": { "0.8.8": {
"bugs": [], "bugs": [
"SignedImmutables"
],
"released": "2021-09-27" "released": "2021-09-27"
} }
} }