Unfortunately, there are some people who are so keen to be a programmer that they will jump in without taking due care. As for bosses, you can push back. If you work with lemmings, then it might be time to find a job where your co-workers are not lemmings and the bosses are not PHBs.
You can't push back once you've accepted a contract that includes that language, the only place to push back is before accepting it. I'm of the opinion that just about everyone is a lemming in one shape or form -- I no longer work for a small/midsize/large corporation with these sorts of rules, but I found that while I did, not many people gave it much thought, but a very small minority gave it A LOT of thought. It's anecdotal, but the minority I've witnessed that actually cares to think about this is too small.
IMO it's just that us (tech workers/software engineers/whatever) are so dumb that when companies started putting these kinds of clauses, we didn't act for raises or unionize, we just took it as part of the job, and that became the status quo.
Do the 70K-200K salaries (which is the vast majority of where I see most software developers) that software developers make have round-the-clock (on certain days) maintenance priced in? I don't think so. I think companies are just running away with that additional value because there's no way for a single worker to effectively push back. If you decide to not work outside of working hours (which is absolutely reasonable), all the other lemmings on your team/in your company would probably resent you for increasing their workload (rather than realizing maybe it shouldn't be theirs at all, or that they should be getting paid more to do it), and tbh you probalby wouldn't have gotten hired in the first place.