Worcester secured only their second Premiership win of the year as they sent fellow strugglers London Irish to a ninth consecutive defeat.
Ben Loader opened the scoring after four minutes before Warriors responded through Francois Hougaard.
Paddy Jackson's penalty had given Irish an 8-7 lead at half-time despite Warriors dominating the opening period.
But the visitors scored five second-half tries to earn a bonus point win and leapfrog Irish in the table.
Both teams came into the game in wretched form, with Irish without a win since February and Worcester having lost 11 of their last 12.
After recovering well from Loader's early score, the visitors enjoyed long spells of possession but struggled to find a way through a determined and organised Exiles defence.
South African scrum-half Hougaard was the man who eventually made the breakthrough when Irish back-rower Albert Tuisue fell for his dummy pass.
But, despite having little possession and going down to 14 men when Isaac Curtis-Harris was yellow carded, the hosts took the lead through Paddy Jackson's penalty on the stroke of half-time.
Warriors began the second half strongly and Hougaard crossed for his second after centre Ollie Lawrence picked a great line through the Irish defence.
The hosts' discipline deserted them again when Terrence Hepetema was sin-binned after 47 minutes and Warriors took full advantage when Melani Nanai raced across the line a minute later.
Impressive Worcester centre Lawrence then added tries either side of Tuisue's close-range score.
Irish earned a try bonus point of their own through Ben Meehan and Tom Homer's late tries, before Worcester wing Tom Howe had the last word.
London Irish director of rugby Declan Kidney:
"We put ourselves into defensive mode quite often - some of that was from good play by Worcester and some of it was us shooting ourselves in the foot.
"We gave them easy penalties, which put them in the position to allow them to have a go at us.
"We just had to concentrate that little bit more, like when we do get those scores early on - we went 5-0 up and then we didn't get out of our half again, gave them several chances to score and they eventually took one of them."
Worcester Warriors director of rugby Alan Solomons:
"I thought the first half we dominated, but we didn't convert. We had a lot of opportunities to score points, which we didn't take.
"We spoke at half-time about being patient, about being persistent and eventually the dam wall would break, which it did in the second half and we came away with the bonus-point win.
"We took our opportunities in the second half and I thought Ollie did really well for his two tries."
London Irish: Homer; Loader, Williams, Hepetema, Stokes; Jackson, Phipps; Elrington, Creevy, Chawatama, Nott, de Chaves, Rogerson (capt), Curtis-Harris, Tuisue
Replacements: Atkins, Goodrick-Clarke, Hoskins, Munga, Donnell, Meehan, Brophy Clews, Hassell-Collins
Worcester: Nanai; Howe, Venter, Beck, Heward; Weir, Hougaard; Waller, Annett, Schonert, Bresler, Kitchener, Hill (capt), Kvesic, du Preez.
Replacements: Cutting, Black, Palframan, Dodd, Lewis, Simpson, Searle, Lawrence.
Yellow cards: Curtis-Harris, Hepetema (Both London Irish)