test(ethereum): Add fixture for an unkown function call
What changed, and why it matters
This commit only adds a new test case for Ethereum transactions. It does not change any production code, so it cannot directly introduce or fix a security vulnerability. The test checks how the device displays a transaction when the called function, token, and blockchain are all unknown. The commit message hints at a user-interface design concern—avoiding unnecessary warning screens so users don't learn to ignore them—but that concern is not implemented in this change.
No security action required. Treat as routine test maintenance. If the underlying UI behavior described in the commit message is of interest, review the existing Ethereum signing flow separately.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff adds one fixture named ‘unknown_call_unknown_token_unknown_chain’ to common/tests/fixtures/ethereum/sign_tx_erc20.json and records expected UI test hashes for several Trezor models in tests/ui_tests/fixtures.json. No firmware, host, or cryptographic code is modified. The fixture exercises an Ethereum transaction with an unknown function selector (0xabababab), an unknown recipient/token contract, and an unknown chain ID (200901).
Changed components
common/tests/fixtures/ethereum/sign_tx_erc20.jsontests/ui_tests/fixtures.jsonInspect captured patch +30 / −0
diff --git a/common/tests/fixtures/ethereum/sign_tx_erc20.json b/common/tests/fixtures/ethereum/sign_tx_erc20.json
index af79ed1d..10c33407 100644
--- a/common/tests/fixtures/ethereum/sign_tx_erc20.json
+++ b/common/tests/fixtures/ethereum/sign_tx_erc20.json
@@ -236,6 +236,28 @@
"sig_s": "42f03f5dd99ed5b2368e85048546468fd9ae962bb0c7b6650bf0a39b9b2bb517"
},
"skip_models": ["t1"]
+ },
+ {
+ "name": "unknown_call_unknown_token_unknown_chain",
+ "parameters": {
+ "comment": "Unknown call - unknown token unknown chain",
+ "data": "abababab000000000000000000000000574bbb36871ba6b78e27f4b4dcfb76ea0091880b0000000000000000000000000000000000000000000000000000000000000000",
+ "path": "m/44'/60'/0'/0/0",
+ "to_address": "0xdddddddddddddddddddddddddddddddddddddddd",
+ "chain_id": 200901,
+ "fake_defs": false,
+ "nonce": "0x0",
+ "gas_price": "0x14",
+ "gas_limit": "0x14",
+ "tx_type": null,
+ "value": "0x0"
+ },
+ "result": {
+ "sig_v": 401838,
+ "sig_r": "ed7a8a9c774301a075dd5c3b4fceb6ee045acc90469c5d1d8979f4018173cf2b",
+ "sig_s": "23b644d3974a4e4d4646fbab3c149f00e1d1b0521f654091c5fc2cf6b1ef59ba"
+ },
+ "skip_models": ["t1"]
}
]
}
diff --git a/tests/ui_tests/fixtures.json b/tests/ui_tests/fixtures.json
index 216e73c2..d4eb3530 100644
--- a/tests/ui_tests/fixtures.json
+++ b/tests/ui_tests/fixtures.json
@@ -5191,6 +5191,7 @@
"T2T1_en_ethereum-test_signtx.py::test_signtx[False-revoke_uniswap_unknown_token]": "a919375f4ae8f51722e9ebefcd42f69e517e2813b78a2a1b2a92bf5b2d0cc325",
"T2T1_en_ethereum-test_signtx.py::test_signtx[False-revoke_unknown_token_known_chain]": "44ff57ee8f189db723496b5b4caf84c2d092ef83a56c0f5ee31c55d2ec328a01",
"T2T1_en_ethereum-test_signtx.py::test_signtx[False-revoke_unknown_token_unknown_chain]": "7f757dded568affb988ec96efb467ec1854ed20827e1f949ed42f5bbe4220f94",
+"T2T1_en_ethereum-test_signtx.py::test_signtx[False-unknown_call_unknown_token_unknown_chain]": "58c7615b3db8a1203453d85239796a71909e7d0c0084a7631a67f777a315f060",
"T2T1_en_ethereum-test_signtx.py::test_signtx[False-wanchain]": "7101120c7b2abd6deeb57cf1bac6cef48f16910b789598d5ea65cd5c77661445",
"T2T1_en_ethereum-test_signtx.py::test_signtx[True-Auxilium]": "e26836f171afa02752741e72af27830598917319892ee0ca7898b3569da0a697",
"T2T1_en_ethereum-test_signtx.py::test_signtx[True-ETC]": "56e38619fce6c9edc8c378147bfde9ee327fb7a09b40daf1f123e02f12c78577",
@@ -5223,6 +5224,7 @@
"T2T1_en_ethereum-test_signtx.py::test_signtx[True-revoke_uniswap_unknown_token]": "891132bd29738b8c0dedc6e8ed9de2f4057b60ba0c603e5e685f85d2fe80ed95",
"T2T1_en_ethereum-test_signtx.py::test_signtx[True-revoke_unknown_token_known_chain]": "2be52dfeb16a99e3536ce0cf59032edb8fa67b1d5fce431f1159ebe4fd862118",
"T2T1_en_ethereum-test_signtx.py::test_signtx[True-revoke_unknown_token_unknown_chain]": "fbc79b6bc9249d73905ba7c11bacae5f19e2f2a2ebdc1fa5f1b28bcdd3cfcdd8",
+"T2T1_en_ethereum-test_signtx.py::test_signtx[True-unknown_call_unknown_token_unknown_chain]": "3d806d4ac8afc9ccc8d83d2cace4898569e109eeaaf25c2a9e6b1c9b56696971",
"T2T1_en_ethereum-test_signtx.py::test_signtx[True-wanchain]": "ceda2760d50ea2e033d385f40cb1038cfdeb9c1732d55945a5ae2a4e559d81c3",
"T2T1_en_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_data_go_back]": "67e7cf32913180b052d368f81fcb9f1374c29014988e8036f12a6689290c43a1",
"T2T1_en_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_data_scroll_down]": "3b0f949dce2e25e3ba020ea1be6f4b7fc561c861e6bc17d771f187c977b1ed21",
@@ -14582,6 +14584,7 @@
"T3B1_en_ethereum-test_signtx.py::test_signtx[False-revoke_uniswap_unknown_token]": "a4dbee1ef1cec7ee6277ef0726cec628fa033a274de6e6a98d59f028d7c0a218",
"T3B1_en_ethereum-test_signtx.py::test_signtx[False-revoke_unknown_token_known_chain]": "1f950dea75efe4b35bce6b1cf174516c40d6b4bdbcac42048b5a87447220488d",
"T3B1_en_ethereum-test_signtx.py::test_signtx[False-revoke_unknown_token_unknown_chain]": "e88cf509cd534f1cdfc754540da719abd27893455b3d74229f60c6a83ac092f8",
+"T3B1_en_ethereum-test_signtx.py::test_signtx[False-unknown_call_unknown_token_unknown_chain]": "396066b2868535306522a40762edddfb99c1b7e0385f230813da58c5e289a726",
"T3B1_en_ethereum-test_signtx.py::test_signtx[False-wanchain]": "9bd81efb530e6828dadef32d60d5f6b327316f9296d04512df12db948ba01406",
"T3B1_en_ethereum-test_signtx.py::test_signtx[True-Auxilium]": "392849366c1253d413c6366254e6d416ecc042c73c8c839f06c73fc78616835e",
"T3B1_en_ethereum-test_signtx.py::test_signtx[True-ETC]": "546a23cc9877caea0933b5195ae7a1ce96d7369041a2c0a952a4ae86d5130fd7",
@@ -14614,6 +14617,7 @@
"T3B1_en_ethereum-test_signtx.py::test_signtx[True-revoke_uniswap_unknown_token]": "51da3ad5c6e24263fcf6ab115ecc2147dfbc7f2709d93b7853703b3cf88b7139",
"T3B1_en_ethereum-test_signtx.py::test_signtx[True-revoke_unknown_token_known_chain]": "00d3cc9278d9bf549fad949057eab55562c3b3e270451a8e6f3b53baf3052fcd",
"T3B1_en_ethereum-test_signtx.py::test_signtx[True-revoke_unknown_token_unknown_chain]": "340889299607890887597b1f3e83b99a0c272586637d2ede242583ed40b58848",
+"T3B1_en_ethereum-test_signtx.py::test_signtx[True-unknown_call_unknown_token_unknown_chain]": "2254226680f0340defd289a53cd57122445f23949ec32356d03e8ec3e2fe1ded",
"T3B1_en_ethereum-test_signtx.py::test_signtx[True-wanchain]": "c13261df09ff0c377e5d813dbc4721be7ab3c4f3cc6296adb4a1487d3a4bc93e",
"T3B1_en_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_data_go_back]": "8e9452f366c136c30fd45395d2c0cb8e4924c086b5b3d56c813e228c7a16d663",
"T3B1_en_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_data_scroll_down]": "43a29fffe97957fcd32dc55777de277f2f27f21b77b5daf5029bbe9969e1c2d3",
@@ -23826,6 +23830,7 @@
"T3T1_en_ethereum-test_signtx.py::test_signtx[False-revoke_uniswap_unknown_token]": "836d8ec82b23fc69356071ed8be1a61e588ea2b4365bf139bbcaca3eacd5d2ee",
"T3T1_en_ethereum-test_signtx.py::test_signtx[False-revoke_unknown_token_known_chain]": "aaa441f41a8e1d12b9b7e2296271d4ab42e00184f0033e974a2618dbf65408e8",
"T3T1_en_ethereum-test_signtx.py::test_signtx[False-revoke_unknown_token_unknown_chain]": "b8312af5c07ee3ee63b7fe24eafcd1d18aa554c8a6d60dcb2e8d0f6630892f5c",
+"T3T1_en_ethereum-test_signtx.py::test_signtx[False-unknown_call_unknown_token_unknown_chain]": "a0178cc99c1543839955155ee71c1d3f7966edbd7504d16d0c837389d2f0c8fc",
"T3T1_en_ethereum-test_signtx.py::test_signtx[False-wanchain]": "139cd73764c31909862768776a054dccd0fac7e780424caab3940638b9f8ff06",
"T3T1_en_ethereum-test_signtx.py::test_signtx[True-Auxilium]": "a9fa51b949fdf9c6bd1500362c1c161c26b83b81c22e605d439c9974b4273689",
"T3T1_en_ethereum-test_signtx.py::test_signtx[True-ETC]": "1d39d9d0141c04744ffdc7c9599edcd89e87619f3b6ef0db4d3ed0da3a538d28",
@@ -23858,6 +23863,7 @@
"T3T1_en_ethereum-test_signtx.py::test_signtx[True-revoke_uniswap_unknown_token]": "d779a15c2e8a7bd35098f88c875484f0e82122509eb8a7fe6e9652e4e67a8221",
"T3T1_en_ethereum-test_signtx.py::test_signtx[True-revoke_unknown_token_known_chain]": "e5e11bb98252098a97532ed0ef8f13eb535890597ee330f83d574dd63052d803",
"T3T1_en_ethereum-test_signtx.py::test_signtx[True-revoke_unknown_token_unknown_chain]": "9125ce23e3fa5aa4a14f1db3fffaffc3d250542f920fec5336182bc04c2a931b",
+"T3T1_en_ethereum-test_signtx.py::test_signtx[True-unknown_call_unknown_token_unknown_chain]": "f4db55076e9f96440c0cb7117534868b0871f1603ee42b8784513eefd916ee09",
"T3T1_en_ethereum-test_signtx.py::test_signtx[True-wanchain]": "70fa935ccb78ce3ed0c455407c48511b8ab2184aca2598ffd0cd170f20a29065",
"T3T1_en_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_data_go_back]": "c0b54baaff68ef5cc724b32ebac926ff17cb2081becdc3588f996daa345d6b2e",
"T3T1_en_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_data_scroll_down]": "036dbe9117119328b9693aefa402d7089f07a78077967dc695a7806b68c96802",
@@ -33458,6 +33464,7 @@
"T3W1_en_ethereum-test_signtx.py::test_signtx[False-revoke_uniswap_unknown_token]": "ac1cd46428b7335262c36cad99db6e1a2c2d542b0cca264985d9855390f15697",
"T3W1_en_ethereum-test_signtx.py::test_signtx[False-revoke_unknown_token_known_chain]": "8eeabce90c3070460ea475df66081459d2c6085986043d9ba5647340821eb537",
"T3W1_en_ethereum-test_signtx.py::test_signtx[False-revoke_unknown_token_unknown_chain]": "bc3a3d3b8a366f8e2888c7ddc10f4ac1af571228631080987642cb5aa9060d06",
+"T3W1_en_ethereum-test_signtx.py::test_signtx[False-unknown_call_unknown_token_unknown_chain]": "bb2515b7e80d4dd1d972388a757c9e62da258d3876dbd2cda100b7f1435a0eed",
"T3W1_en_ethereum-test_signtx.py::test_signtx[False-wanchain]": "1a130354c82919dc7795716e60030cb4c4e8620d52012595e803b0fb5d1253ac",
"T3W1_en_ethereum-test_signtx.py::test_signtx[True-Auxilium]": "0234ebaa7851a3deddd43194e7c288c688df6dd1c0e4464fe712926d4d54c1d4",
"T3W1_en_ethereum-test_signtx.py::test_signtx[True-ETC]": "c01a02675d46abc015a20d979e35d6841f22b36924657d48094e00993aff8331",
@@ -33490,6 +33497,7 @@
"T3W1_en_ethereum-test_signtx.py::test_signtx[True-revoke_uniswap_unknown_token]": "276dac0e78be45f4f34783a73ff2c79c4cabab04839b75fd2ddd1fb54b2de48a",
"T3W1_en_ethereum-test_signtx.py::test_signtx[True-revoke_unknown_token_known_chain]": "d67d46f438e45e66f0a74714c5e37a0d3b54e5c3e9ef829b570c7161d18a8994",
"T3W1_en_ethereum-test_signtx.py::test_signtx[True-revoke_unknown_token_unknown_chain]": "c8eda8cbabfd4e6523549bebd5a306ef690cc7d96c47a4bca96fef6b34d85686",
+"T3W1_en_ethereum-test_signtx.py::test_signtx[True-unknown_call_unknown_token_unknown_chain]": "71069eb112013783270d3f747a0dd2e5033892646f10d64636b596399efa0405",
"T3W1_en_ethereum-test_signtx.py::test_signtx[True-wanchain]": "0006140c028179df0a169f354eb6fb917eb15fea087f3740a225fbefb0d9d741",
"T3W1_en_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_data_go_back]": "d86339009cc4bbc85c710af8842f8adcd2ae0aae757c812a64a7fab3beef7cf5",
"T3W1_en_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_data_scroll_down]": "5279223f81585419b55b5e1e9842c67d85da29921cd957e59200ebd4a63d9b37",
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.