Thankfully, I didn't have to steal, prostitute myself (not the working in an office or corporate environment thing) or beg on the streets in my life, but I've seen a lot of people who have to do these because food comes first and ethics would not be such a primary concern.
It is NEVER unethical to feed yourself if you're hungry. Society itself becomes unethical by allowing people to starve when food is plentiful. Food and water is a basic human right. Anyone who calls someone dirty or immoral because they have to steal/beg/prostitute to get food have never truly understood what it was like to starve and have no empathy.
You are right, people who judge don't know what it was like to starve. People have a lot - excess food, excess land, excess stuff that they haven't left anything for others anymore. That I believe is unethical.