Trust Wallet WYSINWYS PoC

signRawTransaction data/raw 分离 (Solana)

1. 环境检测

2. Solana signRawTransaction 攻击

pswitch_7: signRawTransaction → ry/u(data, raw)
ry/u.a() = data (UI展示), ry/u.b() = raw (实际签名)
唯一 a() ≠ b() 的请求类, 仅 Solana 链

data(用户看到:SOL 转账)
raw(实际签名:Token Approve)

3. EVM signTypedMessage 测试

pswitch_6: signTypedMessage → ry/v(data, raw, method)
ry/v.a()=b()=getData(), raw 被丢弃
理论安全,验证确认

日志