Come mostra la risposta di Abarisone, nell'italiano contemporaneo “attrarre” e “attirare” sono sinonimi. Complementarmente a quella risposta voglio segnalare che storicamente “attirare” si è diffuso dopo “attrarre” e che nell'Ottocento era percepito come un francesismo da evitare nel senso di “richiamare l'attenzione”, mentre non era proprio usato nel senso fisico (in cui si usava invece “attrarre” o “trarre”).
Scrive Niccolò Tommaseo nel suo dizionario dei sinonimi (5ª edizione, del 1867):
Tirare, Attirare, Attrarre, Chiamare
Attirare è adoperato da qualche scrittore, non però dal popolo toscano, ch'io sappia; e risica di parere gallicismo, ancorché abbia forme analoghe italiane. Senonché quasi sempre attrarre, trarre, tirare ne fanno le veci, senza ch'esso nulla aggiunga a evidenza, e non certamente a eleganza. D'oggetto che volge a sé il senso o la mente con più o meno soavità, basta attrarre; se con più forza, trarre; se con ancor più, tirare. Ma i due ultimi, secondo i luoghi, denotano più o men vigore, e possono altresì denotare soavità, forza il primo. ...
Se mai volesse adoprarsi attirare, non so s'io sbagli, ma direi che meno si disconvenga all'animo che al senso o alla mente. Chi poi dice: attirare gente o simile, non veggo perché non possa tirare o chiamare secondo che più o meno potente è l'allettamento o l'invito.
Nelle voci del Tommaseo su “attrarre” e “tirare” riferito a calamite e simili, “attirare” non è contemplato.
In varie altre voci sullo stesso insieme di verbi Tommaseo esamina anche la distinzione, collegata a quella della presente domanda, fra “tirare” e “trarre” (accennata anche nel brano riportato), rimproverando alla Crusca il fatto che tratta insieme i due verbi. Per esempio:
... L'affetto gentile trae, la passione tiranna tira. L'eloquenza sincera trae, la retorica vuol tirare, e comincia dallo stiracchiare sé stessa.