lazarusholic

Everyday is lazarus.dayβ

업비트 해킹 트랜젝션에 대한 고찰

2019-12-01, Benjioh5
https://benjioh5.com/blog/upbit-hacking-tx/
#Upbit #Cryptocurrency

Contents

업비트 해킹 트랜젝션에 대한 고찰
업비트가 털렸다. 뭐 그건 중요한 건 아니고, 아니 뭐 ISMS 인증 받고 철통 보안이라던데가 털렸고, 그것도 핫 월렛 하나가 통째로 날라갔으니 얼척이 없다고 하는게 더 낫겠지만, 어쨌든 정말로 흥분되는 일이긴 하다. 남의 초상집 앞에서 흥분된다고 하기에는 좀 그렇지만, 이 해킹에 있어서 재미있는 흔적들이 너무나도 많이 남았기 때문에 이 이야기를 하다보면 흥분이 될 수 밖에 없기 때문일 것이다.
342,000 이더라는 사상 초유의 이더리움 해킹 사태는 둘째치고, 업비트 해킹 트랜젝션을 분석하면 재미있는 사실들을 많이 알 수 있다. 이는 내부자의 치밀한 소행이거나, 외부에서 각을 재고 있었다가 공격을 들어온 케이스라고 생각이 되는 부분인데, 이를 하나씩 풀어가면서 이야기를 해보도록 하자.
다음은 문제의 그 이더리움 트랜젝션이다. (이더스캔)
$ curl -H "Content-Type: application/json" --data "{\"jsonrpc\":\"2.0\",\"method\":\"eth_getTransactionByHash\",\"params\":[\"0xca4e0aa223e3190ab477efb25617eff3a42af7bdb29cdb7dc9e7935ea88626b4\"],\"id\":67}" http://localhost:8645 | jq { "jsonrpc": "2.0", "result": { "blockHash": "0xd7b9bc7995cefc295fd62fd09ebccf978ed935d0e7ebe5fdf70e1e2ce793bd9f", "blockNumber": "0x8972f7", "chainId": "0x1", "condition": null, "creates": null, "from": "0x5e032243d507c743b061ef021e2ec7fcc6d3ab89", "gas": "0x30d40", "gasPrice": "0xe8d4a51000", "hash": "0xca4e0aa223e3190ab477efb25617eff3a42af7bdb29cdb7dc9e7935ea88626b4", "input": "0x00", "nonce": "0x8f7b4", "publicKey": "0x58ed29a99e06f14a5b7dc33a3d670f3274dfa7ebe891c20e3b8df2aa5d1de12676a3a8ca747d703db52126197a743535640450bb1b89c68a3848129fe5751ac3", "r": "0x551f02b088b2f8d99522c5411ff44926ca73f0bac7413db6a81aebfc32844bce", "raw": "0xf8728308f7b485e8d4a5100083030d4094a09871aeadf4994ca12f5c0b6056bbd1d343c0298a486bdb6e265769c000000025a0551f02b088b2f8d99522c5411ff44926ca73f0bac7413db6a81aebfc32844bcea01aaad47971f4a96c40645072604f7268500e1ed046dac9742482d904471ad176", "s": "0x1aaad47971f4a96c40645072604f7268500e1ed046dac9742482d904471ad176", "standardV": "0x0", "to": …

IoC

1aaad47971f4a96c40645072604f7268500e1ed046dac9742482d904471ad176
551f02b088b2f8d99522c5411ff44926ca73f0bac7413db6a81aebfc32844bce
58ed29a99e06f14a5b7dc33a3d670f3274dfa7ebe891c20e3b8df2aa5d1de12676a3a8ca747d703db52126197a743535640450bb1b89c68a3848129fe5751ac3
5e032243d507c743b061ef021e2ec7fcc6d3ab89
a09871aeadf4994ca12f5c0b6056bbd1d343c029
ca4e0aa223e3190ab477efb25617eff3a42af7bdb29cdb7dc9e7935ea88626b4
d7b9bc7995cefc295fd62fd09ebccf978ed935d0e7ebe5fdf70e1e2ce793bd9f
http://localhost:8645