One of my favorite parts of MVS!<sigh> dbus and the like are a reimplementation of an old concept. The mainframe had (MVS) and has (zOS) the subsystem interface. Messages are passed to a function which in turn calls all its subsystems (apps that have registered with it) callbacks to notify it of the event/data. Unfortunately for UNIX/Linux, there was no one standard. It's the Wild West here.
This is not wrong in the abstract if by "open ports" you mean "open listening ports", but extend that and any program that opens listening ports is vulnerable.I consider CDE vulnerable as long as they open ports...
If you look at the pkg message for CDE you wind up starting rpcbind, which I think defaults to port 111 on INADDR_ANY, but you can specify a listening address which I guess could be lo, then you can tweak a line in inetd.conf for port 6112, again, probably bind to lo. Not sure what the third one is but I think unless you are specifically running an old school server they are default deny inbound on workstations.Which ports are opened and are they bound to ::1 or 127.0.0.1 or to ::/0.0.0.0?
Not only CDE uses rpcbind but legacy NFS (NFSv3) does as well. You can limit what rpcbind listens to in rc.conf.If you look at the pkg message for CDE you wind up starting rpcbind, which I think defaults to port 111 on INADDR_ANY, but you can specify a listening address which I guess could be lo, then you can tweak a line in inetd.conf for port 6112, again, probably bind to lo. Not sure what the third one is but I think unless you are specifically running an old school server they are default deny inbound on workstations.