.
Last update: 1997-05-20
9945-2-22 Class: No change _____________________________________________________________________________ Topic: talk Relevant Sections: 5.37.2 Defect Report: ----------------------- In Section 5.37.2 - Description {of talk}, the standard states that ``[t]yping [other] nonprintable characters shall cause implementation-defined sequences of printable characters to be written to the recipient's terminal.'' [Draft 12 of ISO/IEC 9945-2:1993 (July 1992), p. 639, lines 4185-4186] and that ``[t]yping characters from LC_CTYPE classifications print or space shall cause those characters to be sent to the recipient's terminal.'' [Ibid., p. 639, lines 4179-4180] If {POSIX2_LOCALEDEF} is defined, a malicious user could create a locale in which every character is printable. In this case, a control sequence causing a line to be sent to the system and then executed can be sent to an unsuspecting user's terminal. This is a security hole. Since most talk implementations involve transmitting each character to another process on the other end, in particular one run by the recipient's terminal, could lines 4179-4180: ``[t]yping characters from LC_CTYPE classifications print or space shall cause those characters to be sent to the recipient's terminal.'' be interpreted as referring to the recipient's LC_CTYPE classification to close this hole? If this solution is not possible, could lines 4188-4189: ``[h]owever, a user's privilege may further constrain the domain of accessibility of other users' terminals'' [Ibid., p. 639, lines 4188-4189] be used to close this hole, by disallowing mortals from talking to other users' terminals if their LC_CTYPE is not a public locale? WG15 response for 9945-2:1993 ----------------------------------- The description of LC_CTYPE on page 608 lines 4222-4223 makes the operation of talk undefined if the sender's and receiver's locales are not the same. This allows specific implementations of talk to prevent the security hole by disallowing talk when dissimilar locales are used. See also interpretation request write.1-2390. Rationale for Interpretation: ----------------------------- None. _____________________________________________________________________________