Porto said on their website that the 35-year-old had signed until the end of the season.
Brazil-born Liedson, a lightweight but deadly striker who played for Portugal in South Africa's 2010 World Cup after being granted Portuguese citizenship, returns to a league he knows well.
He played more than 300 matches for Sporting and scored more than 170 goals in all competitions before a move to Brazil two years ago. Despite his history with Sporting, Liedson said he had been eyeing a move to Porto for some time.
"The opportunity came now but, although it only came through now, it was actually a wish that had been there for a few years," Liedson said.
Porto are joint-leaders of the Portuguese Premier League with Benfica and will play Malaga in the last 16 of the Champions League in February.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.