diff --git a/xep-0045.xml b/xep-0045.xml index b4e0a962..2d72acb5 100644 --- a/xep-0045.xml +++ b/xep-0045.xml @@ -53,11 +53,7 @@ 1.24pre1 in progress, last updated 2008-06-10 psa - - - +

Added more examples of the reason element; removed mention of nick inclusion with regard to ban lists; added denial of service considerations.

1.23 @@ -426,10 +422,10 @@

This document explicitly does not address the following:

@@ -2747,7 +2743,7 @@

If an admin or owner attempts to ban himself, the service MUST deny the request and return a &conflict; error to the sender. (Note: This is different from the recommended service behavior on kicking oneself, which a service may allow.)

-

A room admin may want to modify the ban list. Note: The ban list is always based on a user's bare JID, although a nick (perhaps the last room nickname associated with that JID) MAY be included for convenience. To modify the list of banned JIDs, the admin first requests the ban list by querying the room for all users with an affiliation of 'outcast'.

+

A room admin may want to modify the ban list. Note: The ban list is always based on a user's bare JID. To modify the list of banned JIDs, the admin first requests the ban list by querying the room for all users with an affiliation of 'outcast'.

<domain/resource> (only that resource matches)
  • <domain> (the domain itself matches, as does any user@domain, domain/resource, or address containing a subdomain)
  • -

    Some administrators may wish to ban all users associated with a specific domain from all rooms hosted by a MUC service. Such functionality is a service-level feature and is therefore out of scope for this document (but see &xep0133;).

    +

    Some administrators may wish to ban all users associated with a specific domain from all rooms hosted by a MUC service. Such functionality is a service-level feature and is therefore out of scope for this document, instead being defined in XEP-0133.

    An admin can grant membership to a user; this is done by changing the user's affiliation to "member" (normally based on nick if the user is in the room, or on bare JID if not; in either case, if the nick is provided, that nick becomes the user's default nick in the room if that functionality is supported by the implementation):

    @@ -4523,6 +4519,19 @@

    Depending on room configuration, a room MAY expose each occupant's real JID to other occupants (if the room is non-anonymous) and will almost certainly expose each occupant's real JID to the room owners and administrators (if the room is not fully-anonymous). A service MUST warn the user that real JIDs are exposed in the room by returning a status code of "100" with the user's initial presence, and the user's client MUST so warn the user (a user's client SHOULD also query the room for its configuration prior to allowing the user to enter in order to "pre-discover" whether real JIDs are exposed in the room). A client MUST also warn the user if the room's configuration is subsequently modified from semi-anonymous or fully-anonymous to non-anonymous (which the client will discover when the room sends status code 172) and SHOULD warn the user if the room's configuration is subsequently modified from fully-anonymous to semi-anonymous (which the client will discover when the room sends status code 173).

    + +

    Public MUC rooms can be subject to a number of attacks, most of which reduce to denial of service attacks. Such attacks include but are not limited to:

    +
      +
    1. Stuffing the room with a large number of illegitimate occupants and therefore preventing legitimate users from joining the room.
    2. +
    3. Sending abusive messages and then leaving the room before a kick or ban can be applied.
    4. +
    5. Making rapid and repeated presence changes.
    6. +
    7. Using long nicknames to route around lack of voice.
    8. +
    9. Abusing the room administrators or other room occupants.
    10. +
    11. Registering multiple nicknames across a service and therefore denying the use of those nicknames.
    12. +
    13. Mimicking another occupant's roomnick (e.g., by adding a space at the end or substituting visually similar characters), then sending messages from that roomnick in an effort to confuse the occupants.
    14. +
    +

    These attacks can be mitigated but not completely prevented through the liberal use of administrative actions such as banning, the presence of automated room bots with administrative privileges, implementation of intelligent content filtering, checking the IP addresses of connected users (not always possible in a distributed system), applying voice rules to presence as well as messaging, matching room nicks using more stringent rules than the Resourceprep profile of stringprep, etc. However, experience has shown that it is impossible to fully prevent attacks of this kind.

    +

    This document requires no interaction with &IANA;.