During my studies in Crypto-currencies Reseach Center (CRC), we found that bitcoin network is highly vulnerable because the main nodes are hard-coded without any mechanism for identity checking. Also the topology can be changed logically with their internal (and unknown) policies by resolving desired peers in a partially controlled way.
You can find the codes here:
https://github.com/bitcoin/bitcoin/blob/master/src/chainparams.cpp#L143
There are six lines with dns seeds:
- seed.bitcoin.sipa.be
- dnsseed.bluematt.me
- dnsseed.bitcoin.dashjr.org
- seed.bitcoinstats.com
- seed.bitcoin.jonasschnelli.ch
- seed.btc.petertodd.org
There are lots of discussion in the forums targeting this issue:
Do we have to trust at least one DNS seed: https://bitcoin.stackexchange.com/questions/55313/do-we-have-to-trust-at-least-one-dns-seed
DNS seeds servers hardcoded in bitcoin: https://www.reddit.com/r/Bitcoin/comments/4dicny/dns_seeds_servers_hardcoded_in_bitcoin/
The Internet’s Vulnerable Backbone: http://www.slate.com/articles/technology/future_tense/2014/08/bgp_hijacking_cybercriminals_used_internet_architecture_to_mine_bitcoins.html
Also the DNS addresses can be controlled by government and Internet providers by resolving fake nodes!