Corner, Crystal Palace. Conceded by Younes Kaboul.
Fabio Borini struck a stunning late leveller against Crystal Palace to lift Sunderland out of the bottom three.
Dame N'Doye's deflected first-half effort had put the hosts in front.
Connor Wickham scored twice in six second-half minutes against his former club to put Palace on course for a first league win in 11 games.
But substitute Borini's injury-time effort from an almost impossible angle rescued a point for Sam Allardyce's side and moved them up to 17th.
Sunderland showing stomach for the fight
It was a superb strike from the Italian, who looked to have little on when he collected the ball on the far side of the penalty area, but managed to drive his shot across Hennessey and into the far corner for just his third goal of the season.
"World class, absolutely out of the top drawer," said Allardyce.
Sunderland are only out of the drop zone on goal difference, with Norwich and Newcastle also on 24 points and occupying the two places below them.
But, having been faltering in the bottom three since November, this late show will give Allardyce confidence that his men have the stomach for a relegation fight.
The Black Cats still only have won win in seven though, and their frailties were on show when they almost collapsed just after the hour mark, as Wickham snatched two well-taken goals.
Palace's worrying run continues
Wickham now has four goals in two games, following his double in last week's 3-2 loss at West Brom, and is finally starting to show match-winning form for the first time since joining from Sunderland in the summer.
Unfortunately, his side seem to have forgotten how to find a win, and have now been without a victory since beating Stoke on 19 December, dropping from fifth to 14th place in that time.
Palace have been without influential winger Yannick Bolasie from their starting line-up for that entire time, so his return to the first 11 will have been a relief to boss Alan Pardew.
But with nine points between Palace and the bottom three, the London side are in danger of being dragged into the midst of a relegation battle.
Man of the match - Connor Wickham
What they said
Sunderland boss Sam Allardyce: "The last half hour when Palace scored was disappointing - we lost our shape and our ability to pass to each other.
"I felt Fabio's wonderful, wonderful goal should have got us a winner today.
"You won't see anything better than that this season. The Premier League is about goals like that."
Crystal Palace boss Alan Pardew: "It's a game we deserved to win and looked like we had won.
"A substitute who's fresh hits it in the only place it will go in. But it was very important we didn't lose that game. We really needed that second half performance and we were terrific.
"I always felt Connor Wickham would score goals. He's had a funny year because he's had an injury and a suspension but he's fully fit and full of confidence."
Sunderland go to Southampton on Saturday, while Crystal Palace host Liverpool on Sunday, looking to end their miserable winless run.
The stats you need to know
- Crystal Palace are still the only Premier League side yet to win in 2016.
- The Eagles' winless run now stands at 11 games, drawing four and losing seven.
- Connor Wickham has bagged braces in his last two league games, having scored once in his last 18 PL games before that.
- Wickham has now equalled his league tally from both the 2014-15 and 2013-14 seasons of five goals.
- Three of Dame N'Doye's six Premier League goals have been scored against Crystal Palace.
- There were 358 seconds between Wickham's two goals which turned round the game for the Eagles.
- Palace have conceded in every one of their nine Premier League games in 2016 so far (21 goals conceded).
- No side has kept fewer clean sheets at home in the Premier League this season than Sunderland (2).
- 16O'SheaSubstituted forKaboulat 28'minutes
- 3van Aanholt
- 27KirchhoffSubstituted forCattermoleat 64'minutesSubstituted forBoriniat 80'minutes
- 8RodwellBooked at 18mins
- 6DannBooked at 45mins
- 7CabayeSubstituted forLedleyat 73'minutes
- 10BolasieSubstituted forSakoat 77'minutes
- 21WickhamSubstituted forAdebayorat 84'minutes
- Anthony Taylor
- Shots on Target
Match ends, Sunderland 2, Crystal Palace 2.
Second Half ends, Sunderland 2, Crystal Palace 2.
Lamine Koné (Sunderland) wins a free kick in the defensive half.
Foul by Emmanuel Adebayor (Crystal Palace).
Attempt blocked. Bakary Sako (Crystal Palace) left footed shot from the left side of the box is blocked. Assisted by Emmanuel Adebayor.
Goal! Sunderland 2, Crystal Palace 2. Fabio Borini (Sunderland) right footed shot from the right side of the box to the bottom left corner. Assisted by DeAndre Yedlin.
Yann M'Vila (Sunderland) wins a free kick in the defensive half.
Foul by Emmanuel Adebayor (Crystal Palace).
Offside, Crystal Palace. Bakary Sako tries a through ball, but Wilfried Zaha is caught offside.
Dame N'Doye (Sunderland) wins a free kick in the attacking half.
Foul by Bakary Sako (Crystal Palace).
Corner, Crystal Palace. Conceded by Patrick van Aanholt.
Substitution, Crystal Palace. Emmanuel Adebayor replaces Connor Wickham.
Substitution, Sunderland. Fabio Borini replaces Lee Cattermole because of an injury.
Delay over. They are ready to continue.
Delay in match Lee Cattermole (Sunderland) because of an injury.
Lee Cattermole (Sunderland) wins a free kick in the defensive half.
Foul by Jordon Mutch (Crystal Palace).
Substitution, Crystal Palace. Bakary Sako replaces Yannick Bolasie.