Shares of oil majors Exxon and Chevron helped boost the S&P energy index, which was on track to close higher for the first time in three sessions.
"The rebound in oil prices and lack of bad news on the geopolitical front has led to a bit of a relief rally in equities," said Randy Frederick, vice president of trading and derivatives for Charles Schwab in Austin, Texas.
"At this level, there isn't too big a correlation between oil and equities but since we've seen oil fall quite a bit in a month or so, today's rally in oil is helping the market grind higher."
At 1453 GMT (8:23 pm in India), the Dow Jones Industrial Average was up 89.46 points, or 0.43 per cent, at 20,986.07. The S&P 500 was up 12.54 points, or 0.52 per cent, at 2,403.44 and the Nasdaq Composite was up 30.37 points, or 0.50 per cent, at 6,151.61.
All the 11 major S&P 500 sectors were higher, with the energy and materials index leading the gainers.
Investors seemed to mostly shrug off fears from a successful missile test by North Korea and a cyberattack that disrupted operations at car factories, hospitals, shops and schools.
Shares of cybersecurity firms such as Fireye, Symantec and Palo Alto Networks were all up.
Cisco's 2.5 per cent rise provided the biggest boost to the Nasdaq and S&P.
US stocks slipped on Friday, ending the week lower as tepid economic data weighed on banks and worries deepened over department stores.
Earnings at S&P 500 companies are expected to have grown 14.5 per cent in the first quarter - the best showing since 2011, according to Thomson Reuters.
Tesla was down 2.1 per cent at $318.01 after Morgan Stanley downgraded its rating on the electric-car maker's stock.
Patheon NV soared 32.9 per cent to $34.57 after Thermo Fisher Scientific said it would buy Dutch drug ingredients maker for about $5.2 billion.
Advancing issues outnumbered decliners on the NYSE by 2,338 to 446. On the Nasdaq, 1,939 issues rose and 743 fell.
The S&P 500 index showed 34 new 52-week highs and six new lows, while the Nasdaq recorded 108 new highs and 26 new lows.