The hosts brought in Phil Bardsley at right-back for the suspended Craig Gardner, while the Saints recalled Morgan Schneiderlin in midfield for the injured Guly do Prado.
The early minutes saw neither side able to carve out any clear chances and it took almost half an hour for Rickie Lambert to skim in a shot on target from around 30 yards out.
Soon after, home keeper Simon Mignolet had to make a smart save after a corner into the area dropped to Jay Rodriguez and he sidefooted goalwards from eight yards out.
Shortly before half-time, Lambert failed to get any power into another effort from deep inside the area, as a drab first half ended goalless.
Rodriguez started the second half brightly, twice testing Mignolet with headers, but it was the home side who made the breakthrough midway through the period.
Adam Johnson laid the ball across to the right side of the area and Phil Bardsley's drive took a deflection off Jos Hooiveld to beat Artur Boruc and nestle in the back of the net.
That left Saints needing an equaliser to move to the brink of safety and 15 minutes from time they got the goal they needed, as James Ward-Prowse crossed and fellow sub Jason Puncheon forced the ball home at the second attempt after Mignolet saved his initial header.
Mignolet then made a last save from Rickie Lambert to ensure a share of the spoils which does more for Southampton than it does for Sunderland.