Just answer this question:in a world with no poor countries, would outsourcing be possible? If the answer is no, then outsourcing is based on exploiting poverty and no, it's not ethical.
Giving a poor person a job is not “exploiting poverty”, it’s alleviating poverty.
Giving a poor person an underpaid job is not helping them. Is making them "an offer they can't refuse". You want to alleviate poverty? Pay for their education, healthcare, give them a house. They'll pull themselves out of poverty without need for your exploitative job offer.
So the north Korea model? Free housing, education and Healthcare. Let's see how this will work out with the pulling out of poverty.