I'm really not sure why they don't just hire the contractors full time, since they're keeping them for years anyway. The staffing company is taking a cut, and that can't be that much cheaper than just giving regular benefits.
It probably works out via cruel economics to do it this way, somehow.
This is really quite "are we the baddies?"