mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Bug list entry about the signed immutables bug.
This commit is contained in:
parent
90f4ca1048
commit
ffe6e7dcf4
@ -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",
|
||||||
|
@ -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"
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user