Income taxes promote social justice by helping dissolve social inequality. In a capitalist economy, the people who earn the most money do so at the expense of people below them, who make higher-level jobs possible by doing supportive (and sometimes more basic) work. An income tax ensures that everyone contributes to infrastructure, public welfare, and education in proportion to the benefits they reap from the inequalities of the system.
No, income taxes are not effective at promoting social justice, because social justice means different things to different people. All income taxes can do is take money away from people who have earned it. Taxes will never be redistributed fairly, because we will never all agree on who deserves what and how much.