# Statement from Safe on Recent Security Incident Involving Blind Signing Source: https://x.com/safe/status/1847253904246878553?s=46&t=2q9OLMlaobNlHLewOXT4uA Kiwi News: https://news.kiwistand.com/stories/Statement-from-Safe-on-Recent-Security-Incident-Involving-Blind-Signing?index=0x67126805e7a1e31b4dbf433bce89fe609a06283197c09704fc3f9785f2ac8ed4d0a61e65 Submitted by tim on 2024-10-18 UTC, 2 upvotes, 6 comments We have carefully reviewed the unfortunate recent security incident mentioned in Radiant Capital’s post-mortem report and wish to clarify some key points regarding how the attack happened. The Safe{Wallet} front-end functioned as expected during the incident. The Safe{Wallet} interface remained uncompromised, and a valid transaction was created using the Transaction Builder. However, one or multiple of the devices outside of the Safe{Wallet} environment involved in the signing flow were compromised (i.e. a laptop or Chrome extension). During the signing process, a hacker intercepted the request on that compromised device and replaced the legitimate transaction data with a malicious payload. The signers signed the malicious transaction first without verifying payload on the signer device, followed by the legitimate one. With the necessary signatures collected outside the Safe{Wallet} interface, the hacker was able to execute the malicious transaction. This event underscores the importance of verifying transaction details during the signing process. Blind signing, where users approve transactions without fully viewing the details, is a widespread challenge, especially when using hardware wallets. Blind signing is a known industry-wide issue. Ideally, signer wallets should display the full message or even decode transaction data to offer additional context. Safe uses the EIP-712 standard to provide transaction data, but hardware wallets often hash or truncate this information due to screen limitations. This truncation forces users to approve transactions without fully understanding what they’re signing, which introduces risks, especially in complex smart contract setups like Safe’s. We recommend using multiple signing devices from different providers (e.g., a combination of Ledger and Trezor) to mitigate the risks of blind signing and improve transaction visibility, as well as connecting these devices through trusted interfaces like Ledger Live. This issue is not limited to transaction signing; it also affects message signing. Smart contracts commonly use EIP-1271 to enable message signing flows, adding another layer of complexity. As an ecosystem, we must enhance the handling of smart contract signatures to provide more transparent signing experiences. Conditional signatures, which we’ve explored with CowSwap, offer more context without sacrificing security. Learn more about these approaches here. We Need to Diversify Both Interface and Signing Devices We encourage all users to verify transactions to ensure that the transaction they’re signing on the device matches what’s displayed on the Safe{Wallet} interface. To enhance security, we emphasize the importance of diversifying both interface devices (laptops, mobiles) and signing devices (Ledger, Trezor, Keystone, MetaMask, mobile apps). This approach is more crucial than time locks, which can be complex and may not solve the issue if the transaction isn’t simulated before execution. Additionally, time locks require a challenge flow where key signers must respond in a timely manner. While time delays (e.g., T+1) can help, device diversification provides a more immediate and flexible layer of security. A call to action for the ecosystem to collaborate and defend against attacks In response to this incident and the broader issue of blind signing, we’re exploring solutions to improve the user experience and help users to enhance their own security processes. One of the steps we’re considering is computing the Ledger hash directly within the Safe interface, allowing users to compare the hash shown on their hardware wallet with what’s presented in the interface. This would provide an additional verification step for users before approving any transaction. However, it’s important to acknowledge that the signing device ultimately controls what the user is signing, and that this approach is not without risks So it is important to protect transactions from the user's intent to on-chain execution. To achieve this, the hardware wallet must display all relevant information to the user, allowing them to give or withhold consent before signing a transaction. Ledger has launched its 'Clear Sign Everything' initiative to address this challenge. Safe is committed to collaborating with Ledger to drive widespread adoption of clear signing, ensuring enhanced protection for users across the ecosystem. The challenges presented by blind signing require a collaborative effort from all parties in the ecosystem. Safe is committed to working with hardware wallet providers like Ledger and Trezor, as well as the broader community, to address these concerns and improve transaction and message signing processes. Our focus remains on delivering a secure, reliable, and transparent platform for all Safe{Wallet} users. We will continue to engage with the community and provide updates on new developments as we work to help mitigate the risks associated with blind signing. ## Comments **misha**: > We recommend using multiple signing devices from different providers (e.g., a combination of Ledger and Trezor) to mitigate the risks of blind signing and improve transaction visibility, as well as connecting these devices through trusted interfaces like Ledger Live. This is good advice. (And I was already doing that, a hunch something like this could be possible.) But still sad news, SAFE is such a great product. Will we ever be safe ;) from the scammers? **tim**: I don‘t even understand why we can‘t just have devices with bigger screens. Is that all which is stopping us from fixing blind signing as an issue? Just have me buy a device with a bigger screen, problem solved? **misha**: Maybe try Ledger Stax https://shop.ledger.com/products/ledger-stax **tim**: Wow really cool! I didn‘t know this existed! **tim**: Actually there also seems to be the cheaper Ledger Flex, but can it also show the entire transaction payload during signing? They don‘t seem to advertise the „Clear Signing“ as an option there **tim**: OK so I looked a bit around and the Ledger Flex is also advertised with "Clear Signing" technology (that page on Desktop: https://shop.ledger.com/products/ledger-flex?srsltid=AfmBOopK9TT4tM29up25okbd9yvknLUdjnWcaCOpbLesADb-H96VdKTn) neat!