# Cross Bow.

By [c1pher](https://paragraph.com/@c1pher) · 2025-06-03

---

Smart contracts often revert due to some errors in the EVM , the funds will be reverted and returned to the orignal `msg.sender` ,and remaining gas is also returned in some cases.

We got an intresting attack vector using these cases. Because

![](https://storage.googleapis.com/papyrus_images/74b568683e0e3abaca00ea13ea23584b43d9558567d69abc8f3d238db1f340b1.webp)

of when cross chain transactions occur it losses its atomicity if a call reverts on destination chain the sender chain wouldn’t know . Causing insolvency between chains. Ofcourse There are methods the reslove this .

*   You send tokens from Chain A to Chain B via Axelar
    
*   Axelar **burns your tokens** on Chain A immediately
    
*   Then tries to execute your contract call on Chain B
    
*   **If Chain B fails** → your tokens are gone forever
    

To Resolve this edge case we need emit a message know that in the destination chain that the transaction(tx) was reverted and following-ly , If the emitted message is read by the sender chain \[chain A\] it should revert the transaction.The Destination chain and the sender chain both need to monitor the emits.

---

*Originally published on [c1pher](https://paragraph.com/@c1pher/cross-bow)*
