Whatever you think of those companies in a wider sense, it's totally inaccurate to suggest that Microsoft, Google or Amazon haven't given anything back to open source.
Hyperbole aside, they certainly haven't given as much as they've gotten, though.
E.g., remember when Heartbleed hit, and the world learned that OpenSSL was maintained by one person getting only $2000/year for it? Fixing Heartbleed was estimated to cost half a billion dollars world-wide.