That happens when you load the mod (either by fs_game or connecting to an ETPro server) and immediately log to a server that is not pure and is running a mod. Unpure servers--as is their nature--allow any mods on the client-side to run w/o failure and ETPro is no exception to the code. It is by no means a bug or exploit. The server has to run pure in order to avoid this feature.
FWIW I have done this (on another server, Hamster House of Fun) and have found that most of ETPRO's client-side features (HUD, log message, speedometer) and bug fixes (spectator kicks) work.
If you want to avoid this, quit your game after having connected to an ETPro server. Or ask the admin of your server to run PURE.
EDIT:
Additionally, Shrub is a server-side only mod, meaning that the client doesn't necessary have to have files for it in order to play on a server that runs it. Put 2-and-2 together and you have your present circumstance.