Massive MIMO systems, where base stations are equipped with hundreds of antennas, are an attractive way to handle the rapid growth of data traffic. As the number of users increases, the initial access and handover in contemporary networks will be flooded by user collisions. In this work, we propose a random access procedure that resolves collisions and also performs timing, channel, and power estimation by simply utilizing the large number of antennas envisioned in massive MIMO systems and the inherent timing misalignments of uplink signals during network access and handover. Numerical results are used to validate the performance of the proposed solution under different settings. It turns out that the proposed solution can detect the collisions with a probability higher than 90%, while providing reliable timing and channel estimates at the same time. Moreover, numerical results demonstrate that it is robust to overloaded situations.