Not showing you the price actually makes it more profitable for the end user, not directly for Abnb. By showing price in this way Abnb attracts you, then the end user scams you for a higher price.
But this is different from the 'legal grey zone' OP was talking about. The Abnb hosts should likely be paying local taxes/fees for operating as a short term rental, in which if they were doing so the final costs to rent an Abnb would be higher in most jurisdictions.
Also, the hosts should be meeting a number of zoning rules (if we’re being honest), meeting building codes for safety, etc, etc.
If they put a sign on the side of the road or in front of their place, they’d get shut down post haste, but because it’s online it’s easier to turn a blind eye and ask forgiveness, not permission.