It can be a lot of things. The most common problem is a misalignment somewhere; perhaps the fork isn't straight, and the front wheel is not perpendicular to the road or the bike frame. A misalignment of the rear wheel can also cause the bike to track incorrectly, and force the front wheel out of alignment as it compensates. A bent steering tube or loose headset can also be the culprit.