This paper develops an efficient iterative method for computing all zeros of solutions of second order ordinary differential equations. A third order Halleys method is first derived by approximating the solution of an associated Riccati differential equation. To improve computational efficiency, a modified Halleys method is proposed by fixing one of the functions in Halleys scheme as a constant. The modified Halleys method also retains third order convergence. Based on the behavior of the coefficients of the second order ODE, nonlocal convergence results are established for both Halleys and modified Halleys methods. Suitable initial guesses for computing all zeros of solutions of second order ODEs in a given interval are also presented for both methods. Furthermore, algorithms based on the modified Halleys method are developed for to compute all nodes and weights for Gauss Legendre and Gauss Hermite quadratures. A comparative numerical study with recent methods demonstrates the efficiency of the proposed algorithms.